22 آذر 1404
TCP/IP چیست و اینترنت چگونه کار میکند؟ آشنایی کامل با پروتکلها و مدل لایهای شبکه
مقدمه: چرا همه دستگاهها با هم حرف هم را میفهمند؟
تا به حال از خودت پرسیدهای:
-
چرا گوشی موبایل، لپتاپ و کامپیوتر میتوانند به یک مودم وصل شوند؟
-
چطور پیام واتساپ از گوشی تو به گوشی فرد دیگری در آنسوی دنیا میرسد؟
-
چرا فرقی نمیکند از چه سیستمعاملی یا چه سختافزاری استفاده میکنی؟
پاسخ همه این سؤالها یک چیز است: Protocol (پروتکل).
پروتکل چیست؟
پروتکل در شبکه، مجموعهای از قوانین و استانداردها است که دو یا چند دستگاه برای برقراری ارتباط باید از آن پیروی کنند.
به زبان ساده:
اگر دو دستگاه زبان مشترک نداشته باشند، حتی اگر به هم متصل باشند، نمیتوانند با هم ارتباط برقرار کنند.
در دنیای شبکه و اینترنت، این زبان مشترک چیزی نیست جز TCP/IP.
TCP/IP: زبان مشترک اینترنت
تقریباً تمام اینترنتی که امروز میشناسیم—از وبسایتها گرفته تا اپلیکیشنهایی مثل واتساپ، اینستاگرام و ایمیل—بر پایه پروتکل TCP/IP کار میکند.
TCP/IP نه یک پروتکل واحد، بلکه مجموعهای از پروتکلهاست که هرکدام مسئول بخشی از ارتباط هستند، از آمادهسازی داده تا ارسال و دریافت آن.
اما این پروتکلها بینظم طراحی نشدهاند؛ آنها از یک مدل لایهای پیروی میکنند.
مدل OSI: نقشه راه ارتباطات شبکهای
برای طراحی درست پروتکلهای شبکه، ابتدا یک مدل مفهومی به نام OSI Model ایجاد شد.
مدل OSI چند لایه دارد؟
مدل OSI شامل ۷ لایه است:
-
Physical
-
Data Link
-
Network
-
Transport
-
Session
-
Presentation
-
Application
این مدل بیشتر جنبه آموزشی و مفهومی دارد و کمک میکند بفهمیم هر بخش از ارتباط دقیقاً در کدام مرحله اتفاق میافتد.
مدل TCP/IP (مدل وزارت دفاع آمریکا)
بعدها، ارتش آمریکا (Department of Defense) نسخه سادهتر و عملیتری از این مدل را برای اینترنت طراحی کرد که به آن مدل TCP/IP میگوییم.
این مدل شامل ۴ لایه اصلی است:
-
Application Layer
-
Transport Layer
-
Network (Internet) Layer
-
Network Access (Physical) Layer
این همان مدلی است که امروزه در شبکههای واقعی استفاده میشود.
ارسال یک پیام واتساپ، قدمبهقدم در مدل TCP/IP
برای درک بهتر، فرض کنیم میخواهی یک پیام واتساپ ارسال کنی.
1️⃣ لایه Application – آمادهسازی پیام
در این لایه:
-
تو پیام را تایپ میکنی
-
دکمه Send را میزنی
-
داده به شکل قابلفهم برای اپلیکیشن آماده میشود
این لایه مربوط به خود برنامه (WhatsApp، Browser، Email و…) است.
2️⃣ لایه Transport – تکهتکه شدن داده
در این مرحله:
-
پیام به بخشهای کوچکتر تقسیم میشود
-
اگر از TCP استفاده شود → به این بخشها Segment میگوییم
-
اگر از UDP استفاده شود → به آنها Datagram گفته میشود
در این لایه:
-
ترتیب بستهها مشخص میشود
-
بررسی میشود که داده سالم برسد یا نه
3️⃣ لایه Network – آدرسدهی (IP Address)
اینجا یکی از مهمترین کارها انجام میشود:
-
IP مبدأ (فرستنده)
-
IP مقصد (گیرنده)
به هر پکت اضافه میشود.
این لایه تصمیم میگیرد:
این داده باید به کدام مقصد در شبکه جهانی ارسال شود؟
4️⃣ لایه Network Access – تبدیل به سیگنال
در این لایه، داده دیگر دیجیتال صرف نیست؛ بلکه تبدیل میشود به:
-
سیگنال الکتریکی (کابل شبکه)
-
امواج رادیویی (Wi-Fi)
-
پالسهای نوری (فیبر نوری)
و سپس ارسال میشود.
دریافت پیام: همهچیز برعکس میشود
در دستگاه گیرنده، دقیقاً همین مسیر بهصورت معکوس طی میشود:
-
سیگنال دریافت میشود
-
به داده دیجیتال تبدیل میشود
-
آدرس IP بررسی میشود
-
پکتها مرتب و بررسی میشوند
-
پیام نهایی به اپلیکیشن تحویل داده میشود
-
تو پیام واتساپ را میبینی
همه این مراحل در چند میلیثانیه انجام میشود.
چرا این مدل فوقالعاده است؟
مدل TCP/IP به دلایل زیر انقلابی بود:
-
مقیاسپذیر (Scalable)
-
مستقل از سختافزار
-
مقاوم در برابر خطا
-
قابل توسعه
-
مناسب شبکههای توزیعشده
به همین دلیل، اینترنت توانست از یک پروژه نظامی به یک شبکه جهانی تبدیل شود.
ارتباط این مفاهیم با برنامهنویسی
حتی اگر برنامهنویس باشی (مثلاً C++، JavaScript یا Backend):
-
تو داده تولید میکنی
-
داده تبدیل به packet میشود
-
روی شبکه ارسال میشود
-
در سمت مقابل دوباره بازسازی میشود
درک TCP/IP باعث میشود:
-
APIها را بهتر بفهمی
-
Debug شبکهای دقیقتری انجام دهی
-
معماری سیستم را حرفهایتر طراحی کنی
نتیجهگیری
اگر بخواهیم خیلی خلاصه بگوییم:
-
اینترنت بدون پروتکل معنا ندارد
-
TCP/IP زبان مشترک تمام دستگاههاست
-
مدل لایهای باعث نظم، توسعهپذیری و پایداری شبکه شده
-
هر پیام ساده، پشت صحنهای بسیار مهندسیشده دارد
درک این مفاهیم، تو را از یک کاربر ساده به یک توسعهدهنده آگاه تبدیل میکند.