‏نمایش پست‌ها با برچسب http. نمایش همه پست‌ها
‏نمایش پست‌ها با برچسب http. نمایش همه پست‌ها

۱۳۹۵ تیر ۱۳, یکشنبه

HTTP2 در آموزش شبکه

با کارکرد جدیدیترین نسخه پروتکل انتقال ابر متن HTTP2 آشنا شوید
آموزش شبکه
-با توجه به رشد روز افزون سایت ها و افزایش پهنای باند کاربران اینترنیتی و همچنین عدم وجود مکانیزمی مناسب برای استفاده بهینه از این پهنای باند ، کار گروه httpBits (سرنام HYPERTEXT TRANSFER PROTOCOL BITS ) از گروه های فعال در سازمان Internet Engineering Task Force ، در سال ۲۰۱۲ ، کار بر روی نسخه ارتقاء یافته ای از پزوتکل انتقال ابر متن HTTP را آغاز کرد. برای HTTP در آموزش شبکه پروتکلی که ساختار و اساس آن بر مبنای پروتکل کد منبع باز SPDY قرار داشته ، اما در عمل یکسری ویژگی های متمایز و شاخص از نسخه فعلی انتقال ابر متن را در خود جای داده است.
پروتکل انتقال ابر متن با همان HTTP در آموزش شبکه ، یکی از موفق ترین پروتکل های پر کاربرد دنیای اینترنت به شمار می رود که توسط World Wide Web مورد استفاده قرار می گیرد. آخرین نسخه ارائه شده از این پروتکل ، نسخه ۱٫۱ است که در سال ۱۹۹۹ به عنوان یک استاندارد جامع و جهانی در قالب RFC 2616 ارائه شد.
قالب یک پیام در پروتکل HTTP 1/1 ، به گونه ای طراحی شده است که در ابزارهای رایج دهه ۹۰ کاربرد دارد و از این رو با برنامه های امروز وب سازگار نیست. این قالب پیام ، شامل یک خط شروع است که این خط شروع را مجموعه ای از مقادیر هشت تایی که فرمتی شبیه به قالب یک پیام اینترنت دارند و فیلدهای سرآیند که شامل صفر یا چند صفر هستند (فیلدهای سرآیند خط هایی هستند که شامل نام فیلد ، دو نقطه ، بدنه فیلد و CRFLF) ، شکل می دهد.

HTTP در آموزش شبکه

به طور کلی روال عادی و رایجی که برای تجزیه یک پیام HTTP در آموزش شبکه از آن استفاده می شود ، عبارت است از خواندن خط شروع داخل یک ساختار ، خواندن فیلد سرآیند داخل یک جدول Hash که این عمل خواندن فیلد نام ، تا رسیدن به یک خط خالی ادامه پیدا کرده و در نهایت تجزیه داده ها برای آگاهی یافتن از اینکه آیا این پیام یک بدنه دارد یا خیر ، صورت می گیرد. در HTTP در آموزش شبکه اگر برای پیام بدنه ای وجود داشته باشد ، فرآیند خواندن بدنه پیام در قالب یک استریم تا زمانیکه یک مقدار هشت تایی برابر با طول بدنه پیام شود و یا زمانیکه ارتباط بسته شود ، ادامه پیدا می کند.
به این شکل برای HTTP در آموزش شبکه ، یکسری ویژگی های منفی بر روی کارایی و کارکرد بهینه برنامه های امروزی ، تاثیر گذار می شوند.
به طور کلی ، پروتکل HTTP 1.0 فقط اجازه ارسال یک درخواست در یک زمان را بر روی یک ارتباط امکان پذیر می ساخت. اما با به روزرسانی این پروتکل به نسخه ۱٫۱ ، امکان انتقال و ارسال بیش از یک درخواست به طور همزمان امکان پذیر شد ، از این رو کلاینت هایی که نیازمند ساخت تعداد بیش تری از درخواست ها بودند بودند ، از تکنیک ساخت و به کارگیری چند ارتباط بر روی یک سرور برای کم کردن دوره سیکل کاری انتظار ارسال و دریافت داده ها ، استفاده می کردند. به علاوه ، فیلد های سرآیند HTTP 1.1 اغلب تکراری و طولانی بودند که همین موضوع باعث ساخت بسته هایی می شود که ازدحام و ترافیک سنگین بر روی شبکه را به همراه دارند. نتیجه این فرآیند ، ساخت بسته های TCP کوچک و مقدار دهی شده ای است که به سرعت فیلد window را پر کرده و یک زمان انتظار مضاعف را زمانیکه چندین درخواست بر روی یک ارتباط جدید و مجزای TCP ساخته می شود ، به همراه خواهند داشت.
این خصوصیت آدرس ها و مشکلات ، با تعریف یک ترسیم بهینه شده از HTTP semantics بر روی یک ارتباط اصولی ، قابل حل بود. این تکنیک این امکان را فراهم می آورد تا یک در خواست و پیام هایی که در واکنش به درخواست ایجاد می شوند ، بر روی همان ارتباط جاری قرار داده شده و همچنین از یک کد گذاری موثر بر روی فیلدهای سرآیند HTTP در آموزش شبکه استفاده شود. همچنین الویت بندی درخواست ها ، امکان ارسال سریع تر درخواست هایی که مهم تر و کامل تر هستند را به همراه دارد که همین موضوع باعث افزایش کارایی این تکنیک شده و در پیشبرد آن سهم بسزایی دارد.

