עודכן לפני חודש
אם אי פעם שמעתם מישהו מזכיר כתובות IP מסוג "Class A" או "Class C", אתם שומעים הדי מערכת שהפכה למיושנת לפני יותר מ-30 שנה. ובכל זאת, הבנת ההיסטוריה הזו חושפת משהו יסודי לגבי האופן שבו האינטרנט שורד את הצלחתו שלו.
החזון המקורי: כתובות מחלקתיות (1981–1993)
כשפרוטוקול האינטרנט תוקנן ב-RFC 791 ב-1981, המעצבים עמדו בפני בעיית חלוקה: כיצד מחלקים 4.3 מיליארד כתובות בין ארגונים שעשויים להזדקק לכל מקום בין עשרות למיליונים?
הפתרון שלהם היה אלגנטי בפשטותו. צרו כמה דליים בגודל קבוע:
- Class A: 16.7 מיליון כתובות לרשת (לארגונים הגדולים ביותר)
- Class B: 65,534 כתובות לרשת (לארגונים בינוניים)
- Class C: 254 כתובות לרשת (לארגונים קטנים)
המחלקה הוצפנה בביטים הראשונים של הכתובת עצמה. נתבים יכלו להסתכל על כתובת IP ולדעת מיד היכן מסתיים חלק הרשת והיכן מתחיל חלק המארח.
פשוט. אינטואיטיבי. שגוי בצורה קטסטרופלית.
הבעיה: המציאות מסרבת להיכנס לקטגוריות
הנה מה שהמעצבים פספסו: ארגונים לא מגיעים בשלושה גדלים.
אם הייתם זקוקים ל-260 כתובות, Class C היה קטן מדי. אבל Class B נתן לכם 65,534 — בזבוז של 99.6%. המערכת אילצה אתכם לקחת פי 250 ממה שהייתם צריכים, או לקבל שאין לכם מספיק.
זה לא היה חוסר יעילות בשוליים. זה היה המקרה הנפוץ. רוב הארגונים נפלו בפער שבין המחלקות, וכל אחד מהם או בזבז כתובות או לא יכול היה לתפקד.
בינתיים, אוניברסיטאות ותאגידים קיבלו בלוקים של Class A — יותר מ-16 מיליון כתובות כל אחד — פשוט מפני שלא היה דבר אחר שמתאים. חלק מאותן הקצאות קיימות עד היום, בידי ארגונים שלעולם לא ישתמשו בחלק קטן מהן.
בתחילת שנות ה-90, שני משברים התכנסו:
מיצוי Class B. היו בדיוק 16,384 רשתות Class B אפשריות. הן נעלמו במהירות. התחזיות הראו מיצוי מוחלט עד אמצע שנות ה-90.
ניפוח טבלת הניתוב. כל רשת דרשה רשומה נפרדת בטבלת הניתוב. אלפי רשתות Class C פירושן שנתבים נגמרה להם הזיכרון רק ממעקב אחר מסלולים. האינטרנט הפך לאיטי יותר ככל שגדל.
האינטרנט היה אולי שנתיים-שלוש מרחוק מקיר בלתי עביר.
הפתרון: CIDR (1993)
בספטמבר 1993, שני RFC-ים שינו הכל:
- RFC 1518: "ארכיטקטורה להקצאת כתובות IP עם CIDR"
- RFC 1519: "ניתוב בין-תחומי ללא מחלקות (CIDR): אסטרטגיית הקצאה וצבירת כתובות"
CIDR (מבטאים "סיידר") נטש לחלוטין את מערכת המחלקות הנוקשה. הרעיון המהפכני שלו היה פשוט: תנו לחלק הרשת של כתובת IP להיות בכל אורך שאתם צריכים.
במקום להיות נעולים על רשתות /8, /16 או /24:
צריכים 500 כתובות? הנה /23 (512 כתובות). צריכים 1,000? קחו /22 (1,024 כתובות). הבזבוז ירד מקרוב ל-100% לספרות בודדות.
הסימון 192.168.1.0/24 אומר "24 הביטים הראשונים הם חלק הרשת." אין יותר ניחושים מתבניות הביטים הראשונים. גבול הרשת הוא מפורש.
אבל החידוש השני של CIDR היה חשוב לא פחות: צבירת מסלולים. במקום לפרסם מאות רשתות נפרדות, ספק אינטרנט יכול היה להכריז על בלוק גדול אחד שכלל את כולן. טבלאות הניתוב התכווצו. האינטרנט הפך למהיר יותר גם ככל שגדל.
ההבדל בין כתובות מחלקתיות לבין כתובות ללא-מחלקות אינו רק טכני. הוא פילוסופי.
כתובות מחלקתיות אמרו: "התאים את עצמך לקטגוריות שלנו."
CIDR אמר: "ספר לנו מה אתה צריך."
ההצלחה הבלתי צפויה
CIDR תוכנן כאמצעי חירום. המהנדסים ציפו שיקנה 3-5 שנים בזמן שהפתרון האמיתי — IPv6 — יפותח וייפרס.
עברו יותר מ-30 שנה.
מרחב כתובות IPv4 הגיע לכדי מיצוי טכני. אבל האינטרנט עדיין פועל עליו. NAT, NAT ברמת ספק השירות, והקצאה קפדנית מתחו את מה ש-CIDR אפשר הרבה מעבר לכל תחזית.
ללא CIDR, האינטרנט היה מגיע לקיר עד 1996. לא הייתה פריחת ה-World Wide Web, לא בום הדוט-קום, לא מהפכת הסמארטפון — לפחות לא בצורה שאנו מכירים אותם. התשתית לא הייתה שורדת מספיק זמן.
הלקח העמוק יותר
המעצבים של הניתוב המחלקתי לא היו חסרי יכולת. ב-1981, הפתרון שלהם היה סביר. הם לא יכלו לחזות כיצד האינטרנט יגדל, מה יצטרכו ארגונים, או שהפשטות האלגנטית שלהם תהפוך לכלא אלגנטי.
CIDR הצליח לא מפני שהיה מתוחכם יותר, אלא מפני שהפסיק לנסות לחזות את העתיד. במקום ליצור קטגוריות קבועות, הוא יצר מערכת גמישה מספיק להסתגל לצרכים שאיש עדיין לא דמיין.
כך האינטרנט שורד. כאשר החלטת עיצוב יסודית מתגלה כבלתי מספקת, קהילת המהנדסים לא מתקנת סביבה — היא מעצבת מחדש את היסודות.
CIDR לא היה פתרון מושלם. אנחנו עדיין עוברים ל-IPv6 כדי לפתור באמת את מיצוי הכתובות. אבל הוא היה בדיוק מה שהאינטרנט היה צריך ברגע קריטי: גשר לעתיד שעוד לא הגיע.
נקודות מפתח
- כתובות מחלקתיות (1981–1993) אילצו ארגונים לשלושה גדלים קבועים, ויצרו שיעורי בזבוז מעל 99% לכל מי שלא התאים לקטגוריות
- בתחילת שנות ה-90, האינטרנט עמד בפני קריסה מתקרבת ממיצוי כתובות וניפוח טבלת הניתוב
- CIDR (1993) החליף מחלקות קבועות בגדלי רשת גמישים ואפשר צבירת מסלולים
- אמצעי חירום ל-3-5 שנים הפך לפתרון של יותר מ-30 שנה, וקנה זמן לפיתוח IPv6
- הלקח: מערכות שורדות על ידי הפיכתן לגמישות יותר, לא על ידי יצירת קטגוריות טובות יותר
שאלות נפוצות על כתובות מחלקתיות לעומת כתובות ללא-מחלקות
מדוע אנשים עדיין מדברים על רשתות Class A, B ו-C?
המינוח נמשך מפני שהוא קיצור נוח לטווחי כתובות, ורבים מכלי הרשת עדיין מציגים מסיכות subnet של "ברירת מחדל" שמתיישרות עם גבולות המחלקות הישנים. אבל למטרות ניתוב והקצאה, המחלקות חסרות משמעות מאז 1993.
מה המשמעות של /24 בסימון CIDR?
פירושו ש-24 הביטים הראשונים של הכתובת מזהים את הרשת, ו-8 הביטים הנותרים מזהים מארחים בתוך אותה רשת. /24 נותן לכם 256 כתובות (254 שימושיות). /16 נותן לכם 65,536 כתובות. המספר שאחרי הלוכסן הוא אורך קידומת הרשת.
האם CIDR באמת פתר את מיצוי IPv4?
לא — הוא עיכב אותו בעשורים. CIDR הפך את ההקצאה ליעילה מספיק כדי ש-IPv4 יחזיק מעמד עד בערך 2011–2019 (בהתאם לאזור) במקום אמצע שנות ה-90. מיצוי אמיתי מתרחש כעת, וזו הסיבה שאימוץ IPv6 מואץ סוף סוף.
כיצד צבירת מסלולים עזרה?
לפני CIDR, ספק אינטרנט עם 256 לקוחות עשוי היה להזדקק ל-256 רשומות נפרדות בטבלת הניתוב. עם צבירה, הם יכלו להכריז על /16 אחד שכיסה את כולם. טבלאות הניתוב עברו ממצב של ניפוח למצב ניתן לניהול, וחיפושי מסלולים הפכו מהירים יותר.
מקורות
האם דף זה היה מועיל?