ویرگول
ورودثبت نام
حمید رضا اسفندیاری
حمید رضا اسفندیاریمدیر سیستم های فناوری اطلاعات، مدیریت زیرساخت سرور و شبکه، محیط های مجازی سازی و امنیت شبکه
حمید رضا اسفندیاری
حمید رضا اسفندیاری
خواندن ۱۰ دقیقه·۲ ماه پیش

لایه پیوند داده (Data Link Layer) - مبانی شبکه قسمت چهارم

در این درس، ما لایه دوم مدل OSI را که لایه پیوند داده نامیده می‌شود، بررسی می‌کنیم. وظیفه اصلی آن جابجایی داده‌ها بین دو دستگاه است که به طور مستقیم در لایه فیزیکی به هم متصل شده‌اند. این لایه قالب‌بندی (Framing)، تشخیص خطا (Error Detection)، و آدرس‌دهی MAC را اضافه می‌کند. سپس لایه فیزیکی این داده‌ها را به سیگنال‌های الکتریکی، نوری یا رادیویی تبدیل کرده و از طریق رسانه ارسال می‌نماید.

لینک آموزش قسمت سوم: https://vrgl.ir/Pd9kZ

برخلاف لایه ۳، که عمدتاً از پروتکل IP استفاده می‌کند، لایه ۲ مجموعه‌ای از پروتکل‌های متنوع را به کار می‌گیرد. این پروتکل‌ها به نوع شبکه فیزیکی مورد استفاده وابسته هستند. برخی از پروتکل‌های رایج لایه ۲ عبارتند از: اترنت (Ethernet) ۸۰۲.۳، شبکه بی‌سیم (Wi-Fi) ۸۰۲.۱۱، PPP (پروتکل نقطه به نقطه)، و HDLC (کنترل پیوند داده سطح بالا).

با این حال، پرکاربردترین پروتکل‌های لایه ۲ امروزه، اترنت برای شبکه‌های سیمی و Wi-Fi برای شبکه‌های بی‌سیم هستند. در این دوره، هنگامی که لایه ۲ را بررسی می‌کنیم، پروتکل اترنت را مورد بحث قرار می‌دهیم.

هدر اترنت (The Ethernet Header)

ابتدا هدر لایه ۲ پروتکل اترنت را بررسی می‌کنیم و سپس در مورد عملکرد اصلی آن بحث خواهیم کرد.

لایه پیوند داده یک هدر لایه ۲ و یک دنباله (Trailer) لایه ۲ به بسته‌ای که از لایه شبکه (لایه ۳) دریافت می‌کند، اضافه می‌نماید. این کار یک قاب اترنت (Ethernet Frame) را تشکیل می‌دهد، همانطور که در نمودار زیر نشان داده شده است.

فریم شامل اطلاعات مهمی مانند آدرس MAC فرستنده و گیرنده و یک دنباله بررسی فریم (Frame Check Sequence - FCS) است که برای بررسی اینکه آیا فریم به درستی توسط دستگاه مستقیماً متصل دریافت شده است، استفاده می‌شود.

حال، برای درک تصویر بزرگتر و نحوه عملکرد قالب‌بندی لایه ۲، تمثیل خود را با خدمات پستی ادامه می‌دهیم.

لایه پیوند داده - تمثیل خدمات پستی

وقتی نامه‌ای را برای شخصی در کشور دیگر ارسال می‌کنید، آن را در صندوق پستی محلی خود می‌اندازید. نگران نیستید که چگونه تمام مسیر را طی خواهد کرد. در پشت صحنه، سیستم پستی نامه شما را از یک اداره پست به اداره پست دیگر جابجا می‌کند. بین هر جفت اداره، ممکن است از خودرو، کامیون، قطار یا هواپیما استفاده کنند. بسته به روش حمل و نقل، آن‌ها نامه شما را در بسته‌ها یا کانتینرهای موقت مختلف قرار می‌دهند، همانطور که در نمودار زیر نشان داده شده است.