آموزش شبکه و HTTP

Terminologies
در آموزش شبکه و HTTP قبل از پرداختن به ماهیت شکل گیری این پروتکل و تاثیرات متقابلی که پروتکل SPDY برروی HTTP 2 گذارده است ، لازم است تا با یکسری اصطلاحات تخصصی آشنا شوید. اصطلاحاتی که معادل سازی و ترجمه فارسی آن ها نمی تواند ماهیت دقیق آن ها را بیان کند. بنابراین در آموزش شبکه و HTTP برای آنکه بتوانید با کارکرد صحیح HTTp 2.0 آشنا شوید ، ابتدا به بیان این اصطلاحات خواهیم پرداخت تا در طول خواندن این مقاله ، با آن ها آشنایی داشته باشید.
Latency
اشاره به مدت زمان سپری شده مابین شبیه سازی و واکنش دارد ، یا به عبارت دیگر ، از یک نقطه نظر و نمایی عمومی تر ، مدت زمان تاخیر مابین علت و تاثیر بعضی تغییرات فیزیکی در یک سیستم که به طور آشکار در آموزش شبکه و HTTP قابل درک است را بیان می کند. Latency به طور فیزیکی ، یک برآیند منطقی از محدودیت سرعت با تاثیر فیزیکی متقابلی است که می تواند به سرعت منتشر شود. یکی از اصلی ترین اهدافی که در پروتکل HTTP 2.0 دنبال می شود ، کاهش زمان انتظار برای بارگذاری صفحات است که با نام Latency بیان می شود.
Network Latency
در یک شبکه ، بسته های سوییچ شده ، به یکی از دو روش one-way و یا round trip delay time اندازه گیری می شوند.
One way
در آموزش شبکه و HTTP زمانی که مبداء ، اقدام به ارسال بسته هایی کرده یا زمانیکه مقصد بسته را دریافت می کند ، آن را محاسبه می کند.
Round trip delay time
نحوه عملکرد و محاسبه این روش همانند روش قبل بوده ، به علاوه اینکه مدت زمان بازگشت به مقصد نیز مورد محاسبه قرار می گیرد. این روش در آموزش شبکه و HTTP عمومیت بیشتری نسبت به روش قبل دارد ، به دلیل اینکه از یک دید مجزا اندازه گیری می کند. توجه داشته باشید که در این شیوه ، محاسبه دوره عکس العمل ، منحصر به مقدار زمان زمان رفت و برگشتی است که سیستم مقصد ، صرف پردازش یک بسته می کند. تاکید می شود ، بیشتر پلتفرم های نرم افزاری ، سرویسی ویژه به نام Ping دارند. در آموزش شبکه و HTTP این سرویس هیچ پردازشی روی بسته های ندارد.