توضیح کامل HTTP
در این مطلب در مورد توضیح پروتکل HTTP صحبت خواهبم کرد
پروتکل HTTP به معنی پروتکل انتقال فوق متن (Hyper text transfer Protocol) است که شامل مجموعهای از قوانین برای انتقال فایلها از جمله متن، تصاویر گرافیکی، صدا، ویدئو و دیگر فایلهای مولتیمدیا در شبکه وب میشود.
وقتی کاربر مرورگر وب را باز میکند بهطور غیرمستقیم استفاده از پروتکل HTTP را آغاز میکند و درواقع پروتکل HTTP یک پروتکل لایه دسترسی است که برروی پروتکل TCP/IP اجرا میشود.
http بدین مفهوم است که فایلها می توانند شامل ارجاعهایی به فایلهای دیگر باشند که موجب درخواستهای اضافی برای انتقال میشود. هر سرور وب علاوه بر صفحات موجود برروی آن یک deamon دارد که برای دریافت و پاسخگویی به درخواستها تعبیه شده است.
مرورگر وب شما درواقع یک سرویس گیرنده http است که درخواست را برای سرور میفرستد. وقتی مرورگر وب کاربر با وارد کردن URL یا آدرس IP، فایلی را درخواست میکند، مرورگر وب درخواستی برای آن فایل ارسال میکند و مرورگر وب درخواست را به فرمت http درمیآورد و برای سرور ارسال میکند و فایلها بعد از دریافت از سرور برای سیستم درخواست کننده اولیه میفرستد.
در آخرین نسخه پروتکل HTTP فایلهای وب را سریعتر منتقل و آخرین سرورهای وب و مرورگرها را پشتیبانی میکند.
جزییات بیشتری از پروتکل HTTP
لازم به ذکر است که این پروتکل از Handshaking برای ارسال و دریافت داده ها استفاده می کند. در Handshaking برای شروع و پایان عملیات دریافت و ارسال بسته های اطلاعاتی بین سرور و کلاینت، سوالاتی از مقصد پرسیده می شود.
بعنوان مثال فرض کنید کلاینت A می خواهد از سرور B داده هایی را دریافت نماید. برای این منظور A در ابتدا درخواستی را به B می فرستد تا آمادگی B را برای ارسال پرسوجو نماید. در اینحالت A صبر خواهد کرد تا B جوابی را به این پرسش ارسال نماید. پس از آنکه B آمادگی را خود اعلام کرد، A پیامی را سمت B می فرستد و از او می خواهد تا داده های اطلاعاتی را بفرستد. B پیام را دریافت می کند و اطلاعات را آماده می کند و آن را به بسته های کوچکتری تقسیم می کند و توسط پروتکل Handshaking آنها را پشت سر هم و به ترتیب ارسال می کند.
لازم به ذکر است که پروتکل TCP/IP که در پروتکل HTTP مورد استفاده قرار می گیرد، امنیت داده ها و تضمین ارسال آنها را تماما بر عهده گرفته است. این پروتکل بر روی لایه هایی قرار دارد و معماری این پروتکل بصورت چند لایه است.