Cloudflare NGINX में HTTP / 3 का समर्थन करने के लिए एक मॉड्यूल प्रदान करता है

CloudFlare

Cloudflare ने NGINX में HTTP / 3 प्रोटोकॉल के लिए सहायता प्रदान करने के लिए एक मॉड्यूल तैयार किया है। मॉड्यूल किया जाता है जो भी पुस्तकालय पर एक तस्वीर के रूप में Cloudflare पर QUIC और HTTP / 3 परिवहन प्रोटोकॉल के कार्यान्वयन के साथ विकसित किया गया। जो भी कोड होता है वह रस्ट में लिखा होता है, लेकिन NGINX के लिए मॉड्यूल C में लिखा गया है और गतिशील लिंक के माध्यम से लाइब्रेरी तक पहुंचता है। बीएसडी लाइसेंस के तहत घंटों ऑपरेशन खुले हैं।

क्लाइंट सॉफ़्टवेयर से, Chrome कैनरी प्रायोगिक बिल्ड में HTTP / 3 का समर्थन पहले ही जोड़ा जा चुका है और कर्ल उपयोगिता। सर्वर साइड पर, सीमित क्षमताओं वाले पृथक परीक्षण कार्यान्वयन का उपयोग अब तक आवश्यक है। HTTP / 3 को nginx में संभालने की क्षमता HTTP / 3 समर्थन के साथ सर्वरों की तैनाती को काफी सरल करेगा और यह नए प्रोटोकॉल के परीक्षण के कार्यान्वयन को और अधिक सुलभ बना देगा।

HTTP / 3 QUIC प्रोटोकॉल के उपयोग को मानकीकृत करता है HTTP / 2 के परिवहन के रूप में। QUIC प्रोटोकॉल को Google द्वारा वेब के लिए TCP + TLS के विकल्प के रूप में विकसित किया गया था, इस प्रकार टीसीपी में स्थापना और समन्वय यौगिकों के एक लंबे समय के साथ समस्याओं को हल करने का इरादा है और डेटा ट्रांसमिशन के दौरान पैकेट के नुकसान को खत्म करने में देरी करता है। QUIC, UDP प्रोटोकॉल का एक प्लग-इन है जो कई कनेक्शनों के बहुसंकेतन का समर्थन करता है और TLS / SSL के बराबर एन्क्रिप्शन के तरीके प्रदान करता है।

QUIC की प्रमुख विशेषताओं में से एक है:

  • उच्च सुरक्षा, टीएलएस के समान (वास्तव में, QUIC यूडीपी पर टीएलएस का उपयोग करने की क्षमता प्रदान करता है)।
  • प्रवाह अखंडता नियंत्रण जो पैकेट हानि को रोकता है।
  • तुरंत कनेक्शन स्थापित करने की क्षमता (0-RTT, लगभग 75% मामलों में, कनेक्शन सेटअप पैकेट भेजने के तुरंत बाद डेटा स्थानांतरित किया जा सकता है) और अनुरोध भेजने और प्रतिक्रिया प्राप्त करने के बीच न्यूनतम विलंब सुनिश्चित करना (RTT, Round Trip Time) ।
  • पैकेट को फिर से जमा करने पर उसी क्रम संख्या का उपयोग नहीं करना, जो प्राप्त पैकेटों के निर्धारण में अस्पष्टता से बचा जाता है और समय समाप्त करता है।
  • पैकेट खो जाने से केवल उसके साथ जुड़ी धारा का वितरण प्रभावित होता है और वर्तमान कनेक्शन पर समानांतर में प्रसारित धाराओं में डेटा की डिलीवरी नहीं रुकती है।
  • त्रुटि सुधार उपकरण जो खोए हुए पैकेटों के पुन: प्रसारण के कारण देरी को कम करते हैं। विशेष पैकेट-स्तर त्रुटि सुधार कोड का उपयोग उन परिस्थितियों को कम करने के लिए होता है जिनके लिए खोए हुए पैकेट डेटा के पुन: प्रसारण की आवश्यकता होती है।
  • क्रिप्टोग्राफ़िक ब्लॉक की सीमाएँ QUIC पैकेट सीमाओं के साथ गठबंधन की जाती हैं, बाद के पैकेटों की सामग्री को डिकोड करने पर पैकेट के नुकसान के प्रभाव को कम करती हैं।
  • टीसीपी कतार को अवरुद्ध करने में कोई समस्या नहीं है
  • कनेक्शन पहचानकर्ता के लिए समर्थन, जो मोबाइल ग्राहकों के लिए एक पुन: स्थापना स्थापित करने के लिए समय कम करता है
  • कनेक्शन अधिभार को नियंत्रित करने के लिए उन्नत तंत्र को जोड़ने की क्षमता
  • एक इष्टतम पैकेट अग्रेषण तीव्रता सुनिश्चित करने के लिए प्रत्येक दिशा में बैंडविड्थ की भविष्यवाणी करने की तकनीक का उपयोग करके, इसे भीड़ की स्थिति तक पहुंचने से रोकना जिसमें पैकेट हानि देखी गई है।
  • टीसीपी पर उल्लेखनीय प्रदर्शन और प्रदर्शन लाभ। YouTube जैसी वीडियो सेवाओं के लिए, QUIC ने वीडियो देखते समय री-बफरिंग कार्यों में 30% की कमी दिखाई।

