שיעור 12 ו-14 לאוקטובר

Post date: Oct 15, 2013 5:55:04 AM

עקרונות של תקשורת בין מחשבים

הבסיס של כל תהליך תקשורתי מבוסס על עיקרון של שלושה רכיבים פעילים בתהליך התקשורת: השולח של המסר(sender), המקבל של מסר (receiver) והערוץ (channel) שדרכו המסר מועבר בדרך מהשולח למקבל.

בתקשורת הנתונים לשולח קוראים מקור (Source), למקבל קוראים יעד (Destination) ולערוץ - ערוץ(Channel).

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

לחוקים אלה בעולם של תקשורת הנתונים קוראים פרוטוקולים (Protocols).

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

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

פרוטוקולים: Message Encoding

אחד השלבים הראשוניים בתהליך של העברה הודעות ברשת הוא תהליך של קידוד ההודעה. במהלך הקידוד עוברים הנתונים (תוכן ההודעה שלנו: מילים כתובות, תמונות, צלילים... ) תרגום משפת הייצוג לשפת המחשב, שפה שבה ניתן להעביר את הנתונים על פני הרשת. לאחר שהנתונים מגיעים ליעד(Destination), הם עוברים תהליך הפוך של קידוד (Decoding), בה הנתונים עוברים תרגום משפת המחשב לשפת הייצוג (מילים, צלילים,תמונות....)

פרוטוקולים: מבנה של ההודעה (Message Formatting)

כאשר הודעה נשלחת מנמען למען היא חייבת להיות בעלת מבנה מסויים. מבנה של כל הודעה חייב לכלול בנוסף למסר גם את הכתובת של המען והנמען והודעה על תחילת המסר ועל סיומו.

תהליך של הוספת פרטים מזהים של השולח והמקבל ופרטים מזהים נוספים נקרא אנקפסולציה (כמיסה) Encapsulation. במהלך תהליך של אנקפסולציה, מתווספים אל התוכן של המסר שדות מזהים והופכים את ההודעה לחבילת מידע FRAME. מה שיעבור בין שני המחשבים ברשת זה חבילת מידע (או מספר חבילות מידע) וכאשר הן יגיעו למען, יורדו מהחבילה הפרטים המזהים של השולח והמקבל ופרטים מזהים נוספים לרמה של מסר בלבד. לתהליך של הורדה (הוסרה) של הפרטים המזהים קוראים דה-אנקפסולציה De-Encapsulation.

פרוטוקולים: גודל של ההודעה Message Size

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

פרטוקולים: תזמון הודעה Message Timing

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

Access Method (מנגנון בקרת גישה) - מנגנון זה קובע מתי יהיו זמני הגישה של המשתמשים השונים ברשת או במילים אחרות מתי משתמש יכול לשלוח הודעה למחשב אחר. במידה ושני מחשבים ישדרו בו זמנית תתרחש התנגשות (Collision) בין ההודעות והן לא יגיעו ליעדן. (מנגנון CSMA/CD (השייך לפרוטוקולים של בקרת הגישה) יודע לזהות את ההתנגשויות האלה ברשת ולהורות למחשבים על שליחה חוזרת של מנות נתונים בזמנים מופרדים).

Flow Control (מנגנון שליטת זרימה) - מנגנון זה קובע את כמות הנתונים שיכולים לעבור בפעם אחת ומהירות העברתן. במידה והמקבל של ההודעה והשולח לא יהיו מתוזמנים אחד עם השני הדבר יגרום לבעיות בתהליך העברת הנתונים ואף בכישלונם. מנגנון זה מוודא (ובמידת הצורך משנה) שגם הנמען וגם המען "מדברים" באותה מהירות ושכמות הנתונים שמועברת בכל מנת נתונים "מתאימה" לשני המשתמשים.

Response Timeout (מנגנון זמן תגובה מירבי) - מנגנון זה קובע זמן המתנה מירבי לתגובה של המארח ומהם הפעולות שתתבצענה במידה והזמן אזל (שליחה חוזרת של ההודעה או הפסקת פעולה תקשורת).