BROWSERHTTP/3SERVERover QUIC over UDP/4431-RTT handshake, multiplexed streams

HTTP/3

10 मिनट पढ़ावेब प्रौद्योगिकी

HTTP/3 प्रोटोकॉल का तीसरा प्रमुख संस्करण है जो वेब को शक्ति प्रदान करता है। जहां HTTP/2 एक विकास था - वही HTTP, तेज़ डिलीवरी - HTTP/3 ट्रांसपोर्ट का एक नया डिज़ाइन है, जो TCP+TLS के बजाय QUIC पर चलता है। यह 2022 से प्रमुख साइटों के लिए डिफ़ॉल्ट है और अधिकांश ट्रैफ़िक उपयोगकर्ताओं को अब "तेज़" के रूप में चुपचाप शक्ति प्रदान करता है।

संपूर्ण लेख का मुख्य भाग नीचे अंग्रेजी में दिया गया है।

HTTP/3, QUIC पर HTTP है - अगली पीढ़ी का वेब प्रोटोकॉल जो TCP+TLS+HTTP/2 स्टैक को एकल एकीकृत UDP-आधारित डिज़ाइन से बदल देता है। इसे 2022 में RFC 9114 में मानकीकृत किया गया था और अब यह Google, Cloudflare, Meta और Microsoft संपत्तियों सहित अधिकांश प्रमुख साइटों के लिए डिफ़ॉल्ट प्रोटोकॉल है।

HTTP संस्करण इतिहास