NGINX में HTTP / 3 का समर्थन करने के लिए मॉड्यूल को कैसे लागू किया जाए?

उन लोगों के लिए जो अपने सर्वर पर इस मॉड्यूल को लागू करने में सक्षम हैं, वे नीचे दिए गए निर्देशों का पालन करके इसे कर सकते हैं।

इसे संकलित करने के लिए, उन्हें बस nginx 1.16 के लिए पैच डाउनलोड करना होगा और क्विक लाइब्रेरी कोड।

curl -O https://nginx.org/download/nginx-1.16.1.tar.gz

tar xzvf nginx-1.16.1.tar.gz

git clone --recursive https://github.com/cloudflare/quiche

cd nginx-1.16.1

patch -p01 < ../quiche/extras/nginx/nginx-1.16.patch

और हम HTTP / 3 समर्थन सक्षम के साथ NGINX संकलित करते हैं:

 ./configure                                 \

--prefix=$PWD                           \

--with-http_ssl_module                  \

--with-http_v2_module                   \

--with-http_v3_module                   \

--with-openssl=../quiche/deps/boringssl \

--with-quiche=../quiche

make

संकलन के दौरान, टीएलएस समर्थन बोरिंगएसएसएल लाइब्रेरी ("-with-opensl = .. / quiche / deps / boringssl") पर आधारित होना चाहिए, OpenSSL का उपयोग अभी तक समर्थित नहीं है।

कॉन्फ़िगरेशन में कनेक्शन स्वीकार करने के लिए, उन्हें "क्विक" ध्वज के साथ श्रोता निर्देश जोड़ना होगा।


अपनी टिप्पणी दर्ज करें

आपका ईमेल पता प्रकाशित नहीं किया जाएगा। आवश्यक फ़ील्ड के साथ चिह्नित कर रहे हैं *

*

*

  1. डेटा के लिए जिम्मेदार: मिगुएल elngel Gatón
  2. डेटा का उद्देश्य: नियंत्रण स्पैम, टिप्पणी प्रबंधन।
  3. वैधता: आपकी सहमति
  4. डेटा का संचार: डेटा को कानूनी बाध्यता को छोड़कर तीसरे पक्ष को संचार नहीं किया जाएगा।
  5. डेटा संग्रहण: ऑकेंटस नेटवर्क्स (EU) द्वारा होस्ट किया गया डेटाबेस
  6. अधिकार: किसी भी समय आप अपनी जानकारी को सीमित, पुनर्प्राप्त और हटा सकते हैं।