لایه پیوند داده به همین شکل کار می‌کند. نحوه جابجایی داده‌ها از یک دستگاه به دستگاه مستقیماً متصل بعدی را مدیریت می‌کند، درست مانند نحوه حرکت یک نامه از یک اداره پست به اداره پست بعدی. این لایه یک «پوشش» اطراف داده (که فریم نامیده می‌شود) اضافه می‌کند تا به تحویل در آن پیوند (Link) خاص کمک کند. هر پیوند در طول مسیر ممکن است از پروتکل لایه ۲ متفاوتی استفاده کند (اترنت، بی‌سیم، PPP، HDLC، رله فریم و غیره)، درست مانند روش‌های حمل و نقل مختلف در سیستم پستی.

ایده اصلی این است که:

  • لایه پیوند داده تحویل محلی را مدیریت می‌کند — گام به گام (Hop-by-hop) (از اداره پست به اداره پست). در هر گام، آدرس اداره پست بعدی در بسته موقت وارد می‌شود.

  • لایه شبکه (IP) تحویل انتها به انتها را مدیریت می‌کند — از آدرس خیابان فرستنده تا آدرس خیابان گیرنده (آدرس‌های فرستنده و گیرنده در طول تحویل تغییر نمی‌کنند).

قالب‌بندی (Framing)

حال، بیایید همان مثال را اما در زمینه شبکه‌سازی ببینیم. عملکرد اصلی لایه پیوند داده، بسته‌بندی بسته‌های لایه شبکه در قالب فریم‌ها است. فریم‌ها ساختاری اضافه می‌کنند تا دستگاه گیرنده بتواند:

  • بداند داده از کجا شروع و به کجا پایان می‌یابد.

  • تشخیص دهد که آیا مشکلی در ارسال رخ داده است.

یک فریم را مانند یک بسته حمل و نقل در اطراف بسته IP تصور کنید، با:

  • هدر - آدرس MAC منبع و مقصد.

  • بار مفید (Payload) - داده از لایه ۳ (به عنوان مثال، بسته IP).

  • دنباله (Trailer) - اطلاعات بررسی خطا.

بیایید مثالی را ببینیم و با خدمات پستی مقایسه کنیم، همانطور که در بخش بالا نشان داده شده است. فرض کنید کاربر با IP آدرس 10.1.1.1 داده‌ای را به Google ارسال می‌کند. ابتدا داده را در یک بسته کپسوله‌سازی می‌کند. این بسته شامل آدرس IP مقصد google.com است. سپس آن بسته IP درون یک فریم لایه ۲، به عنوان مثال، یک فریم بی‌سیم ۸۰۲.۱۱، قرار می‌گیرد تا بتواند در سراسر شبکه محلی به سمت مسیریاب بی‌سیم محلی حرکت کند.

مسیریاب بی‌سیم فریم را دریافت می‌کند، هدر و دنباله لایه ۲ را حذف می‌کند و بسته IP درون آن را نگه می‌دارد. سپس آدرس IP مقصد را بررسی کرده و تصمیم می‌گیرد که بسته را به کجا بفرستد. برای انجام این کار، همان بسته IP را در یک فریم لایه ۲ جدید می‌پیچد. این فریم جدید برای پیوند بعدی ساخته شده است — از آدرس MAC مسیریاب به عنوان منبع و آدرس MAC R2 به عنوان مقصد استفاده می‌کند.

در مسیریاب بعدی، همین اتفاق دوباره رخ می‌دهد. فریم حذف می‌شود، بسته IP بررسی می‌شود و سپس برای گام بعدی در یک فریم جدید قرار می‌گیرد. این فرآیند ادامه می‌یابد تا زمانی که بسته به مقصد نهایی، که PC2 است، برسد.