A त्वरित संदर्भ: मेटाडेटा. केवल ऐतिहासिक रुचि। प्रत्येक एक नए टीसीपी कनेक्शन का अनुरोध करता है।

  • HTTP/1.1 (1997, संशोधित 2014): लगातार कनेक्शन, पाइपलाइनिंग, होस्ट हेडर। दो दशकों से वेब का वर्कहॉर्स।
  • HTTP/2 (2015): बाइनरी प्रोटोकॉल, हेडर कंप्रेशन (HPACK), स्ट्रीम मल्टीप्लेक्सिंग, सर्वर पुश। TCP.
  • HTTP/3 (2022) पर TLS पर चलता है: UDP पर QUIC पर चलता है। टीसीपी हेड-ऑफ़-लाइन ब्लॉकिंग को समाप्त करता है, तेज़ हैंडशेक, कनेक्शन माइग्रेशन का समर्थन करता है।
  • HTTP/3 ने क्या ठीक किया टीसीपी कनेक्शन. जब एक पैकेट खो जाता है, तो टीसीपी पूरे कनेक्शन को तब तक रोक देता है जब तक कि खोया हुआ पैकेट दोबारा प्रसारित न हो जाए - भले ही केवल एक स्ट्रीम को उस पैकेट की आवश्यकता हो। QUIC की प्रति-स्ट्रीम विश्वसनीयता इसे समाप्त कर देती है।
  • मल्टीपल राउंड-ट्रिप सेटअप। QUIC उन्हें 1 राउंड-ट्रिप (कुछ 0-आरटीटी मामलों में 0) में विलय कर देता है। 100ms विलंबता कनेक्शन पर, यह 200-300ms पेज-लोड सुधार है।
  • नेटवर्क परिवर्तन पर कनेक्शन मृत्यु। QUIC कनेक्शन माइग्रेशन 5-ट्यूपल के बजाय एक कनेक्शन आईडी के साथ कनेक्शन की पहचान करके स्विच से बच जाता है। (अब टीसीपी एचओएल ब्लॉकिंग के बिना) अंतर पूरी तरह से ट्रांसपोर्ट में हैं। ब्राउज़र को याद है "यह मूल UDP/443 पर h3 का भी समर्थन करता है" और बाद के कनेक्शन के लिए HTTP/3 का उपयोग करता है। यदि QUIC विफल हो जाता है (फ़ायरवॉल UDP को ब्लॉक कर देता है, आदि), तो ब्राउज़र TCP.

    की तुलना में HTTP/2 पर वापस आ जाता है। कई ब्राउज़र कनेक्ट होने से पहले HTTP/3 की उपलब्धता जानने के लिए DNS HTTPS रिकॉर्ड्स का भी उपयोग करते हैं - पहले संपर्क पर प्रारंभिक HTTP/2 राउंड-ट्रिप को सहेजते हुए।

    अभ्यास में प्रदर्शन

    जीतें हैं सबसे बड़ा जहां टीसीपी को सबसे अधिक नुकसान हुआ: लाभ कंपाउंड

  • CDN किनारे पर साफ़ वायर्ड कनेक्शन पर, HTTP/3 और HTTP/2 समान रूप से कार्य करते हैं। जैसे-जैसे स्थितियां खराब होती जाती हैं, अंतर बढ़ता जाता है - ठीक उसी समय जब उपयोगकर्ता धीमेपन को नोटिस करते हैं। AWS CloudFront, Microsoft, मेटा HTTP/3.

  • की सेवा देते हैं, वॉल्यूम के हिसाब से सभी वेब अनुरोधों में से लगभग 30-40% HTTP/3.
  • का उपयोग करते हैं। कई एंटरप्राइज़ नेटवर्क फ़ायरवॉल पर QUIC को ब्लॉक कर देते हैं, जिससे HTTP/2 पर वापस आना पड़ता है। यह उच्चतर अपनाने में सबसे बड़ा अवरोधक है।
  • HTTP/3 क्या नहीं बदलता है वही कैशिंग, सामग्री बातचीत, सशर्त अनुरोध और प्रमाणीकरण पैटर्न काम करते हैं। एप्लिकेशन बनाने वाले वेब डेवलपर्स को शायद ही कभी यह सोचने की ज़रूरत होती है कि कौन सा HTTP संस्करण उपयोग में है; प्लेटफ़ॉर्म इसे संभालता है। जिसका मूल सर्वर और सीडीएन HTTP/3.

    का समर्थन करता है, उसे लाभ स्वचालित रूप से मिलते हैं

    अक्सर पूछे जाने वाले प्रश्नों

    क्या मेरी साइट को एक अलग HTTP/3 कार्यान्वयन की आवश्यकता है?
    यदि आप एक सीडीएन के पीछे बैठते हैं जो HTTP/3 (क्लाउडफ्लेयर, फास्टली, अकामाई, क्लाउडफ्रंट) का समर्थन करता है, तो यह पहले से ही वहां मौजूद है। यदि आप सीधे मूल सर्वर चलाते हैं, तो आपको HTTP/3 समर्थन (nginx 1.25+, Caddy, LiteSpeed, h2o) वाले सर्वर की आवश्यकता है। अधिकांश उपयोगकर्ता CDN के पीछे तैनात होकर HTTP/3 प्राप्त करते हैं।
    मैं कैसे बता सकता हूं कि कोई साइट HTTP/3 का उपयोग कर रही है?
    ब्राउज़र DevTools का नेटवर्क टैब प्रति अनुरोध प्रोटोकॉल दिखाता है - "h3" या "http/3" HTTP/3 को इंगित करता है। http3check.net जैसे ऑनलाइन उपकरण भी मनमानी साइटों का परीक्षण करते हैं। ब्राउज़र पता बार इसे प्रदर्शित नहीं करता है; यह एक डेवलपर-टूल्स वाली चीज़ है।
    क्या HTTP/3 हमेशा तेज़ होता है?
    हानिपूर्ण या उच्च-विलंबता कनेक्शन पर, हाँ। एक साफ़ कम-विलंबता LAN पर, अंतर अक्सर शोर का होता है। यूडीपी को अवरुद्ध करने वाले नेटवर्क पर, HTTP/3 पूरी तरह से विफल हो जाता है और अतिरिक्त सेटअप विलंबता के साथ HTTP/2 पर वापस आ जाता है, जो कि QUIC को पूरी तरह से छोड़ने की तुलना में धीमा है।
    वीपीएन के लिए HTTP/3 का क्या मतलब है?
    आधुनिक वीपीएन (वायरगार्ड, ओपनवीपीएन) सुरंग यूडीपी और HTTP/3 ठीक हैं। कुछ पुराने या प्रतिबंधात्मक वीपीएन सेटअप केवल टीसीपी को टनल करते हैं, ऐसी स्थिति में HTTP/3 चुपचाप HTTP/2 पर वापस आ जाता है। यदि आप HTTP/3 साइटों पर असामान्य धीमापन देखते हैं तो अपने वीपीएन के यूडीपी समर्थन की जांच करें।
    क्या HTTP/4 मौजूद होगा?
    आख़िरकार शायद, लेकिन जल्द ही नहीं। HTTP/3 केवल 2022 में शिप किया गया और इसे अपनाना अभी भी जारी है। भविष्य में HTTP संस्करण संभवतः QUIC को प्रतिस्थापित करने के बजाय उस पर और निर्मित होगा; QUIC अपने आप में अधिक दिलचस्प विकास बिंदु है।
    HTTP/3 की व्याख्या: आधुनिक ब्राउज़रों को सशक्त बनाने वाला QUIC-आधारित वेब प्रोटोकॉल