tgoop.com/pythonwithmedev/404
Last Update:
لایه ۴: لایه انتقال (Transport Layer) 🚛
لایه Transport یکی از مهمترین بخشهای مدل OSI هست که وظیفه مدیریت انتقال داده بین دستگاهها و اطمینان از ارتباط پایدار و مؤثر رو بر عهده داره. این لایه تضمین میکنه که دادهها به درستی به مقصد برسن، ترتیبشون حفظ بشه، و در صورت وجود خطا، اصلاح بشن.
وظایف اصلی لایه انتقال ✅
📦 تقسیمبندی دادهها (Segmentation):
وقتی اپلیکیشنی قصد ارسال داده داره، این دادهها به قطعات کوچکتری به نام سگمنت تقسیم میشن. هر سگمنت یک هدر مخصوص داره که شامل اطلاعاتی مثل شماره ترتیبی و آدرس پورت میشه.
🧩 بازسازی دادهها (Reassembly):
در مقصد، لایه انتقال سگمنتها رو با استفاده از شماره ترتیبی که در هدرشون ذخیره شده، به ترتیب کنار هم قرار میده و داده اصلی رو بازسازی میکنه.
⚠️ کنترل خطا (Error Control):
لایه انتقال با استفاده از تکنیکهایی مثل Checksum صحت دادهها رو بررسی میکنه. اگه خطایی در دادهها تشخیص داده بشه، درخواست ارسال مجدد سگمنت انجام میشه.
🚦 کنترل جریان (Flow Control):
وقتی فرستنده سریعتر از گیرنده داده ارسال میکنه، ممکنه گیرنده دچار مشکل بشه. لایه انتقال سرعت ارسال رو با استفاده از Sliding Window تنظیم میکنه.
🔗 مدیریت ارتباط (Connection Management):
لایه انتقال میتونه ارتباط رو به دو صورت Connection-Oriented (مانند TCP) یا Connectionless (مانند UDP) مدیریت کنه. در ارتباطات Connection-Oriented، قبل از ارسال دادهها یک ارتباط پایدار برقرار میشه.
پروتکلهای کلیدی در لایه انتقال
TCP (Transmission Control Protocol):
💡 TCP یک پروتکل Connection-Oriented و Reliable هست که برای ارتباطات حساس به دقت استفاده میشه.
ویژگیهای کلیدی:
ارتباط مبتنی بر اتصال:
فرآیند Three-Way Handshake شامل مراحل زیره:
SYN: درخواست اتصال از فرستنده.
SYN-ACK: پاسخ گیرنده.
ACK: تأیید فرستنده.
شمارهگذاری سگمنتها:
🔢 TCP به هر سگمنت یک شماره منحصربهفرد اختصاص میده تا دادهها در مقصد به درستی بازسازی بشن.
کنترل جریان:
با استفاده از Sliding Window، TCP حجم دادهای که میتونه ارسال بشه رو تنظیم میکنه.
کنترل خطا:
با استفاده از Checksum و Acknowledgment صحت دادهها بررسی و تضمین میشه.
UDP (User Datagram Protocol):
⚡ UDP یک پروتکل Connectionless و Unreliable هست که برای ارتباطات سریع طراحی شده.
ویژگیهای کلیدی:
بدون اتصال:
UDP دادهها رو بدون ایجاد ارتباط پایدار ارسال میکنه.
بدون تضمین تحویل:
❌ اگه دادهای گم بشه یا خراب بشه، UDP هیچ تضمینی برای ارسال مجدد نداره.
سرعت بالا:
چون کنترل جریان یا تصحیح خطا نداره، سرعت انتقال بالاتره.
🎛 پورتها و شمارهگذاری در لایه انتقال
پورتها اعدادی ۱۶بیتی هستن که ارتباط بین اپلیکیشنها و دستگاهها رو مدیریت میکنن.
پورتهای شناختهشده (Well-Known Ports):
📌 این پورتها اعداد بین ۰ تا ۱۰۲۳ هستن و به پروتکلهای معروف اختصاص داده شدن.
HTTP: پورت 80
HTTPS: پورت 443
FTP: پورت 21
پورتهای رجیسترشده (Registered Ports):
🔒 اعداد بین ۱۰۲۴ تا ۴۹۱۵۱ که برای اپلیکیشنهای خاص رزرو میشن.
پورتهای داینامیک (Dynamic Ports):
🔄 اعداد بین ۴۹۱۵۲ تا ۶۵۵۳۵ که برای ارتباطات موقت استفاده میشن.
جمعبندی ✍
لایه Transport نقش حیاتی در تضمین انتقال دادهها بین دستگاهها داره. انتخاب پروتکل مناسب به نیازهای اپلیکیشن شما بستگی داره:
TCP برای ارتباطات حساس به دقت.
UDP برای ارتباطات حساس به سرعت.
#⃣ #network
➖➖➖➖➖➖➖➖➖
🥷 CHANNEL | GROUP
BY 🧑💻Cyber.vision🧑💻
Share with your friend now:
tgoop.com/pythonwithmedev/404