יום שלישי, 12 בנובמבר 2013

פרק 1 - מבוא לרשתות מחשבים

פרק 1 - מבוא לרשתות מחשבים

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

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


 מוטיבציה: מה קורה כשאני גולש לפייסבוק?
o אם אני רוצה לבנות לפייסבוק משלי, מה אני בעצם צריך?
o לעבור על פונקציות עיקריות
 אימות
 אחסון
 תצוגה ועיצוב
 אינטרקציה
 תקשורת
o הפוקוס שלנו בספר יהיה בתקשורת. ספציפית, בפרק הזה נצייר בקווים כללים
מה קורה כשאני כותב www.facebook.com בדפדפן ולוחץ Enter עד שמופיע
לי העמוד במסך.


 WWW 
o כשאנחנו אומרים ביום-יום אינטרנט, אנחנו מתכוונים ל-Word Wide Web.
מדבור באוסף עמודי האינטרנט שאנחנו גולשים אליהם בדפדפן. פירוש המילה
Web היא רשת, כמו ברשת קורי העכביש - באותו האופן שעמודי האינטרנט
מקושרים אחד לשני עם לינקים. עמודי האינטרנט יכולים להיות מפוזרים כל רחבי
העולם - Word Wide - בעוד אתר אחד בניו-יורק, השני בחיפה והשלישי בטוקיו.
o על מנת שהדפדפן יוכל להציג את העמוד הראשי של האתר
www.facebook.com, הוא צריך לדעת איך הוא נראה )מה כתוב ואיפה? באיזה
גופן? באיזה גודל? צריך לצייר תמונות על המסך? איך הן נראות? וכו'…(, מה
קורה כשאני לוחץ על אחד הכפתורים )למשל, על לינק או כפתור Login(. הדפדפן
צריך לא מעט מידע כדי להיות מסוגל לעשות זאת.
o מאיפה הדפדפן משיג את המידע? כמובן, מפייסבוק, www.facebook.com.
o איך פייסבוק יודעים לשלוח לי את המידע הזה? הדפדפן צריך הלדויע אלתר של
פייסבוק שהוא מעוניין בו. בניסוח אחר: הדפדן צריך לשלוח הודעת בקשה לאתר
האינטרנט של פייסבוק, שאומרת פחות או יותר, "שלח לי את המידע הנדרש כדי
להציג את העמוד הראשי ב-www.facebook.com". אתר האינטרנט של
פייסבוק מקבל את הבקשה, ובתורו שולח הודעת תגובה מתאימה לדפדפן,
שמכיל את המידע הדרוש, כפי שפירטנו למעלה.
o אתר האינטרנט של פייסבוק מקבל בקשה ושולח תגובה. כלומר, הור נותן שירות
לדפדפן. מכאן, אתר האינטרנט של פייסבוק מכונה שרת והדפדפן מכונה לקוח.
o באופן כללי נוכל לומר, שכאשר גולשים ב-WWW, ישנם לקוחות )דפדפנים(
ששולחים בקשות אל השרתים )אתרי האינטרנט(, והשרתים מחזירים תגובות
ללקוחות. המידע שמגיע בתגובות, משמש את הדפדפנים להציג על המסך את
אתרי האינטרנט למשתמשים.
o על מנת לראות את )חלק( המידע שהשרת שולח ללקוח, נוכל ללחוץ בדפדפן קליק
ימני במקום ריק באתר האינטרנט ולבחור ב-View Page Source. אתם תראו
הרבה טקסט שמכיל את המידע שפירטנו מקודם. כרגע לא נתעמק במה אנחנו רואים בדיוק, אבל נסו לזהות חלקים מהעמוד האינטרנט בטקסט הזה, כמו
כותרות ופסקאות.


 IP Address 
o צורך
 כדי שנוכל לשלוח ולקבל הודעות, צריך לדעת לאיפה לשלוח אותה. ממש
כשם שאני שולח מכתב בדואר, יש לי על המעטפה את כתובת היעד
)נמען( ואת כתובת המקור )מוען(. כנ"ל עבור חיוג בטלפון, ובהרבה
מקרים אחרים של תקשורת.
 באותו אופן, גם כשאני שולח מידע ברחבי האינטרנט, יש צורך בכתובת
מתאימות. הכתובות הללו מכונות כתובות IP והן ייחודיות לכל מחשב
שמחובר באינטרנט )מריחה!(.
o מבנה
 עבור כתובות דואר יש מבנה קבוע, שם מלא + רחוב + מספר בית + עיר
+ מיקוד. גם עבור מספרי טלפון יש מבנה קבוע של ספרות שמכילות
קידומות ומספר.
 כתובות IP מורכבות מארבעה בתים. כל בית יכול קבל 652 ערכים בטווח
0-652, כך שניתן להציג את כתובת ה-IP כארבעה מספרים בטווח הזה.
נהוג להפריד אותם בנקודה.
o במקרה שלנו, הודעות הבקשה שהדפדפן שולח לאתר האינטרנט של פייסבוק
מכילה בכתובת המקור את כתובת ה-IP של המחשב ממנו גולשים, וכתובת
היעד את כתובת ה-IP של האתר של פייסבוק. בכיוון ההפוך, במקרה של
הודעות התגובה שאתר האינטרנט של פייסבוק שולח לדפדפן מכילה בכתובת
המקור את כתובת ה-IP של האתר של פייסבוק, וכתובת היעד את כתובת ה-
IP של המחשב ממנו גולשים.
o אתם בוודאי אומרים לעצמכם שיש כבר כתובת לאתר פייסבוק, הלא היא
www.facebook.com. אתם מעלים נקודה חשובה, ניגע בה בהמשך.
o תוכלו לגלות את כתובת ה-IP של הסמארטפון שלכם ע"י חיפוש בגוגל של " my
ip address" וכניסה לאתר הראשון.
o כמה כתובת IP אפשריות לדעתכם? יש 652 אופציות לכל אחד מארבעת
המספרים, לכן 6^26.


 ping 
o איך אנחנו יכולים לגלות מהי כתובת ה-IP של אתר אינטרנט מסויים? למשל של
Google, ynet, facebook וכו'? לשם כך נשתמש בכלי ping. נציין שייעוד הכלי
לא למציאת כתובת IP של אתר אינטרנט, תכף נשמש בכלי מתאים יותר.
o נפתח את ה-cmd ונרשום www.facebook.com ping. יופיעו כל מני דברים על
המסך, אך תוכלו לזהות שם כתובת IP. זו כתובת ה-IP של שרת האינטרנט של
פייסבוק.
o נסו להשתמש בכלי עבור אתרים שונים.
o הייעוד האמיתי של ping הוא לבדוק האם מחשב בעל כתובת IP מסויימת מחובר
לרשת, ולמדוד כמה זמן לוקח להודעה להישלח ולחזור אלי בחזרה. ping שולחת
בקשת הד, שברגע ומחשב היעד מקבל אותה, הוא משיב מיד בתשובת הד.
תשובת ההד ובקשת ההד מכונות גם ping ו-pong בהתאמה. כך ניתן לבדוק
האם המחשב בכתובת ה-IP הזו קיים, ולקבל מדד למהירות הקשר אל המחשב
הנבדק.
ping o שולח מספר הודעות הד, ואפשר לקבל מידע גם על מהירות הקשר )זמן
מינימלי, מקסימלי וממוצע במילישניות( וגם על איכות הקשר )מספר/אחוז
ההודעות ההד שקיבלנו עליהם תשובה(.  נסו להשתמש בכלי ping כלי לבדוק את משך הזמן להגעת תשובת הד לאתרים
הבאים. בידקו האם המרחק הגיאוגרפי משפיע, אם כן, כיצד?
www.yahoo.com (United States)
www.bbc.com (United Kingdom)
www.newtoholland.nl (Netherland)
www.yahoo.co.jp (Japan)
www.southafrica.co.z (South Africa)
www.webawards.com.au (Australia)

 GeoIP 
o עד עכשיו דיברנו על שרתים, לקוחות וכתובות. אבל בעצם, כשאני גולש לאתר
אינטרנט מסוים, הודעת הבקשה שלי צריכה להגיע בסופו של דבר למחשב )שרת(
שיטפל בה. השרת הזה נמצא איפשהו ברחבי הגלובוס. האם אני יכול לדעת איפה
הוא נמצא?
o ישנם מאגרי נתונים של המיקום הגיאוגרפי )ברמת העיר( של כתובות ה-IP.
בהינתן כתובת IP ניתן לדעת באיזו מדינה ועיר היא נמצאת. מאגרים אלו לא
רשמיים )אין בעצם שום מאגר רשמי, בגלל האופן שבו בנוי האינטרנט, אבל על
כך בהמשך הספר( ולכן הם לא מדויקים )חוסר הדיוק יכול להיות ברמת העיר
ולפעמים אף ברמת המדינה(.
o השתמש באתר http://www.geoiptool.com כדי לגלות את המיקום הגיאוגרפי
של אתרים שונים. נסו גם אתרים אקזוטיים וביזאריים, האם זה הגיוני?


 ענן האינטרנט
o אם יצא לכם לבדוק את המיקום הגיאוגרפי של אתר פייסבוק, גילתם שהוא נמצא
במנלו פארק בקליפורניה. איך בעצם קורה פה משהו מפתיע, איך הודעת הבקשה
מהלקוח מגיעה עד לשרת בארה"ב והודעת התגובה חוזרת בחזרה? המידע
מטייל חצי כדו"א ובחזרה!
o זה נשמע לא סביר שהמחשב שלנו מחובר ישירות לשרת אתר האינטרנט של
פייסבוק, או בעצם לכל שרת אינטרנט אחר, אם כן, איך המידע מצליח להגיע?
o האינטרנט הוא בעצם אוסף של הרבה מאוד מחשבים שמחוברים אחד לשני
בצורה דיי מורכבת )ה-WWW הם דפי האינטרנט שמקושריםם אחד לשני(.
הודעה שנשלחת ממחשב אחד למחשב שני שמחוברים לרשת האינטרנט,
מועברות ממחשב למחשב שמחוברים ישירות אחד מהשני, כל שכל ממחשב
מעביר את ההודעה למחשב אחר שהוא קרוב יותר אל היעד. לתהליך הזה, זה
העברת הודעה ממחשב אחד לשני ברשת האינטרנט דרך מחשבים באמצע,
קוראים ניתוב. יש פה אלגוריתמיקה דיי מתוחכמת של איך לגרום לאינטרנט
לעבוד, שבסופו של דבר זה להצליח להעביר הודעות ממחשב אחד למחשב שאני
שמחוברים לרשת האינטרנט. כל המחשבים בדרך משתמשים כמובן בכתובת
המקור והיעד שבהודעה כדי לדעת מאיפה מגיעה ההודעה ולאן היא צריכה להגיע.
o מכיוון שהאינטרנט היא רשת מורכבת ומבוזרת, לעיתים משתמשים במונ בעברית
ענן האינטרנט לתיאור הרשת המורכב
 traceroute o
 האם אנחנו יכולים לגלות את המסלול שעוברת ההודעה? אילו מחשבים
מעבירים אותה בדרך מהמקור אל היעד בתהליך הניתוב?
 הכלי traceroute מאפשר לי לעשות זאת בעזרת שליחת הודעות הד,
בדומה ל-ping. גם עליו נלמד יותר לעומק בהמשך.
 תוכלו להריץ אותו מה-cmd בעזרת הפקודה ip address< tracert -d<
 הכלי מדויע שהיא לא תמשיך לעקוב אחר הניתוב אם הוא ארוך
מ-00 קפיצות )hop(, העברה של חבילת מידע ממחשב אחד
לשני נקראת קפיצה, והמרחק ממחשב ליעד נמדד לרוב במספר
הקפיצות בין מחשבים. 

אין תגובות:

הוסף רשומת תגובה