HTTP/3.0 ને પ્રસ્તાવિત માનક સ્થિતિ પ્રાપ્ત થઈ

Комитет IETF (Internet Engineering Task Force), занимающийся развитием протоколов и архитектуры интернета, завершил формирование RFC для протокола HTTP/3.0 и опубликовал связанные с ним спецификации под идентификаторами RFC 9114 (протокол) и RFC 9204 (технология сжатие заголовков QPACK для HTTP/3). Спецификация HTTP/3.0 получила статус «Предложенного стандарта», после чего начнётся работа по приданию RFC статуса чернового стандарта (Draft Standard), фактически означающего полную стабилизацию протокола и учёт всех высказанных замечаний. Одновременно опубликованы обновлённые варианты спецификаций для протоколов HTTP/1.1 (RFC 9112) и HTTP/2.0 (RFC 9113), а также документы, определяющие семантику HTTP-запросов (RFC 9110) и HTTP-заголовки управления кэшированием (RFC 9111).

Протокол HTTP/3 определяет использование протокола QUIC (Quick UDP Internet Connections) в качестве транспорта для HTTP/2. QUIC представляет собой надстройку над протоколом UDP, поддерживающую мультиплексирование нескольких соединений и обеспечивающую методы шифрования, эквивалентные TLS/SSL. Протокол был создан в 2013 году компанией Google в качестве альтернативы связке TCP+TLS для Web, решающей проблемы с большим временем установки и согласования соединений в TCP и устраняющей задержки при потере пакетов в процессе передачи данных.

HTTP/3.0 ને પ્રસ્તાવિત માનક સ્થિતિ પ્રાપ્ત થઈ

В настоящее время поддержка QUIC и HTTP/3.0 уже реализована во всех популярных web-браузерах (в Chrome, Firefox и Edge поддержка HTTP/3 включена по умолчанию, а в Safari требует включения настройки «Advanced > Experimental Features > HTTP/3»). На серверной стороне реализации HTTP/3 доступны для nginx (в отдельной ветке и в форме отдельного модуля), Caddy, IIS и LiteSpeed. Поддержку HTTP/3 также обеспечивает сеть доставки контента Cloudflare.

QUIC ની મુખ્ય લાક્ષણિકતાઓ:

  • ઉચ્ચ સુરક્ષા, TLS જેવી જ (હકીકતમાં, QUIC UDP પર TLS નો ઉપયોગ કરવાની ક્ષમતા પ્રદાન કરે છે);
  • પેકેટ નુકશાન અટકાવવા માટે સ્ટ્રીમ અખંડિતતા નિયંત્રણ;
  • કનેક્શન તરત જ સ્થાપિત કરવાની ક્ષમતા (0-RTT, આશરે 75% કેસોમાં કનેક્શન સેટઅપ પેકેટ મોકલ્યા પછી તરત જ ડેટા ટ્રાન્સમિટ કરી શકાય છે) અને વિનંતી મોકલવા અને પ્રતિસાદ પ્રાપ્ત કરવા વચ્ચે ન્યૂનતમ વિલંબ પૂરો પાડે છે (RTT, રાઉન્ડ ટ્રિપ સમય);
    HTTP/3.0 ને પ્રસ્તાવિત માનક સ્થિતિ પ્રાપ્ત થઈ
  • પેકેટને પુનઃપ્રસારિત કરતી વખતે અલગ ક્રમ નંબરનો ઉપયોગ કરવો, જે પ્રાપ્ત પેકેટોને ઓળખવામાં અસ્પષ્ટતાને ટાળે છે અને સમયસમાપ્તિથી છુટકારો મેળવે છે;
  • પેકેટની ખોટ માત્ર તેની સાથે સંકળાયેલ સ્ટ્રીમના ડિલિવરીને અસર કરે છે અને વર્તમાન કનેક્શન પર સમાંતર રીતે પ્રસારિત સ્ટ્રીમ્સમાં ડેટાની ડિલિવરી અટકાવતું નથી;
  • ભૂલ સુધારણા સાધનો કે જે ખોવાયેલા પેકેટોના પુનઃપ્રસારણને કારણે વિલંબને ઓછો કરે છે. ખોવાયેલા પેકેટ ડેટાના પુનઃપ્રસારણની જરૂર હોય તેવી પરિસ્થિતિઓને ઘટાડવા માટે પેકેટ સ્તરે વિશિષ્ટ ભૂલ સુધારણા કોડનો ઉપયોગ.
  • ક્રિપ્ટોગ્રાફિક બ્લોક સીમાઓ QUIC પેકેટ સીમાઓ સાથે સંરેખિત છે, જે અનુગામી પેકેટોના સમાવિષ્ટોને ડીકોડ કરવા પર પેકેટના નુકસાનની અસરને ઘટાડે છે;
  • TCP કતારને અવરોધિત કરવામાં કોઈ સમસ્યા નથી;
  • મોબાઇલ ક્લાયંટ માટે પુનઃજોડાણનો સમય ઘટાડવા માટે કનેક્શન ID સપોર્ટ;
  • કનેક્શન ઓવરલોડ નિયંત્રણ માટે અદ્યતન મિકેનિઝમ્સને કનેક્ટ કરવાની શક્યતા;
  • શ્રેષ્ઠ પેકેટ મોકલવાના દરોની ખાતરી કરવા માટે દરેક દિશામાં બેન્ડવિડ્થ અનુમાન તકનીકોનો ઉપયોગ કરીને, પેકેટો ખોવાઈ જાય ત્યાં ભીડની સ્થિતિમાં રોલિંગ અટકાવવા;
  • TCP ની તુલનામાં પ્રદર્શન અને થ્રુપુટમાં નોંધપાત્ર વધારો. YouTube જેવી વિડિયો સેવાઓ માટે, QUIC એ વિડિયો જોતી વખતે રિબફરિંગ ઑપરેશનને 30% સુધી ઘટાડવા માટે દર્શાવવામાં આવ્યું છે.

Из изменений в спецификации HTTP/1.1 можно отметить запрет на обособленное использование символа возврата каретки (CR) вне тела с содержимым, т.е. в элементах протокола символ CR может применяться только вместе с символом перевода строки (CRLF). Алгоритм компоновки chunked-запросов доработан для упрощения разделения прикреплённых полей и секции с заголовками. Добавлены рекомендации по обработке неоднозначного содержимого для блокирования атак класса «HTTP Request Smuggling», позволяющих вклиниваться в содержимое запросов других пользователей в потоке между фронтэндом и бэкендом.

В обновлении спецификации HTTP/2.0 явно определена поддержка TLS 1.3. Переведена в категорию устаревших схема определения приоритетов и связанные с ней поля в заголовках. Объявлен устаревшим не получивший распространения механизм обновления соединения с HTTP/1.1. Сокращены требования к проверке имён полей и значений. Предложены для использования некоторые ранее зарезервированные типы кадров и параметры. Более точно определены запрещённые поля заголовков, относящиеся к соединению.

સોર્સ: opennet.ru

એક ટિપ્પણી ઉમેરો