مقایسه با HTTP/2
پروتکل HTTP/3 برای QUIC طراحی شده است، که پروتکل انتقالی است که به خودی خود جریانها را مدیریت میکند.
پروتکل HTTP/2 برای TCP طراحی شده است، و در نتیجه جریانها را در لایهی HTTP مدیریت میکند.
هر دوی پروتکلها به کارخواهان مجموعهای از ویژگیهای کمابیش مشابه را ارائه میدهند.
- هر دو پروتکل پشتیبانی از server push را ارائه میدهند
- هر دو پروتکل دارای فشرده سازی سرایند هستند، و QPACK و HPACK در طراحی شبیه هستند.
- هر دو پروتکل توزیع بر روی یک تک-اتصال با استفاده از جریانها را ارائه میدهند
تفاوتها در جزئیات و عمدتاً در این حیطه هستند به لطف استفادهی HTTP/3 از QUIC:
- پروتکل HTTP/3 به لطف دستدهی 0-RTT پروتکلِ QUIC از داده اولیه پشتیبانی بهتری میکند، هنگامیکه TCP Fast Open و TLS ه ماره داده کمتری ارسال میکنند و با مشکل مواجه میشوند.
- پروتکل HTTP/3 به لطف QUIC در مقایسه با TCP + TLS از دستدهیهای به مراتب سریعتری برخوردار است.
- پروتکل HTTP/3 در نسخهی نا-امن و بدون رمزگذاری وجود ندارد. پروتکل HTTP/2 میتواند بدون HTTPS پیادهسازی و استفاده شود - اگرچه در اینترنت کمتر بدین شکل دیده میشود.
- پروتکل HTTP/2 میتواند مستقیم داخل یک دستدهی TLS با افزونه ALPN قرار بگیرد، حال آنکه HTTP/3 بر روی QUIC است و ازینرو ابتدا به یک پاسخ سرایند
Alt-Svc:
نیاز دارد تا کارخواه را از این عامل آگاه سازد. - پروتکل HTTP/3 اولویتبندی ندارد. رویکرد HTTP/2 در اولویتبندی پییچدهتلقی میشود، و یا حتی صرفاً یک شکست، لذا کار بر روی ساخت موردیسادهتر در جریان است. لین طرح سادهتر هم برنامهریزی شده تاپیشانتقال بتواند با استفاده از مکانیزم پسوند HTTP/2 بر روی HTTP/2 اجراشود.
Last modified 2yr ago