مدلهای مرجع شبکه (OSI و TCP/IP)
فهرست مقالات در این صفحهبررسی مدل osi در شبکه + 7 لایه و وظایف هر کدام
تاریخ ارسال:1404-06-11 نویسنده:hosein bahmani آموزش شبکه به صورت جامعبررسی مدل osi در شبکه + 7 لایه و وظایف هر کدام

در قسمت قبل به بررسی مفاهیم شبکه پرداختیم در این قسمت می پردازیم به دو مدل شبکه osi و tcpip
مقدمه
1.1 تاریخچه و دلیل پیدایش مدل OSI
در دهه ۱۹۷۰ و اوایل ۱۹۸۰، شرکتها و سازمانهای مختلف هرکدام استانداردها و پروتکلهای خاص خود را برای شبکهسازی داشتند. این مسئله باعث میشد تجهیزات و نرمافزارهای شبکه از سازندگان مختلف با هم سازگار نباشند. به همین دلیل، سازمان ISO (International Organization for Standardization) در سال ۱۹۸۴ مدل OSI (Open Systems Interconnection) را معرفی کرد.
هدف اصلی این مدل، ارائهی یک چارچوب استاندارد و لایهبندیشده برای طراحی و توسعهی شبکههای رایانهای بود تا همه سیستمها، فارغ از سازنده یا نوع فناوری، بتوانند با هم ارتباط برقرار کنند.
1.2 اهداف و مزایای استفاده از مدل OSI
-
استانداردسازی: فراهم کردن یک زبان مشترک بین تولیدکنندگان سختافزار و نرمافزار.
-
تفکیک وظایف: هر لایه مسئولیت مشخصی دارد و پیچیدگی شبکه به بخشهای سادهتر تقسیم میشود.
-
انعطافپذیری: امکان توسعه یا تغییر یک لایه بدون تأثیر مستقیم بر لایههای دیگر.
-
عیبیابی آسانتر: در صورت بروز مشکل در شبکه، میتوان آن را در سطح لایه مشخص بررسی کرد.
-
یادگیری و آموزش بهتر: کمک به دانشجویان و متخصصان برای درک ساختار شبکه به صورت مرحلهای و طبقهبندیشده.
1.3 تفاوت مدل OSI با مدل TCP/IP
-
تعداد لایهها: مدل OSI شامل ۷ لایه است، در حالی که مدل TCP/IP تنها ۴ لایه اصلی دارد.
-
ماهیت: مدل OSI بیشتر یک مدل مرجع نظری است، اما TCP/IP یک مدل کاربردی و عملیاتی میباشد که در اینترنت استفاده میشود.
-
زمان معرفی: OSI در سال ۱۹۸۴ معرفی شد، در حالی که TCP/IP پیشتر در دهه ۱۹۷۰ توسط وزارت دفاع آمریکا توسعه داده شد و عملاً در شبکههای واقعی بهکار رفت.
-
کاربرد: امروزه مدل TCP/IP در شبکههای جهانی (مانند اینترنت) اجرا میشود، اما مدل OSI همچنان بهعنوان یک ابزار آموزشی و مرجع مفهومی درک بهتر شبکهها استفاده میشود.
مروری کلی بر مدل OSI
2.1 تعریف لایهها
مدل OSI از ۷ لایه تشکیل شده است که هر لایه وظیفهای مشخص در فرآیند انتقال و دریافت دادهها دارد. این لایهها به صورت پلهای از سختافزار نزدیک به سیگنال فیزیکی (لایه فیزیکی) تا کاربر نهایی و نرمافزارهای کاربردی (لایه کاربرد) مرتب شدهاند.
هر لایه خدماتی را به لایه بالاتر ارائه میدهد و در عین حال از خدمات لایه پایینتر استفاده میکند. این ساختار لایهای باعث میشود طراحی، مدیریت و عیبیابی شبکه بسیار سادهتر شود.
2.2 نقش و کاربرد هر لایه در شبکه
در مدل OSI، هر لایه نقشی خاص در ارتباطات شبکه ایفا میکند:
-
لایه فیزیکی (Physical Layer) → انتقال بیتها به صورت سیگنال الکتریکی یا نوری از طریق کابل یا امواج.
-
لایه پیوند داده (Data Link Layer) → اطمینان از انتقال بدون خطای فریمها در یک لینک فیزیکی (مثلاً با استفاده از سوئیچ).
-
لایه شبکه (Network Layer) → مسیریابی و آدرسدهی دادهها بین شبکههای مختلف (پروتکل IP و روترها).
-
لایه انتقال (Transport Layer) → اطمینان از تحویل کامل و درست دادهها بین دو سیستم (TCP, UDP).
-
لایه نشست (Session Layer) → مدیریت جلسات ارتباطی بین دو برنامه (باز کردن، نگهداری و بستن ارتباط).
-
لایه ارائه (Presentation Layer) → ترجمه، فشردهسازی و رمزنگاری دادهها (مثلاً SSL/TLS).
-
لایه کاربرد (Application Layer) → نزدیکترین لایه به کاربر، شامل پروتکلهایی مانند HTTP، FTP، SMTP.
3.1 لایه فیزیکی (Physical Layer)
وظایف و مسئولیتها
-
وظیفه اصلی این لایه، انتقال بیتها (۰ و ۱) به صورت سیگنالهای الکتریکی، نوری یا امواج رادیویی از یک دستگاه به دستگاه دیگر است.
-
تعریف مشخصات فیزیکی رسانه انتقال، مانند نوع کابل، کانکتور، ولتاژ، فرکانس سیگنال و سرعت انتقال داده.
-
تعیین نرخ انتقال داده (Data Rate) و نحوه همزمانسازی (Synchronization) بین فرستنده و گیرنده.
-
تبدیل داده دیجیتال به سیگنال قابل انتقال (Encoding) و برعکس.
-
مشخص کردن توپولوژیهای فیزیکی شبکه (مثل ستارهای، حلقوی یا خطی).
این لایه هیچگونه درک یا مدیریتی روی محتوای داده ندارد، بلکه تنها وظیفهاش انتقال خام بیتها از یک نقطه به نقطه دیگر است.
مثالها
-
کابلها: کابل مسی (Ethernet Cat5/6/7)، کابل کواکسیال، کابل فیبر نوری.
-
کانکتورها: کانکتورهای RJ-45، BNC، SC، LC.
-
سیگنالها: سیگنالهای الکتریکی در کابل مسی، پالسهای نوری در فیبر نوری، امواج رادیویی در وایفای و بلوتوث.
-
تجهیزات مرتبط: هاب (Hub)، ریپیتر (Repeater)، مودم، آنتنهای بیسیم.
3.2 لایه پیوند داده (Data Link Layer)
وظایف و مسئولیتها
-
بستهبندی دادهها (Framing): دادهای که از لایه شبکه میآید به واحدهای کوچکتری به نام Frame تقسیم میشود.
-
تشخیص و کنترل خطا: بررسی صحت دادهها با استفاده از مکانیسمهایی مانند CRC (Cyclic Redundancy Check).
-
کنترل جریان (Flow Control): جلوگیری از ارسال بیش از حد داده توسط فرستنده که گیرنده نتواند پردازش کند.
-
آدرسدهی فیزیکی (MAC Addressing): هر کارت شبکه یک آدرس فیزیکی (MAC) دارد و این لایه وظیفه شناسایی دستگاهها در یک شبکه محلی را بر عهده دارد.
-
مدیریت دسترسی به رسانه (Media Access Control): مشخص میکند چه زمانی یک دستگاه اجازه ارسال داده روی محیط انتقال (کابل یا هوا) را دارد.
پروتکلها و دستگاههای مرتبط
-
پروتکلها:
-
Ethernet → رایجترین پروتکل در شبکههای محلی (LAN).
-
PPP (Point-to-Point Protocol) → مورد استفاده در ارتباطات نقطه به نقطه.
-
HDLC (High-Level Data Link Control) → در ارتباطات سریالی و WAN.
-
Wi-Fi (IEEE 802.11) → استاندارد بیسیم برای شبکههای محلی.
-
-
دستگاهها:
-
سوئیچ (Switch): دستگاهی که بر اساس آدرس MAC فریمها را بین دستگاههای شبکه هدایت میکند.
-
Bridge (پل): وسیلهای که دو بخش از شبکه را به هم متصل میکند و بر اساس آدرسهای MAC تصمیمگیری میکند.
-
کارت شبکه (NIC - Network Interface Card): قطعه سختافزاری در هر سیستم که وظیفه ارسال و دریافت فریمها را دارد.
-
به زبان ساده:
لایه پیوند داده مانند پستچی یک ساختمان است؛ او نامهها (فریمها) را بررسی میکند، مطمئن میشود آدرس درست روی آن نوشته شده (MAC Address) و سپس آن را به واحد درست تحویل میدهد.
3.3 لایه شبکه (Network Layer)
وظایف و مسئولیتها
-
آدرسدهی منطقی (Logical Addressing): تخصیص و استفاده از آدرسهای IP برای شناسایی هر دستگاه در شبکه.
-
مسیریابی (Routing): پیدا کردن بهترین مسیر برای ارسال بستههای داده از مبدأ به مقصد، حتی اگر بین آنها چندین شبکه و روتر وجود داشته باشد.
-
تقسیمبندی بستهها (Packetizing): دادههای لایه بالاتر (Transport) به واحدهایی به نام Packet تقسیم میشوند.
-
کنترل ازدحام (Congestion Control): مدیریت حجم ترافیک در مسیرهای مختلف شبکه برای جلوگیری از تأخیر یا از دست رفتن داده.
-
مدیریت خطا و زمان انقضا: هر بسته شامل اطلاعاتی مانند TTL (Time To Live) است تا از چرخش بیپایان بستهها در شبکه جلوگیری شود.
پروتکلها و استانداردهای رایج در این لایه
-
IP (Internet Protocol): مهمترین پروتکل این لایه که وظیفه آدرسدهی و مسیریابی بستهها را بر عهده دارد (نسخههای IPv4 و IPv6).
-
ICMP (Internet Control Message Protocol): برای ارسال پیامهای خطا و گزارش وضعیت شبکه (مثلاً دستور Ping).
-
ARP (Address Resolution Protocol): تبدیل آدرس IP به آدرس MAC در شبکههای محلی.
-
RIP, OSPF, BGP: پروتکلهای مسیریابی که برای یافتن بهترین مسیر در شبکههای گسترده (WAN) استفاده میشوند.
تجهیزات مرتبط با لایه شبکه
-
روتر (Router): اصلیترین دستگاه در این لایه، مسئول هدایت بستهها بین شبکههای مختلف بر اساس آدرس IP.
-
لایه 3 سوئیچ (Layer 3 Switch): ترکیبی از عملکرد سوئیچ و روتر، قادر به تصمیمگیری بر اساس آدرسهای IP.
-
فایروالها (Firewall): برای کنترل و فیلتر کردن بستهها بر اساس قوانین امنیتی (در این لایه هم فعالیت میکنند).
به زبان ساده:
لایه شبکه مانند سیستم مسیریابی جادهای (GPS) عمل میکند؛ تعیین میکند که بسته دادهها از چه مسیرهایی باید عبور کنند تا به مقصد برسند، بدون توجه به اینکه در مقصد چه محتوایی تحویل داده خواهد شد.
3.4 لایه انتقال (Transport Layer)
وظایف و مسئولیتها
-
تقسیمبندی دادهها (Segmentation): دادههای دریافتی از لایههای بالاتر به بخشهای کوچکتر (Segments) تقسیم میشوند تا انتقال مطمئن و مدیریت شدهای داشته باشند.
-
تضمین تحویل دادهها (Reliable Delivery): اطمینان حاصل میکند که دادهها بدون خطا و به ترتیب صحیح به مقصد برسند.
-
کنترل جریان (Flow Control): سرعت ارسال دادهها بین فرستنده و گیرنده را هماهنگ میکند تا گیرنده بتواند پردازش کند و دادهها ازدست نروند.
-
تشخیص و اصلاح خطاها (Error Detection & Recovery): در صورت بروز خطا، دادههای ناقص دوباره ارسال میشوند.
-
مدیریت ارتباط بین برنامهها: این لایه مسئول برقراری، نگهداری و پایان ارتباط بین برنامههای روی دو سیستم مختلف است.
پروتکلها
-
TCP (Transmission Control Protocol)
-
پروتکل اتصالگرا (Connection-oriented).
-
تضمین میکند دادهها به ترتیب و بدون خطا به مقصد برسند.
-
مناسب برنامههایی که پایداری و اطمینان بالا نیاز دارند، مانند مرورگرهای وب، ایمیل و انتقال فایل.
-
-
UDP (User Datagram Protocol)
-
پروتکل بدون اتصال (Connectionless).
-
دادهها سریع ارسال میشوند اما تضمینی برای تحویل یا ترتیب وجود ندارد.
-
مناسب برنامههایی که سرعت اهمیت بیشتری دارد و از دست رفتن چند بسته مشکل بزرگی ایجاد نمیکند، مانند پخش ویدیو آنلاین، بازیهای آنلاین و VoIP.
-
به زبان ساده:
لایه انتقال مانند راننده پیک یا اتوبوس است؛ نه تنها بستهها را از مبدا به مقصد میبرد، بلکه مطمئن میشود هیچ بستهای گم نشود، همه به ترتیب برسند و سرعت انتقال با توانایی گیرنده هماهنگ باشد.
3.5 لایه نشست (Session Layer)
وظایف و مسئولیتها
-
مدیریت جلسات ارتباطی: این لایه مسئول برقراری، نگهداری و پایان دادن به جلسه ارتباطی (Session) بین دو برنامه یا سیستم است.
-
همزمانسازی دادهها (Synchronization): امکان اضافه کردن نقاط بازگشت (Checkpoints) به دادهها را فراهم میکند تا در صورت قطعی یا خطا بتوان ادامه انتقال را از نقطه مشخصی انجام داد.
-
کنترل دیالوگ (Dialog Control): تعیین میکند که کدام طرف در هر زمان اجازه ارسال داده دارد (یکطرفه یا دوطرفه).
-
مدیریت ارتباطهای متعدد: امکان اجرای چند جلسه همزمان بین دو سیستم یا برنامه را فراهم میکند.
مثالها و کاربردها
-
اتصال به پایگاه داده (Database Connection): وقتی یک نرمافزار به دیتابیس متصل میشود، این لایه مدیریت میکند که جلسه بین کلاینت و سرور برقرار و پایدار بماند.
-
برقراری تماس ویدیوئی یا صوتی (VoIP/Video Conference): لایه نشست تعیین میکند چه کسی در حال صحبت است و دادهها چگونه بین شرکتکنندگان مدیریت شود.
-
FTP و HTTP Session: مدیریت نشستها در ارتباط با سرورها، مانند ورود به سایت یا انتقال فایل.
به زبان ساده:
لایه نشست مانند مدیر جلسه عمل میکند؛ او مشخص میکند چه کسی صحبت کند، جلسه از چه زمانی شروع و پایان یابد و در صورت بروز مشکل بتوان ادامه جلسه را بدون از دست رفتن اطلاعات بازیابی کرد.
دستورات CMD برای مشاهده سشنها
-
مشاهده سشنهای فعال با دستور
net session
net session
-
این دستور سشنهای فعال بین کامپیوتر شما و سیستمهای دیگر در شبکه محلی (LAN) را نشان میدهد.
-
نیاز به مجوز Administrator دارد.
-
اطلاعاتی مانند نام کاربر، آدرس IP و مدت زمان اتصال را نمایش میدهد.
2.مشاهده کاربران متصل با دستور query session
query session
-
مخصوص Remote Desktop Sessions (RDP) است.
-
اطلاعاتی مانند نام کاربر، وضعیت اتصال، ID سشن و نوع سشن را نمایش میدهد.
3.مشاهده اتصالات شبکه با دستور netstat
netstat -an
-
تمام ارتباطهای TCP/IP فعال را نشان میدهد.
-
میتوانید ببینید چه پورتهایی باز هستند و به چه IP هایی متصل شدهاند.
-
برای بررسی سشنهای شبکه کاربردی است، هرچند جزئیات سطح نشست را به شکل دقیق نشان نمیدهد.
4.مشاهده کاربران متصل به اشتراک فایل و پرینتر شبکه
net view ComputerName
-
نمایش کامپیوترها و منابع شبکه که به آنها متصل هستید.
-
میتواند وضعیت سشنهای SMB/CIFS را نشان دهد.
نکته:
لایه نشست در مدل OSI مفهومی است و ابزارهای CMD فقط وضعیت اتصال و سشنها را نشان میدهند، اما نمیتوان تمامی جزئیات داخلی نشستها (مانند نقاط بازگشت یا دیالوگها) را در CMD مشاهده کرد. برای این کار معمولاً از نرمافزارهای تخصصی مانیتورینگ شبکه استفاده میشود.
3.6 لایه ارائه (Presentation Layer)
وظایف و مسئولیتها
-
ترجمه دادهها (Data Translation): این لایه دادهها را از فرمت مورد استفاده در سیستم فرستنده به فرمتی تبدیل میکند که سیستم گیرنده بتواند آن را درک کند.
-
فشردهسازی دادهها (Data Compression): کاهش حجم دادهها برای انتقال سریعتر و بهینهتر در شبکه.
-
رمزنگاری دادهها (Encryption/Decryption): محافظت از دادهها در برابر دسترسی غیرمجاز با تبدیل آنها به فرمت رمزگذاریشده و سپس بازگرداندن آنها در مقصد.
-
Encoding و Decoding: تبدیل دادهها به فرمت استاندارد (مثل ASCII، Unicode، JPEG، MPEG) تا سیستمهای مختلف بتوانند اطلاعات را به درستی پردازش کنند.
مثالها و کاربردها
-
رمزنگاری اطلاعات (SSL/TLS): هنگام ورود به سایتهای اینترنتی یا انتقال ایمیل، دادهها رمزنگاری میشوند تا ایمن بمانند.
-
فشردهسازی تصاویر و ویدیو (JPEG, MPEG, ZIP): کاهش حجم فایلها برای انتقال سریعتر از طریق شبکه.
-
تبدیل فرمت دادهها: تبدیل فرمت متن یا فایلهای گرافیکی بین سیستمهای مختلف با استانداردهای متفاوت.
به زبان ساده:
لایه ارائه مانند مترجم و بستهبند دادهها است؛ او مطمئن میشود پیام به فرمتی باشد که گیرنده بتواند بفهمد، دادهها سریعتر منتقل شوند و در مسیر، امن بمانند.
3.7 لایه کاربرد (Application Layer)
وظایف و مسئولیتها
-
ارتباط مستقیم با کاربر: این لایه نزدیکترین لایه به کاربر است و رابط بین نرمافزارهای کاربردی و شبکه محسوب میشود.
-
دسترسی به سرویسهای شبکه: فراهم کردن امکاناتی مانند ارسال ایمیل، انتقال فایل، مرور وب و دسترسی به پایگاه داده.
-
مدیریت درخواستها و پاسخها: دریافت درخواست از برنامه کاربردی، آمادهسازی آن برای ارسال در شبکه و دریافت پاسخ از شبکه برای نمایش به کاربر.
-
تسهیل تعامل بین برنامهها: این لایه استانداردهایی ارائه میدهد که نرمافزارهای مختلف بتوانند بدون مشکل با هم ارتباط برقرار کنند.
پروتکلها و نرمافزارهای مرتبط
-
HTTP / HTTPS: پروتکلهای مرور وب که امکان بارگذاری صفحات اینترنتی را فراهم میکنند.
-
FTP (File Transfer Protocol): برای ارسال و دریافت فایل بین سیستمها در شبکه.
-
SMTP (Simple Mail Transfer Protocol): پروتکل ارسال ایمیل.
-
POP3 / IMAP: پروتکلهای دریافت ایمیل.
-
DNS (Domain Name System): ترجمه نام دامنه به آدرس IP.
-
Telnet / SSH: برای اتصال به سیستمهای راه دور و مدیریت سرورها.
به زبان ساده:
لایه کاربرد مانند پنجرهای است که کاربر از طریق آن با شبکه تعامل میکند؛ او به شبکه نمیگوید دادهها چطور منتقل شوند، بلکه امکانات و سرویسهایی را که کاربر نیاز دارد در اختیارش میگذارد.