موضوع مقاله: پروتکل ارتباطات | مخاطب: عمومی | لحن: دانشنامه‌ای | ساختار: عنوان، مقدمه، 3 بخش، جمع‌بندی | مقاله: | # پروتکل ارتباطات | مقدمه: پروتکل ارتباطات یا شیوه‌نامه ارتباطات، قرارداد ارتباطاتفرهنگستان زبان و ادب فارسی، در رشته‌های مهندسی مخابرات و رایانه و فناوری اطلاعات، واژهٔ «قرارداد» را برابر «پروتکل» نهاده است. | ## بخش 1: پروتکل ارتباطات | برای مطالعهٔ یک کتاب نوشته‌شده به فارسی باید خواننده شناخت مناسبی از زبان فارسی داشته باشد. برای ارتباط موفقیت‌آمیز دو دستگاه در شبکه، باید هر دو دستگاه از یک پروتکل یکسان استفاده کنند. تاریخچه اصطلاح پروتکل در زمینه تبادل داده‌ها اولین بار در یک تفاهم‌نامه استفاده شد. تفاهم‌نامه‌ای که با عنوان پروتکل برای استفاده در شبکه تبادل داده NPL توسط راجر اسکانتلبوری و کیت بارتلت در آوریل ۱۹۶۷ نوشته شده است. برای مدتی در اواخر دهه ۱۹۸۰ و اوایل دهه ۱۹۹۰، مهندسان، سازمان‌ها و کشورها درمورد اینکه کدام استاندارد، مدل OSI یا مجموعه پروتکل اینترنت ، بهترین و قوی‌ترین شبکه‌های رایانه ای را ایجاد می‌کند، به دو قطب تقسیم شدند. مفهوم اطلاعاتی که از طریق شبکه یا رسانه‌های دیگر بین دستگاه‌ها رد و بدل می‌شوند، طبق قوانین و قراردادهایی اداره می‌شوند که می‌توانند در جزئیات پروتکل ارتباطات تنظیم شوند. ماهیت ارتباطات، داده‌های واقعی رد و بدل شده و هرگونه رفتار وضعیتمحور، توسط این مشخصات (جزئیات پروتکل ارتباطات) تعریف می‌شود. در سیستم‌های محاسبات دیجیتال، قوانین را می‌توان با الگوریتم‌ها و ساختارهای داده بیان کرد. در مقابل، چون حافظه مشترک وجود ندارد، سیستم‌های ارتباطی باید با استفاده از یک رسانه انتقال مشترک با یکدیگر ارتباط برقرار کنند. انتقال لزوماً قابل اعتماد نیست و ممکن است سیستم‌های متفاوت از سخت‌افزار یا سیستم عامل‌های مختلفی استفاده کنند. برای پیاده‌سازی پروتکل شبکه، ماژول‌های پروتکلِ نرم‌افزار با یک چارچوب پیاده‌سازی شده روی سیستم عامل ماشین ارتباط برقرار می‌کنند. وقتی الگوریتم‌های پروتکل به زبان برنامه‌نویسی قابل حمل بیان می‌شوند، ممکن است نرم‌افزار پروتکل از سیستم عامل مستقل شود. | ## بخش 2: پروتکل ارتباطات | در زمان توسعه اینترنت ، لایه بندی انتزاعی به عنوان یک طراحی موفق برای طراحی کامپایلر و سیستم عامل اثبات شده بود و با توجه به شباهت‌های بین زبان‌های برنامه‌نویسی و پروتکل‌های ارتباطی، برنامه‌های شبکه یکپارچه در ابتدا به پروتکل‌های همکاری تجزیه می‌شدند.Comer 2000, Sect. این باعث ایجاد مفهوم پروتکل‌های لایه ای می‌شود که امروزه پایهٔ طراحی پروتکل را تشکیل می‌دهد.Sect. پروتکل‌ها را می‌توان بر اساس عملکرد در گروه‌ها تقسیم کرد، به عنوان مثال، یک گروه از پروتکل‌های حمل و نقل وجود دارد. ویژگی‌ها بر روی لایه‌ها ترسیم می‌شوند، هر لایه یک کلاس متمایز از مشکلات مربوط به خود را حل می‌کند. داده‌های دریافت شده باید ارزیابی شود، بنابراین یک پروتکل باید شامل قوانینی باشد که داده را توصیف می‌کند. قوانین دیگر تعیین می‌کنند که آیا داده‌ها برای زمینه ای که در آن مبادله انجام می‌شود، معنی دار هستند یا خیر. پیام‌ها برای برقراری ارتباط در سیستم‌های ارتباطی ارسال و دریافت می‌شوند؛ بنابراین پروتکل‌ها باید قوانین حاکم بر انتقال را مشخص کنند. بیت‌ها در قسمت‌ها تقسیم می‌شوند و هر فیلد اطلاعات مربوط به پروتکل را حمل می‌کند. قالب‌های آدرس برای تبادل داده آدرس‌ها برای شناسایی فرستنده و گیرنده(ها) استفاده می‌شوند. آدرس‌ها در ناحیه هدرِ پیامِ بیتی هستند، و به گیرنده‌ها اجازه می‌دهد تا تشخیص دهند که پیام‌ها مورد توجه هستند یا خیر، باید پردازش شوند یا باید از آنها صرف نظر شود. ارتباط بین فرستنده و گیرنده با استفاده از یک جفت آدرس (آدرس فرستنده، آدرس گیرنده) قابل شناسایی است. معمولاً به ازای برخی از مقادیر، آدرس معنی خاصی می‌دهد؛ مثلاً اگه مقدار همهٔ اجزای آدرس برابر عدد ۱ باشد، به معنی همه گیر بودن پیام است؛ بنابراین ارسال به این آدرس باعث می‌شود که پیام به همهٔ اجزاء شبکه محلی ارسال شود. | ## بخش 3: پروتکل ارتباطات | تطبیق آدرس گاهی پروتکل‌ها باید یک آدرس از یک طرح را به آدرس در طرح دیگری تبدیل کنند؛ مثلاً تبدیل یک آدرس IP به یک آدرس MAC اترنت. در این حالت سیستم‌های واسطه ای که در طول مسیر به گیرنده(ها) مورد نظر وجود دارند که فرستنده برای ارسال داده، ابتدا داده را به این واسطه‌ها ارسال می‌کند و واسطه‌ها نیز پیام را تا گیرنده ارسال می‌کنند باید پیام‌ها را از طرف فرستنده ارسال کنند. تشخیص خطاهای انتقال شناسایی خطا در شبکه‌هایی که امکان خراب شدن داده‌ها وجود دارد، ضروری است. در یک رویکرد مشترک، CRC ناحیه داده به انتهای بسته‌ها اضافه می‌شود و این امکان را برای گیرنده فراهم می‌کند تا تفاوت‌های ناشی از فساد را تشخیص دهد. از دست دادن اطلاعات - وقفه و تلاش مجدد بسته‌ها ممکن است در شبکه گم شوند یا در انتقال به تأخیر بیفتند. برای کنار آمدن با این مسئله، تحت برخی پروتکل‌ها، یک فرستنده ممکن است در مدت زمان معینی انتظار دریافت صحیح از گیرنده را داشته باشد؛ بنابراین، در مهلت زمانی، فرستنده ممکن است نیاز به انتقال مجدد اطلاعات داشته باشد. در صورت قطع پیوند دائمی ، انتقال مجدد هیچ تأثیری ندارد بنابراین تعداد انتقال مجدد محدود است. جهت جریان اطلاعات اگر انتقال فقط در یک جهت به‌صورت همزمان در پیوندهای نیمه دوبلکس یا از طریق یک فرستنده در یک بار به عنوان یک رسانه مشترک انجام شود، باید جهت دهی شود. کنترل توالی اگر bit bitهای طولانی به قطعات تقسیم شده و سپس به صورت جداگانه روی شبکه ارسال شوند، ممکن است قطعات از دست بروند یا به تأخیر بیفتند یا در برخی از انواع شبکه‌ها مسیرهای مختلف را به مقصد برسانند. کنترل جریان هنگامی که فرستنده سریعتر از گیرنده یا تجهیزات شبکه میانی می‌تواند انتقال‌ها را پردازش کند ، کنترل جریان لازم است. | ## جمع‌بندی | صف کشیدن فرایندهای ارتباطی یا ماشین‌های دولتی از صف (یا "بافر")، معمولاً صف‌های FIFO، برای رسیدگی به پیام‌های ترتیب ارسال شده استفاده می‌کنند و ممکن است گاهی چندین صف با اولویت بندی متفاوت داشته باشند.