هنگامی که سرور Google فریم را دریافت می‌کند، اطلاعات لایه ۲ را حذف کرده و می‌بیند که بسته IP برای آن در نظر گرفته شده است. سپس داده‌ها را به سمت بالای پشته (Stack) به برنامه صحیح ارسال می‌کند.

نکته کلیدی: بسته IP از ابتدا تا انتها بدون تغییر باقی می‌ماند، اما فریم لایه ۲ که بسته را احاطه کرده است، در هر مسیریاب جایگزین می‌شود تا با پیوند بین دستگاه‌ها مطابقت داشته باشد.

زیرلایه‌های پیوند داده

یک جنبه مهم از لایه پیوند داده این است که به اندازه سایر لایه‌های مدل OSI مستقل نیست. برای جابجایی داده‌ها در یک شبکه، از نزدیک با لایه فیزیکی کار می‌کند. لایه پیوند داده دارای دو زیرلایه است، همانطور که در نمودار زیر نشان داده شده است:

  • زیرلایه کنترل پیوند منطقی (Logical Link Control - LLC).

  • زیرلایه کنترل دسترسی رسانه (Media Access Control - MAC).

زیرلایه MAC به ویژه با لایه فیزیکی مرتبط است، زیرا نحوه دسترسی دستگاه‌ها به رسانه فیزیکی و نحوه قرارگیری داده‌ها در شبکه را کنترل می‌کند.

لایه فیزیکی با سخت‌افزار واقعی سروکار دارد. چیزهایی مانند کابل‌ها و سیگنال‌های الکتریکی ارسال شده از طریق آن‌ها را تعریف می‌کند. لایه پیوند داده قواعدی را برای نحوه ارسال آن داده‌ها از طریق اتصال فیزیکی اضافه می‌کند.

این دو لایه به تحویل داده‌ها از یک دستگاه به دستگاه دیگر کمک می‌کنند. هنگامی که یک کامپیوتر یا مسیریاب می‌خواهد یک بسته IP ارسال کند، از لایه پیوند داده استفاده می‌کند تا آن بسته را به دستگاه بعدی در مسیر برساند.

چرا فقط بیت‌ها را به صورت خام ارسال نکنیم؟

زیرا بدون ساختار، گیرنده نمی‌داند یک پیام کجا به پایان می‌رسد و پیام بعدی از کجا شروع می‌شود!

آدرس‌های MAC چه هستند؟

در لایه پیوند داده، دستگاه‌ها برای تحویل داده از آدرس‌های MAC استفاده می‌کنند. هر رابط شبکه، مانند کارت شبکه یا پورت مسیریاب، آدرس MAC منحصربه‌فرد خود را دارد. به عنوان مثال، به نمودار زیر نگاه کنید.

  • PC1 دارای آدرس MAC A است.

  • R1 دارای دو رابط است، یکی با آدرس MAC B و دیگری C.

  • R2 دارای دو رابط است، یکی با آدرس MAC D و دیگری E.

  • SRV1 دارای آدرس MAC F است.

به یاد داشته باشید، این آدرس‌های MAC فقط مثال‌های ساختگی هستند. در واقعیت، یک آدرس MAC ۴۸ بیتی است و به صورت هگزادسیمال نوشته می‌شود، مانند 00aa.bbcc.ddee. با این حال، اجازه دهید از این MACهای خیالی کوتاه استفاده کنیم تا تأکید کنیم که یک بسته چگونه در سراسر شبکه از PC1 به سرور SRV1 حرکت می‌کند.

هنگامی که دستگاهی مانند PC1 می‌خواهد داده ارسال کند، یک بسته با آدرس‌های IP منبع و مقصد (به رنگ سبز) ایجاد می‌کند. سپس، بسته IP را در یک فریم کپسوله‌سازی می‌کند که شامل آدرس فیزیکی خودش به عنوان MAC منبع و آدرس MAC مقصد مسیریاب گام بعدی در همان شبکه محلی است. در مثال ما، این مسیریاب R1 است.

هنگامی که R1 فریم را دریافت می‌کند، هدر و دنباله‌های لایه ۲ را حذف می‌کند، یک تصمیم مسیریابی می‌گیرد و سپس بسته IP را در یک فریم جدید، با یک هدر لایه ۲ جدید، کپسوله‌سازی مجدد می‌کند. MAC منبع را روی آدرس فیزیکی خودش و MAC مقصد را روی آدرس فیزیکی مسیریاب گام بعدی R2 تنظیم می‌کند. این فرآیند در R2 تکرار می‌شود. هدر و دنباله لایه ۲ را حذف می‌کند و بسته IP را در یک فریم جدید کپسوله‌سازی مجدد می‌کند که مقصد آن آدرس MAC سرور SRV1 است. هنگامی که سرور فریم را دریافت می‌کند، هدر و دنباله لایه ۲ را حذف کرده و بسته IP را برای دریافت بار مفید (Payload) خارج از کپسوله‌سازی می‌کند.

به چند جنبه ضروری ارتباط توجه کنید:

  • در هر مسیریاب، فریم لایه ۲ حذف و بازسازی می‌شود. به این فرآیند کپسوله‌سازی مجدد فریم (Frame Re-encapsulation) گفته می‌شود.

  • آدرس‌های MAC منبع و مقصد هنگام کپسوله‌سازی مجدد فریم توسط هر مسیریاب تغییر می‌کنند.

  • بسته IP (هدر لایه ۳) در طول کل مسیر شبکه بدون تغییر باقی می‌ماند.

اینگونه است که اطلاعات در سراسر شبکه حرکت می‌کند. اطلاعات موجود در هدر لایه ۳ (IPهای منبع و مقصد) در طول کل مسیر ثابت می‌ماند. از آن برای هدایت بسته به گیرنده مورد نظر بار مفید داده استفاده می‌شود. از طرف دیگر، هدر لایه ۲ در هر گام تغییر می‌کند. از اطلاعات موجود در هدر لایه ۲ برای هدایت فریم به مسیریاب گام بعدی که مستقیماً متصل است، استفاده می‌شود.

نکته کلیدی: آدرس‌های MAC برای تحویل فریم‌ها در همان شبکه محلی (لایه ۲) استفاده می‌شوند.

دنباله لایه ۲ (The Layer 2 trailer)

بیایید دوباره به مثال نشان داده شده در نمودار بالا نگاه کنیم. دنباله لایه ۲ قبل از ارسال فریم از طریق شبکه، در انتهای آن اضافه می‌شود. هدف اصلی آن کمک به تشخیص خطا در طول ارسال است. رایج‌ترین بخش دنباله، دنباله بررسی فریم (Frame Check Sequence - FCS) است. FCS حاوی مقداری است که با استفاده از روشی به نام CRC (بررسی افزونگی دوره‌ای یا Cyclic Redundancy Check) از داده‌های موجود در فریم محاسبه می‌شود.

هنگامی که فریم به مقصد می‌رسد، دستگاه گیرنده همان محاسبه CRC را انجام می‌دهد. نتیجه را با FCS موجود در دنباله مقایسه می‌کند. اگر مقادیر مطابقت داشته باشند، فرض می‌شود که فریم درست است. اگر مطابقت نداشته باشند، به این معنی است که داده‌ها در طول ارسال فاسد شده‌اند و فریم دور انداخته می‌شود.

دنباله لایه ۲ برای تشخیص خطا مهم است، اما برای تصحیح خطا کاربردی ندارد.

سوئیچ (Switch) چیست؟

اغلب با این توضیح روبرو خواهید شد که سوئیچ یک دستگاه شبکه است که در لایه ۲ مدل OSI فعالیت می‌کند. اما این دقیقاً به چه معناست که سوئیچ‌ها در لایه پیوند داده کار می‌کنند؟

