לדלג לתוכן

1.2 שכבת הקו הרצאה

מבוא

שכבת הקו היא השכבה השנייה במודל OSI, והיא שכבה תוכנתית עם מספר מטרות:

  • מתן זהות ייחודית לכל רכיב רשתי או מחשב.
  • הבטחת אמינות בתקשורת.
  • מניעת התנגשויות מידע.

פרוטוקול

פרוטוקול הוא דרך מוסכמת שבה מחשבים מתקשרים זה עם זה מבחינה תוכנתית.

  • לדוגמה, פרוטוקול עשוי להגדיר שכל שיחה בין שני מחשבים חייבת להתחיל במחרוזת "hello".
  • ניתן לחשוב עליו כשפה משותפת שכל המחשבים חייבים לדבר בה כדי להבין זה את זה.
  • קיימים פרוטוקולים רבים, ואנו נתמקד בכאלה שמממשים את שכבת הקו עבור טווחים מסוימים.

כדי ששכבת הקו תשיג את מטרותיה, יש להגדיר פרוטוקולים שבהם כל המחשבים ברשת חייבים להשתמש.

התקן - RFC

בעולם המחשבים קיימים תקנים שמגדירים כיצד מחשבים מתקשרים.

  • הארגון העיקרי שאחראי על התקנים האלה הוא IEEE, המחזיק במספר רב של תקנים.
  • תקנים אלו נקראים RFC, והם מגדירים פרוטוקולים, דרך פעולתם, ואופן השימוש בהם.

דוגמאות לפרוטוקולים בשכבת הקו:

  • 802.3 – Ethernet: מגדיר את שכבת הקו עבור תקשורת בכבלים פיזיים.
  • 802.11 – Wi-Fi: מגדיר את שכבת הקו עבור תקשורת אלחוטית.
  • 802.15 – Bluetooth: מגדיר את שכבת הקו עבור התקני Bluetooth, כמו אוזניות אלחוטיות.

תפקידי שכבת הקו

שליחת מידע:

  • קבלת המידע מהשכבה שמעליה.
  • חלוקת המידע למסגרות בהתאם למגבלות התקשורת של הטווח.
  • שליחת המסגרות אחת אחרי השנייה.

קבלת מידע:

  • קבלת נתונים מהשכבה הפיזית (כרטיס הרשת).
  • פירוק הנתונים למסגרות.
  • בדיקה האם המידע מיועד למחשב המקומי.
  • אם כן – העברת הנתונים לשכבה הבאה, אחרת התעלמות מהם.

סיכום:

שכבת הקו אחראית על שלושה היבטים עיקריים:

  • מסגור מידע – התאמת הנתונים למגבלות הרשת (למשל, Ethernet יכול להעביר רק 1500 בתים בו-זמנית).
  • זיהוי ותיקון שגיאות – בדיקה שהמידע עבר בשלמותו.
  • זהות לכל רכיב – שימוש בכתובת MAC (נרחיב בהמשך).

מסגור (Framing)

  • פאקטה היא יחידת מידע שמחשבים מעבירים ביניהם.
  • לכל רשת יש מגבלת גודל מידע שניתן לשלוח בפעם אחת, הנקראת MTU (Maximum Transmission Unit).
  • לדוגמה, ב-Ethernet ה-MTU הוא לרוב 1500 בתים. אם יש צורך להעביר יותר נתונים, הם מחולקים למסגרות קטנות יותר.
  • תהליך זה נקרא מסגור (Framing), והוא גורם לכך שפאקטה אחת עשויה להיות מורכבת ממספר מסגרות (Frames).

Pasted image 20240704233025.png

כיצד הצד המקבל יודע את גודל המסגרות?

  1. ספירת בתים – לפני שליחת המסגרת מציינים את אורכה בבתים.
  2. שיטת הדגל – שימוש בסמני התחלה וסיום (למשל, 10101010 לתחילת מסגרת ו-01010101 לסופה).
    • אם ערכים אלו מופיעים בתוך המסגרת עצמה, מוסיפים סימון מיוחד כדי להבדילם מהסמנים.

זיהוי ותיקון שגיאות

זיהוי שגיאות

שיטת Parity Bit

  • שיטה לזיהוי איבוד מידע באמצעות ספירת הביטים שהערך שלהם 1 בכל בית בפאקטה.
  • אם מספר הביטים אי-זוגי, מוסיפים ביט נוסף עם הערך 1 כדי להפוך אותו לזוגי.
  • הצד המקבל בודק אם מספר הביטים נשאר זוגי – אם לא, סימן שחלק מהמידע אבד.

שיטת Checksum

  • חישוב סכום הביטים בעלי הערך 1 בפאקטה ושמירתו בתחילת ההודעה.
  • הצד המקבל מחשב מחדש את ה-Checksum ומשווה אותו לערך שנשלח.
  • אם הערכים אינם תואמים, יש תקלה במידע.
  • לעיתים משתמשים ב-Checksum ל-Checksum כדי לוודא שגם הוא עצמו לא נפגם.

תיקון שגיאות

  • כאשר מזוהה שגיאה, ניתן לבקש שליחה חוזרת של המידע הפגום.
  • לחלופין, ניתן לשלוח את המידע מספר פעמים כדי להגדיל את הסיכוי לקבלו בצורה תקינה.

זהות לכל רכיב

  • כתובת MAC (Media Access Control) היא מזהה ייחודי לכל כרטיס רשת, אשר ניתן לו בזמן הייצור.
  • הכתובת מורכבת מ-6 בתים:
    • 3 הבתים הראשונים מזהים את יצרן הכרטיס (Manufacturer ID).
    • 3 הבתים האחרונים הם מספר ייחודי שמבדיל את הכרטיס מכרטיסים אחרים בעולם.

איך זה מועיל?

  • דמיינו רשת מחשבים שבה כולם מחוברים לאותו כבל (טופולוגיית Bus).
  • כאשר מחשב שולח פאקטה למחשב אחר, כל המחשבים ברשת מקבלים אותה.
  • כתובת ה-MAC מאפשרת למחשב היעד לזהות שהפאקטה מיועדת אליו, בעוד שאר המחשבים יתעלמו ממנה.
  • באופן דומה, הפאקטה גם מכילה את כתובת ה-MAC של השולח, כך שהמקבל יודע ממי התקבלה ההודעה.

Pasted image 20240704233250.png

  • בשיעור הבא נראה כיצד מומשה כל מאפייני השכבה עם פרוטוקול תוכנתי בשם "אתרנט".