پروتکل کوییک
ویژگی ها

در زمینه پشتیبانی از ترافیک HTTP رمزنگاری شده، QUIC نقش مشابهی با TCP دارد، اما با کاهش تاخیر
در فرآیند برقراری ارتباط و بازیابی از دست رفتگی های کارآمدتر هنگامی که چندین جریان HTTP را در
یک ارتباط تکرار می کند. این کار را اصولا از طریق دو تغییر انجام می دهد که بر اساس درک رفتار ترافیک
HTTP استوار است.
تغییر اول، کاهش قابل توجهی در هزینه در فرآیند برقراری ارتباط است. زیرا اکثر ارتباطات HTTP نیاز به
TLS دارند، QUIC تبادل کلیدهای راه اندازی و پروتکل های پشتیبانی شده را به عنوان بخشی از فرآیند
اصلی دست دادن انجام می دهد. هنگامی که یک کلاینت یک ارتباط باز می کند، بسته پاسخ شامل داده
های مورد نیاز برای استفاده از رمزنگاری برای بسته های آینده است. این باعث حذف نیاز به برقراری ارتباط
TCP و سپس مذاکره پروتکل امنیتی از طریق بسته های اضافی می شود. پروتکل های دیگر نیز می توانند
به همین روش خدمات دهند، ترکیب چندین مرحله را در یک جفت درخواست-پاسخ تکمیل می کنند. این
داده ها می توانند همچنین برای درخواست های بعدی در تنظیم اولیه و همچنین درخواست های آینده که
در غیر این صورت به عنوان ارتباط های جداگانه مذاکره می شوند، استفاده شوند.
تغییر دوم استفاده از UDP به جای TCP به عنوان پایه آن است که شامل بازیابی از دست رفتگی نمی شود.
به جای آن، هر جریان QUIC به طور جداگانه کنترل جریان می شود و داده های از دست رفته در سطح
QUIC و نه UDP مجدداً ارسال می شوند. این بدان معنی است که اگر خطا در یک جریان رخ دهد، مانند
مثال favicon بالا ، پشته پروتکل می تواند به طور مستقل از سرویس دهی به جریان های دیگر ادامه دهد. 
این می تواند در بهبود عملکرد در لینک های خطاپذیر بسیار مفید باشد، زیرا در اکثر موارد ممکن است قبل
از اینکه TCP توجه کند که یک بسته از دست رفته یا خراب شده است، داده های قابل توجهی اضافی
دریافت شود و تمام این داده ها در حالت بلاک شده یا حتی فلاش شده است در حالی که خطا اصلاح می
شود. در QUIC، این داده ها آزاد است برای پردازش در حالی که جریان تکرار شده تعمیر می شود.
QUIC شامل تعدادی تغییر دیگر است که بهبود کلی تاخیر و توانایی ارتباط را بهبود می بخشد. به عنوان
مثال، بسته ها به صورت جداگانه رمزنگاری می شوند، به طوری که منجر به انتظار داده های رمزنگاری شده
برای بسته های جزئی نمی شود. این به طور کلی در TCP ممکن نیست، جایی که رکوردهای رمزنگاری در
یک جریان بایتی هستند و پشته پروتکل از مرزهای لایه بالاتردر این جریان آگاه نیست. این می تواند
توسط لایه هایی که روی آن اجرا می شوند مذاکره شود، اما هدف QUIC این است که همه این کارها را در
یک فرآیند دست دادن تکمیل کند.
هدف دیگری از سیستم QUIC بهبود عملکرد در رویدادهای تغییر شبکه است، مانند زمانی که کاربر
دستگاه تلفن همراه از یک هات اسپات WiFi محلی به یک شبکه تلفن همراه منتقل می شود. در این حالت
در TCP، یک فرآیند طولانی آغاز می شود که در آن هر ارتباط موجود به ترتیب زمانی منقضی می شود و
سپس بر اساس درخواست مجدد برقرار می شود. برای حل این مشکل، QUIC شناسه اتصالی را شامل می
شود تا به صورت یکتا اتصال را به سرور شناسایی کند، بدون توجه به منبع. این امکان را می دهد که اتصال
به سادگی با ارسال یک بسته مجدد برقرار شود، که همیشه شامل این شناسه است، زیرا شناسه اتصال اصلی
هنوز معتبر است حتی اگر آدرس IP کاربر تغییر کند.
QUIC میتواند در فضای برنامه ها پیاده سازی شود، به جای اینکه در هسته سیستم عامل باشد. این به طور
کلی هزینه اضافی را به دنبال دارد به دلیل تعویض های متنی زمانی که داده ها بین برنامه ها منتقل میشوند. 
با این حال، در مورد QUIC ، پشته پروتکل قرار است توسط یک برنامه تکی استفاده شود ، به طوری که هر
برنامه های که از QUIC استفاده میکند، اتصالات خود را روی UDP دارد.
در نهایت تفاوت ممکن است بسیار کوچک باشد زیرا بخش های زیادی از پشته /2HTTP به طور کلی در
برنامه ها ( یا کتابخانه های آنها، بیشتر به کار میروند) قرار دارند. قرار دادن بخش های باقیمانده در آن
کتابخانه ها، به طور جزئی اصلاح خطا، تأثیر کمی بر اندازه یا پیچیدگی کل پشته /2HTTP ندارد.
این سازماندهی امکان تغییرات آینده را به راحتی فراهم میکند زیرا برای به روزرسانی ها نیازی به تغییرات در
هسته ندارد. یکی از اهداف بلندمدت QUIC اضافه کردن سیستم های جدید برای اصلاح خطا به جلو (FEC)
و کنترل بهبود یافته از ازدحام است.
یکی از نگرانی ها درباره انتقال از TCP به UDP این است که TCP به طور گسترده پذیرفته شده است و
بسیاری از "جعبه های وسط" در زیرساخت اینترنت برای TCP تنظیم شده اند و ممکن است سرعت یا حتی
UDP را محدود کنند یا مسدود کنند.
گوگل تعدادی آزمایش اکتشافی انجام داد تا این را مشخص کند و پی برد که تنها تعداد کمی از اتصالات به
این روش مسدود شده اند. این منجر به استفاده از یک سیستم سریع برگشت به TCP شد؛ پشته شبکه
کرومیوم همزمان یک اتصال QUIC و یک اتصال سنتی TCP باز میکند، که به آن امکان میدهد که با
تأخیر قابل توجهی به TCP برگردد.
QUIC به طور خاص برای قابل اجرا، تکامل پذیر و دارای ویژگیه ای ضد-استخوان گذاری طراحی شده است؛
این اولین پروتکل انتقال IETF است که به طور عمدی تصویر سیم خود را برای این اهداف کمینه کرده
است. غلاوه بر هدرهای رمزنگاری شده، آن 'روغن دار' است و دارای ویژگی های پروتکل به صورت صریح
مشخص شده است.