بوت اِسترپ با سرایندِ Alt-svc

سرایندِ خدمات جایگزین (:Alt-svc) و قابِ متناظر ALT-SVC آن در HTTP/2 منحصراً برای QUIC یا HTTP/3 ساخته نشده‌اند. آنها بخشی از یک مکانیزم از پیش طراحی و ساخته شده هستند تا که یک سرور بتواند به کارخواه بگوید: "نگاه کن، من دارم همین سرویس مشابه را روی این میزبان با استفاده از این پروتکل بر روی این درگاه اجرا می‌کنم". جزئیات را در RFC 7838 ببینید.

به کارخواهی که چنین پاسخ Alt-svc را دریافت می‌کند پیشنهاد می‌شود که با استفاده از پروتکل مشخص‌شده، در صورت پشتیبانی و تمایل، به آن میزبان معلوم به‌طور موازی در پس‌زمینه متصل شود و چنانکه این امر موفقیت‌آمیز باشد عملیاتش را به‌طور کامل از روی اتصال اولیه به آن تغییر دهد.

اگر اتصال اولیه از HTTP/2 یا حتی HTTP/1 استفاده کند، سرور می‌تواند پاسخ بدهد و به کارخواه بگوید که می‌تواند دوباره متصل شود و HTTP/3 را امتحان کند. این می‌تواند به سمت همان میزبان یا دیگر میزبانی که می‌داند چگونه به آن خاستگاه خدمت کند باشد. اطلاعاتی که در چنین پاسخ Alt-svc داده شده است دارای زمان‌سنجِ انقضا هستند که باعث می‌شود کارخواه‌ها بتوانند اتصال‌ها و درخواست‌های سپسین را با استفاده از پروتکل جایگزینِ پیشنهادی مستقیماً به سمت آن میزبان جایگزین، برای زمانی مشخص، هدایت کنند.

نمونه

یک سرور HTTP در پاسخش شامل یک سرایند Alt-Svc: است:

Alt-Svc: h3=":50781"

این نشانگر این است که HTTP/3 بر روی درگاه UDP شماره ٔ۵۰۷۸۱ در همان میزبانی که برای دریافت این پاسخ استفاده شده در دسترس است.

یک کارخواه سپس می‌تواند اقدام به برقراری یک اتصال QUIC به‌سمت آن مقصد کند و اگر موفقیت آمیز بود، به‌جای ادامهٔ ارتباط اولیهٔ نسخهٔ HTTP، بدان شکل با خاستگاه به ارتباط خود ادامه دهد.

Last updated