در مطلب قبلی که با عنوان مفاهیم دنیای وب و برنامه نویسی : آشنایی با شبکه و کاربردهای آن منتشر شد تعریف جامعی از شبکههای کامپیوتری و دلایل اهمیت آن اشاره نمودیم. با دانستن چیستی پروتکل و شیوه عملکرد آن متوجه میشویم که کامپیوترها چگونه با یکدیگر ارتباط برقرار میکنند. بنابراین در این قسمت به مفهوم پروتکل میپردازیم.
برقراری ارتباط بین کامپیوترها
کامپیوترها به یک ساختار، پایه و اساس کاملاً مطمئن برای برقراری ارتباط با یکدیگر نیاز دارند. انسانها به راحتی با یکدیگر صحبت میکنند و انسانها امروزه روشهای مختلفی برای برقراری ارتباط با همدیگر پیدا میکنند. به عنوان مثال من به شما میگویم "ممکنه یک لحظه به حرف من گوش بدی ؟" و طبیعتاً عکس العمل مناسب را به جمله ی من دارید. این به دلیل وجود زبان یکسان برای برقراری ارتباط بین ما است. اما در آن سوی دیگر ماجرا کامپیوترها به این راحتی نمیتوانند با یکدیگر ارتباط برقرار کند. پروتکل راهکاری برای پاسخ به این نیاز است. پروتکل ساختاری مبتنی بر بسته است که از یک سمت ارسال و در سمت دیگر دریافت میشود. البته ممکن است گاهی فقط ارسال شود.
اینترنت شبکه ای متشکل از تعداد زیادی شبکه ها، کامپیوترهای مختلف است. بعضی از این شبکهها توسط کابل به یکدیگر متصل هستند بعضی دیگر با وایفای یا اتصال بیسیم. برخی از آنها در فواصل کوتاهتری هستند تعدادی از کابلها از اقیانوسها گذشته اند. در واقع در این حالت به صورت فیزیکی بهم دیگر متصل هستند اما چه چیزی بین این کابلها رد و بدل میشود ؟ لازم است راجع به بسته(Packet) صحبت کنیم.
محتویات یک بسته(Packet) چیست ؟
بسته یک واحد با ساختار و اندازه ای ثابت است. در اصل اطلاعات از طریق بستههای به کامپیوترها ارسال میشود. اما اگر اطلاعات ما حجیم باشد چه اتفاقی میافتد ؟ تصور کنید قرار است تصویر زیر را از طریق یک کامپیوتر به کامپیوتر دیگری در شبکه اینترنت ارسال کنیم.
طبیعتاً حجم اطلاعات یک عکس برای ارسال در شبکه در قالب یک بسته خیلی زیاد است پس کامپیوتر تصمیم میگیرد که عکس را به بخشهای کوچکی تقسیم کند و هر بخش کوچک را به کامپیوتر دیگر ارسال کند.
به عنوان مثال کامپیوتر A به کامپیتر B یک بسته ارسال میکند. به نظر شما محتویات و ساختار بسته ارسالی چه چیزی است ؟
مثلاً بخشی از آن درباره نوع بسته ارسالی هست. بخش دیگری درباره اینکه کامپیوتر B پس از دریافت بسته چه کاری را انجام دهد ؟
پروتکل یکی از اساسیترین مباحث مطرح بین شبکههای کامپیتوری است.
Node چیست؟
در شبکههای کامپیوتری هر عضو متصل به شبکه را یک نود، گره مینامند. به عنوان مثال يک کامپيوتر ، يک پرينتر و يا يک مودم میتواند به عنوان نود در شبکه وجود داشته باشد. بنابراین در این نوشتار به جای نوشتن کامپیوتر و .. از نود در تعاریف و پاراگرافها استفاده میکنیم.
شبکههای کامپیوتری متشکل از میلیاردها کامپیوتر است هر نود میتواند با دیگر کامپیوترهای موجود در شبکه ارتباط برقرار کنند. سوال کلیدی در این ارتباط این است که نودها به یکدیگر چه میگویند ؟ چه چیزی بین آنها منتقل میشود؟ البته که به صورت آرایه ای از 0ها و 1ها است. اما واقعا پروتکلها بر چه اساس و ساختاری ساخته شده اند ؟ در این مقاله به تمامی سوالات مطرح شده پاسخ داده خواهد شد. در نوشتار پیش رو با پروتکل و انواع آن آشنا میشویم.
هزاره سوم با مفاهیمی مثل انقلاب تکنولوژیکی، جهانی شدن و توسعه پایدار به همراه بود. با توجه به رشد روزافزون جمعیت و نیز افزایش تعدادکاربران متصل به شبکه جهانی اینترنت، بنابراین تعداد استفاده کنندگان از اینترنت به عنوان ابزاری کارآمد افزایش چشمگیری داشت. به دنبال آن تعداد ارتباطات کاربران با دستگاههای مختلف و در زبانهای مختلف افزایش پیدا کرد. این ارتباطات شامل راههای زیادی است که دادهها را از طریق نرم افزارهای مختلف پیاده سازی شده منتقل میشوند. بنابراین اگر استانداردهای ثابت که بر اساس آن شیوه ارتباط کاربر با دادهها و نحوه رفتار دستگاهها با دادهها کنترل شود، وجود نداشته باشد. برقراری ارتباط در سرتاسر جهان ممکن نخواهد بود.
پروتکل چیست ؟
به شیوه برقراری ارتباط بین نودهای موجود در شبکه پروتکل میگویند به بیانی دیگر به مجموعه ای دستورالعمل ها، قراردادها و قوانین یکسان برای تمامی نودها را پروتکل میگویند. در تعریف دیگری میتواند پروتکل را به این صورت تعریف کرد که : برای برقراری ارتباط بین تمام اجزای متصل به شبکه و بهره مندی و استفاده از امکانات سخت افزاری و ارتباط برقرار کردن بین تمام اجزای مختلف یک شبکه به مجموعه ای از قوانین و دستورالعملها نیازمندیم که به آن پروتکل میگویند.
پروتکل مجموعه قوانینی نرم افزاری است که رعایت آنها باعث بهره برداری از سخت افزارها و نرم افزارهای متصل در یک شبکه میشود.
ما در این مثال ساده ای که در این مطلب بررسی کردیم فقط ارسال یک بسته ساده را مورد بررسی قرار دادیم اما در واقعیت تعداد زیادی پروتکل وجود دارد که دارای پیچیدگیها و عملکردهای خاصی هستند. مانند IP
پروتکلهای مختلفی برای اهداف مختلفی ایجاد شده اند پروتکلها چگونه و به چه منظوری طراحی و و به چه روشی خوانده میشوند؟ شایان ذکر است که پروتکلها توسط انسانها طراحی و پیاده سازی شده اند.به همین دلیل شاهد انواع مختلفی از پروتکلها هستیم که در ادامه به چند مورد از آنها اشاره میکنیم :
انواع پروتکل
در این بخش تمام پروتکل هایی که شما باید حداقل یک بار اسم آنها را بشنوید آورده شده است. اینترنت شامل پروتکلهای مختلفی است که هر کدام وظایفه مختلفی را انجام میدهند. تمامی سرویس هایی که شما استفاده میکنید در انتها با استفاده از یک پروتکل و یا چند تا پروتکل بستهها را از یک کامپیوتر به یک کامپیوتر دیگر ارسال میکند. مانند: ایمیل
انواع مختلفی از پروتکلها وجود دارد که نقش مهمی در برقراری ارتباط دستگاههای مختلف از طریق شبکه دارند. این پروتکلها عبارتند از:
TCP : پروتکل کنترل انتقال (Transmission Control Protocol)
SMTP : پروتکل ساده انتقال پست الکترونیکی (Simple mail transport Protocol)
FTP : پروتکل انتقال فایل (File Transfer Protocol)
HTTP : پروتکل انتقال ابَرمتن (Hyper Text Transfer Protocol)
HTTPS : پروتکل انتقال ابَرمتن ایمن (Hyper Text Transfer Protocol Secure)
Telnet: پروتکل اینترنت برای برقراری ارتباط با میزبانهای راه دور و پردازش محلی دادهها
Gopher: پروتکلی برای در اختیار قرار گذاشتن اطلاعات با استفاده از سیستمی از منوها، صفحات یا اتصالاتی به Telnet
FTAM : (مديريت و دسترسی انتقال فايل) که پروتکل دسترسی به فايل است
NCP : پروتکل هسته مرکزی
DNS : پروتکلی است که يک نام دامنه مثل https://7learn.com/ را به يک آدرس 46.4.96.10 تبديل مي کند.
STP : قسمتی از پشته پروتکل IPX/SPX مربوط به شرکت Novell
و ...
جمعبندی
در این مقاله با پروتکل و انواع مختلف آن آشنا شدیم. پیشنهاد میکنیم که حتماً ویدیو این قسمت را هم مشاهده کنید و سوالات خود در این زمینه را از ما بپرسید.