این بدان معناست که سوئیچ‌ها فقط هدر لایه ۲ فریم‌ها را می‌خوانند و بر اساس آن اطلاعات تصمیمات سوئیچینگ می‌گیرند، همانطور که در نمودار زیر نشان داده شده است. به همین دلیل است که می‌گوییم آن‌ها در لایه ۲ فعالیت می‌کنند.

مسیریاب‌ها شبکه‌های IP مختلف را به هم متصل می‌کنند و بسته‌ها را بین آن‌ها جابجا می‌کنند. آن‌ها آدرس IP مقصد را در هر بسته می‌خوانند و تصمیم می‌گیرند که آن را به کجا ارسال کنند. با استفاده از جداول مسیریابی، بهترین مسیر را انتخاب می‌کنند و بسته را به سمت مقصد هدایت می‌نمایند.

اما سوئیچ‌ها در لایه ۲ فعالیت می‌کنند و از آدرس‌های MAC برای هدایت فریم‌ها بین دستگاه‌های موجود در همان شبکه استفاده می‌کنند.

نکات کلیدی

  • لایه پیوند داده (لایه ۲) مسئول تحویل محلی بین دستگاه‌های مستقیماً متصل در همان شبکه است.

  • این لایه بسته‌های IP را از لایه ۳ گرفته و آن‌ها را در فریم‌هایی می‌پیچد که شامل یک هدر و یک دنباله هستند.

    • هدر لایه ۲ حاوی آدرس‌های MAC منبع و مقصد است.

    • دنباله لایه ۲ شامل FCS (دنباله بررسی فریم) است که برای تشخیص خطاهای ارسال استفاده می‌شود.

  • برخلاف آدرس‌های IP که در طول کل مسیر شبکه ثابت می‌مانند، آدرس‌های MAC در هر گام تغییر می‌کنند.

  • هر مسیریاب فریم قدیمی را حذف و یک فریم جدید اضافه می‌کند تا بسته IP را به دستگاه بعدی منتقل کند. این فرآیند کپسوله‌سازی مجدد فریم نامیده می‌شود.

  • آدرس‌های MAC فقط در داخل شبکه محلی استفاده می‌شوند.

  • مسیریاب‌ها بسته‌ها را بر اساس آدرس‌های IP هدایت می‌کنند اما برای هر پیوند آن‌ها را در فریم‌های لایه ۲ جدید کپسوله‌سازی مجدد می‌کنند.

  • اترنت رایج‌ترین پروتکل لایه ۲ برای شبکه‌های سیمی است. Wi-Fi 802.11 استاندارد برای شبکه‌های بی‌سیم است.

  • سوئیچ‌ها در لایه ۲ فعالیت می‌کنند و از آدرس‌های MAC برای هدایت فریم‌ها بین دستگاه‌های موجود در همان شبکه استفاده می‌کنند.

  • لایه پیوند داده دارای دو زیرلایه است:

    • کنترل پیوند منطقی (LLC).

    • کنترل دسترسی رسانه (MAC).

  • زیرلایه MAC دسترسی به رسانه فیزیکی را مدیریت می‌کند و از نزدیک با لایه فیزیکی کار می‌کند. مسئول مکانیسم‌هایی مانند CSMA/CA و CSMA/CD است .

  • در نهایت، دنباله در انتهای فریم به تشخیص خطا کمک می‌کند اما آن‌ها را تصحیح نمی‌کند. اگر فریم فاسد شود، به سادگی دور انداخته می‌شود.


    **حمید رضا اسفندیاری _ کارشناس شبکه و فناوری اطلاعات**

شبکهکامپیوترit
۰
۰
حمید رضا اسفندیاری
حمید رضا اسفندیاری
مدیر سیستم های فناوری اطلاعات، مدیریت زیرساخت سرور و شبکه، محیط های مجازی سازی و امنیت شبکه
شاید از این پست‌ها خوشتان بیاید