پروتکل (Protocol) چیست؟
پروتکل مجموعهای استاندارد از قوانین است که به دستگاههای الکترونیکی اجازه میدهد با یکدیگر ارتباط برقرار کنند. این قوانین شامل نوع دادههایی است که امکان انتقال آنها وجود دارد، چه دستوراتی برای ارسال و دریافت دادهها استفاده میشوند و چگونه انتقال دادهها تایید میشود.
به بیان ساده تر، شما میتوانید پروتکل را به عنوان یک «زبان گفتاری» در نظر بگیرید. هر زبانی قوانین و واژگان خاص خود را دارد. اگر دو نفر یک زبان مشترک داشته باشند، میتوانند به طور موثر با هم ارتباط برقرار کنند. به همین ترتیب، اگر دو دستگاه سخت افزاری از یک پروتکل (Protocol) پشتیبانی کنند، بدون در نظر گرفتن سازنده یا نوع دستگاه، میتوانند با یکدیگر ارتباط برقرار کنند. به عنوان مثال، یک گوشی آیفون (اَپل) میتواند با استفاده از یک پروتکل استاندارد «ایمیل» ، یک ایمیل به دستگاه اندرویدی ارسال کند. یک کامپیوتر مبتنی بر ویندوز میتواند یک صفحه وب را از یک وب سرور مبتنی بر یونیکس با استفاده از یک پروتکل وب استاندارد بارگیری کند.
پروتکلها برای چندین برنامه مختلف وجود دارند. به عنوان مثال میتوان به شبکههای سیمی (به عنوان مثال، اترنت)، شبکههای بی سیم (به عنوان مثال، 802.11ac) و ارتباطات اینترنتی (به عنوان مثال، IP) اشاره کرد. مجموعه پروتکل اینترنت، که برای انتقال دادهها از طریق اینترنت استفاده میشود، شامل ده ها پروتکل است.
انواع پروتکل ها
- لایه پیوند – PPP، DSL، Wi-Fi و غیره.
- لایه اینترنت – Ipv4، IPv6 و غیره
- لایه انتقال – TCP، UDP و غیره
- لایه برنامه – HTTP، IMAP، FTP و غیره…
–پروتکل های لایه پیوند : ارتباط بین دستگاهها را در سطح سخت افزاری برقرار میکنند. برای انتقال داده ها از یک دستگاه به دستگاه دیگر، سخت افزار هر دستگاه باید از پروتکل لایه پیوند یکسانی پشتیبانی کند.
-پروتکل های لایه اینترنت : برای شروع انتقال داده ها و مسیریابی آنها از طریق اینترنت استفاده میشود.
-پروتکل های لایه انتقال: نحوه ارسال، دریافت و تایید بسته ها را تعریف میکنند.
-پروتکل های لایه برنامه : حاوی دستوراتی برای برنامه های خاص هستند.
بهعنوان مثال، یک مرورگر وب از HTTPS برای دانلود ایمن محتویات یک صفحه وب از سرور وب استفاده میکند. یک سرویس گیرنده ایمیل از SMTP برای ارسال پیام های ایمیل از طریق سرور ایمیل استفاده میکند.
بیشتر بخوانید: آشنایی با پروتکل Spanning Tree
اهمیت پروتکل ها
پروتکل ها جنبه اساسی ارتباطات دیجیتال هستند. در بیشتر موارد، پروتکل ها در پس زمینه کار میکنند، بنابراین لازم نیست کاربران معمولی بدانند هر پروتکل چگونه کار میکند. با این وجود، آشنایی با برخی از پروتکل های رایج ممکن است مفید باشد تا بتوانید تنظیمات برنامه های نرم افزاری مانند مرورگرهای وب و کلاینت های ایمیل را بهتر درک کنید.
سطوح یک پروتکل
یک پروتکل عمدتا سه سطح دارد که به شرح زیر است:
سطح سخت افزار: در این سطح، پروتکل دستگاه های سخت افزاری را قادر میسازد تا برای مقاصد مختلف با یکدیگر ارتباط برقرار کرده و تبادل اطلاعات میکنند.
سطح نرمافزار: در سطح نرمافزار، پروتکل نرمافزارهای مختلف را قادر میسازد تا با یکدیگر ارتباط برقرار کرده و به صورت مشترک کار کنند.
سطحApplication : در این سطح، پروتکل برنامه های کاربردی را قادر میسازد تا برای اهداف مختلف با یکدیگر ارتباط برقرار کرده و با یکدیگر تبادل اطلاعات کنند.
از این رو پروتکل ها را می توان در سطوح سخت افزاری، نرم افزاری و کاربردی پیاده سازی کرد.
پروتکل های استاندارد و پرتکل های اختصاصی
پروتکل ها را میتوان به طور کلی به دو نوع زیر تقسیم کرد:
- پروتکل های استاندارد
- پروتکل های اختصاصی
بیایید تک تک آنها را بررسی کنیم:
پروتکل های استاندارد
یک پروتکل استاندارد پروتکل ای اجباری برای همه دستگاه ها است. چندین دستگاه را پشتیبانی میکند و به عنوان یک استاندارد عمل میکند.
پروتکل های استاندارد مختص وندور نیستند، یعنی مختص یک شرکت یا سازمان خاص نیستند. آنها توسط گروهی از کارشناسان از سازمانهای مختلف توسعه یافتهاند.
این پروتکل ها به صورت عمومی در دسترس هستند و ما نیازی به پرداخت هزینه برای آنها نداریم. برخی از نمونه های پروتکل های استاندارد عبارتند از FTP، DNS، DHCP، SMTP، TELNET، TFTP و غیره.
پروتکل های اختصاصی
پروتکلهای اختصاصی توسط یک سازمان فردی برای دستگاه های خاص خود توسعه مییابد. اگر بخواهیم از پروتکل های آنها استفاده کنیم باید از سازمان مجوز بگیریم.
نوع اختصاصی یک پروتکل استاندارد نیست و فقط از دستگاه های خاصی پشتیبانی میکند. ممکن است مجبور شویم برای این پروتکل ها هزینه بپردازیم.
برخی از نمونه های پروتکل های اختصاصی عبارتند از IMessage، Apple Talk و غیره.
Syntax در مبحث پروتکل ها چیست؟
سینتاکس به ساختار یا قالب داده ها و سطوح سیگنال اشاره دارد. نحوه خواندن داده ها را در قالب بیت یا فیلد نشان میدهد. همچنین ترتیب ارائه داده ها به گیرنده را نیز تعیین میکند.
مثال: یک پروتکل ممکن است اندازه یک بسته داده 16 بیت باشد. که در آن، 4 بیت اول آدرس فرستنده، 4 بیت بعدی آدرس گیرنده، 4 بیت بعدی بیت های چک جمع و 4 بیت آخر حاوی پیام هستند. بنابراین، هر ارتباطی که از آن پروتکل پیروی میکند باید داده 16 بیتی ارسال کند.
پیشنهاد ما: دوره آموزش زبان PHP (از مقدماتی تا پیشرفته)
توابع پروتکل ها
عملکردهای اصلی یک پروتکل به شرح زیر است:
- توالی داده ها: عمدتاً به داده ها در بسته ها اشاره دارد، یعنی کل داده ها را به برخی از بسته ها تقسیم می کند.
- جریان داده: عمدتاً با ارسال داده ها به مقصد صحیح سروکار دارد، یعنی جریان داده ها صحیح است یا خیر.
- مسیریابی داده: به انتخاب بهترین مسیر برای انتقال داده بین فرستنده و گیرنده اشاره دارد زیرا مسیرهای زیادی از فرستنده به گیرنده وجود دارد و شما باید بهترین مسیر ممکن را انتخاب کنید.
- کپسوله سازی: به فرآیند گرفتن یک پروتکل و انتقال آن به پروتکل دیگری اشاره دارد.
- Segmentation & Reassembly: با بخش بندی پیام داده سروکار دارد، یعنی زمانی که داده ها از لایه پروتکل بالایی به پایین جریان مییابد، داده ها را به بسته ها منتقل میکند، و مونتاژ مجدد برعکس تقسیم بندی است، یعنی همه بستهها قطعه بندی شده به ترتیب صحیح در قسمت جمع آوری می شوند. سمت گیرنده
- کنترل اتصال: انتقال داده های اتصال گرا را برای موارد داده طولانی تضمین می کند.
- Multiplexing: امکان ترکیب سیگنال های واحد انتقال چندگانه یا کانال های پروتکل های سطح بالاتر را در یک واحد انتقال از یک پروتکل سطح پایین تر فراهم می کند. Multiplexing می تواند به سمت بالا یا پایین باشد.
- تحویل سفارش داده شده: پروتکل با ارائه یک شماره توالی منحصر به فرد برای هر بسته داده، تحویل سفارش داده شده را تسهیل می کند. وظیفه فرستنده حفظ تحویل سفارش داده شده است. با انجام این کار، گیرنده داده ها را به همان ترتیب ارسال شده توسط فرستنده دریافت می کند.
- خدمات انتقال: عمدتاً با اولویت، کیفیت خدمات (QoS) و امنیت بسته های داده سروکار دارد.
- آدرس دهی: عمدتاً با سطوح آدرس دهی، محدوده آدرس دهی، شناسه های ارتباطی و حالت های آدرس دهی سروکار دارد.
- کنترل جریان: محدود کردن جریان داده ها را تسهیل می کند. عملکرد انتهای گیرنده برای حفظ کنترل جریان داده ها است.
- کنترل خطا: با تشخیص خطا (با استفاده از بیتهای جمع کنترل) و کنترل آن سروکار دارد. اگر در حین انتقال داده ها خطایی تشخیص داده شود، درخواست ارسال مجدد داده ها توسط گیرنده برای فرستنده ارسال می شود و بسته داده های خراب دور انداخته می شود.
در این مطلب با معنا و عملکرد پروتکل آشنا شدیم. پروتکل شبکه مجموعهای از قوانین تعیین شده است که نحوه انتقال داده ها بین دستگاه های مختلف در یک شبکه را تعیین میکند. اساساً، این امکان را به دستگاه های متصل میدهد تا بدون توجه به هر گونه تفاوت در فرآیندهای داخلی، ساختار یا طراحی با یکدیگر ارتباط برقرار کنند.
دیدگاهتان را بنویسید