پروتکل ارتباطات
قرارداد ارتباطات یا پروتکل ارتباطات در شبکه‌های رایانه‌ای به مجموعه قوانینی گفته می‌شود که چگونگی ارتباطات را قانونمند می‌کند. نقش پروتکل در کامپیوتر مانند نقش زبان برای انسان است. برای مطالعۀ یک کتاب نوشته‌شده به فارسی باید خواننده شناخت مناسبی از زبان فارسی داشته باشد. برای ارتباط موفقیت‌آمیز دو دستگاه در شبکه، باید هر دو دستگاه از یک پروتکل یکسان استفاده کنند.
اصطلاح "پروتکل" در زمینه تبادل داده ها اولین بار در یک تفاهم‌نامه استفاده شد. تفاهم‌نامه‌ای که با عنوان "پروتکل برای استفاده در شبکه تبادل داده NPL" توسط راجر اسکانتلبوری و کیت بارتلت در آوریل 1967 نوشته شده است .
در آرپانت ،در سال 1969، شروع ارتباط هاست به هاست با پروتکل 1822 بود که نحوه ی انتقال پیام به یک IMP را تعریف می کرد. برنامه کنترل شبکه برای ARPANET برای اولین بار در سال 1970 اجرا شد. رابط NCP با پیاده سازی پروتکل های ارتباطی سطح بالاتر به نرم افزار کاربردی اجازه می دهد تا در سراسر ARPANET متصل شود.این یک نمونه ی اولیه از مفهوم لایه بندی پروتکل بود.
تحقیقات شبکه در اوایل دهه 1970 توسط رابرت ای. کان و وینت سرف منجر به تدوین برنامه کنترل انتقال (TCP) شد. مشخصات آن توسط Cerf با Yogen Dalal و Carl Sunshine در دسامبر 1974 نوشته شده است ، درحالی که هنوز که یک طراحی یکپارچه است.
گروه کاری شبکه بین المللی با یک استاندارد دیتاگرام بدون اتصال موافقت کرد که در سال 1975 به CCIT ارائه شد اما توسط ITU یا ARPANET پذیرفته نشد. تحقیقات بین المللی ، علی الخصوص کارهای Rémi Després ، به توسعه استاندارد X.25 ، مبتنی بر مدارهای مجازی توسط ITU-T در 1976 ، کمک کرد. تولیدکنندگان رایانه پروتکل های اختصاصی مانند معماری شبکه سیستم ها ی (IBM(SNA ،شرکت تجهیزات دیجیتال DECent و سیستم های شبکه زیراکس را ایجاد کردند .
ساختار TCP به عنوان پشته پروتکل مدولار دوباره طراحی شد. در اصل به آن "IP / TCP گفته می شد و" در سال 1982 در SATNET و در ژانویه 1983 بر روی ARPANET نصب شد. همانطور که در و ذکر شده است ،توسعه ی یک مجموعه پروتکل کامل تا سال 1989، پایه و اساس رشد TCP / IP را به عنوان یک مجموعه پروتکل جامع به عنوان جزء اصلی اینترنت در حال ظهور بنا نهاد.
کار بین المللی در مورد یک مدل مرجع برای استانداردهای ارتباطی منجر به مدل OSI شد که در سال 1984 منتشر شد. برای مدتی در اواخر دهه 1980 و اوایل دهه 1990 ، مهندسان ، سازمان ها و کشورها درمورد اینکه کدام استاندارد ، مدل OSI یا مجموعه پروتکل اینترنت ، بهترین و قوی ترین شبکه های رایانه ای را ایجاد می کند ، به دو قطب تقسیم شدند.
اطلاعاتی که از طریق شبکه یا رسانه های دیگر بین دستگاه ها رد و بدل می شوند ، طبق قوانین و قراردادهایی اداره می شوند که می توانند در جزئیات پروتکل ارتباطات تنظیم شوند. ماهیت ارتباطات ، داده های واقعی رد و بدل شده و هرگونه رفتار وضعیتمحور ، توسط این مشخصات(جزئیات پروتکل ارتباطات) تعریف می شود. در سیستم های محاسبات دیجیتال ، قوانین را می توان با الگوریتم ها و ساختارهای داده بیان کرد . پروتکل ها برای ارتباط الگوریتم ها یا زبان های برنامه نویسی برای محاسبات هستند.
سیستم عامل ها معمولاً مجموعه ای از فرایندهای هماهنگ را در اختیار دارند که داده های مشترک را برای برقراری ارتباط با یکدیگر دستکاری می کنند. این ارتباط توسط پروتکل های قابل درک اداره می شود ، که می توانند در خودِ کد فرآیند قرار گیرند. در مقابل ، چون حافظه مشترک وجود ندارد ، سیستم های ارتباطی باید با استفاده از یک رسانه انتقال مشترک با یکدیگر ارتباط برقرار کنند. انتقال لزوماً قابل اعتماد نیست و ممکن است سیستم های متفاوت از سخت افزار یا سیستم عامل های مختلفی استفاده کنند.
برای پیاده سازی پروتکل شبکه ، ماژول های پروتکلِ نرم افزار با یک چارچوب پیاده سازی شده روی سیستم عامل ماشین ارتباط برقرار می کنند. این چارچوب عملکرد شبکه سیستم عامل را پیاده سازی می کند. وقتی الگوریتم های پروتکل به زبان برنامه نویسی قابل حمل بیان می شوند ، ممکن است نرم افزار پروتکل از سیستم عامل مستقل شود. معروف ترین چارچوب ها مدل TCP / IP و مدل OSI هستند .
در زمان توسعه اینترنت ، لایه بندی انتزاعی به عنوان یک طراحی موفق برای طراحی کامپایلر و سیستم عامل اثبات شده بود و با توجه به شباهت های بین زبان های برنامه نویسی و پروتکل های ارتباطی ، برنامه های شبکه یکپارچه در ابتدا به پروتکل های همکاری تجزیه می شدند. این باعث ایجاد مفهوم پروتکل های لایه ای می شود که امروزه پایه ی طراحی پروتکل را تشکیل می دهد.
سیستم ها معمولاً از یک پروتکل تکی برای انتقال داده استفاده نمی کنند. بلکه از مجموعه ای از پروتکل ها استفاده می کنند ، که بعضاً مجموعه پروتکل نامیده می شود. برخی از شناخته شده ترین مجموعه های پروتکل TCP / IP ، IPX / SPX ، X.25 ، AX.25 و AppleTalk هستند .
پروتکل ها را می توان بر اساس عملکرد در گروه ها تقسیم کرد ، به عنوان مثال ، یک گروه از پروتکل های حمل و نقل وجود دارد . ویژگی ها بر روی لایه ها ترسیم می شوند ، هر لایه یک کلاس متمایز از مشکلات مربوط به خود را حل می کند. به عنوان مثال: برنامه های کاربری ، حمل و نقل ، اینترنت و توابع رابط شبکه. برای انتقال پیام ، باید از هر لایه یک پروتکل انتخاب شود. انتخاب پروتکل بعدی با ادامه دادن پیام با انتخاب پروتکل برای هر لایه انجام می شود.
دستیابی به داده ها از طریق شبکه، تنها بخشی از مشکل یک پروتکل است. داده های دریافت شده باید ارزیابی شود ، بنابراین یک پروتکل باید شامل قوانینی باشد که داده را توصیف می کند. این نوع قوانین بیان کننده ی "نحوه ی" ارتباط است. قوانین دیگر تعیین می کنند که آیا داده ها برای زمینه ای که در آن مبادله انجام می شود ، معنی دار هستند یا خیر.این نوع قوانین بیان کننده ی "معنادار بودن" ارتباطات است.
پیام ها برای برقراری ارتباط در سیستم های ارتباطی ارسال و دریافت می شوند. بنابراین پروتکل ها باید قوانین حاکم بر انتقال را مشخص کنند. به طور کلی ، بسیاری از موارد زیر باید مورد توجه قرار گیرند: