השיטה הנפוצה ביותר לחיבור בין מכשירים כגון מחשבים, מדפסות ואפילו מערכות ממוחשבות במטוסים, היא באמצעות רשת האתרנט (Ethernet) שפותחה לפני כ-50 שנה ועברה תהפוכות רבות מאז. נספר על לידתה באמצעות סיפור דמיוני על תוכנית ריאליטי ובה שליחי שבטים מתנגשים זה בזה שוב ושוב ושורדים.
הפוסט נכתב בשיתוף מיקי גוטמן ידיד העמותה, מהנדס מחשבים ומומחה בתקשורת.
נדמיין שאנו צופים בתוכנית ריאליטי שהשחקנים בה מחולקים לשבטים, וכל שבט יושב באוהלו סמוך לשביל הראשי. כאשר שבט צריך להעביר חבילה לשבט אחר, ראש השבט שולח שליח. השביל הראשי צר, ואם שני שבטים או יותר שולחים שליח בו זמנית, אף שליח אינו מצליח לעבור: כולם מתנגשים וחוזרים לשבט זבי דם. התכנסה מועצת חכמי השבטים לטכס עצה: כיצד יוכלו לוודא שהחבילות יעברו בהצלחה?
בואו נחזור למציאות לרגע. בשנת 1973 המציא החוקר רוברט מטקלף (Robert Metcalfe) רשת תקשורת לחיבור בין מחשבים אישיים ומדפסות במרכז המחקר של חברת זירוקס בקליפורניה [1]. בתקופה זו היו מעט מחשבים, רובם גדולים, והם לא תקשרו ביניהם, ולפיכך היה צורך להמציא שיטה חדשה לחיבור המחשבים. מטקלף קרא לרשת הזו Ethernet (להלן אתרנט), על שם האֵתֶר (Ether) שבעבר האמינו פיזיקאים שהוא ה"חומר" הממלא את החלל ומאפשר לגלים אלקטרומגנטיים להתפשט. רשת זו הפכה ברבות השנים לרשת המקומית הנפוצה בעולם (שימו לב להבדל בין אתרנט - רשת מקומית, לבין אינטרנט - הרשת העולמית שכולנו מכירים).
ברשת של מטקלף, כל המחשבים היו מחוברים לכבל נחושת אחד והודעות ממחשב אחד לאחר עברו עליו. כאשר מחשב אחד היה שולח הודעה הכבל היה תפוס, ולא היה אפשר להעביר בו עוד הודעות. אם יותר ממחשב אחד היה מנסה לשלוח הודעה בו זמנית הייתה התנגשות, וכל ההודעות היו מגיעות שגויות. מזכיר את הבעיה של השבטים בתוכנית הריאליטי, נכון? אז כן, מטקלף עמד בפני בעיה דומה: כיצד לשתף את הכבל (השביל הראשי) בין המחשבים (אוהלי השבטים) כדי שתתאפשר תקשורת יעילה? הוא מצא פתרון פשוט וחכם [2] (CSMA/CD).
נחזור לתוכנית הריאליטי כדי להסביר. כאמור, שני שבטים שולחים הודעות דרך השביל הראשי. כאשר השליחים מתנגשים, ההודעות לא עוברות וצריך לשלוח אותן שוב. והינה הפתרון של מטקלף: במצב כזה, כל ראש שבט יגריל מספר, אפס או אחת. אם הגריל אפס הוא ישלח מייד את ההודעה. אם הגריל אחת, הוא ימתין, למשל דקה, יותר מהזמן הדרוש לשליח לעבור בשביל, ורק אז ישלח את הודעתו. כך הוא מגדיל את הסיכוי לשליחה מוצלחת. אך מתי השליחה תיכשל? אם שני ראשי השבטים הגרילו אותו מספר. הסיכוי שזה יקרה הוא חצי.
כשיש כישלון אפשר להמשיך באותו אופן, אבל מטקלף הגה שיטה חכמה יותר: ראשי השבטים יבחרו מספר אקראי מתוך ארבעה (3-0). למשל אם ראש השבט הגריל שלוש, הוא ישלח שליח כעבור שלוש דקות. יש 16 אפשרויות להגרלה של שני ראשי השבטים, ו-4 מתוכן יגרמו להתנגשות, כמו הגרלת הצירוף (3,3). לכן הסיכוי להתנגשות הוא 4/16 =25%. הסיכוי לשליחה מוצלחת אחרי בדיוק שני סבבים הוא ⅜: כישלון בניסיון הראשון כפול הצלחה בניסיון השני (¾) = ⅜. התהליך ממשיך באופן דומה: בכל מצב כישלון, ראשי השבטים מגרילים מספר מתוך תחום הגדול פי שניים מהתחום הקודם (למשל מתוך 8 מספרים, 16 מספרים וכן הלאה), וכך מקטינים את הסיכוי להתנגשות. התהליך יכול להיות אין-סופי, אולם מספר הניסיונות הממוצע בדוגמה הפשוטה שלנו קטן מ-2 (בערך 1.6. חובבי המתמטיקה ראו פיתוח מתמטי בנספח).
ובמציאות רשת האתרנט של מטקלף הייתה זולה ופשוטה וצברה פופולריות רבה, אולם היו לה בעיות. אחת מהן הייתה קצב העברה נמוך עקב ההתנגשויות, ואחרת הייתה שהכבלים היו מסורבלים להתקנה. פריצת הדרך הייתה בהמצאת כבל חדש המבוסס על גידי נחושת מסוככים ("10BASE-T") שגם הוא היה זול ופשוט להתקנה, והוא אפשר תקשורת בו זמנית לשני הכיוונים על גבי גידים נפרדים, וכך כמות ההתנגשויות קטנה.
עוד בעיה הייתה הכבל המשותף שכל תקלה בו גרמה לניתוק הרשת. כדי להתגבר עליה ולמנוע התנגשויות, המציאו חברות שונות שלל התקנים: "צמתים" (hubs), "גשרים" (bridges") ולאחר מכן "מתגים" (switches). כל דור תרם לפתרון חלק מהבעיה, וזהו סוד כוחה של רשת האתרנט: לאחר כמעט 50 שנה מהמצאתה בכל פעם שמתעוררת מגבלה של הטכנולוגיה, מתגייסת קהילת המפתחים וממציאה פתרון.
השיטה המקובלת כיום היא מתגים [3]: לכל משתמש המחובר לרשת יש כבל פרטי המחבר בינו לבין התקן חומרה הקרוי מתג, שתפקידו לנתב את התעבורה. בשיטה המקובלת כל המשתמשים מחוברים למתג יחיד (ציור באתר). מתג זה מאפשר מעברים מקביליים דרכו (למשל משתמש A ל-B ובמקביל גם מ-C ל-D). אם שני משתמשים מבקשים להעביר בו זמנית לאותו יעד (למשל A ו-B שולחים ל-C), המתג שומר את ההודעה של B בזיכרונו כדי שלא תיאבד, ושולח אותה ל-C רק כאשר A סיים.
ומה לגבי השבטים? כל שבט יחובר בשביל פרטי דו-כיווני לתחנה מרכזית, שם השליחים ימתינו בסבלנות לתורם לעלות על השביל לשבט היעד. תוכנית הריאליטי הופכת למשעממת ללא התנגשויות, אבל הפתרון עובד ביעילות.
רשת האתרנט שתכנן ובנה מטקלף התפתחה מעבר לבניין היחיד במרכז זירוקס, והיום נמצאת בכל מקום שבו מחשבים מדברים זה עם זה: בבתים, במשרדים, במפעלים, במרכזי נתונים, במטוסי נוסעים, ואפילו במכוניות. לאורך השנים נעשו בה שיפורים רבים, כולל גידול עצום בקצב ההעברה - פי מאה אלף ויותר! (מ-2.94 מיליון סיביות לשנייה אז ל-400 מיליארד סיביות לשנייה כיום).
ליווי מדעי: עלי שמשוני
עריכה: רעות קמחי-גבריאלי
נספח - פיתוח מתמטי: