سلام به همه دوستان.
نمیدونم چند نفر از اونهایی که از اولین قسمت آموزش مفاهیم شبکه و اینترنت در راه اندازی ماژول ESP8266 همراه ما بودند، باقی موندن! ولی اینو میدونم که اونهایی که تا این قسمت، مطالب را خوندن و دنبال کردند، حتماً افرادی پیگیر و مصمم هستند. ممکنه مطالبی که نوشتم خیلی و کاملاً صحیح نبوده باشند و دوستان متخصص در زمینه کامپیوتر به من ایراد بگیرند؛ ولی تمام وارد گفته شده ابتدا با مطلب مشابه توی چندین سایت و گاهی در کتاب ها، مقایسه میشدند و در صورت تشابه و صحت اونها، سعی بر نوشتن خلاصه مفید شده را داشتم.
اگر موافق هستید، بریم به ادامه توضیحات پروتکل ها بپردازیم:
پروتکل RIP (Routing Information Protocol)
پروتکل Routing Information (بهاختصار RIP) یکی از خانواده پروتکل های مسیریابی IP است و یک پروتکل Interior Gateway Protocol (بهاختصار IGP) است که برای توزیع اطلاعات مسیریابی در یک سیستم Autonomous (بهاختصار AS) طراحی شده است. پروتکل RIP یک پروتکل مسیریابی بردار ساده (simple vector) با بسیاری از پیادهسازیهای موجود در این زمینه است.
در یک پروتکل مسیریابی vector، روترها اطلاعات دسترسی به شبکه را با نزدیکترین همسایگان خود مبادله میکنند. بهعبارتدیگر، روترها مجموعه مقاصد (address prefixes) را که میتوانند به آنها برسند و آدرس هاب بعدی که برای رسیدن به آن مقصد باید به آن ارسال شود، به یکدیگر ارسال میکنند.
پروتکل SIP (Session Initiation Protocol)
پروتکل SIP یک پروتکل سیگنالینگ است که برای شروع، نگهداری و خاتمه جلسات (Sessions) در زمان واقعی (real-time) استفاده میشود که شامل برنامه های صوتی، تصویری و پیامرسانی است.
همچنین برای سیگنالدهی و کنترل جلسات ارتباطات چندرسانهای (Multimedia) در برنامه های تلفنی اینترنتی برای تماس صوتی و تصویری، در سیستمهای تلفنی IP خصوصی، در پیامرسانی فوری از طریق شبکههای پروتکل اینترنت (IP) و همچنین تماس تلفنی از طریق (VoLTE) LTE استفاده میگردد.
پروتکل SNMP (Simple Network Management Protocol)
پروتکل SNMP یا Simple Network Management Protocol چهارچوبیه که امکان انتقال اطلاعات رو بین دستگاههای یک شبکه محلی (LAN) یا شبکه گسترده (WAN) فراهم میکنه و بهصورت گسترده برای نظارت بر عملکرد اجزای شبکه و مدیریت اونها استفاده میشه. بدون وجود این پروتکلها ابزارهای مدیریت شبکه توانایی شناسایی دستگاهها، تعیین وضعیت این دستگاهها در لحظه، نظارت بر عملکرد شبکه و پیگیری تغییرات اون رو نداشتند.
پروتکل SOCKS
این یک پروتکل اینترنت است که بستههای شبکه را بین کلاینت و سرور بهوسیله پراکسی سرور انتقال میدهد. پروتکل SOCKS5 همچنین امکان اصالتسنجی کاربران را نیز ارائه میکند تا تنها کاربران شناسایی شده بتوانند از سرویس استفاده کنند.
ساکس در لایه پنجم (لایه نشست) مدل OSI کار میکند و هر برنامه کاربردی که بهعنوان ساکس سرور تنظیم شده است میتواند این سرویس را بر روی یکی از درگاههای آزاد موجود در سرور ارائه دهد.
پروتکل SSH (Secure Shell)
پوسته امن یا بهاختصار SSH یک پروتکل اینترنتی است که امکان تبادل اطلاعات با استفاده از یک کانال امن را بین دو دستگاه متصل در شبکه ایجاد میکند. دو نسخه اصلی این پروتکل به نامهای SSH1 یا SSH-1 و SSH2 یا SSH-2 شناخته میشوند. در ابتدا بر روی سیستمهای مبتنی بر یونیکس و لینوکس برای دسترسی به حساب های پوسته استفاده شد، SSH جایگزینی برای تل نت (Telnet) و سایر پوسته های ارتباط از راه دور غیر امن ایجاد شده است.
بهعنوان یک تعریف بسیار ساده میتوان SSH را اینگونه بیان کرد که SSH یک روش قدرتمند و پر استفاده و البته نرمافزاری است که برای دستیابی به امنیت شبکه طراحی شده است؛ هر بار که دادهای از طرف کامپیوتر به شبکه فرستاده میشود، بهصورت خودکار توسط SSH رمزنگاری میگردد. هنگامی که داده به مقصد خود میرسد بهصورت خودکار رمزگشایی میشود.
نتیجهای که خواهد داشت کدگذاری نامرئی خواهد بود. بدین صورت کاربران نهایی درگیر پروسه کدگذاری و کدگشایی نخواهند شد و از ارتباط امن خود میتوانند بهخوبی استفاده کنند. امنیت سیستم کدگذاری SSH با استفاده از الگوریتمهای پیچیده و مدرن تضمین میشود. تا آنجا که امروزه در سیستم های حیاتی و بسیار حساس از این سیستم استفاده میکنند. بهصورت معمول محصولاتی که از SSH استفاده میکنند از دو بخش کلاینت/سرور تشکیل میشوند. کلاینت یا همان کاربر با استفاده از تنظیمات سرور مربوط به آن وصل شده و سرور وظیفه تأیید هویت و قبول یا رد ارتباط را به عهده دارد.
پروتکل Telnet
کلمه Telnet مخفف Teletype Network Protocol است. به طور خلاصه، Telnet یک پروتکل کامپیوتری است که برای تعامل با کامپیوترهای راه دور ساخته شده است؛ همچنین ارتباط ترمینال به ترمینال را فعال میکند و میتواند برای اهداف مختلفی مورداستفاده قرار بگیرد. کلمه Telnet به ابزار خط فرمان تلنت نیز اشاره دارد که تحت سیستمعامل ویندوز و سیستمهای مشابه یونیکس از جمله مک، سرور مجازی لینوکس و سایرین موجود است.
ابزار Telnet اجازه دسترسی از راه دور به کاربر میدهد تا اتصال به ماشینهای راه دور را آزمایش کند و دستورات را از طریق کیبورد صادر نماید. اگرچه اکثر کاربران ترجیح میدهند با رابطهای گرافیکی کار کنند، Telnet یکی از سادهترین راهها برای بررسی اتصال در پورتهای خاص است. دادههای کاربر در یک باند با اطلاعات کنترل Telnet در یک اتصال داده 8 بیتی از طریق پروتکل کنترل انتقال (TCP) متصل می شوند.
پروتکل TLS/SSL (Transport Layer Security/Secure Sockets Layer)
پروتکل امنیتی لایه انتقال (Transport Layer Security)، بر پایه لایه سوکت های امن (Secure Sockets Layer) که یکی از پروتکل های رمزنگاری است و برای تأمین امنیت ارتباطات از طریق اینترنت بنا شده است. برای اطمینان از هویت طرف مقابل و تبادل کلید متقارن از گواهی X.509 و رمزنگاری نامتقارن استفاده میکند. این پروتکل امنیت انتقال داده ها را در اینترنت برای مقاصدی چون کار کردن با پایگاه های وب، پست الکترونیکی، نمابرهای اینتزنتی و پیام های فوری اینترنتی به کار می رود.
اگرچه TLS و SSL با هم تفاوتهای اندکی دارند؛ ولی قسمت عمدهای از این پروتکل کموبیش یکسان مانده است. طبق آنچه در استاندارد آمده است، URLهایی که نیاز به یک ارتباط از نوع SSL دارند با HTTPS بهجای HTTP شروع میشوند. پروتکلSSL یک پروتکل مستقل از لایه برنامه (Application Independent) است؛ بنابراین، پروتکلهایی مانند FTP, HTTP و شبکه راه دور قابلیت استفاده از آن را دارند. بااینوجود SSL برای پروتکلهای FTP, HTTP و IPsec بهینه شده است.
لایه انتقال Transport Layerو لایههای بعد از آن
پروتکل TCP (Transmission Control Protocol)
پروتکل کنترل انتقال (TCP) یکی از پروتکل های اصلی مجموعه پروتکل اینترنت است. این پروتکل در پیادهسازی اولیه شبکه و پایه و اساس اینترنت میباشد. پروتکل TCP به همراه پروتکل دیگری به نام IP فرایند تبادل داده در اینترنت را انجام میدهد؛ بنابراین، به کل مجموعه معمولاً TCP/IP گفته میشود. در نقلوانتقالات شبکهای، هر بستهای در هراندازه را میتوان بهراحتی با پروتکل TCP ارسال کرد. زیرا تمامی دادههایی که از طریق اتصال اینترنتی در حال رفتوبرگشت هستند، باید به تکههایی با اندازه تعیین شده تقسیم شوند که به این تکهها اصطلاحاً packets گفته میشود.
پروتکل TCP مخفف Transmission Control Protocol است که وظیفه تکهتکه کردن یک فایل در زمان ارسال و درنهایت مونتاژکردن آن در مقصد را دارد. البته وظیفه پروتکل TCP به این مورد محدود نمیشود؛ ولی فرایند گفته شده جزو اصلیترین وظایف آن است. پروتکل TCP/IP برای انتقال دادهها از مکانیزمهای بازیابی خطا و کنترل وضعیت استفاده میکند. این حرف به معنای این است که اگر در حین انتقال دادهها خطا رخ دهد یا بستهها گم شوند، TCP/IP مسئول بازسازی و تحویل صحیح دادهها است. این ویژگیها باعث میشود که TCP/IP یک پروتکل پایدار و قابلاعتماد باشد.
پروتکل UDP (User Datagram Protocol)
پروتکل دیتاگرام کاربر یا همان UDP یک پروتکل ارتباطی است که عمدتاً برای ایجاد اتصالات با تأخیر کم و تلرانس پایین بین برنامههای کاربردی در اینترنت استفاده میشود. این پروتکل با انجام انتقال دادهها قبل از انجام توافق توسط گیرنده، سرعت انتقال را افزایش میدهد؛ ولی این کار ممکن است خطا در داده را افزایش دهد در نتیجه UDP در ارتباطات حساس به زمان، از جمله VoIP، جستجوی سیستم نام دامنه (DNS) و پخش ویدئو یا صدا، کارآمد خواهد بود؛ ولی در جایی که دقت داده دریافتی (بدون خطا بودن داده دریافتی) مهم است، کارایی کمی دارد.
پروتکل IP (Internet Protocol)
پروتکل IP مهم ترین قراردادی (پروتکلی) است که برای مبادله اطلاعات در شبکه های اینترنتی وجود دارد. این پروتکل بنیادیترین پروتکل شکلدهنده اینترنت میباشد و وظیفه مسیردهی بستههای اطلاعاتی، در گذر از مرزهای شبکهها را به عهده دارد. پروتکل اینترنت یک پروتکل لایه ای است که در نرمافزار داخلی استفاده میشود و در لایه ارتباط (Link) قرار میگیرد.
پروتکل IP وظیفه دارد بسته ها را فقط از طریق آدرس IP موجود در سربرگ های بسته از منبع به مقصد تحویل دهد. پروتکل اینترنت (IP) اهمیتی نمیدهد که آیا بستهها به مقصد میرسند یا نه. این پروتکل حتی درباره اتصالات و شماره پورتها نیز چیزی نمیداند. کار پروتکل اینترنت ارسال و مسیریابی بستهها به سمت کامپیوتر یا مقصد بعدی است. از نظر پروتکل اینترنت، بستههای IP موجودیتهای مستقلی هستند و لذا ترتیب صحیح این بستهها برایش مهم نیست. پس ممکن است بستهها به ترتیبی که ارسال شدهاند، به مقصد نرسند. اطمینانیافتن از رسیدن بستهها به مقصد و نیز مرتبسازی بستهها بر اساس ترتیب صحیحشان، وظیفه پروتکل دیگری است که پروتکل کنترل انتقال یا TCP (مخفف Transmission Control Protocol) نام دارد.
پروتکل IPv4 (Internet Protocol version 4)
پروتکل اینترنت نسخه 4 یا به اختصار IPv4، چهارمین بازبینی پروتکل اینترنت (IP) و نخستین نسخهای است که بطور گسترده به کارگرفته شد. این نسخه از پروتکل در مرکز روش های شبکه بندی بر پایه استانداردها در اینترنت است. هرچند به کارگیری نسخه ششم پروتکل اینترنت (IPv6) از تاریخ 2010 آغاز شده است، اما IPv4 پراستفاده ترین پروتکل اینترنت است.
پروتکل IPv4 از یک آدرس 32 بیتی (به صورت چهار عدد یک بایتی که بین هر عدد یک نقطه وجود دارد: X . X . X . X) برای آدرسهای اینترنتی خود استفاده میکند. این بدان معناست که میتواند 2 به توان 32 آدرس را که بیش از 4 میلیارد آدرس میشود را ذخیره کند. تا به امروز، به عنوان پروتکل اصلی اینترنت در نظر گرفته شده است و 94% ترافیک را به خود اختصاص داده است. این مجموعه چهار عددی که هر کدام با یک نقطه از سایر بخشها جدا میگردند اصطلاحاً “dotted decimal format” به معنی “فرمت اعشاری نقطهدار” گفته میشود. هر مجموعه، یک “octet” یا “هشتایی” است و متشکل از 8 بیت (یک بایت) میباشد.
پروتکل IPv6 (Internet Protocol version 6)
پروتکل اینترنت نسخه 6 یا به اختصار IPv6 جدیدترین نسخه پروتکل اینترنت است که ارتباط های اینترنتی بر پایه آن شکل می گیرد. این نسخه قرار است جایگزین نسخه 4 این پروتکل (IPv4) که هم اکنون در حال استفاده است، بشود. پروتکل IPv4 از فضای آدرسی 32 بیتی استفاده می کند. این فضای اجازه آدرس دهی دو به توان 32 یعنی حدود 4 میلیارد آدرس در اینترنت را می دهد. با توجه به این که امروزه بسیاری از دستگاه ها افزون بر کامپیوترها مانند موبایل ها، دوربین ها و حتی لوازم خانگی و قاب عکس های دیجیتال به اینترنت متصل میشوند، این فضا رو به اتمام است و تاکنون با تمهیداتی مانند NAT سعی در جبران این کمبود داشته است. پروتکل IPv6 اما از فضای آدرس دهی 128 بیتی (16 بایتی) که هر مجموه چهاربایتی با یک “دو نقطه” از مجموعه های چهار بایتی دیگر، جدا شده است استفاده میکند و اجازه داشتن دو به توان 128 آدرس یکتا را به ما می دهد. این تعداد آدرس مشکل فضای آدرسی که هم اکنون با آن روبرو هستیم را رفع می کند.
پروتکل SCTP (Stream Control Transmission Protocol)
پروتکل SCTP یا همان پروتکل انتقال کنترل جریان، جز پروتکل های لایه انتقال میباشد که تقریباً میتوان گفت وظیفهای مانند پروتکلهای TCP و UDP دارد. پروتکل SCTP برخی از ویژگی های سرویس های این دو پروتکل را ارائه میکند، بدین صورت که مانند UDP، مبتنی بر پیام و قابلاطمینان و همانند TCP، در بخش انتقال پیام، از قابلیت کنترل ازدحام استفاده میکند که تفاوت این پروتکل با دو پروتکل ذکر شده دیگر، در بحث ایجاد مسیرهای اضافی و چند شاخه ای و افزایش اطمینان و قابلیت توسعهپذیری است.
پروتکل RSVP (Resource Reservation Protocol)
پروتکل RSVP یک پروتکل لایه حمل و نقل است که برای ذخیره منابع در یک شبکه با استفاده از مدل خدمات یکپارچه طراحی شده است. پروتکل RSVPبا استفاده از IPv4 یا IPv6 کار میکند و تنظیمات رزرو منابع برای گیرندههای داده را برای جریان داده های چندپخشی یا یکپارچه آغاز میکند. این پروتکل داده های برنامه را حمل نمیکند اما شبیه به یک پروتکل کنترل مانند ICMP یا پروتکل مدیریت گروه اینترنت (IGMP) است. میزبانان و روترها میتوانند از RSVP برای درخواست یا ارائه سطح خاصی از کیفیت خدمات (QoS) برای جریان داده ها در برنامه ها استفاده کنند. پروتکل RSVP تعریف میکند که چگونه برنامه ها رزروها را انجام دهند و چگونه دیگر نمیتوانند از منابع رزرو شده صرف نظر کنند. عملیات RSVP منجر به ذخیره منابع در هر گره (Node) در طول مسیر می شود. RSVP یک پروتکل مسیریابی نیست بلکه برای همکاری با پروتکل های مسیریابی فعلی و آینده طراحی شده است.
پروتکل ICMP (Internet Control Message Protocol)
پروتکل ICMP که مخفف عبارت internet control message protocol است و در فارسی آن را پروتکل کنترل پیامهای اینترنتی ترجمه میکنند، بخش جدانشدنی از پروتکل IP است و از اساسیترین و پایه ای ترین پروتکلهای کاربردی میباشد. این پروتکل توسط دیوایسهای تحت شبکه (برای مثال روتر) جهت نمایش ارور پیامهای ارسالی مانند عدم برقراری اتصال به روتر یا هاست مورداستفاده قرار میگیرد. همانطور که گفته شد مورد. اصلی استفاده از آن در سیستمعاملهای کامپیوترهای متصل به شبکه، برای ارسال پیامهای خطا است.
برای مثال، سرویس مورد درخواست در دسترس نمیباشد یا اینکه میزبان یا روتر غیرفعال، است. در مدل ۵ لایهای شبکه، این پروتکل همانند پروتکل IP در لایه network (شبکه) قرار میگیرد، اما نوع کارکرد آن شبیه پروتکلهای لایه transport (انتقال) میباشد.
پروتکل ICMP امکانات لازم در خصوص اشکالزدایی، گزارش خطاها و همچنین مبادله اطلاعات محدود در بستر یک شبکه را ارائه میدهد. باتوجهبه اینکه ICMP port صرفاً مسئول ارائه پیغام های کنترلی و گزارش خطاها و نهایتاً ارائه فیدبک های لازم در جهت تحقق یک وضعیت خاص است، حاوی هیچگونه اطلاعاتی مبنی بر اعلام وصول بسته های اطلاعاتی (acknowledgment) نمیباشد. پروتکل ICMP برای IPv4 بهعنوان ICMPv4 نیز شناخته میشود. پروتکل اینترنت نسخه 6 نیز از سیستم نامگذاری مشابه (ICMPv6) استفاده میکند.
پروتکل ICMPv6 (Internet Control Message Protocol for IPv6)
پروتکل کنترل پیام اینترنتی ورژن 6 (ICMPv6) همان کنترل پیام اینترنت برای اینترنت پروتکل ورژن 6 (IPv6) میباشد.پروتکل ICMP V6 یک بخش کلیدی از معماری IPv6 است و وظایف اجرایی و کنترل پیغام های برگشتی (پیغام های اطلاعاتی و خطا (شامل PingV6)) لازم را برای تضمین درست و هموار عملکردن فرایند IPv6 را برعهده دارد.
پروتکل ECN (Explicit Congestion Notification)
پروتکل اعلان صریح شلوغی (ECN) فرمت پروتکل IP و پروتکل TCP است. پروتکل ECNاجازه میدهد تا بدون رهاکردن بسته ها (Dropping Packets)، به اطلاعرسانی End-to-End از ترافیک بالای شبکه بپردازد. به طور معمول، شبکه های TCP/IP تراکم سیگنال شبکه را با رهاکردن بسته ها انجام میدهند. هنگامی که ECN با موفقیت مذاکره میشود، یکروتر آگاه از ECN ممکن است بهجای انداختن یک بسته، علامتگذاری را در هدر IP قرار دهد تا نشانه ترافیک قریبالوقوع باشد. گیرنده بسته، نشانگر شلوغی در شبکه را به فرستنده منعکس میکند، تا سرعت انتقال آن کاهش پیدا کند.
پروتکل IGMP(Internet Group Management Protocol)
پروتکل IGMP، پروتکلی است که به چندین دستگاه اجازه میدهد یک آدرس IP را به اشتراک بگذارند؛ بهطوریکه همهی آنها بتوانند دادههای یکسانی را دریافت کنند. در اصل برای مدیریت گروههای Multi cast در شبکههای IP استفاده میشود. با استفاده از پروتکل IGMP، دستگاههایی که میخواهند به یک گروه Multi cast بپیوندند، پیامی را به یکدیگر ارسال میکنند تا از وجودشان بهعنوان یک عضو جدید در گروه مطلع شوند.
همچنین، اگر هیچ دستگاهی برای مدت زمانی مشخصی در گروه Multi cast فعال نباشد، پروتکل IGMP دستگاههای شبکه را ترغیب میکند تا از گروه Multi cast خارج شوند و بهاینترتیب، پهنای باند شبکه را صرفهجویی میکند و به طور معمول برای پخش ویدئو و صدا در شبکههای تلویزیونی و رادیویی، مانند IPTV و رادیو اینترنتی استفاده میشود.
پروتکل IPsec (Internet Protocol Security)
در محاسبات دادههای اینترنتی، پروتکل امنیت اینترنت (IPsec) یک مجموعه پروتکل شبکه ایمن است که بستههای داده را تأیید و رمزگذاری میکند تا ارتباط رمزگذاری شده ایمن بین دو کامپیوتر از طریق شبکه پروتکل اینترنت را فراهم کند. همچنین از این پروتکل در شبکههای خصوصی مجازی (V P N) نیز استفاده میشود. وظیفه اصلی این پروتکل، ایمن نگهداشتن دادههای ارسالی از طریق شبکههای عمومی است.
یه خبر خوشحالکننده بدم. اینکه دیگه مباحث تئوری شبکه و اینترنت تموم شد! قسمت بعد (قسمت دهم) دیگه مربوط به خود ماژول ESP8266 هستش. پس اگه موافق باشید، قسمت دهم را با من همراهی کنید.