پروتکل Quic چیست؟

پروتکل Quic چیست؟

QUIC (Quick UDP Internet Connections)  یک پروتکل انتقال داده جدید برای اینترنت است که توسط گوگل توسعه یافته. QUIC تعدادی از مشکلات لایه انتقال و لایه اپلیکیشن را که توسط برنامه‌های مدرن وب تجربه می‌شود ، بدون نیاز به ایجاد تغییر توسط برنامه نویسان اپلیکیشن های مربوطه حل می‌کند.


 QUIC بسیار شبیه به TCP+TLS+HTTP/2 است، اما بر روی UDP پیاده سازی شده است.  داشتن QUIC به عنوان یک پروتکل فضای کاربر مستقل، به نوآوری‌هایی منجر می شود که با پروتکل‌های موجود امکان‌پذیر نیستند، زیرا تمامی این پروتکل ها توسط مشتریان قدیمی و جعبه‌های میانی مختل می‌شوند.
 

خرید هاست وردپرس
آیا میدانید هاست وردپرس پارسدو از پروتکل HTTP/3 به همراه Quic استفاده می کند؟

 

 

مزایای کلیدی QUIC نسبت به TCP+TLS+HTTP/2 عبارتند از موارد بهبود یافته ی زیر:

•    تأخیر ایجاد اتصال ( Connection establishment latency)
•    کنترل تراکم بهبود یافته ( Improved congestion control)
•    مالتی پلکس بدون مسدود کردن سر خط ( Multiplexing without head-of-line blocking)
•    تصحیح خطای فوروارد ( Forward error correction)
•    مهاجرت اتصال ( Connection migration)

تفاوت QUIC با TCP در چیست؟

•    QUIC به طور پیش فرض کاملاً رمزگذاری شده است، به جز یک بایت از پرچم های عمومی، شناسه اتصال 8 بایتی و شماره توالی بسته
•    QUIC داده‌ها را با شماره‌های دنباله‌ای جدید ارسال می‌کند و آنها را دوباره رمزگذاری می‌کند. این امر بازیابی ضرر و اندازه گیری RTT را بهبود می بخشد
•    QUIC از پورت سرور UDP 443 به جای TCP 443 استفاده می کند
•    QUIC هیچ انسداد سر خطی ندارد

چه کسانی از QUIC استفاده می کنند؟

یک اتصال QUIC می تواند بین هر کلاینت و سروری که هر دو از QUIC پشتیبانی می کنند ایجاد شود.  در حال حاضر گوگل پشتیبانی سرور برای ویژگی های خود را ارائه می دهد.
پشتیبانی مشتری در Google Chrome و برخی از اپلیکیشن های Google Android وجود دارد.  و همچنین گوگل در حال کار با سایر مرورگرها است تا پشتیبانی QUIC را برای کاربران بیشتری ارائه دهد.

آیا QUIC برای کاربران مزیتی ایجاد می کند؟

آزمایش ما نشان می دهد که QUIC مزایای عملکرد قابل توجهی را برای کاربران ایجاد می کند.  در ویژگی های آن، ما شاهد کاهش 10 درصدی در زمان بارگذاری صفحه هستیم و همچنین برای ویدیو، شاهد کاهش 30 درصدی rebuffer ها هستیم.

اما QUIC چطور باعث بهبود عملکرد می شود؟

QUIC  ویژگی هایی را پیاده سازی می کند که منجر به عملکرد سریعتر آن می شود:
•    Zero-RTT open  اجازه می دهد تا در بسیاری از موارد اتصالات با سربار بسیار کمتر باز شوند.
•    بهبود بازیابی ضرر: QUIC به میزان قابل توجهی ارسال مجدد مبتنی بر مهلت زمانی کمتری را متحمل می شود.
•    سربار فریم کمتر: بسته‌های QUIC دارای کادربندی کمتری هستند، بنابراین بسته‌های بیشتری می‌توانند داده‌ها را حمل کنند.

چگونه از درستی جریان ترافیک QUIC در شبکه خود اطمینان پیدا کنیم؟

به عنوان یک اپراتور شبکه، چند نکته وجود دارد که باید در نظر بگیرید:

  • باید اجازه داد که ترافیک تک‌پخشی UDP بدون مانع از فیلترها یا محدودکننده‌های نرخ جریان داشته باشد.
  • توابع هش مورد استفاده برای link aggregation یا load balancing باید شامل هدرهای انتقال UDP باشد.
  • NAT ها باید برای عبور دادن ترافیک UDP unicast بر اساس بهترین راهکارهای مستند مانند RFC 4787  پیکربندی شوند.

آیا SNI در QUIC وجود دارد؟

SNI یا Server Name Indication در QUIC پشتیبانی می شود. البته توجه داشته باشید که QUIC SNI را در بسته مربوط به Handshake رمزنگاری مشتری مشخص می کند و آن بسته رمزگذاری نشده است، بنابراین SNI برای شبکه قابل مشاهده است.

اما آیا گوگل از کاربران در حین پیاده سازی و مهاجرت به پروتکل QUIC نیز پشتیبانی می کند؟

  • گوگل به دقت معیارهای کیفیت را برای کاربران محصولات خود رصد می کند و اقدامات پیشگیرانه ای را برای کاهش مشکلات در صورت بروز آنها انجام خواهد داد.
  • گوگل QUIC را برای کاربران در هیچ شبکه ای که کاهش عملکرد قابل توجهی داشته باشد تبلیغ نمی کند.  علاوه بر این، کروم مکانیزم بازگشتی قوی ای دارد که وقتی UDP مسدود است، TCP را انتخاب می‌کند.

آیا گوگل به سرویس دهنده ها کمکی خواهد کرد تا بتوانند راحت تر فرایند به کارگیری و انتقال به پروتکل جدید را اجرا کنند؟

با ورود به پورتال Google ISP می توانید نمای دقیق ترافیک QUIC را در شبکه خود مشاهده کنید.  در اینجا می توانید شبکه خود را برای آمادگی QUIC تأیید کنید و معیارهایی را در مورد تجزیه ترافیک QUIC در مقابل TCP خود دریافت کنید.  

چگونه مشکلات جریان QUIC را در شبکه برطرف کنیم؟

با استفاده از Google Chrome، آدرس "chrome://net-internals/#quic" جزئیاتی در مورد اتصالات QUIC ارائه می کند.
کاربرانی که مایل به گزارش مشکل عملکرد هستند می‌توانند گزارش‌های داخلی شبکه را با انتخاب «Export» در منوی کشویی در سمت راست بالا و ذخیره گزارش صادر کنند.