DAVID מלאן: בסדר. זה CS50. וזהו תחילתו של שבוע שבע. אז היום, אולי לשמחתי, אנו מתחילים המעבר שלנו מהרמה נמוכה יותר עולם של תכנות C לרמה גבוהה יותר עולם של תכנות אינטרנט. ועם זה, אנחנו נסתכל בדיוק באופן שבו האינטרנט עובד, מה המכונות האלה וinternets אלה כי אתה כבר משתמש כבר שנים בעצם לעשות מתחת למכסת המנוע לכיוון הבנה טובה יותר של איך כל זה עובד, ואיך אתה יכול לגרום לזה לעבוד בשבילך. לשם כך, למה שלא ניקח את קודם כל להסתכל על קליפ מתכנית טלוויזיה Numb3rs נקרא, שיביאו אותנו התחיל כבדיוק איך האינטרנט עובד. [וידאו השמעה] "זאת כתובת IPP4 32 סיביות. -IP. זה האינטרנט. רשת -Private. זה הרשת הפרטית של אמיטה. הו, היא כל כך מדהים. אה, צ'רלי. "זאת כתובת ה- IP מראה. היא מאפשרת לנו לצפות במה ש היא עושה בזמן אמת. [END הפעלת וידאו] DAVID מלאן: אז יש כל הרבה רע בזה תכנית הטלוויזיה. אז בואו להפריד בדיוק אחד הדברים הראשונים מהסוג ולראות אם אנחנו לא יכולים לעטוף מוחנו סביבו. אז את המסגרת האחרונה של סרט ש, של תכנית ש זה אחד כאן, ש נראה שמצביע על כך שזה זה מה שכמה האקרים משתמשים כדי להיכנס למערכת כלשהי. אבל לא. אם להתמקד על זה קוד מקור, ש היא שפה שנקראת Objective-C ב יישומים שiPhone, יישומי iPad, ו- Mac יישומים של מערכת הפעלה כתובות, אתה תראה שזה הוא לסוג כלשהו של תוכנת ציור שיש לו עפרון כמשתנה. אז בנוסף, אתה יכול שמת לב כתובת זו כאן. עכשיו, זה לא בסדר כ. וזה כנראה נבחר במכוון להיות כתובת לא חוקית, כך שהוא לא ממש יוביל למקום אם צופה בטלוויזיה בעצם מבקר אותו. אך מספר זה כאן, משהו נקודה משהו נקודת משהו נקודת משהו זה מה ש ידוע בדרך כלל ככתובת IP. וזה בעצם טוב בקלילות לנושא זה יותר בדרך כלל, הידוע בשם IP, פרוטוקול אינטרנט. אז יש לך כנראה לפחות שמע את המשפט הזה לפני. אבל מה הוא IP, או באינטרנט פרוטוקול כפי שאתה מבין את זה היום? רוב הסיכויים הם, אם בקשנו הרמת ידיים, רובכם כנראה אמר מילות כתובת ה- IP לפני. אז מה אתה אומר? קהל: [לא ברור]? DAVID מלאן: מה זה? קהל: [לא ברור]? DAVID מלאן: פעם נוספת. קהל: כתובת של המחשב. DAVID מלאן: כתובת של המחשב. אז זה בדיוק נכון. מתברר שכל מחשב באינטרנט, ובימים אלה, כל טלפון בך כיס ולוח בתרמיל שלך, יש לו כתובת IP, אינטרנט כתובת פרוטוקול, ש היא כתובת ייחודית שמזהה זה לאורך כל האינטרנט. עכשיו, זה קצת לבן לשקר כי העולם בעצם ואוזל של כתובות IP. אז אנחנו כבר התחלנו להשתמש כתובות IP פרטיות. אבל עוד על כך ברגע. אבל אתה יכול לחשוב על כתובת ה- IP כמו כמו רחוב שירות הדואר שלך כתובת. יש לנו להשתמש בדוגמא של מקסוול דבורקין, בניין CS, לפני כן 33 אוקספורד סטריט קיימברידג ', מסה, 02138, ארה"ב. כלומר הכתובת הייחודית שלו בעולם. באופן דומה לעשות מחשבים יש כתובת ייחודית. הם פשוט קורים ל נראה קצת different- מספר dot dot מספר מספר מנקדים מספר. והאם מישהו באמת יודע מה הטווח חוקי של מספרים הוא שכל אחד של Hash האלה? כן. קהל: 0 עד 255? DAVID מלאן: בדיוק. 0 עד 255. וגם אם אתה לא יודע כי, עכשיו להסיק מסקנה, כמה ביטים משמשים לייצוג כל אחד מהמספרים האלה ואז? ככל הנראה שמונה בגלל הגבוה ביותר שאתה יכול לסמוך הוא 255, זה ערך 8 סיביות. אז בסך הכל, כתובת IP היא 32 סיביות. העברה כל כך מהר ל מסקנה מתמטית, כמה כתובות IP אפשריות יש בעולם, אז? אז זה 8 ועוד 8 ועוד 8 בתוספת 8, אז זה 32 סיביות. ואנחנו תמיד אמרו ש 2 עד 32 הוא בערך? אישור. אני התחום הזה. ארבעה מיליארדים. ודיברנו על זה בשבוע אפס כאשר דברנו על ספרי טלפון עם מספרים מטורפים של דפים. אבל מהסוג זה הוא שיש מספר סופי של כתובות IP. ואף על פי ארבעה מליארד אולי נראה כמו הרבה, אנו, בני האדם היו רב לא מעט מהם לכל השרתים שלנו והתקנים וכן הלאה. אז זה בעצם הופך לבעיה. עכשיו, שם נוטה להיות מזימה מאחורי מי שיש מה IP. לדוגמא, רבים מ המחשבים באוניברסיטת הרווארד כתובות ייחודיות שמתחילות עם אחד משני ערכים אלה. MIT, באופן דומה, יש קידומת. והרבה חברות ואוניברסיטאות יש לי קידומת הייחודית משלהם. ואז רובנו לבית שלנו חיבורי אינטרנט וכדומה, אנו חולקים כמה קידומת כי Comcast או מישהו כמו שקורה לבעלים. וזה רק כדי לומר שאם אתה הסתכל על רוב המחשבים בקמפוס, בטח יש להם IP כתובת שנראית כך. עכשיו, ייתכן שגם מדי פעם לראות כתובת ה- IP שלו מתחילה ככה. למעשה, אם מישהו מכם גדל עם גישה לאינטרנט בבית, והיית אי פעם במידה מספקת מבחינה טכנית סקרן לחטט ההגדרות במחשב שלך, אתה כנראה במקום ראה את כתובת שנראית יותר כמו זה, שהתחיל עם 10, או 172.6, או 192.168, או כמה גרסאות שלה. וזה רק אומר שהעולם הוא מניח בצד חבורה של מספרים שלמה להיות פרטיים, מה שאומר ש אתה יכול להשתמש בם בבית שלך, אתה אפילו יכול להשתמש בם עליך קמפוס ובתוך החברה שלך, אבל אתה לא יכול להשתמש בם באינטרנט בכללותו. ולכן אלה פרטיים כתובות IP היו פתרון לקראת ביצוע בטוח שלפחות כך ככל העולם כולו הוא מודאג, אנחנו לא משתמשים בכתובות IP שרבים. אבל לפחות, אנחנו יכולים, בכוחות עצמנו קמפוס, יש לי פחות או יותר כמו כתובות IP רבות כפי שאנו רוצים. אבל למי אכפת? מה רלוונטי של כל זה לשימוש בפועל של האינטרנט? ובכן, בואו נסתכל על אולי תמונה פשוטה כאן. תן לי לעבור את שניהם אלה על המסך. ותסלח לי כתב היד שלי כאן. אבל אם אנחנו חושבים על עצמנו כ להיות נייד הקטן הזה כאן במקום כלשהו בקמפוס, בימים אלה יש לו Wi-Fi. אבל בפעם ואם אתה מוצא את המתאם הנכון, זה יכול להיות כבל Ethernet שדומה היה נותן אתה מתחבר לסוג כלשהו של מכשיר. ואתה יכול לקרוא לזה כל מספר של דברים. אבל אני הולך קדימה, קורא לזה, לעת עתה, מה דעתך על נקודת גישה? אז זה המחשב הנייד שלי. זה AP, או נקודת גישה, וזה חלק מהתקן אלחוטי, שלא כמו אלה שאוניברסיטה הרווארד יש בכל רחבי התקרות וקירות ברחבי קמפוס שיש לי אורות מהבהבים וכי הם מה שהמחשבים הניידים שלך נהגתי לדבר באופן אלחוטי לשאר הרשת. אז איכשהו זה מחשב נייד מדבר לדבר הזה על הקיר, בחדר האוכל, או במקום אחר. עכשיו, בינתיים, שנקודת הגישה היא מחובר למשהו אחר בקמפוס. וזה כנראה משהו ידוע כמתג. והם נראים הרבה יותר מעניינים לא רק דיאגרמות תיבה אלה. אבל איכשהו, דבר זה מחובר למתג. וזה בתור, איכשהו מתג המחובר למכשיר זה כנראה קצת יותר גדולים, בשם נתב. ואז, בינתיים, הרווארד מחובר לכל האינטרנט ש אנחנו עושים הגרלה כענן זה כאן, באמצעות כמה מספר החוטים או בטכנולוגיה אלחוטית. אז יש הרבה שלבים בין אותי ואת שאר העולם. ואכן, גם ב התמונה הזאת כאן, יש כמה שרתים אחרים או שירותים מעורבים. ואני רק הולך לצייר באופן מופשט במידה מסוימת אלה רק כדי שיהיו לנו ראשי התיבות לפנינו. אחד נקרא DHCP. ועוד אחד, קצת יותר מעניין להיום, נקרא DNS. אז אלה הם שרתים שבם איכשהו נגיש למחשב שלי גם כן. אז עכשיו, בואו להקניט מלבד קצת ז'רגון. אז נקודת הגישה היא רק מכשיר אלחוטי זה לעתים קרובות עם אנטנות שלמעשה אתן לך לדבר באופן אלחוטי. בבית, שאפשר לכנות הנתב בית זה. זה יכול להיעשות על ידי Linksys, או אפל, או D-Link, או כל מספר של חברות. זה, בתור, מחובר למתג כלשהו. או בחזרה הביתה, מה הוא Wi-Fi שלך מכשיר כנראה קשור למקום זה? מכיוון שאתה כנראה לא בעלים של כל הציוד הזה. כן. מודם כבלים או מודם DSL חזרה הביתה שיש לך מVerizon, Comcast או, או אחד מספקים אלה. אז תחשוב על כל המורכבות הזאת כתמיכה באוניברסיטה או באמת עסק כמו Comcast. ובאמת, הדברים זה בבית שלך כנראה בצד הזה של הגדר בתוספת אולי אחד מאלה הביתה route-- אחד אלה הם מודם כבלים או DSL מודמים שהם עשויים לספק. אז בורר הוא רק מכשיר עם חבורה שלמה של שקעי נתונים בו. למעשה, אם אתה זוכר שחדשות דו"ח ששחקנו על המסך הגדול לפני כמה שבועות שבו אנו דיברו על הלם קרב, וכמה רעים זה היה? והיו אלה תמונות של כבלים, ושקעים, ודברים שנראים טכני? אלה היו רק מתגים מטומטמים ש רק אינטרנט מחבר את המחשבים על ידי חיבור כבלים להם. אז זה כל מתג הוא. עכשיו, המכשירים האלה מקבלים קצת יותר מעניין. DHCP. אם הציץ סביבך מחשב בבית או אפילו בקמפוס, שאולי ראו זה ראשי תיבות. האם מישהו יודע מה הוא שרת DHCP? פרוטוקול תצורה דינמי מארח? לא מסוג הדברים שאתה באמת צריך לכתוב את. DHCP. מישהו בכלל? בְּסֵדֶר. אז בואו אחורה הסיפור. אם הסיפור כאן, ביד מבוסס עליי שיש לו כתובת ייחודית בעולם, כתובת ה- IP, איפה זה בא? בפעם, כש יש לך לקמפוס, אתה באמת היית לי לבקש ממישהו ב הרווארד, מה צריך להיות כתובת ה- IP שלי. ואתה באופן ידני היית הקלד אותו למחשב. אך לאחרונה, טכנולוגיות קיימות המאפשרים לך באופן דינמי, DHCP, לקבל את כתובת ה- IP פשוט כאשר אתה מתחבר לקמפוס באופן אלחוטי או עם חוט. אז שרת DHCP הוא רק שרת זה נותן לי המחשב IP ייחודי כתובת, באופן אקראי במידה מסוימת או באמצעות חלק אלגוריתם. אבל אם אתה חושב בחזרה כמה שבועות או כמה שנים, כאשר נרשם ראשון המחשב שלך בקמפוס, שספרתם לי הרווארד, להסמיך שלי כדי לתת לי את כתובת ה- IP. עכשיו DNS מתחיל לקבל קצת יותר מעניין. שם דומיין מערכת. האם מישהו רוצה לקחת את דקירה על מה הדבר הזה הוא כאן? זה שרת אחד או יותר ש לבצע משימה פשוטה למדי זה סוג של חשוב. כן. קהל: מתרגם כתובות [לא ברור]. DAVID מלאן: כן. זה מתרגם את כתובות אינטרנט ל- IP כתובות ולהיפך. לשקול, אחרי הכל, ש כשאתה הולך באתר, אתה מקליד משהו כמו facebook.com, או google.com, או harvard.edu, אתה בהחלט לא הקלדת סביר להניח שכתובת ה- IP מספרית. ואתה יכול לחשוב על הסיבה. חזרה היום, אפילו עכשיו במידה מסוימת, כשאתה עושה טלפון קורא לחברה, הם באמת משתדלים לקנות בעצמם מספר 800 שלמעשה יש מילות בזה, כמו למספר 1-800-גוביינא או משהו זה בלתי נשכח כמו שכדי ש אנשים לא צריכים לזכור מה C-O-L-L-E-C-T למעשה מתרחב. אז ראיתי את זה היוריסטי בעבר. ואכן, זה מה שכתובות ה- IP ומה אנחנו קוראים שמות מארח או כשיר באופן מלא שמות דומיין לעשות עבורנו. זה מאפשר לנו שרתי כתובת על ידי מילים במקום מספרים. אז איך אנחנו באמת לראות המרה זו. אני הולך קדימה ולפתוח את תכנית. אני רק הולך קדימה ולפתוח את חלון מסוף. ואני הולך קדימה ו להראות לך מה שרת ה- DNS עושה. לדוגמא, אם אני רוצה לראות מה היא כתובת ה- IP של פייסבוק, אני יכול להקליד במסוף תנחה כמו זה-- ואתה יכול לעשות את זה אפילו בתוך המכשיר שלך. וזה facebook.com בדיקה. ואני רואה חבורה של דברים. התגובה הראשונה היא server-- DNS של אוניברסיטת הרווארד שתמונה שיש לי נמשך לשם. --that של אומר לי שה- IP של פייסבוק כתובת היא ככל הנראה זו. אז תן לי ללכת קדימה ו להעתיק ש173.252.120.16. ותנו לי לפתוח את Chrome ב- Mac שלי. ותן לי ללכת לhttp: // ודבק כי כתובת ה- IP ובלוחץ על Enter. ואכן, אני מוצא את עצמי בפייסבוק. אז איכשהו המרה ש, אכן, קרה. ואם אני עושה את זה שוב, בוא לעשות nslookup, www.google.com. אני חוזר חבורה של תגובות כל. ואכן, יש דרכים שונות כי חברות ליישם את זה. לפעמים, הם אומרים לי העולם יש להם כתובת IP אחת. אבל זה כתובת IP אחת מקבלת נפתרה או ממופה למספר רב של שרתים. או במקרה של גוגל, הם אומרים לי העולם, יש לנו חבורה של כתובות IP שלמה. המחשב הנייד שלך הוא מבורך לדבר ליצור קשר עם כל אחד מהשרתים אלה. אז כל זה היה הולך על מתחת למכסת המנוע. כאשר אתה מקליד בwww.google.com הזן בדפדפן שלך, הדפדפן שלך, וזה בתור ההפעלה, Mac מערכת הפעלה, או Windows, או אובונטו לינוקס, תשאל את שרת ה- DNS הסמוך, מה הוא הכתובת האמיתית של שרת זה. כיוון שההתקן שעבר בתמונה זו, הנתב, הוא אחד שמטרתו ב חיים הוא מידע מסלול, מסלול חבילות כביכול, מעטפות של מידע דיגיטלי מכיל אפסים ואחדים מ שולח ליעד, ממוצא למקלט. וכך דברים מסלולי הנתב. אז למה זה כל רלוונטי במיוחד? ובכן, בואו נסתכל איך זה יכול להיות בשימוש. נניח שיש לי כאן תמונה של רוב בודן. אז נניח שאני רוצה שלח תמונה זו של רוב בודן לדן בגב של אולם ההרצאות. אז אני מחשב כמו המחשב הנייד שלי, ודן כמה מחשב אחר באינטרנט. ואני רוצה לשלוח את חבילה מידע ממני אליו. זה מעלה את השאלה, איך אני למעשה מסלול מנות לו את זה. ובכן, במונחים אנושיים, הייתי אומר, היי, אתה יכול להעביר את זה לדן? ולאחר מכן, חבורה שלך כנראה היה מעביר אותו בחזרה ושוב הלוך ושוב עד ש סופו של דבר עושה את דרכו מעל לדן. אבל זה קצת לא מדויק. מחשבים כנראה צריכים להיות קצת יותר שיטתי. אז כנראה, דן כתובת ה- IP. אז מה באמת אני צריך לעשות זה אני צריך לקחת, למשל, מעטפה ריקה כמו זה. ואני לא יודע מה כתובת ה- IP של דן היא. אז אני פשוט הולך להכליל אותו כIP של דן. ואני הולך לשים את זה ב לשדה של המעטפה שלי. ובינתיים, יש לי את כתובת ה- IP. זה לא משנה היום מה זה. אז אני פשוט הולך להגיד שלי IP בפינה האחורית שם. ולאחר מכן, אני הולך קדימה ולשים התמונה הזאת בתוך המעטפה. ולאחר מכן, כל אחד מכם, מן הסתם, נתבים באינטרנט, כבר מוגדר מראש על ידי בני אדם, בדרך כלל, או לפעמים על ידי אלגוריתמים אוטומטיים לדעת ש אם כתובת ה- IP של דן מתחילה עם 1, זה צריך ללכת בדרך זו. אם כתובת ה- IP של דן מתחילה עם 2, זה צריך ללכת בדרך זו. אולי 3 הולך ככה. אולי 4 הולך ככה. וזה קצת יותר מדי. פשטני אבל זה הרעיון הכללי. כל אחד מrouters-- אלה ואולי להיות כ -30 ביני ובין דן. --have איזה גיליון אלקטרוני בתוך הזיכרון שלהם, טבלת מסד נתונים, שרק אומר, כתובת ה- IP שנראית כך, הולך בדרך זו. כתובת ה- IP שנראית ככה, הולך ככה. וככה זה עושה החלטות למדי פשטניות. אבל מתברר שנתבים אלה לעשות משהו יותר מזה, שעלול להיות. הם מאפשרים למחשבים ל משלוח ערובה, לפחות בהסתברות גבוהה. כך שאולי, גם, שמע, גם אם אתה אף פעם לא ממש אכפת, או תהית מה זה, אתה אולי שמעת משהו בראשי התיבות של זה. בואו נחזור לכאן ל רק לרגע ולמשוך את זה. TCP, פרוטוקול בקרת שידור. דרך טכנית אחרת של רק מתאר טכנולוגיה אחרת המשמש באינטרנט. אז IP, פרוטוקול האינטרנט משמש לטיפול ב. זה חלק סטנדרטי ש העולם שהמציא את זה, אמר, אתה מכניס את כתובת ה- IP אחד כאן לדן, וכתובת IP אחת כאן בעצמך, ואז אתה שם כמה מידע במעטפה. אבל TCP הוא טכנולוגיה אחרת, הפועל בשיתוף עם ה- IP. ואכן, אם יש לך אי פעם ראה ראשי תיבות אלה לפני, יש לך כנראה ראה TCP לקצץ IP שרק אומר שאנשים נוטים להשתמש בם יחד. ובכן, TCP הוא סוג של מגניב כי זה מאפשר לי לך להגדיל את ההסתברות כי הנתונים הוא למעשה הולך לקבל ממני לדן. למעשה, האינטרנט הוא מקום מטורף. אין ערובה לכך ש אם אני שולח נתונים בדרך זו שזה הולך ללכת הדרך שהפעם הבאה. זה יכול ללכת בדרך זו או בדרך זו. המרחק הקצר ביותר בין שתי נקודות היא לא בהכרח ישר או באותו הקו. יתר על כן, כמה מכם אתם עלולים לעשות טעויות או לקבל המום עם מדי מעטפות רבות בדרך אליך. אז אתה פשוט הולך ל לוותר ופשוטו כמשמעו שחררת כמה מאלה מעטפות על הרצפה. ובאותה דרך יכול להיות נתונים ירד באינטרנט על ידי הנתבים. אז כדי להקטין את סיכויים לכך, אני הולך לקחת הבטיחות הקטנה שלי מספריים כאן ולחתוך רוב ל, נניח, ארבעה חתיכות, ארבעה מגזרים. ועכשיו, אני הולך קדימה ו לשים חתיכה נוספת של מידע על מעטפה זו. אני הולך להגיד משהו כמו, 1 מתוך 4. אז עכשיו, המעטפה האחרונה שלי, ב לפחות הראשון, נראה כך. אני הולך קדימה ולשים את זה אחד לכאן. ולמען הזמן, אני הולך תווית אחרות זהה כמו 2 מתוך 4, 3 מתוך 4, 4 מתוך 4. שוב, עם כתובת ה- IP של דן ב לפניו ועם כתובת ה- IP שלי על הגב עזב, אבל אני לא יכול לשלוח אותם עדיין. כי מתברר כי באינטרנט, שרתים יכולים לעשות דברים רבים. למעשה, כולנו יכול להשתמש באינטרנט לא מעט, האינטרנט ברחבי העולם, http: // מה. אבל יש אחר שירותים באינטרנט. מה הם כמה שירותים אחרים, סוג של משתמשים שירותים ידידותיים לצרכן, האביב שעל הדעת מלבד תכנית לסוג הדפדפן של אינטרנט? קהל: דוא"ל. DAVID מלאן: דוא"ל. אישור. טוב. מה עוד אחד? קהל: צ 'אט. DAVID מלאן: אז לשוחח, אם זה סקייפ, או Gchat כלשהו, ​​או משהו כמו ש. קהל: חפצים. DAVID מלאן: אז איזה סוג של שירות אחסון, בהחלט. משהו כמו Dropbox, או תיבה, או משהו דומה. אז יש שונה שירותים באינטרנט. ומתברר שדן, אם הוא אכן מחשב, לא חייב להיות מוקדש דבר אחד בחיים. הוא באמת יכול לעשות דברים רבים. ואכן, הוא יכול להיות שרת דואר אלקטרוני. הוא יכול להיות שרת אינטרנט. הוא יכול להיות שרת צ'אט. אבל נראה כי להציע שדן צריך לדעת מראש מהם תוכן של הודעות אלה. האם זה דף אינטרנט אני שולח אותו? האם זה מייל שאני שולח אותו? האם זה מיידי הודעה שאני שולח אותו? אז אנחנו צריכים חתיכה נוספת של מידע על מעטפה אלה כך שדן, כשהוא מקבל את המעטפה, יודע מה תכנית להשתמש כדי להציג אותו. האם זה דפדפן? האם זה גוגל? האם זה סקייפ? או שזה Outlook או תכנית אחרת לגמרי? וכך, עם TCP מגיע רק מוסכמה אנושית. העולם החליט כמה שנים לפני לשייך מספרים שלמים ייחודיים עם השירותים הפופולריים ביותר. נקרא פרוטוקול העברת קבצים של אחד, FTP, אם כי זה קצת מיום היום. אבל המזהה הייחודי שלה הוא 21. SMTP לדואר יוצא, ייחודי מזהה הוא 25 רק בגלל ש. DNS, הדבר שדיברנו עליו קודם לכן, משתמש המספר 53 לשאילתות שלו. כמו מה הוא IP כתובת של google.com? ועכשיו, המוכר יותר אולי יש מקום בשלב מסוים ראה את המספר 80 ואולי 443. אלה הם ייחודיים מזהה עבור HTTP, שהיא השפה אנחנו בקרוב לראות בשימוש עבור תעבורת אינטרנט בין דפדפנים ושרתים. ו443 הוא ל גרסה מאובטחת שלה. אז הפרט אחד האחרון אני הולך לשים על המעטפה שלי הוא שאני לא הולך ל לשלוח את זה רק ל- IP של דן. אני הולך לשלוח אותו לומר, : 80, אם מה שאני מנסה לשלוח שלו הוא דף אינטרנט, דף אינטרנט המכיל תמונה של רוב בודן. אז אני הולך לעשות את אותו הדבר דבר על מעטפות אחרות אלה. ולאחר מכן סופו של דבר, אני הולך לרדת כל אלה בנתב הקרוב ביותר, הכרה בכך ש אולי לא נתב בהכרח לקחת אותו הנתיב בכל פעם. למעשה, ייתכן שיש לי המנות הראשונות הולכים בדרך זו. מנות השניה עשויות ללכת בדרך. שלישי packet-- להתחיל ניתוב. --might ללכת לכאן. ובtheory-- לא יכול לשמור את זה. בתאוריה, כל ארבע מנות אלו צריך סופו של דבר דרך שלהם בדרך, עם זאת ביעילות או בחוסר יעיל, כל הדרך עד לחלק האחורי. בנקודה זו, דן, על קבלה, יכול להרכיב אותן מבוסס on-- הדבר המצחיק הוא, כולנו יודעים מה תהיה התוצאה כאן הולך להיות. דן הולך לקבל תמונה מלאה של רוב. אבל בואו נראה איך זה עובד. ובכן, לא, דן הולך לקבל חלק מתמונה של רוב. טוב מאוד. כולם משתתפים היום. בְּסֵדֶר. אז כמו שדן מתחיל לקבל הודעות כאלה מנות, בואו לשאול שאלה אחת. מה אם אחד מכם מקבל עצלן, עמוס, זדוני, או סתם מופעל את, ואחד או יותר מ חבילה לא עושה את זה לדן? איך דן הולך יודע שלא לקבל את אחד המגזרים של ארבעת שלחתי לו? רק באופן אינטואיטיבי, מה אנחנו יכולים לעשות? כן? קהל: [לא ברור]. DAVID מלאן: בדיוק. כי אני באופן ייחודי מספר אותם, ו אני כבר צוין כמה מקטעים יש צריך להיות, הוא יכול להסיק מזה אשר, אם בכלל, של המגזרים הוא באמת חסר. ומה אומר לי TCP מחשבים ל לעשות, אם מחשבים, כמו Mac OS, ותמיכה של Windows, ו- Linux ולהבין TCP, שהם עושים, התיעוד של TCP במהות אומר שדן צריך לשלוח לי הודעה בחזרה ואמרה, היי, דוד, אני חסר מספר מנות 1 מתוך 4, או 3 מתוך 4, לפיו הוא. ואז, התפקיד שלי הוא לקחת תמונה נוספת של רוב, שיש לנו תוספות של למאוחר יותר היום אם אתה רוצה לקחת איתך, ואז אני יכול לשלוח שוב את הקטע ש של רוב כל הדרך עד לחלק האחורי. כל כך פשטני כמו מנגנון זה הוא, ש זה מה שקורה כמעט בכל זמן אתה עושה משהו באינטרנט, במיוחד עבור אלה הפופולרי ביותר של שירותים. יש פרוטוקולים אחרים, טכנולוגיות אחרות מלבד TCP הפועל באופן מעט שונה. אבל כל כך הרבה שירותים שאנו בדרך כלל משתמש למעשה מסתמך על פרוטוקולים אלה. אז דן, יש לך את תמונה מלאה לשם? כן. יש לנו מחדש רוב בחלק האחורי. תודה רבה לך לנתבים. נניח, אני באמת רוצה לראות נתבים ביני ו- MIT, הרבה כמוכם היו נתבים ביני ובין דן. ובכן, לא nslookup לבדיקת שם שרת, אני יכול במקום להקליד מסלול זכר, ש הוא בעצם הולך לעשות את מה שהוא אומר. ואני הולך לעשות ו מצב שקט עם קורטוב 1. זה טיעון שורת הפקודה שרק אומר, לנסות את זה פעם אחת ולא מספר פעמים. ועכשיו, אני הולך להקליד www.mit.edu. עכשיו, הפלט הוא מהיר למדי ונסתר. אבל מה זה באופן מסודר על זה הוא שכל אחד משורות אלה בעצם מייצג סטודנט בקהל הזה אם היית הנתיב ביני ו- MIT. מה שאתה רואה כאן, ראשון, הוא שם תחום שאני הקלדתי, או תחום מלא שם כפי שהוא נקרא כראוי. וזה, ככל הנראה, כתובת ה- IP של www.mit.edu. המחשב שלי הבין שבשבילי. זה כאן הוא הבטחה שאנחנו הולכים רק לנסות להגיע MIT בתוך 30 כשות. יש יותר טוב להיות לא יותר מ 30 תלמידים ביני ובין דן. ועכשיו, כל אחד משורות אלה מייצג ממש הנתב ביני ובין דן, פשוטו כמשמעו אחד מכם. וכך זה לא נראה יש שם, שם תחום. זה פשוט יש IP. וזה לקח רק 0.662 אלפיות שנייה כדי לקבל ממני לזה הנתב הראשון. הבא לא היה כי הרבה יותר רחוק. זה לקח רק אחד אלפית שנייה כדי להגיע לשם. ועכשיו, תודה לאל, דברים לקבל קצת יותר ידידותי למשתמש עם שמות שלא ברורים מאליהם אבל קצת יותר לספר. זה כנראה הוא נתב ב ליבה של הרשת של הרווארד שוכנו, רק בגלל שאנשים אמרו לנו זה, במרכז המדע, SC. וGW הוא רק סימון מקוצר ל שער שהוא שם נרדף להנתב. אז זה חלק מהמערכת הדרך עילי של המנהל של מתן שמות באחד מהשרתים במרכז המדע. בינתיים, שרת שכנראה מחובר על ידי סוג כלשהו של כבל לנתב אחרת שזכה לכינוי שער גבול מקף אחד משהו, מה פירוש מספרים. ולאחר מכן, ככל הנראה, יש הרווארד קשר זה אלפית שנייה אחר משם למשהו נקרא צומת הצפונית אשר מהווה נקודה מתבוננת ונפוצה בין מקומות גדולים כמו הרווארד שבו חיווט רב הולך ב ומאפשר חיבורים בין גופים שונים. שלב שישי, למרבה הצער, אין שם חוקי. וצעד ​​שבע נהיה מעניינים. אין לי מושג מה רוב אלה אומר. אבל ניו יורק לא לקפוץ עליי. ומה זה כנראה מסמל? זה אפילו לא טכני. רק בניו יורק. אז אכן, מה אנושי משותף אמנה אינה מובטחת אבל אמנה נפוצה היא שם נתבים על ידי טבעה של העיר או שדה התעופה קוד שהם הקרובים ביותר ל. אז בהסתברות כלשהי, מספר הנתב הזה שבע כנראה, אכן, בניו יורק. וזה נראה לאשש כי הנחה כי זה שישה אלפיות שנייה רק ​​במקום אחד או כך למשהו כאן בקמפוס. אבל עכשיו לקחת את זה בחשבון, ממש על Megabus או מה שלא, זה עלול לקחת ארבע, חמש, שש שעות כדי לקבל אדם מכאן לניו יורק. כדי לקבל פיסת המידע, זה לוקח רק שישה אלפיות שנייה כדי לקבל מנה ממני לדן אם הוא היה כל הדרך בניו יורק. ואז סוף סוף, זה כנראה שם הדומיין אמיתי לwww.mit.edu. עושים רושם שהם מיקור חוץ שרתי האינטרנט שלהם לחברה בשם Akamai מה שאומר ש חברה אחרת מפעילה את השרתים שלהם. וזה למה שאנחנו רואים שדבר מוזר שם. ובכן, בואו נעשיתי את זה עוד פעם אחת. בואו נלך קדימה ולעשות עקבות בדרך לידידנו פרופ 'ניק Parlante בסטנפורד שיש לו השרת נקרא nifty.stanfor.edu. הזן. ועכשיו, אנחנו תראו כנראה דרך ארוכה מעט יותר שעובר דרך עוד כמה ערים. אז הנה חסר שם אלה שרתי הרווארד כאן. אנחנו בליבה של אוניברסיטת הרווארד, שער הגבול של הרווארד, הצומת הצפונית, בכל מקום זה. ועכשיו, זה מתחיל להיות קצת יותר מעניין. אני מנחש כי הנתב מספר שמונה הוא באיזו עיר? קהל: [חציצת קולות] DAVID מלאן: שיקגו כנראה, מבוסס על זה, המבוסס על הדבר הזה כאן. ועכשיו יש לנו סולט לייק סיטי אולי, אולי לוס אנג'לס כאן, ולאחר מכן LAX, כן, זה כנראה LA בתחתיתו. עד שלבסוף, זה הולך מדרום קליפורניה כל הדרך עד לצפון קליפורניה למקום שבי סטנפורד נמצא בפאלו אלטו. אז די מגניב. ובואו ניקח את זה צעד אחד קדימה. זה היית, ככל הנראה, אקח לך 82 אלפיות שנייה כדי לשלוח הודעה לדן אם היית בקליפורניה במקום בניו יורק. בואו נעשה משהו כמו מסלולי עקבות, אחד אנסה www.cnn.co.jp ל גרסה יפנית של אתר האינטרנט של CNN. ועכשיו, אנחנו עדיין ב בוסטון נראית כרגע. כמה שרתים שישה ו שמונה לא הגיבו בגלל שהם להיות קצת פרטיים. אבל סופו של דבר, נראה שיש משהו מעניין קורה בין, נניח, צעד שבעה ותשעה. מה הוא כנראה בין שבע ותשע, ובוודאי בין שבע וצעד 17? יש קפיצה ענקית בכמות הזמן זה לוקח לנתונים ללכת מאחד של כשות אלה, אחד מהנתבים הללו למשנהו. אז רוב הסיכויים הם, אי שם ב כאן, יש כנראה, במיוחד כאן, יש כנראה גוף גדול מאוד של מים ש יש כמה פסיפיק טרנס או טרנס כבל האטלנטי שדורש למעשה אפילו יותר זמן לנתונים ל להגיע מנקודה אחת לאחרת. אבל שוב, לדמיין את השעות זה ייקח לטוס ליפן. כאן, בחלק 200 אלפיות שנייה, בום, המסר שלך הוא בעצם שם. אז אתה יכול לשחק עם זה על אותו המכשיר או אפילו ב- Windows או Mac OS עם פקודות שונות במקצת. לפעמים, אתה תקבל כוכבים אלה, כמו בשורות של שש ושמונה, ש רק אומר נתבים מוגדרים לא כדי לתת לך תשובה למען השמירה על הפרטיות. אבל בדרך כלל, בטכניקה זו היה, למעשה, לעבוד. אז מתברר גם שיש אחר מידע עסיסי אורב בכלים שאתה לוקח כמובן מאליו כל יום. כך למשל, אם אתה מקבל דואר אלקטרוני, בכנות כפי שחלקכם ייתכן שיש לי לאחרונה, של בספק מקורות, אם מעולם לא הסתכל על ממשק Gmail לפני, בין אם זה לממשק המכללה או האישי אחד שלך, אתה עשוי לראותך תיבת דואר נכנס נראה כמו זה. ואכן, זו היא דואר אלקטרוני אני שלחתי, malan@harvard.edu, לjharvard@cs50.harvard.edu הבוקר רק כדי שאוכל לקחת צילום מסך. אבל מתברר, כל הפעם ב- Gmail, יש שמשולש קטן כיוון הפינה הימני העליונה שם ליד פסגת הרווארד שאם אתה לוחץ, אתה יכול ללחוץ על הצג מקורי. ואם אתה עושה את זה, אתה בעצם רואה חבורה של מידע אזוטרי כמו חותמות זמן, וIP כתובות, ושמות דומיין. אבל תראה, בקיצור, כותרות שיש לי כל הזמן הזה נפגע בכל אחד ו דוא"ל לך לשלוח ולקבל. וזה הכותרות האלה שאנשים יכולים להשתמש, מדען מחשב או בדרך אחרת, למעשה להסיק עם הסתברות כלשהי שבי וממי דואר אלקטרוני הגיע למעשה. למעשה, נדבר ב שבועות לאחר מכן על איך דואר אלקטרוני עצמו יכול להיות שנוצר תיכנותי ש זה דבר טוב מאוד עבור אתר אינטרנט שרוצה לשלוח מיילים למשתמשים. אבל נראה, יותר מדי, רק כמה פעוט זה לזייף מיילים ממישהו למישהו אחר, אלא אם כן אתה ממש יודע איך לאמת את הכותרות. וגם זה הוא מפסיד הצעה בימים אלה. אז עם זה אמר, בואו נלך שכבה אחת למעלה. התחלנו עם ה- IP ש כתובות מנות עבורנו, נותן להם כתובות ייחודיות. TCP, קצר אשר, ב, מבטיח אספקה ​​או לפחות מגדיל את ההסתברות על ידי הוספת דברים כמו קטעים, 1 או 4, 2 מתוך 4, 3 מתוך 4, ו -4 של 4. ועכשיו, בואו שכבה על גבי של שפרוטוקול אחר. כל הדברים האלה הם פרוטוקולים, אמנות מחשב המכתיבים את האופן בו שני מחשבים לדבר זה עם זה. HTTP, סוף סוף היום, הוא פרוטוקול העברת היפר-טקסט. ואת זה הוא הפרוטוקול כי דפדפני האינטרנט להשתמש כאשר מדברים על שרתי אינטרנט. לכן, כאשר אתה מושך את דפדפן כמו Chrome, או IE, או פיירפוקס, או ספארי, או מה, ואתה מקליד במשהו כמו facebook.com והקש על Enter, לא רק עושה את המחשב ראשון לתרגם facebook.com למה? כתובת ה- IP. לאחר מכן הוא converts-- לאחר מכן הוא שולח הודעה שלאמרת כתובת ה- IP, תן לי בדף הבית של היום או לתת לי שלי את מסך כניסה של פייסבוק. או אם אתה כבר רשום ב, לתת שלי את תצוגת ברירת המחדל של ציר הזמן שלי. אז זה מה שאומר HTTP. ושפה מדוברת יותר, אם אני באינטרנט שרת ואתה are-- מה השם שלך, שוב? קהל: מרגוט. DAVID מלאן: מרגוט הוא אינטרנט שרת, ואני דפדפן אינטרנט, ואני פשוט רוצה לשולפי ציר זמן ממרגוט, margot.com, הייתי אומר, שלום, אני דייויד. קהל: היי, אני מרגוט. DAVID מלאן: ואתה היה אז להגיב עם מידע נוסף אליי. אז יש לנו אדם טיפש זה כנס לinstance-- תודה. --of לוחץ ידיים אחד של השני. ויש להם מחשבים שאותו רעיון שבו הלקוח, כמו בדפדפן, שואל שרת לעשות משהו בשמו או שלה. ואז הנה תמונה, למשל. בצד השמאל הוא מחשב נייד, שולחן עבודה, כל מה ש, או אפילו טלפון. ומצד הימין הוא מאוד מיום לאור שרת. הם בדרך כלל נראים קטנים יותר ויותר סקסי בימים אלה. אבל הנקודה היא פשוט ש יש איזה סוג של תקשורת בין הלקוח לשרת. ולקוחות במובן של מישהו במסעדה והמלצר או מלצרית, אותו רעיון עם מחשבים. לקוחות ושרתים, אחד מבקש מידע, אחד מגיב במידע. עכשיו, איך עושה את זה מידע יחזור? ובכן, לשקול את זה. קבל הוא סוג של ברירת המחדל way-- וזה מונח סופר פשוט. --that רק מכתיב כיצד דפדפן מקבל מידע משרת. במילים אחרות, ולא רק להושיט את היד למרגוט אילי-לפשל, אם אני באמת היה דפדפן, אני הייתי תוחב בתוך מעטפה, כפי שעשיתי עם התמונה של רוב לפני, הודעת טקסט שממש אומרת משהו כזה, קבל / http / 1.1hostwww.google.com או או מה שmargot.com שמו של השרת שעלול להיות. ולאחר מכן, נקודת נקודת נקודה, כמה דברים אחרים. אלא פשוטו כמשמעו, בתוך מעטפה היית להיות טקסטואלי פשוט למדי הודעה כמו ש. כי עם קבלה, מרגוט היית לפתוח, לקרוא את התוכן, ולהגיב בהתאם. עכשיו, זה קצת הלא ברור עם דוגמא זו. אבל לקבל /, מה הוא הקו הנטוי ככל הנראה מתכוון ל, מבוסס רק על ההיכרות שלך עם גלישה באינטרנט בחיי היומיום? מה הקו הנטוי? קהל: [לא ברור]. DAVID מלאן: רצף בריחה. רעיון לא רע, אבל באופן כללי רצפים לברוח ללכת לכיוון השני. זה יהיה קו נטוי בדרך כלל. אבל לא מחשבה רעה. כן? מצביע. גם מחשבה טובה, אבל אפילו פשוט יותר מזה. ספריית הבית. השורש של כונן קשיח, אם אפשר לומר כך. רובנו לא מקלידים את זה. אבל מבחינה טכנית, אם אתה רוצה להיות סופר ראוי בימים אלה, היית הולך למשהו כמו http://www.facebook.com/. עכשיו, אמרתי שרובנו לא היית טרח להקליד הקו הנטוי. ולמען אמת, רוב דפדפנים, כרום כלול, לא טרח אפילו להראות שלנו הנטוי בימים אלה רק בגלל שהם רוצים להיות פשוט ותמציתי. אבל הקו הנטוי רק אומר ללכת לwww.facebook.com ולקבל לחתוך, השורש של הכונן הקשיח, דף ברירת המחדל בfacebook.com. באמצעות מה פרוטוקול? ובכן, שימוש בגרסה 1.1 של הדבר הזה שנקרא HTTP. השרת, או Margot-- ודרך אגב, לעשות אכפת לך שאני משתמש לך באלה? אישור. אז אנחנו טובים עכשיו. אז תגובת מרגוט עכשיו עם מעטפה משלה, ובתוכה הוא מסר דומה טקסטואלי. הקו הראשון שבם הוא, כן, אני מדבר גרסת HTTP 1.1. 200 הוא קוד המצב שרק אומר את כל זה בסדר. יש לי את הדף שאתה מחפש. סוג תוכן-בינתיים,: text / html, זה היא הדרך למחצה המסתורית של מרגוט לומר, מה שביקשת הוא דף אינטרנט. וזה סוג, כך לspeak-- כמעט כמו תחושה משתנה, אבל זה ברמה הרבה יותר גבוהה עכשיו. סוג הנתונים שלה הוא טקסט אבל באופן ספציפי HTML. השפה שאנחנו בקרוב נוכל לראות. ולאחר מכן, יש כמה דברים אחרים. אז דברים אחרים הוא, פשוטו כמשמעו, מה ש פייסבוק מגיב עם. אז בואו יראו את זה, גם. תן לי ללכת קדימה ולפתוח עד Chrome על המחשב הנייד שלי שבו אתה יכול לעשות עליך מחשב עצמו גם כן. ואני הולך קדימה ולפתוח www.facebook.com. הזן. ואני מקבל את המסך מוכר זה כאן. אבל עכשיו, אני הולך לעשות משהו אחר. אני הולך קדימה, לך לתצוגה, מפתחים. וללכת למפתחים כלים, שבו אתה צריך יש בתוך Chrome במחשב, לפחות במכשיר שלך. אני הולך לגלול זה דבר כאן, ואתה הולך לראות את כל חבורה טקסט הנסתר כאן. מתברר כי מה שמרגוט לשים בתוך של המעטפה כי בתגובה לי היא שפה שנקראת HTML, HyperText Markup Language. זה לא תכנות שפה, כי אתה לא יכול, זה אין לולאות, ותנאים, ופונקציות, ודברים כאלה. זו שפת סימון. שב, יש לה תחביר מיוחד תגים ומאפיינים המכונים שאומר לדפדפן מה להציג על המסך ואיך להציג את זה. צריך להיות מרוכז? זה צריך להיות מודגש פנים? אדום, ירוק, כחול? זו שפת סימון. בזה, זה אומר לדפדפן מה להראות על המסך. אז זה כל מה שנמצא, פשוטו כמשמעו, HTML ועוד ששרת פייסבוק הוא יורק וש Chrome, ו- IE, ו- Firefox יש תוכנן על ידי מחברים בהתאמה להבין. ולמעשה, זה מבולגן קצת יותר מזה. אם אתה, במקום, לך לתצוגה, מפתחים, צפה במקור, זה בעצם מה ש פייסבוק הוא החוצה לשים. סוג של אפס לחמישה לסגנון, תקין, אם להסיק שזה כנראה לא הכי טוב. אבל בכנות, הם יכולים לברוח עם זה בגלל שאם אתה משרת את מיליארדי דפי האינטרנט ליום, אתה באמת לא רוצה לבזבז את הזמן, ובתים, וכסף סופו של דבר בהעברת דברים כמו קו חדש דמויות, וחללים, וכרטיסיות בגלל שאתה מבלה על רוחב פס שלא לצורך עם ספק שירותי האינטרנט שלך. אז אכן, זה נועד להיות minified בדרך זו. אבל מה Chrome עושה עבורנו הוא, זה לוקח HTML זה, שנראה לגמרי כמו בלגן ולא מובן לאדם, וזה פשוט פורמט שלה. זה די הדפסתו, כך ש אנחנו יכולים לעטוף את דעתנו סביבו קצת יותר בקלות. אבל מעניין יותר היא זו. אם אני עכשיו לחץ בChrome, לא אלמנטים אבל רשת, אני הולך לראות קצת מסך רישום זה הולך להראות לי את כל של בקשות HTTP כי הם בעצם הולכים אחורה ו שוב ביני ופייסבוק או ומרגוט אם אני עושה יותר מ בקשה אחת. אז אני הולך קדימה, לחץ הסמל רענן כאן בChrome. ועכשיו, חבורה של כל דברים חלפו על פני בתחתית. אני הולך כדי לגלול בחזרה לצמרת. ועכשיו, שים לב זה, לבקש הדפדפן הראשון שלי עשיתי היה www.facebook.com. זה באמצעות הגט מנגנון שרק אומר זה מדבר בשפה טקסטואלית שראינו דוגמא של רגע לפני. ויותר מכך, מתברר שהתגובה שפייסבוק נתן לי הוא 200 אישור, מה שאומר שאני מצא את דף האינטרנט בשאלה. אם אני לוחץ על שורה זו, אני ממש יכול לראות כותרות אלה קטנים יותר ברור. אלה יהיו הגיוניים יותר לפני זמן רב. אבל שים לב שהדפדפן שלי שולח המון מידע כמו מארח, ושיטה, ועוגיות. אנחנו נחזור לאלה לפני זמן רב. ואתה סוף סוף תבין מה עוגייה היא למעשה ואיך אתה בקרוב יהיה לשלוח אותם. ואתה יכול לראות מה פייסבוק שולח בחזרה, כולל את סוג התוכן של טקסט HTML, זמן התאריך הנוכחי, הפרטיות שלה מדיניות, או היעדרה, ו אז, סוף סוף, מספר של עוגיות המוקמים ב המחשב שלך גם כן. אבל אנחנו להקניט אלה לגזרים לפני זמן רב. אבל בקיצור בכל פעם, אתה ביקרתי בעמוד, עכשיו במשך שנים, אתה כבר שולח הודעות ל אחד שלחתי במעטפה למרגוט ודן. ואתה כבר מקבל בחזרה תגובות כמו זו של פייסבוק. אבל מעבר לכך, לנחש מה להיות ייחשף לפייסבוק, ו- Google, וכולם כל פעם שאתה מבקר באתר אינטרנט? מה הוא בצד החיצוני של כל מעטפת המחשב שלך כבר שולח? כתובת ה- IP שלך, נכון? אולי לא את השם שלך ל se, אבל כתובת ה- IP שלך. ובדיוק, בואו לחבר את הנקודות מאוחר יותר, אם אתה משתמש בשירותים כמו האינטרנט, או ביטורנט, והחיים, ואתה כבר רשום במחשב במקום כמו הרווארד, מישהו אי שם יודע שג'ון כתובות ה- IP של אוניברסיטת הרווארד זה, נקודה זו, נקודה זו, נקודה זו. ואכן, יומנים יכולים הוא המשיך גם ב קמפוס כזה, ברשת Comcast, על Verizon, או בכנות, ב NSA כפי שלמדנו לאחרונה, שנכנס פחות או יותר הכל שאתה עושה באינטרנט. ואנחנו נחזור ל זה כיתת העתיד על ההשלכות של כל אלה החלטות עיצוב וביטחון. אבל האמת היא, שאתה באמת אין להם כל כך הרבה פרטיות. בכל פעם שבקרת בכל מקום באינטרנט, אתה כבר מראה את היד שלך וחושף לפחות כתובת ה- IP שלך. הערה כל כך מפחידה בצד, מה אנחנו יכולים לעשות כדי להטביע דברים כמו חתולים בדף אינטרנט? אז יש לנו חבורה של תגובות ש עלול לחזור מהשרת. ואנחנו לא רואים את כל אלה היום. אבל 200 הוא טוב. ואתה כנראה לא ראית כל אלה כבן אדם לפני. אבל כנראה שאתה לא ראית לפחות אחד מהם. שאחד מהם עשוי להיראות לכם מוכר? קהל: 404 DAVID מלאן: אז 404. קובץ לא נמצא. ואכן, אתה הולך לראות זה תיכנותי את עצמך. 404 רק אומר את הקובץ שביקשת, לחתוך או לקצץ משהו, פשוט לא קיימות. ושרת אינטרנט בדרך כלל מגיב עם 404 כתוצאה בינתיים, בקרוב אראה ש התוכן של הודעה הם שפה זו ידועה בשם HTML. וזה סופר קטע פשוט של HTML שאינו עושה דבר מלבד להציג hello world על המסך. ואכן, אתה רואה בחלק העליון של זה משהו שנקרא סוג מסמך הצהרה שרק אומרת, היי, עולם. קובץ זה מכיל HTML. ולאחר מכן, הקטע הבא של HTML שאתה הולך לכתוב, יש לו הסוגר פתוח, ולאחר מכן את המילה HTML, אז הסוגר סגור, ולאחר מכן פתוח בראש, וקרוב הסוגר. אז בקיצור, בואו למעשה לעשות את זה יותר באופן מכאני. תן לי ללכת למכשיר שלי, אבל אתה יכול לעשות את זה בכל מקום שיש לך עורך טקסט ל. אני הולך קדימה, לשמור קובץ בשם hello.html. אני הולך לשים אותו על שולחן העבודה שלי ל לשמור על דברים פשוטים סופר עכשיו. ואני הולך לעשות בדיוק מה שאני פשוט ראיתי. אז סוג doc HTML, HTML הסוגר הפתוח. ועכשיו, הודעה, אני הולך לעשות את ההפך מנע. ועל ידי ההפך, אני מתכוון אותו התג, אם אפשר לומר כך, אבל זה מתחיל עם קו נטוי. ולאחר מכן, לכאן, אני הולך להגיד, ראש, כי מתברר שכל דף האינטרנט יש לו ראש מה שנקרא ש הוא דברים שהולך בכותרת בר, בחלקו העליון של הדף. בכותרת היא רק הולך להיות שלום כאן. ועכשיו, אני הולך יש לי גוף דף אינטרנט זה. אז כל דף אינטרנט יש שני ראש בראש וגוף המהווה את האומץ של הדף. וכאן, אני פשוט הולך ל לומר משהו כמו שלום עולם. ואני הולך לשמור קובץ זה. אם אני עכשיו למזער gedit, תראה, הנה קצת קובץ על שולחן העבודה שלי התקשר hello.html. עכשיו, זה לא בשרת עדיין, כשלעצמה, אכן, זה רק על שולחן העבודה האישי שלי כאן. אבל אם אני פותח את Chrome ועל קונטרול O-- יש חתול בשאלה. --and אני הולך לשולחן העבודה שלי. ואני פותח את hello.html, שם, ב למעשה, הוא דף האינטרנט פשוט סופר שלי. הגוף של הדף שלי והחלון הלבן הזה כאן הוא הגוף עם עולם שלום. והכותרת בראש הדף נמצא בכרטיסייה שם. ואנחנו הולכים לראות עד מהרה כי הוא סופר פשוט לפתוח את דפים אחרים גם כן. לדוגמא, אני הולך ללכת לחלק מקוד ההפצה במשך שבוע, מקור זה שבע, ואני הולך להיפתח לא JPEG שהבחור הזה הוא כאן. אבל אני הולך לפתוח את image.html, שסופו של דבר נראה כך. אבל תן לי עכשיו לפתוח את זה בgedit, וללכת למקור Dropbox שבע, וimage.html. ביותר לכך הוא פשוט תגובות כפי שנראה בקרוב. אבל אם אני רוצה לשים Grumpy חתול בתוך דף אינטרנט זה, זה מספיק כדי לשים עוד הסוגר פתוח, ולאחר מכן את התמונה או img מילות מפתח בקיצור, ולאחר מכן חלופי טקסט לסיבות נגישות אם למישהו יש מסך קורא או משהו כזה. מקור שהוא, מה ש שמו של הקובץ, cat.jpeg. ולאחר מכן, כי זה תג זה קצת מיוחד, אנחנו שמים את הקו הנטוי, כ אנו רואים, בתוך התג. אבל התוצאה הסופית היא אינטרנט דף שנראה כך. אז בקיצור, מה שאנחנו הולכים להיות עושה עכשיו לאורך הזמן הוא באמצעות האינטרנט ויצירת דפי אינטרנט ל סופו של דבר להיות מכולות לא רק לדברים טיפשיים כמו תמונות וקישורים, ושולחנות, ותבליטי רשימות, וכמו, אלא גם כדי לתת לנו את עצמנו ממשק משתמש גרפי, GUI, שלא כמו מה שעשינו לנו בריחה. אבל בסביבה זו, שאנחנו הולך להתחיל להשתמש בשפות כמו PHP, ו- JavaScript, בסיס הנתונים שפה נקראת SQL, שפת סקריפטים בצד הלקוח נקרא Javascript בכדי ליצור למעשה כל הממשקים דינמיים יותר, אבל בהרבה הקשר, הרבה יותר מוכר. אבל לפני כן, בואו מסקנה היום במבט, כפי שהובטח, של מה שבאמת קורה מתחת למכסה המנוע עם האינטרנט עצמו. קובע להיום שיכול באינטרנט להשתמש בהם כדי להעביר דברים כמו דפי אינטרנט באמצעות HTTP הרבה כמו שלוחץ את ידו של מרגוט קודם לכן. אבל יש כל כך הרבה אחרים שירותים שמשתמשים בפרוטוקול TCP ו- IP שאנחנו לוקחים כמובן מאליו כי עבודה כמו שנראה כאן בסרט הזה זה יכול לקחת לקחת אותנו עד הסוף היום. [וידאו השמעה] -עבור בפעם הראשונה ב היסטוריה, אנשים ומכונות הם עובדים יחד, הגשמת חלום. כוח מאחד שיודע אין גבולות גיאוגרפיים. ללא קשר לגזע, דת או צבע. עידן חדש בו תקשורת באמת מביא אנשים יחד. זהו השחר של הרשת. רוצה לדעת איך זה עובד? לחץ כאן כדי להתחיל שלך מסע אל תוך הרשת. עכשיו, בדיוק מה שקרה כאשר אתה לוחץ על קישור זה? אתה התחיל זרימת המידע. מידע זה עובר למטה לחדר הדואר האישי שלך כאשר מר IP חבילות זה, תוויות זה, ושולח אותו לדרך. כל מנה היא גודל מוגבל. חדר הדואר צריך להחליט כיצד לחלק את המידע וכיצד לארוז אותו. עכשיו, החבילה זקוקה לתווית המכיל מידע חשוב, כגון כתובת, המקלט של השולח כתובת, וסוג החבילה שהוא. בגלל מנות מיוחדות זה יוצא על גבי האינטרנט, זה גם מקבל כתובת עבור שרת ה- proxy, ש יש תפקיד מיוחד כפי שנראה בהמשך. המנה עכשיו השיקה גבי רשת המקומית או LAN. רשת זו משמשת לחיבור כל המחשבים המקומיים, מדפסות נתבים, וכולי להחלפת מידע בתוך פיזי קירות המבנה. LAN הוא די בלתי מבוקר מקום ו, למרבה הצער, תאונות יכול לקרות. הכביש המהיר של LAN הוא ארז עם כל סוגי המידע. אלה הם מנות IP, Novell מנות, מנות Apple Talk. הם הולכים נגד תנועה כרגיל. הנתב המקומי קורא לטפל ובמידת צורך, מרים את המנות על גבי רשת אחרת. אה, את הנתב. סמל של שליטה ב עולם לכאורה לא מאורגן. הנה הוא, שיטתי, אדיש, ​​שיטתי, שמרני, ולפעמים לא ממש עד למהירות. אבל לפחות, הוא הוא מדויק על פי רוב. כמנות לעזוב הנתב, הם עושים את דרכם לאינטראנט של החברה ואת הראש של מתג הנתב. קצת יותר יעיל מאשר נתב, מתג הנתב משחק מהר ומשוחרר עם מנות IP, בזריזות ניתוב אותם לאורך הדרך. Pinball Wizard דיגיטלי, אם תרצה. -הנה אנחנו הולכים. הנה מגיע עוד אחד. וזה עוד. תראה את זה, אמא. הנה זה בא. אופס. מסביב לגב. היי. שם. שם. למעלה משמאל. מעל לימין. למעלה משמאל. מעל לימין. יש לך את זה. כאן זה הולך. הוא יורה. הוא ציוני. זה הולך. היי, חכה. היי, תיזהר. הנה מגיע עוד אחד. אה, הנה זה באנו. מנות דין אזוריות יגיעו ל היעד שלהם, הם נאסף על ידי ממשק הרשת, מוכן להישלח לרמה הבאה, במקרה זה, proxy. Proxy משמש על ידי רב חברות כמו סוג של גבר באמצע על מנת להפחית את העומס על חיבור האינטרנט שלהם ומטעמי ביטחון, כמו גם. כפי שניתן לראות, מנות כל בגדלים שונים, בהתאם לתוכן שלהם. Proxy פותח את החבילה ו מחפש את כתובת האינטרנט או את כתובת אתר. תלוי אם כתובת מקובלת, המנה נשלחת לאינטרנט. יש, עם זאת, כמה כתובות שלא להיפגש עם אישור פרוקסי, כלומר, הנחיות חברה או ניהול. אלה עסקו הסף עם. תהיה לנו שום דבר כזה. למי שעושה את זה, זה על הכביש שוב. בשלב הבא, את חומת האש. חומת האש של החברה משרת שתי מטרות. זה מונע מחלק לא דברים מרושעים באינטרנט לבוא באינטרא-נט. וזה גם יכול למנוע מידע ארגוני רגיש מנשלח החוצה אל האינטרנט. ברגע שדרך חומת האש, הנתב מרים את המנות ומניח אותו על הרבה יותר צר כביש או רוחב פס, כפי שאנו אומרים. כמובן, השורה אינה רחב מספיק כדי לקחת את כולם. עכשיו, אתם עשויים לתהות, מה קורה לכל מנות אלה שלא עושים את זה בדרך. ובכן, כאשר מר IP לא שתקבל אישור כי מנות היו קיבל בבוא הזמן, הוא פשוט שולח מנות תחליף. עכשיו אנחנו מוכנים להיכנס ל עולם של האינטרנט, עכביש אינטרנט של רשתות מחוברות אשר משתרעים על פני הגלובוס כולו שלנו. כאן, נתבים ומתגים ליצור קישור בין רשתות. עכשיו, ברשת היא לחלוטין סביבה שונה ממה שאתה תמצא בתוך קירות מגן של הרשת המקומית שלך. כאן, זה פרוע מערב, שפע של מקום, שפע של הזדמנויות, שפע של דברים לחקור, ומקומות ללכת. תודה על מעט מאוד שליטה ובקרה, רעיונות חדשים למצוא קרקע פורה לדחוף המעטפה של האפשרויות שלהם. אבל בגלל החופש הזה, סכנות מסוימות גם אורבות. אתה לעולם לא יודע מתי אתה לפגוש פינג חשש של מוות, גרסה מיוחדת של בקשה רגילה פינג שאיזה אידיוט חשב עד למארחים תמימים לבלגן. נתיב המנות שלנו לקחת אולי דרך לווין, קווי טלפון, אלחוט, או אפילו כבל טרנס. לא תמיד הם לוקחים המהירים ביותר או מסלולים הקצרים ביותר אפשרי, אבל הם יגיעו לשם, סופו של דבר. אולי זו הסיבה שזה לפעמים נקרא את ההמתנה ברחבי העולם. אבל כאשר הכל עובד בצורה חלקה, אתה יכול לעקוף את העולם חמש פעמים בירידה של כובע, פשוטו כמשמעו, וכל ל עלות של שיחה מקומית או פחות. לקראת סוף היעד שלנו, אנחנו מוצאים את חומת אש אחרת. בהתאם נקודת מבט כמו מנות נתונים, חומת האש יכולה להיות מעוז ביטחון או יריב המפחיד. הכל תלוי באיזה צד אתה ב, ומה הכוונות שלך. חומת האש היא לאפשר לרק אלה מנות שעומדות בקריטריונים שלה. חומת אש זו פועלת ביציאות 80 ו -25. כל הניסיונות להיכנס דרך אחר יציאות סגורות לעסקים. יציאת 25 משמש למנות אלקטרוני. בעוד נמל 80 הוא הכניסה ל מנות מהאינטרנט לאינטרנט שרת. בתוך חומת האש, המנות מוקרנים באופן יסודי יותר. מנות חלקם עושות את זה בקלות במכס, בעוד שאחרים נראים קצת מפוקפקים. עכשיו, קצין חומת האש לא שולל בקלות, כגון כאשר פינג זה של ניסיונות מנות מוות כדי להסוות את עצמו כ מנות פינג נורמליות. הזז לאורך. זה בסדר. אֵין בְּעָיָה. יהיה לך יום נחמד. תן לי מכאן. ביי. -עבור מנות אלה ברי מזל מספיק כדי להפוך את זה כל כך רחוק, המסע כמעט נגמר. זה פשוט קו על הממשק שיש לנקוט עד לשרת האינטרנט. כיום, שרת אינטרנט יכול לרוץ על רב דברים, ממחשב מרכזי, למצלמות, למחשב על השולחן שלך. למה לא המקרר שלך? עם הסט הנכון עד, שאתה יכול לברר אם יש לך את המרכיבים לCacciatore עוף או אם יש לך ללכת לקניות. זכור, זה הוא השחר של הרשת. כמעט של כל דבר אפשרי. אחד אחד, את המנות הן קיבל, פתח, ולא ארוז. המידע שהם מכילים, ש היא הבקשה לקבלת מידע, נשלח על האינטרנט יישום שרת. המנות עצמו ממוחזר. מוכן לשימוש שוב ומלא ב המידע המבוקש שלך, התייחס, ולשלוח את בדרכה חזרה אליך. חזרה האחרון חומות האש, נתבים, ועל דרך לאינטרנט. בחזרה דרך חומת האש הארגונית שלך. ועל הממשק שלך. מוכן לספק דפדפן האינטרנט שלך עם המידע שביקשת. זה הסרט הזה. מרוצה מהעבודה שלהם ו אמון בעולם טוב יותר, מנות נתונים אמין שלנו לרכב את האושר לשקיעתו של אחר יום, בידיעה מלאה שהם שירת את אדוניהם גם. עכשיו, זה לא שסוף טוב. [END הפעלת וידאו] DAVID מלאן: זהו זה לCS50. אנחנו רואים אותך בשבוע הבא. [MUSIC - קייטי פרי, "סוס שחור"]