|
صفحة: 154
השולח מבצע לולאה אין-סופית ו בכל מחזור של הלולאה הוא מעביר מנה לשכבה שמתחת ( לשידור ) ומאתחל את קוצב הזמן לערך שנקבע . לאחר מכן הוא ממתין לקבלת אישור או לפסיקת זמן המתרחשת כאשר תם זמן ההמתנה , אם התקבל אישור , השולח בודק את מספרו . אישור תקינות צריך להכיל מספר שונה , SN-n משוס שהמקבל מצפה לקבל את המנה הבאה . אם התקבל אישור כזה , השולח מעדכן את ערכו של , SN ומקבל מהשכבה שמעל עוד נתונים לשידור . אם המנה שנשלחה שובשה , יתקבל אישור שמספרו שווה . SN ^ אישור כזה משמעו שהמקבל מבקש לשלוח את אותה מנה שוב . גם אם לא התקבל אישור ( כלומר זמן ההמתנה פג , ( או שהתקבל אישור משובש , יש לשלוח את המנה שוב . בכל המקרים הללו , השולח אינו מקבל נתונים נוספים מהשכבה שמעל ואינו מעדכן את . SN משמעות הדבר היא שבמחזור הבא של הלולאה תשודר שוב אותה מנה . מקבל RN ^ -0 בצע לולאה ( אין-סופית ) המתן להגעת מנה מהשכבה שמתחת אם המספר הסידורי של המנה שהתקבלה שווה לערכו של RN וגם המנה שהגיעה תקינה בצע : . 1 העבר את שדה המידעשבמנהלשכבה שמעל RN < - ( RN + I ) mod 2 . 2 צור אישור וכתוב את ערכו של RN לשדה המספור שלו העבר את האישור לשכבה שמתחת ( לשידור ) סוף הלולאה . המקבל מבצע לולאה שבה הוא ממתין להגעת מנה . כאשר מתקבלת מנה מהשכבה שמתחת , המקבל בודק אם המספר הסידורי של המנה שווה למספר הסידורי שהוא מצפה שיהיה למנה זו ( RN ) ואס המנה תקינה . אם המספרים שווים ולא התגלו שגיאות , המקבל מעביר את שדה המידע שבמנה לשכבה שמעל ! אחר-כך הוא מעדכן את . RN
|
|