1 00:00:00,000 --> 00:00:03,395 >> [За възпроизвеждане на музика] 2 00:00:03,395 --> 00:00:13,100 3 00:00:13,100 --> 00:00:15,570 >> DAVID J. Malan: Така че аз просто Исках да се успокои, за да. 4 00:00:15,570 --> 00:00:18,260 Бих ехо точно каквото Scaz каза за институционална памет. 5 00:00:18,260 --> 00:00:20,350 CS50 е около продължение около 20 години в Харвард. 6 00:00:20,350 --> 00:00:22,280 А реалността е, от дванадесетокласниците за определяне, 7 00:00:22,280 --> 00:00:25,045 има годишно успокоение че първокурсниците, на второкурсници, 8 00:00:25,045 --> 00:00:26,870 и юноши и също дванадесетокласниците, приемащи 9 00:00:26,870 --> 00:00:30,360 CS50, че до края справяш. 10 00:00:30,360 --> 00:00:32,680 >> Реалността е, студенти не пресъхват CS50. 11 00:00:32,680 --> 00:00:35,740 В действителност, в редките случаи, когато сме имали Es или Fs, 12 00:00:35,740 --> 00:00:37,990 това е наистина било поради Смекчаващите обстоятелства, 13 00:00:37,990 --> 00:00:39,840 независимо дали това е медицинска или лична. 14 00:00:39,840 --> 00:00:41,830 Ds са невероятно редки, както добре. 15 00:00:41,830 --> 00:00:45,270 И мога да кажа спокойно, че ние обикновено не разкриваме статистика, 16 00:00:45,270 --> 00:00:48,450 но при положение, че не съществува институционалната памет тук каквато, 17 00:00:48,450 --> 00:00:51,810 мнозинство от студентите в CS50 Така в крайна сметка получаване на класове обсег на действие. 18 00:00:51,810 --> 00:00:54,720 Значителна парче свърши завършващ в диапазона B също. 19 00:00:54,720 --> 00:00:57,490 >> Така че, въпреки че може да сте приравняване в ума си тройки 20 00:00:57,490 --> 00:01:00,690 с 60% и следователно DS, или Cs, или други подобни, 21 00:01:00,690 --> 00:01:02,530 тя наистина не е изравнена с реалността. 22 00:01:02,530 --> 00:01:05,238 В действителност, ние имаме предвид точно това, което ние казват в началото на срока 23 00:01:05,238 --> 00:01:08,380 че толкова много студенти в CS50, двете в Кеймбридж и тук, в Ню Хейвън, 24 00:01:08,380 --> 00:01:10,220 никога не са участвали в курс CS преди. 25 00:01:10,220 --> 00:01:13,090 И това, което наистина има значение в крайна сметка е мястото, където в крайна сметка в 12-та седмица 26 00:01:13,090 --> 00:01:15,882 спрямо себе си в нула седмица. 27 00:01:15,882 --> 00:01:17,590 Сега имаме множествена писти в хода 28 00:01:17,590 --> 00:01:20,548 колкото know-- малко удобни, по- удобно, някъде по средата. 29 00:01:20,548 --> 00:01:23,790 И наистина, когато получите статистика за викторина тази седмица, 30 00:01:23,790 --> 00:01:27,460 Не се обезкуражавайте, ако, особено ако чувствате, че сте около средната стойност 31 00:01:27,460 --> 00:01:30,780 или под средната или медианата, особено след като не е задължително 32 00:01:30,780 --> 00:01:33,560 предприеме всички тези демографски се вземат предвид средата на семестъра 33 00:01:33,560 --> 00:01:35,000 със статистическите данни за класифициране. 34 00:01:35,000 --> 00:01:37,250 >> С други думи, ние знаем, статистически всяка година 35 00:01:37,250 --> 00:01:39,570 че студентите, които са по-малко удобни, направя малко по-зле от викторината. 36 00:01:39,570 --> 00:01:42,050 И учениците, които са по-удобни направя малко по-добре на теста. 37 00:01:42,050 --> 00:01:45,430 Но за това обещание в учебната програма а също и в първата седмица на лекции, 38 00:01:45,430 --> 00:01:46,880 ние приемаме всичко това под внимание. 39 00:01:46,880 --> 00:01:48,900 >> Наистина, при края на годината, това, което ние в крайна сметка прави 40 00:01:48,900 --> 00:01:52,154 се нормализира всички резултати в цяла секции, както в Кеймбридж 41 00:01:52,154 --> 00:01:54,570 и сега тук, в Ню Хейвън, което означава, като се вземат предвид 42 00:01:54,570 --> 00:01:57,310 коренно различни стилове, различното грубостта, различния вид 43 00:01:57,310 --> 00:02:00,722 на личности, които индивидът СНС са тук и в Кеймбридж 44 00:02:00,722 --> 00:02:02,930 така че не сте на по- недостатък, дори ако просто 45 00:02:02,930 --> 00:02:06,120 се случи да са имали TF или TA който е бил малко по-тежки от вас 46 00:02:06,120 --> 00:02:07,170 в ума си. 47 00:02:07,170 --> 00:02:10,139 >> Две, вземем предвид комфорт ниво и действително фон, или липса 48 00:02:10,139 --> 00:02:13,310 от него, когато приемате викторина резултати под внимание. 49 00:02:13,310 --> 00:02:14,830 Така че тези две са отчетени инча 50 00:02:14,830 --> 00:02:17,142 И в края на деня, защото то винаги е така 51 00:02:17,142 --> 00:02:19,100 че един студент в крайна сметка в по-удобна точка 52 00:02:19,100 --> 00:02:24,250 когато той или тя наистина бе в един по-между или обратното, 53 00:02:24,250 --> 00:02:26,230 всичко е толкова невероятно индивидуализиран. 54 00:02:26,230 --> 00:02:29,560 Всъщност, вие ще получите раздразнен от нас в В края на срока, когато сме късно 55 00:02:29,560 --> 00:02:32,630 подаване на вашите класове, защото с Scaz, и Джейсън, и Анди, и аз, 56 00:02:32,630 --> 00:02:35,430 и отборът ще са направили в Кеймбридж е буквално 57 00:02:35,430 --> 00:02:38,480 имаме стотици имейли назад и излезе с цялото сто от курсовете 58 00:02:38,480 --> 00:02:41,279 СНС, тук и в Cambridge, да ги питам какво 59 00:02:41,279 --> 00:02:44,070 те мислят за всичките си студенти въз основа на проект на степените. 60 00:02:44,070 --> 00:02:46,230 И всичко, което има, след като е невероятно индивидуализиран. 61 00:02:46,230 --> 00:02:49,230 Така че до степента, ние да ви опозная в работно време, секции, както и повече, 62 00:02:49,230 --> 00:02:51,350 Всичко това също се взема предвид. 63 00:02:51,350 --> 00:02:55,210 >> Така че ние сме склонни да използвате тази петте степенна скала, моля, отделете си 64 00:02:55,210 --> 00:02:57,492 от предположението, че три наистина е 60%. 65 00:02:57,492 --> 00:02:58,450 Той е предназначен да бъде добър. 66 00:02:58,450 --> 00:03:01,360 И преподаване на асистентите са обвинени в срок старт 67 00:03:01,360 --> 00:03:04,050 да се опита да запази резултати в вторите, и тригодишна възраст, 68 00:03:04,050 --> 00:03:06,590 и четворки варират, така че ние всъщност има място за растеж. 69 00:03:06,590 --> 00:03:08,610 И ние всъщност трябва мерило, с което 70 00:03:08,610 --> 00:03:11,086 ние може да ви даде полезни обратна връзка за това как правиш 71 00:03:11,086 --> 00:03:12,210 и как можете да започнете напредва. 72 00:03:12,210 --> 00:03:15,130 Така че, моля не приемайте, че в сърцето си. 73 00:03:15,130 --> 00:03:20,565 >> Има ли някакви въпроси мога да ви помогнат адрес или притеснения I могат да помогнат успокои? 74 00:03:20,565 --> 00:03:23,800 Или обещания мога да се опитам да се запази? 75 00:03:23,800 --> 00:03:24,690 Не? 76 00:03:24,690 --> 00:03:25,330 ДОБРЕ. 77 00:03:25,330 --> 00:03:26,010 >> Всичко е наред. 78 00:03:26,010 --> 00:03:28,970 Така че с това каза, че това е CS50. 79 00:03:28,970 --> 00:03:31,670 Това е началото на седмица шест тук, в Ню Хейвън. 80 00:03:31,670 --> 00:03:33,820 Нека започнем с кратко затъмняване на осветлението 81 00:03:33,820 --> 00:03:37,439 да постави на сцената за днешния съдържание. 82 00:03:37,439 --> 00:03:38,105 [Възпроизвеждане на видео] 83 00:03:38,105 --> 00:03:44,045 [За възпроизвеждане на музика] 84 00:03:44,045 --> 00:03:46,600 -Той Дойде с послание. 85 00:03:46,600 --> 00:03:50,300 86 00:03:50,300 --> 00:03:52,900 С протокол всичките свои. 87 00:03:52,900 --> 00:04:06,417 88 00:04:06,417 --> 00:04:13,090 Той дойде в един свят на готини защитни стени, незаинтересовани рутери, и опасности далеч по-лоши 89 00:04:13,090 --> 00:04:16,079 че смъртта. 90 00:04:16,079 --> 00:04:21,079 Той е бърз, той е силен, той е TCP / IP. 91 00:04:21,079 --> 00:04:23,120 И той има си адрес. 92 00:04:23,120 --> 00:04:25,820 93 00:04:25,820 --> 00:04:29,268 Warriors на мрежата. 94 00:04:29,268 --> 00:04:29,917 >> [END PLAYBACK] 95 00:04:29,917 --> 00:04:31,000 DAVID J. Malan: Добре. 96 00:04:31,000 --> 00:04:32,030 Това е CS50. 97 00:04:32,030 --> 00:04:33,820 Това е началото на седмица шест. 98 00:04:33,820 --> 00:04:37,270 И това е началото на нашия поглед в интернет и уеб програмиране. 99 00:04:37,270 --> 00:04:41,220 И, може би най-вълнуващо, днес бележи прехода за нас 100 00:04:41,220 --> 00:04:43,780 от нашия команден ред свят на C до интернет 101 00:04:43,780 --> 00:04:47,020 базиран на PHP свят, и HTML, и CSS и SQL, и JavaScript, 102 00:04:47,020 --> 00:04:49,800 и толкова повече, че е на хоризонта. 103 00:04:49,800 --> 00:04:53,390 >> Но първо, той е дошъл да ни внимание в ходене в колежа, че има 104 00:04:53,390 --> 00:04:57,914 е определена тук, в Ню баня Haven наречена Harvard стая, която 105 00:04:57,914 --> 00:04:59,080 е малко сиво тук. 106 00:04:59,080 --> 00:05:03,830 Но наистина, някой отиде на времето и разход на ецване в Harvard стая 107 00:05:03,830 --> 00:05:05,700 по този тук стая. 108 00:05:05,700 --> 00:05:07,790 Благодаря за това. 109 00:05:07,790 --> 00:05:11,020 Не мога да кажа имаме аналог в Cambridge, все още, 110 00:05:11,020 --> 00:05:14,060 но мисля, че имаме малък проект за себе си сега, когато се върнем. 111 00:05:14,060 --> 00:05:15,890 Така че ви благодаря за това. 112 00:05:15,890 --> 00:05:18,340 >> Така че един бърз поглед назад към там, където бяхме миналата седмица 113 00:05:18,340 --> 00:05:21,010 и къде отиваш този смешен седмица с проблеми зададете пет. 114 00:05:21,010 --> 00:05:24,350 Така че в определен проблем пет, вие ще бъдете изправени пред предизвикателството да осъществи проверка на правописа. 115 00:05:24,350 --> 00:05:26,630 И за да направите това, вие ще бъдете предадена доста голям текст 116 00:05:26,630 --> 00:05:29,160 файл с подобни 140000 английски думи. 117 00:05:29,160 --> 00:05:32,610 И вие ще се изправят пред предизвикателството да реши на структурата на данните, с които можете 118 00:05:32,610 --> 00:05:35,340 искате да заредите всички тези думи в паметта, и в RAM, 119 00:05:35,340 --> 00:05:38,470 и след това се изпълнява няколко функции, един от които ще бъде проверите. 120 00:05:38,470 --> 00:05:41,555 Чрез която, когато премина аргумент, С една дума, чека си функция 121 00:05:41,555 --> 00:05:43,430 просто ще има да се каже, вярно или невярно, 122 00:05:43,430 --> 00:05:44,990 това е една дума в речника. 123 00:05:44,990 --> 00:05:47,110 >> Но ти започваш да имат някаква дизайн дискретност и предизвикателства 124 00:05:47,110 --> 00:05:48,568 когато става въпрос за прилагане на това. 125 00:05:48,568 --> 00:05:51,250 В най-простия изпълнението, вие със сигурност може да 126 00:05:51,250 --> 00:05:53,960 прилагане на проверка на правописа в базовия речника 127 00:05:53,960 --> 00:05:55,380 с каква структура от данни? 128 00:05:55,380 --> 00:05:57,796 Ти просто трябва да се съхранява цяло куп низове в паметта? 129 00:05:57,796 --> 00:06:00,074 Какво е в движение, за да отговори на от може би две седмици? 130 00:06:00,074 --> 00:06:00,740 АУДИТОРИЯ: Array. 131 00:06:00,740 --> 00:06:01,500 DAVID J. Malan: Можете да използвате масив. 132 00:06:01,500 --> 00:06:02,750 И това не е толкова лошо. 133 00:06:02,750 --> 00:06:05,631 Но не е задължително да знаете предварително колко голям от масив 134 00:06:05,631 --> 00:06:08,630 започваш да се наложи, ако не го направите знам файла задължително предварително. 135 00:06:08,630 --> 00:06:10,110 Значи ще трябва да се използвате малко хитрост 136 00:06:10,110 --> 00:06:11,970 като изчистване, като започнахме да използваме. 137 00:06:11,970 --> 00:06:13,977 Или бихме могли адрес които се отнасят с помощта 138 00:06:13,977 --> 00:06:16,810 какви други данни структура, която е било нещо незначително подобрение 139 00:06:16,810 --> 00:06:17,894 на масив? 140 00:06:17,894 --> 00:06:18,810 АУДИТОРИЯ: свързан списък. 141 00:06:18,810 --> 00:06:21,270 DAVID J. Malan: Като свързано списък, при което получаваме някаква динамика. 142 00:06:21,270 --> 00:06:22,686 Но има и малко повече разход. 143 00:06:22,686 --> 00:06:24,150 Имаме насоки за поддържане. 144 00:06:24,150 --> 00:06:25,890 И вие все още не сте кодиран този нагоре, но има определено 145 00:06:25,890 --> 00:06:28,473 да бъде по-голяма сложност от това просто да се използва квадратни скоби 146 00:06:28,473 --> 00:06:30,080 и подскачаше масив. 147 00:06:30,080 --> 00:06:33,340 >> Но времето за работа на масив е, ако търсите за една дума, 148 00:06:33,340 --> 00:06:34,179 може да се впишете на п. 149 00:06:34,179 --> 00:06:35,970 Но отново, тя може да бъде малко нетривиален 150 00:06:35,970 --> 00:06:38,734 да се изградят, че не масив знаейки размера предварително. 151 00:06:38,734 --> 00:06:41,150 A свързан списък все пак, ако Просто съхранявате куп струни 152 00:06:41,150 --> 00:06:43,300 в свързан списък, това, което е горната граница си 153 00:06:43,300 --> 00:06:46,920 на времето за работа ще бъде да търсите за или проверете дума в този списък? 154 00:06:46,920 --> 00:06:47,700 >> АУДИТОРИЯ: п. 155 00:06:47,700 --> 00:06:50,575 >> DAVID J. Malan: Да, голяма O от п или линейна, защото в най-лошия случай, 156 00:06:50,575 --> 00:06:52,640 думата е като Z дума чак в края. 157 00:06:52,640 --> 00:06:55,350 И тъй като на свързан списък, защото тези стрели по подразбиране, 158 00:06:55,350 --> 00:06:58,280 в единично свързан списък, само там, от една посока към друга, 159 00:06:58,280 --> 00:06:59,590 вие не можете да скачат наоколо. 160 00:06:59,590 --> 00:07:01,160 Трябва да следвате всички от тях. 161 00:07:01,160 --> 00:07:05,505 >> Така че ние, предложен в края на миналата седмица, пет седмица, че има по-добри начини. 162 00:07:05,505 --> 00:07:08,727 И всъщност, Светия Граал Наистина би било константно време 163 00:07:08,727 --> 00:07:10,560 при което, когато искате да гледам една дума, вие 164 00:07:10,560 --> 00:07:13,370 получите отговор веднага, независимо от колко думи са вече 165 00:07:13,370 --> 00:07:14,350 във вашия речник. 166 00:07:14,350 --> 00:07:17,680 >> Това е предаване на художник на това, което може да се нарече хеш таблица. 167 00:07:17,680 --> 00:07:21,900 И хеш таблица е вид приятно амалгама на array-- изготвен вертикално 168 00:07:21,900 --> 00:07:26,416 тук, просто because-- и след това свързани list-- изготви хоризонтално тук. 169 00:07:26,416 --> 00:07:28,790 И хеш таблицата може да бъде изпълнява в букети от начина. 170 00:07:28,790 --> 00:07:34,110 Този откъс от учебник случва да използват рождени дати на тези хора 171 00:07:34,110 --> 00:07:38,940 като средствата, чрез които това е вземане на решение къде да поставите името на някого. 172 00:07:38,940 --> 00:07:41,230 Така че това е речник ако ще на имената. 173 00:07:41,230 --> 00:07:45,240 И за да се ускори пускането имена в настоящата структура на данните, 174 00:07:45,240 --> 00:07:49,280 те гледат, както изглежда, тези хора раждане датира по отношение на един месец. 175 00:07:49,280 --> 00:07:50,570 >> Така че това е 1 до 31. 176 00:07:50,570 --> 00:07:52,910 И забрави за февруари и ъглови случаи като този. 177 00:07:52,910 --> 00:07:57,050 И ако вашият рожден ден е през януари 1, или 1 февруари или 1 декември 178 00:07:57,050 --> 00:07:59,890 започваш да се свърши най- най-първата верига до върха. 179 00:07:59,890 --> 00:08:02,150 Ако вашата рождена дата е като 25-ти месец, 180 00:08:02,150 --> 00:08:04,567 започваш да се свърши в кофа номер 25. 181 00:08:04,567 --> 00:08:07,400 И ако има някой, вече има всяка от тези места, което 182 00:08:07,400 --> 00:08:10,470 да започнете да правите с тези, свързани списъци се да ги присвояват заедно 183 00:08:10,470 --> 00:08:14,320 така че можете да имате произволно брой хора, или нещо подобно, 184 00:08:14,320 --> 00:08:15,580 на това място. 185 00:08:15,580 --> 00:08:18,400 >> Така че имате вид смесица от константно време за хеширане. 186 00:08:18,400 --> 00:08:21,160 И за да разискват нещо означава да вземе като вход като човек, 187 00:08:21,160 --> 00:08:25,360 или името му, или неговия раждане дата, и след това да вземе решение за някои изход 188 00:08:25,360 --> 00:08:29,780 на базата на това, като погледнете в техните рожден ден и извеждане от едно до 31. 189 00:08:29,780 --> 00:08:31,900 >> Така че след това може да се наложи малко на линейното време, 190 00:08:31,900 --> 00:08:34,429 но в действителност, и както в случай на проблем зададете пет, 191 00:08:34,429 --> 00:08:36,220 ние няма да бъдем работи в P определи петте 192 00:08:36,220 --> 00:08:40,059 толкова много за асимптотичната бягане време, като теоретичната мудността 193 00:08:40,059 --> 00:08:41,809 с които алгоритъм може да се кандидатира. 194 00:08:41,809 --> 00:08:44,330 Отиваме да се грижим за действителния брой секунди 195 00:08:44,330 --> 00:08:47,350 и действителния размер на паметта, действителния брой байта памет 196 00:08:47,350 --> 00:08:48,140 който използвате. 197 00:08:48,140 --> 00:08:52,710 Така че, честно казано, като една огромна верига от един милион души харесват 198 00:08:52,710 --> 00:08:56,710 е адски бавно ако търсите на название в списък с размер милиона. 199 00:08:56,710 --> 00:08:59,830 >> Но какво, ако се разделят този списък на 31 части? 200 00:08:59,830 --> 00:09:04,400 Търсене на 1/31, че супер дълъг списък, в действителност, 201 00:09:04,400 --> 00:09:05,741 със сигурност ще бъде по-бързо. 202 00:09:05,741 --> 00:09:07,240 Асимптотично, това е едно и също нещо. 203 00:09:07,240 --> 00:09:08,860 Вие сте просто раздели с постоянен фактор. 204 00:09:08,860 --> 00:09:10,651 И припомни, че ние хвърлят тези неща далеч. 205 00:09:10,651 --> 00:09:13,486 Но в действителност, то се случва да е 31 пъти по-бързо. 206 00:09:13,486 --> 00:09:16,110 И това е, което ние ще започнете да ливъридж в P определя пет. 207 00:09:16,110 --> 00:09:18,750 >> Така P определи петте твърде също предлага да се има предвид 208 00:09:18,750 --> 00:09:21,810 Малко по-сложен структура от данни, наречена синтактично дърво. 209 00:09:21,810 --> 00:09:24,420 И синтактично дърво е просто дървовидна структура от данни. 210 00:09:24,420 --> 00:09:26,672 Но вместо да се налага малки кръгове или правоъгълна форма 211 00:09:26,672 --> 00:09:28,380 като пазим рисуване за възли, тя всъщност 212 00:09:28,380 --> 00:09:30,840 има цели масиви за нейните възли. 213 00:09:30,840 --> 00:09:33,430 И въпреки, че това е битов абстрактно тук, за да разгледате, 214 00:09:33,430 --> 00:09:35,450 Zamyla в P набор разходка ще ви преведе през 215 00:09:35,450 --> 00:09:37,580 чрез по-подробно по този въпрос. 216 00:09:37,580 --> 00:09:39,980 Това е структурата на данните че скоро хитро 217 00:09:39,980 --> 00:09:44,130 може да има всеки възел е масив на площ от 26, A чрез Z или нулеви 218 00:09:44,130 --> 00:09:45,320 през 25. 219 00:09:45,320 --> 00:09:49,260 А когато искате да поставите на едно лице назоват в тази структура на данни или да намерят 220 00:09:49,260 --> 00:09:53,990 него или нея, това, което правите, ако Името е като Максуел, M-A-X-W-E-L-L, 221 00:09:53,990 --> 00:09:57,900 първо погледнете M. И тогава ти скочи до съответния местоположението M 222 00:09:57,900 --> 00:09:59,100 в първия масив. 223 00:09:59,100 --> 00:10:02,400 След това можете да скочи до A, първият населено място в следващия масив, 224 00:10:02,400 --> 00:10:03,610 следвайки стрелките. 225 00:10:03,610 --> 00:10:08,300 След X, тогава W, тогава Е, тогава L, след това L, а след това може би някакъв специален край 226 00:10:08,300 --> 00:10:11,850 характер, някои страж която казва една дума спира тук. 227 00:10:11,850 --> 00:10:14,780 >> И това, което е хубаво за this-- и имайте предвид, че на снимката тук, 228 00:10:14,780 --> 00:10:16,797 Забележете как ръбове всеки масив са отрязани. 229 00:10:16,797 --> 00:10:19,630 Това е просто, защото това нещо би да бъде масивна и ужасяваща да изглежда 230 00:10:19,630 --> 00:10:20,338 при на екрана. 231 00:10:20,338 --> 00:10:21,820 Така че това е откъс. 232 00:10:21,820 --> 00:10:25,920 Какво е хубаво за този подход е че ако има един милион имена вече 233 00:10:25,920 --> 00:10:30,890 в тази структура от данни, колко стъпки пък ме вземат, за да вмъкнете Максуел? 234 00:10:30,890 --> 00:10:36,450 M-A-X-W-E-L-L-- като седем-Иш стъпки, за да вмъкнете или за Maxwell изглеждат. 235 00:10:36,450 --> 00:10:39,320 >> Да предположим, че има един трилион имена в настоящата структура на данните. 236 00:10:39,320 --> 00:10:41,900 Колко стъпки отнема ме да търся Максуел? 237 00:10:41,900 --> 00:10:43,450 M-A-X-- още седем. 238 00:10:43,450 --> 00:10:45,770 >> И там се крие така наречените постоянно време. 239 00:10:45,770 --> 00:10:47,960 Ако приемем, че думи със сигурност са ограничен 240 00:10:47,960 --> 00:10:52,150 от 20 символа, или 46 знака, или някаква разумно малка число, 241 00:10:52,150 --> 00:10:53,790 тогава е ефективно константа. 242 00:10:53,790 --> 00:10:57,790 И така, вмъкване и търсене синтактично дърво е супер бързо. 243 00:10:57,790 --> 00:10:59,540 Разбира се, ние никога получи нищо безплатно. 244 00:10:59,540 --> 00:11:02,740 И въпреки, че най-вероятно Не сте се хвърли в P определя пет, все още, 245 00:11:02,740 --> 00:11:06,596 каква цена са най-вероятно да плащат получи, че по-голяма ефективност време мъдър? 246 00:11:06,596 --> 00:11:07,470 >> АУДИТОРИЯ: Memory. 247 00:11:07,470 --> 00:11:08,390 >> DAVID J. Malan: Memory, нали? 248 00:11:08,390 --> 00:11:10,240 Искам да кажа, ние не сме изготвен цялата картина тук. 249 00:11:10,240 --> 00:11:12,823 Този откъс от учебника не е изготвен на всички масиви. 250 00:11:12,823 --> 00:11:16,687 Има огромно количество памет и просто нулеви указатели, които не се използват. 251 00:11:16,687 --> 00:11:17,520 Така че това е компромис. 252 00:11:17,520 --> 00:11:21,050 И това ще бъде оставен да сте в P определи петте да вземе решение за по какъв начин искате да отидете. 253 00:11:21,050 --> 00:11:24,460 >> Сега тази идея за хеширане, като настрана, всъщност е супер широко разпространени. 254 00:11:24,460 --> 00:11:27,980 Така че да се разискват на стойност не означава, доста просто, за да вземе нещо като вход 255 00:11:27,980 --> 00:11:29,220 и производство на изход. 256 00:11:29,220 --> 00:11:31,270 Така че хеш функция е само един алгоритъм. 257 00:11:31,270 --> 00:11:34,990 >> И като цяло, с цел, хеш функции в живота е да се вземе нещо като вход 258 00:11:34,990 --> 00:11:39,655 и произвежда редица като продукция, подобни на номер едно през 31 или А до Я 259 00:11:39,655 --> 00:11:40,960 нулата през 25. 260 00:11:40,960 --> 00:11:44,250 Така че това отнема комплекс изход и тя се свива до нещо 261 00:11:44,250 --> 00:11:46,310 това е малко по- полезно и управляеми. 262 00:11:46,310 --> 00:11:49,250 >> И така се оказва в много популярна функция 263 00:11:49,250 --> 00:11:51,160 че в света на сигурността и човешкото света 264 00:11:51,160 --> 00:11:53,060 Използвам в продължение на години се нарича SHA1. 265 00:11:53,060 --> 00:11:56,260 Това е доста фантазия математическа формула, която прави по същество, че. 266 00:11:56,260 --> 00:11:58,870 >> Взимаш един наистина голям парче от нули и ones-- 267 00:11:58,870 --> 00:12:01,530 който може да бъде мегабайт дълга, а гигабайт long-- 268 00:12:01,530 --> 00:12:05,930 и тя го свива до само на няколко бита, няколко бита, 269 00:12:05,930 --> 00:12:09,082 така че да имате редица харесват едно до 31, или от А до Z. 270 00:12:09,082 --> 00:12:11,540 Но в действителност, това е малко по-голяма, отколкото само от А до Z. 271 00:12:11,540 --> 00:12:16,640 >> За съжаление, ние сме на прага на това, което някой шеговито нарича SHAppening 272 00:12:16,640 --> 00:12:19,840 чрез която светът е на път да приключи през вероятно след няколко месеца 273 00:12:19,840 --> 00:12:22,617 време, защото изследователите, само през изминалата седмица, 274 00:12:22,617 --> 00:12:25,700 публикува доклад, че в противоречие с какви специалисти по сигурността са мислили 275 00:12:25,700 --> 00:12:29,810 за известно време, като просто харчат за това, което е било, 276 00:12:29,810 --> 00:12:33,420 Мисля, че беше $ 175,000-- много пари, 277 00:12:33,420 --> 00:12:36,540 но не и извън обсега на особено лоши лошите, 278 00:12:36,540 --> 00:12:41,560 или особено лошо държави-- $ 175,000 може ли да си купите много наетия сървър 279 00:12:41,560 --> 00:12:42,690 пространство в облака. 280 00:12:42,690 --> 00:12:44,619 И ние ще се върнем към облакът не след дълго. 281 00:12:44,619 --> 00:12:47,410 Но това просто означава, отдаване под наем на сървър място на подобни сървъри на Microsoft, 282 00:12:47,410 --> 00:12:50,285 или Google, или на Amazon, или харесват където можете да платите с всяка минута 283 00:12:50,285 --> 00:12:51,670 да използват компютрите на някой друг. 284 00:12:51,670 --> 00:12:54,250 >> И се оказва, ако можете да платите някой друг да заеме своите компютри 285 00:12:54,250 --> 00:12:56,730 и бягай код, който сте написали върху него и да използва доста фантазия 286 00:12:56,730 --> 00:13:01,580 математиката, можете същество фигура как хеш функция на някого е 287 00:13:01,580 --> 00:13:05,320 работи, и предвид резултатите от дейността си, конструирате обратно това, което си е вход. 288 00:13:05,320 --> 00:13:08,590 И за днешните цели, достатъчно е да се каже, че това е лошо. 289 00:13:08,590 --> 00:13:12,540 Защото SHA1 и хеш функции като него са супер-често 290 00:13:12,540 --> 00:13:17,050 се използва в приложения за сигурност, криптирани връзки в интернет, 291 00:13:17,050 --> 00:13:21,890 банкови сделки, клетъчни криптиране за вашите мобилни телефони и други подобни. 292 00:13:21,890 --> 00:13:24,880 И така всеки път, когато някой намира начин да се обърне 293 00:13:24,880 --> 00:13:28,510 инженер една от тези технологии или да го прекъсне, лоши неща могат да се случат. 294 00:13:28,510 --> 00:13:30,300 >> Сега светът вече знае това. 295 00:13:30,300 --> 00:13:31,310 Това е било предвидимо. 296 00:13:31,310 --> 00:13:34,670 И светът оттогава преместени от SHA1 да SHA256, 297 00:13:34,670 --> 00:13:37,320 който е само един луксозен начин на заявявайки, че те използват по-големи парчета. 298 00:13:37,320 --> 00:13:40,570 И всъщност, дори CS50 собственото уебсайт обновен през миналата година to-- 299 00:13:40,570 --> 00:13:43,290 Не че сме изправени пред всичко това много заплахи, които се опитват да получите в PDF файлове 300 00:13:43,290 --> 00:13:46,520 и whatnot-- но уебсайт CS50 е използва по-голяма хеш функция, 301 00:13:46,520 --> 00:13:47,980 което означава, че ние ще бъдем в безопасност. 302 00:13:47,980 --> 00:13:50,020 Така че всичките ви PDF файлове ще бъдат безопасни, но не 303 00:13:50,020 --> 00:13:52,880 непременно си пари или нещо особено поверителна или лична 304 00:13:52,880 --> 00:13:53,380 да използвам. 305 00:13:53,380 --> 00:13:56,550 Sp провери, че URL Ако искате като някои допълнителни подробности. 306 00:13:56,550 --> 00:13:59,840 >> Така че проблем зададете пет е Наистина на хоризонта. 307 00:13:59,840 --> 00:14:01,560 Quiz един е този смешен сряда. 308 00:14:01,560 --> 00:14:04,479 Но не се възползвате от офис часа, както тази вечер и утре. 309 00:14:04,479 --> 00:14:07,770 И също така да се възползвате от работното време, ако сте на разположение, веднага след това. 310 00:14:07,770 --> 00:14:11,550 Персоналът и аз ще си наоколо и да направим по-небрежно Q & A в допълнение към тази вечер. 311 00:14:11,550 --> 00:14:16,610 И нека силно отбележи тук, за тези от нас, тук в Нови Haven-- 312 00:14:16,610 --> 00:14:19,360 така че това е абсолютно на Scaz си Забележките се чувствали, аз съм сигурен, 313 00:14:19,360 --> 00:14:21,140 като малко на една трудна борба. 314 00:14:21,140 --> 00:14:24,627 И от репутацията, ако не са се научили вече или чули 315 00:14:24,627 --> 00:14:27,710 от някои приятели в Харвард, знам тук са някои нова институционална памет. 316 00:14:27,710 --> 00:14:30,790 P определи петте вид вид има тенденция да бъде най-трудното в CS50, 317 00:14:30,790 --> 00:14:32,590 или най-голямото предизвикателство за повечето ученици. 318 00:14:32,590 --> 00:14:37,180 >> Но какво означава това е, че ние сме почти на върха на този хълм. 319 00:14:37,180 --> 00:14:38,270 И аз наистина искам да кажа това. 320 00:14:38,270 --> 00:14:40,728 Това е най-голямото предизвикателство, но това е и най-възнаграждаване 321 00:14:40,728 --> 00:14:43,560 с това, че за разлика от повечето всеки друг уводна компютърни науки 322 00:14:43,560 --> 00:14:47,980 Разбира се в САЩ, че ние знаем, на, повечето ученици не завършват интро 323 00:14:47,980 --> 00:14:51,400 Разбира се след като вече се прилага неща като дървета, и се опитва, 324 00:14:51,400 --> 00:14:52,880 и хеш таблици и други подобни. 325 00:14:52,880 --> 00:14:54,770 >> И така, аз се надявам, както и Надяваме се, че сте 326 00:14:54,770 --> 00:14:57,280 има огромно чувство на удовлетворение дори 327 00:14:57,280 --> 00:15:00,760 ако седмица или две, през който стигнем до тази удовлетвореност 328 00:15:00,760 --> 00:15:02,490 се чувства малко като този. 329 00:15:02,490 --> 00:15:05,250 Но нека да вдъхне увереност, ние само четири групи P напуснали. 330 00:15:05,250 --> 00:15:07,380 Така че някак, че отгоре е в очите. 331 00:15:07,380 --> 00:15:12,370 >> От другата страна на това, доверете ни се, това е просто хълмове и облаци. 332 00:15:12,370 --> 00:15:16,000 И да кажем, кученца са от другата страна. 333 00:15:16,000 --> 00:15:18,340 Така че просто трябва да се мотае там малко по-дълго. 334 00:15:18,340 --> 00:15:22,050 Искам да кажа, наистина като започваме с прехода в света на уеб програмиране, 335 00:15:22,050 --> 00:15:26,060 вие ще откриете, че нещата become-- това е всъщност очарователни. 336 00:15:26,060 --> 00:15:29,680 337 00:15:29,680 --> 00:15:33,490 OK, ние ще публикуваме по-късно този URL. 338 00:15:33,490 --> 00:15:36,140 Ще откриете също, че ние сме достигайки нещо плато 339 00:15:36,140 --> 00:15:38,150 където всичко е Наистина все още е сложна 340 00:15:38,150 --> 00:15:40,170 и предизвикателна от дизайн, но не сте 341 00:15:40,170 --> 00:15:42,590 Ще се чувствам като ние сме постоянно върви нагоре този хълм. 342 00:15:42,590 --> 00:15:44,390 Така че да отнеме известно утеха в това. 343 00:15:44,390 --> 00:15:47,409 >> Така че, без повече приказки, нека да започнем да направи този пазар преход 344 00:15:47,409 --> 00:15:49,950 в семестър в света на в интернет, и наистина света 345 00:15:49,950 --> 00:15:51,420 с които всички ние сме по-запознати. 346 00:15:51,420 --> 00:15:53,753 Имаме интернет устройства в нашите джобове, от нашите бюра, 347 00:15:53,753 --> 00:15:55,127 в нашите раници, и други подобни. 348 00:15:55,127 --> 00:15:56,210 Как работи всичко това? 349 00:15:56,210 --> 00:15:59,077 И как можем да започнете да пишете код, който не е супер тайнствена 350 00:15:59,077 --> 00:16:01,910 и в някои мигащ текст промпт че нито един от вашите приятели или семейство 351 00:16:01,910 --> 00:16:04,659 се някога ще искате да си взаимодействат с, но нещо, което може да постави 352 00:16:04,659 --> 00:16:06,660 на телефоните си, или на своите уеб браузъри, 353 00:16:06,660 --> 00:16:09,010 състояние или на всякакви устройства с които те си взаимодействат. 354 00:16:09,010 --> 00:16:10,430 >> Така че тук е нечий дом. 355 00:16:10,430 --> 00:16:14,040 И вътре в този дом е на няколко лаптопи, няколко старото училище десктоп 356 00:16:14,040 --> 00:16:17,470 компютри, нещо, наречено рутер или хъб в средата, 357 00:16:17,470 --> 00:16:20,310 и след това някакъв вид кабелен модем или DSL модем. 358 00:16:20,310 --> 00:16:24,560 И след това има интернет, като цяло изготвен като облак там горе в небето. 359 00:16:24,560 --> 00:16:29,230 >> Така че тази картина, въпреки че малко нещо като дата, 360 00:16:29,230 --> 00:16:32,604 определено улавя това, което повечето от вероятно имате в домовете си, 361 00:16:32,604 --> 00:16:35,520 или ефективно, което всички от вас имат във вашите общежитието стаи, или апартаменти, 362 00:16:35,520 --> 00:16:36,480 или други подобни. 363 00:16:36,480 --> 00:16:40,010 >> Така че това, което се случва, когато в действителност опитате да използвате интернет днес? 364 00:16:40,010 --> 00:16:42,010 Така че всеки компютър в интернет, се оказва, 365 00:16:42,010 --> 00:16:46,860 трябва да има уникален адрес, много като сме в реалния свят, нуждата 366 00:16:46,860 --> 00:16:52,050 пощенски адрес, като 51 Prospect Street, Ню Хейвън, Кънектикът, или 33 367 00:16:52,050 --> 00:16:54,170 Oxford Street, Кеймбридж, Масачузетс. 368 00:16:54,170 --> 00:16:58,520 Така правят компютри в интернет се нуждаят от начин на уникално себе адресиране. 369 00:16:58,520 --> 00:17:01,180 >> Това е така, че когато един компютър иска да говори с друг, 370 00:17:01,180 --> 00:17:04,525 тя може да изпратите съобщение и информира получателя, на когото 371 00:17:04,525 --> 00:17:05,900 тя трябва да изпрати отговора обратно. 372 00:17:05,900 --> 00:17:07,900 Така че просто прави нещо интуитивно чувство може би 373 00:17:07,900 --> 00:17:09,980 че всичко има адрес на някакъв вид. 374 00:17:09,980 --> 00:17:11,240 >> Но как да се получи един адрес? 375 00:17:11,240 --> 00:17:13,589 Е, ако можете да получите тук колежа, или сте се прибера вкъщи 376 00:17:13,589 --> 00:17:15,760 и включване на лаптоп или настолен компютър, 377 00:17:15,760 --> 00:17:17,770 и или го включете или се свържете с Wi-Fi, 378 00:17:17,770 --> 00:17:19,569 оказва се че има специален сървър 379 00:17:19,569 --> 00:17:22,089 на повечето мрежи нарича DHCP сървъра. 380 00:17:22,089 --> 00:17:23,880 Няма значение какво е това означава, 381 00:17:23,880 --> 00:17:26,660 но това е динамично конфигуриране на хостове протокол, който е просто 382 00:17:26,660 --> 00:17:29,760 един луксозен начин на казвайки, че това е компютър, или Йейл има, 383 00:17:29,760 --> 00:17:32,600 или Harvard има или Comcast има или Verizon има, 384 00:17:32,600 --> 00:17:35,100 или фирмата ви има, чиято цел в живота, 385 00:17:35,100 --> 00:17:38,810 когато го чуе някой новодобавения към мрежата, т.е. тук, 386 00:17:38,810 --> 00:17:40,010 използвате този адрес. 387 00:17:40,010 --> 00:17:42,790 >> Така че ние, хората, не трябва да Трудно код в нашите компютри 388 00:17:42,790 --> 00:17:44,040 това, което ни е уникален адрес. 389 00:17:44,040 --> 00:17:47,070 Ние просто го включите, отворете капак, и някак си този сървър 390 00:17:47,070 --> 00:17:52,210 в локалната мрежа просто ми казва, че адресът ми е улица Prospect 51 или 33 391 00:17:52,210 --> 00:17:53,940 Oxford Street, или други подобни. 392 00:17:53,940 --> 00:17:56,000 >> Сега това няма да да бъде толкова многословен, колкото това. 393 00:17:56,000 --> 00:18:00,210 По-скоро това, което аз отивам да се е цифров адрес, наречена IP адрес. 394 00:18:00,210 --> 00:18:01,960 IP означава, интернет протокол. 395 00:18:01,960 --> 00:18:06,025 И шансовете са по това време в живота си, сте чували или виждали думата IP, 396 00:18:06,025 --> 00:18:08,140 или по принцип го хвърлят наоколо може би. 397 00:18:08,140 --> 00:18:10,720 Но в действителност, това е доста право напред нещо. 398 00:18:10,720 --> 00:18:13,610 >> Един IP адрес е просто десетичен номер, 399 00:18:13,610 --> 00:18:17,150 което означава, че това е нещо дот нещо Дот нещо дот нещо. 400 00:18:17,150 --> 00:18:21,980 И всеки от тези Нещо се случва да бъде число между 0 и 255. 401 00:18:21,980 --> 00:18:26,710 >> Така въз основа на пет седмици плюс, ако CS50 тези числа всеки диапазон 0-255, 402 00:18:26,710 --> 00:18:28,713 колко бита е всеки брой от тези признаци? 403 00:18:28,713 --> 00:18:29,420 >> АУДИТОРИЯ: Eight. 404 00:18:29,420 --> 00:18:30,100 >> DAVID J. Malan: Това трябва да е осем. 405 00:18:30,100 --> 00:18:31,933 Така общо колко бита е IP адрес? 406 00:18:31,933 --> 00:18:32,710 АУДИТОРИЯ: 32. 407 00:18:32,710 --> 00:18:33,820 >> DAVID J. Malan: Така 32. 408 00:18:33,820 --> 00:18:35,830 8 плюс 8 плюс 8 плюс 8 е 32. 409 00:18:35,830 --> 00:18:38,767 Колко общо адреси може да има в света? 410 00:18:38,767 --> 00:18:39,600 АУДИТОРИЯ: 4000000000. 411 00:18:39,600 --> 00:18:42,410 DAVID J. Malan: Така приблизително четири милиарда, защото това е 2 на 32 мощност. 412 00:18:42,410 --> 00:18:44,410 И ако ти не можеш нещо гроквам, че в ума си, 413 00:18:44,410 --> 00:18:47,470 Просто знам, че 32-битови стойности може да бъде толкова голям, колкото 4000000000 414 00:18:47,470 --> 00:18:49,140 ако това е всички положителни стойности. 415 00:18:49,140 --> 00:18:52,500 Това значи, че има 4000000000 възможни адреси на света. 416 00:18:52,500 --> 00:18:55,090 >> И смешна история, ние сме вид на изчерпване на тях. 417 00:18:55,090 --> 00:18:59,720 И всъщност това е огромен проблем с това, че свят също видях този проблем идва, 418 00:18:59,720 --> 00:19:03,639 но непременно не е отговорил на то по възможно най-бърз начин. 419 00:19:03,639 --> 00:19:05,680 И наистина, след като веднъж сте завърши CS50 и започна 420 00:19:05,680 --> 00:19:06,950 обръща внимание на технологичния свят, ще 421 00:19:06,950 --> 00:19:08,520 виж това е много често тематично. 422 00:19:08,520 --> 00:19:12,260 >> Така например, ако се върнем наистина старото училище в днешно време, Y2K. 423 00:19:12,260 --> 00:19:13,570 Това всъщност не е изненада. 424 00:19:13,570 --> 00:19:15,700 Както всеки знае за 1000 години, че това 425 00:19:15,700 --> 00:19:20,250 was-- повече от хиляда years-- че че в крайна сметка е да се случи. 426 00:19:20,250 --> 00:19:23,295 И все пак, ние се повлияли от него много в последната минута. 427 00:19:23,295 --> 00:19:24,420 И това се случва отново. 428 00:19:24,420 --> 00:19:26,740 Така че днес ние ще говорим за IP версия 4. 429 00:19:26,740 --> 00:19:29,250 Но знам, че светът е най-накрая става 430 00:19:29,250 --> 00:19:31,590 наоколо, за да надграждане до нещо, наречено IPv6, 431 00:19:31,590 --> 00:19:34,540 които вместо 32-битово адреси, uses-- никого 432 00:19:34,540 --> 00:19:36,443 искате да вземе предполагам, колко бита? 433 00:19:36,443 --> 00:19:37,310 >> АУДИТОРИЯ: 64? 434 00:19:37,310 --> 00:19:38,380 >> DAVID J. Malan: Добро предположение, но не. 435 00:19:38,380 --> 00:19:39,975 Ние сме най-накрая се опитва да да напреднат в кривата. 436 00:19:39,975 --> 00:19:40,558 >> АУДИТОРИЯ: 128. 437 00:19:40,558 --> 00:19:43,490 DAVID J. Malan: 128, което е шибан огромен брой 438 00:19:43,490 --> 00:19:46,250 от интернет адреси, защото това е все едно време 2, 2 пъти, 439 00:19:46,250 --> 00:19:49,620 2 пъти, много пъти двойки нагоре от 4 милиарда. 440 00:19:49,620 --> 00:19:50,530 >> Така че, ако любопитен. 441 00:19:50,530 --> 00:19:54,110 Оказва out-- и аз просто Гугъл това да се намери този out-- Йейл компютри, 442 00:19:54,110 --> 00:19:58,910 тук в Йейл, са склонни да се започне с те numbers-- 130,132 точки нещо, 443 00:19:58,910 --> 00:20:00,669 и 128,36 Дот нещо. 444 00:20:00,669 --> 00:20:02,710 Но има със сигурност изключения повсеместни 445 00:20:02,710 --> 00:20:05,334 в зависимост от това, което отдел и изграждане и кампус сте. 446 00:20:05,334 --> 00:20:09,310 Harvard тенденция да имат 140,247, или 128,103. 447 00:20:09,310 --> 00:20:11,530 И обикновено това е безполезна информация, 448 00:20:11,530 --> 00:20:13,260 но това е нещо, което може да забележите сега. 449 00:20:13,260 --> 00:20:15,593 Когато започнете да ровя настройките на вашите компютри, 450 00:20:15,593 --> 00:20:18,540 можете да започнете да забележите тези видове модели преди дълго. 451 00:20:18,540 --> 00:20:23,470 >> Но когато сте вкъщи и да има Apple AirPort, или устройство, Linksys, 452 00:20:23,470 --> 00:20:26,560 или D-Link, или каквото и да е Вашите родители или братя и сестри, инсталирани 453 00:20:26,560 --> 00:20:28,890 в дома си, както това, което най-вероятно има 454 00:20:28,890 --> 00:20:30,800 е това, което се нарича частен IP адрес. 455 00:20:30,800 --> 00:20:34,850 И това са всъщност хубаво, временно решение 456 00:20:34,850 --> 00:20:38,050 на проблема за бягане Накратко на IP адреси. 457 00:20:38,050 --> 00:20:40,382 >> И това, което можете да правите с домашни мрежи, typically-- 458 00:20:40,382 --> 00:20:42,340 и честно казано, дори и Yale и Harvard започваме 459 00:20:42,340 --> 00:20:46,840 да направите това в различна areas-- ли е може да даде един куп компютри 460 00:20:46,840 --> 00:20:50,360 един IP адрес, така че стига да сложи специално устройство пред тях, 461 00:20:50,360 --> 00:20:52,410 нещо, наречено рутер, или може да се нарече 462 00:20:52,410 --> 00:20:54,060 прокси или произволен брой други неща. 463 00:20:54,060 --> 00:20:56,710 Но определено устройство, което има, че един IP адрес. 464 00:20:56,710 --> 00:20:59,450 И тогава зад това устройство, в рамките на сграда, 465 00:20:59,450 --> 00:21:03,030 в рамките на една къща или апартамент, може да бъде произволен брой компютри, всички от които 466 00:21:03,030 --> 00:21:06,460 да има IP адрес, който да започне с една от тези цифри тук. 467 00:21:06,460 --> 00:21:08,590 И така, докато този компютър знае как да конвертирате 468 00:21:08,590 --> 00:21:10,900 публичен адрес, за да частния адрес, 469 00:21:10,900 --> 00:21:13,340 всичко може да се справи с работата, както се очаква. 470 00:21:13,340 --> 00:21:17,290 >> Но обратното на това е, че ако ти си у дома и имате брат, сестра, 471 00:21:17,290 --> 00:21:19,650 и двамата сте посещение на някой сайт, 472 00:21:19,650 --> 00:21:23,520 този сайт не знам дали това си ти или си събрат посещение на сайта, 473 00:21:23,520 --> 00:21:26,780 защото изглежда да е същото човек, защото всички ваши данни 474 00:21:26,780 --> 00:21:30,050 преживява, че рутер или че централната точка. 475 00:21:30,050 --> 00:21:32,220 >> Но достатъчно за тези по-ниски детайли ниво. 476 00:21:32,220 --> 00:21:37,770 Нека да разгледаме как адреси понякога излезе може би в медиите 477 00:21:37,770 --> 00:21:41,370 и как сега можем да започнем да се рушат, Честно казано, дори и повече показва за вас. 478 00:21:41,370 --> 00:21:45,010 Ако можехме да затъмни светлини за няколко секунди. 479 00:21:45,010 --> 00:21:46,550 >> [Възпроизвеждане на видео] 480 00:21:46,550 --> 00:21:49,310 >> -Това Е 32-битова на IPP 4 адрес. 481 00:21:49,310 --> 00:21:50,650 >> -IP ES internet-- 482 00:21:50,650 --> 00:21:52,800 >> -Частна Мрежа, Частна мрежа Tamia му. 483 00:21:52,800 --> 00:22:05,670 484 00:22:05,670 --> 00:22:08,145 Тя е толкова невероятно. 485 00:22:08,145 --> 00:22:09,630 -СОМе На Чарли. 486 00:22:09,630 --> 00:22:11,750 DAVID J. Malan: Това е огледало IP адрес. 487 00:22:11,750 --> 00:22:15,093 Тя е, че ни гледате, които тя прави в реално време. 488 00:22:15,093 --> 00:22:16,285 >> [END PLAYBACK] 489 00:22:16,285 --> 00:22:17,130 >> DAVID J. Malan: OK. 490 00:22:17,130 --> 00:22:18,480 Така че по-малко проблеми с това. 491 00:22:18,480 --> 00:22:22,740 Така един, това, което търсим най-тук на екрана 492 00:22:22,740 --> 00:22:25,290 е кода, написан на език, наречен Objective-C, 493 00:22:25,290 --> 00:22:28,020 което е своеобразен наследник на езика C, които правим. 494 00:22:28,020 --> 00:22:30,150 Това няма абсолютно нищо общо с програмиране. 495 00:22:30,150 --> 00:22:32,399 В действителност, както най-добре мога да кажа, Това е програма, рисуване 496 00:22:32,399 --> 00:22:38,360 че някой изтеглен от интернет по някакъв начин с участието на цветни моливи. 497 00:22:38,360 --> 00:22:43,660 >> Може би по-малко нечуваното е, че този IP адрес, валиден или невалиден? 498 00:22:43,660 --> 00:22:44,520 >> АУДИТОРИЯ: Invalid. 499 00:22:44,520 --> 00:22:48,479 >> DAVID J. Malan: невалидна, защото 275 е, разбира се, не между 0 и 255. 500 00:22:48,479 --> 00:22:51,770 Това е твърде вероятно е ОК все пак, тъй вие не искате да куп луди хора 501 00:22:51,770 --> 00:22:54,790 които са като пауза телевизия на техния TiVos и след това посещение на ПР, за да видите 502 00:22:54,790 --> 00:22:56,290 ако има действително нещо там. 503 00:22:56,290 --> 00:22:58,200 Така че едно е малко по-малко нечуваното. 504 00:22:58,200 --> 00:23:00,990 Но осъзнавам, че е твърде сортиране на всички около нас. 505 00:23:00,990 --> 00:23:04,980 >> Така че, разбира се, никой от нас някога Наистина написали числови адреси 506 00:23:04,980 --> 00:23:06,410 в нашите браузъри. 507 00:23:06,410 --> 00:23:09,580 Това ще бъде нещо като нещо лошо ако Google, за да посетите Google, 508 00:23:09,580 --> 00:23:15,060 вие трябваше да отида до 123.46.57.89. 509 00:23:15,060 --> 00:23:17,007 И целият свят е имал просто не забравяйте, че. 510 00:23:17,007 --> 00:23:19,090 И честно казано, ние сме вид на този въпрос, преди да види. 511 00:23:19,090 --> 00:23:24,130 Обратно, в деня, когато хората не го правят имат мобилни телефони и списъци с контакти, 512 00:23:24,130 --> 00:23:27,640 и компаниите, които действително still-- всъщност, Предполагам фирми все още имат 800 513 00:23:27,640 --> 00:23:30,600 номера и like-- но сте обикновено видите номера рекламирани 514 00:23:30,600 --> 00:23:36,480 като 1-800-СЪБИРА, C-O-L-L-E-C-T. Защото никой не може да си спомня, 515 00:23:36,480 --> 00:23:39,754 когато видя реклама на автобус или билборд, това, което някой номер е, 516 00:23:39,754 --> 00:23:42,420 но те могат най-вероятно, с по-висока вероятност, не забравяйте и дума. 517 00:23:42,420 --> 00:23:44,530 >> Така че ние прие същото вид система в света 518 00:23:44,530 --> 00:23:48,290 на интернет, при която има име на домейн система, така че ние, хората, можем 519 00:23:48,290 --> 00:23:52,340 Типове google.com, facebook.com, yale.edu, harvard.edu, 520 00:23:52,340 --> 00:23:56,140 и нека фигурата на компютри какво съответния ПР 521 00:23:56,140 --> 00:23:58,480 адрес е за дадено име. 522 00:23:58,480 --> 00:24:01,620 >> И така, както направи това в реалния свят е, че за $ 10 на година, 523 00:24:01,620 --> 00:24:05,900 може би $ 50 на година, можете да си купите домейн Име, или наистина наем име на домейн. 524 00:24:05,900 --> 00:24:09,860 И тогава всеки, който плащате за отдаване под наем, че името на домейна, 525 00:24:09,860 --> 00:24:14,069 кажи им, които в света знае какво си IP адрес е. 526 00:24:14,069 --> 00:24:16,360 И ние няма да влезем в тях данни, но много от вас 527 00:24:16,360 --> 00:24:18,750 Може би искате, за окончателно проекти, действително да се регистрирате 528 00:24:18,750 --> 00:24:22,120 за собствения си уеб хостинг фирма, било безплатно 529 00:24:22,120 --> 00:24:23,500 или за няколко долара на месец. 530 00:24:23,500 --> 00:24:26,100 Някои от вас може да искате да купите, за няколко долара, вашето собствено име на домейн, 531 00:24:26,100 --> 00:24:28,900 просто за удоволствие или за започване на бизнес или личен сайт или други подобни. 532 00:24:28,900 --> 00:24:30,880 >> И осъзнавам, че всичко, от които в крайна сметка ще 533 00:24:30,880 --> 00:24:35,260 свеждат до вас казва на света какво IP адрес на сървъра Ви е. 534 00:24:35,260 --> 00:24:37,740 И тогава тези DNS сървъри действително се грижат 535 00:24:37,740 --> 00:24:39,910 на информиране на останалата част от света. 536 00:24:39,910 --> 00:24:41,830 Така че всичко е DNS сървър има, накратко, вътре 537 00:24:41,830 --> 00:24:44,780 на паметта му е като еквивалент на електронна таблица Google 538 00:24:44,780 --> 00:24:49,420 или програма за таблици с най-малко две колони, един от които има имена, 539 00:24:49,420 --> 00:24:52,100 като harvard.edu, и yale.edu и google.com. 540 00:24:52,100 --> 00:24:55,870 А другата колона има съответстваща IP адрес или IP 541 00:24:55,870 --> 00:24:56,382 адреси. 542 00:24:56,382 --> 00:24:57,590 И всъщност ние можем да видим това. 543 00:24:57,590 --> 00:24:59,881 Така че на моя Mac-- и можете направите това на Windows компютри 544 00:24:59,881 --> 00:25:04,330 като well-- ако се отвори прозорец на терминала тук, съвсем като този в CD50 IDE, 545 00:25:04,330 --> 00:25:08,190 повечето компютри имат команда, наречена Nslookup, името на сървъра погледнете нагоре. 546 00:25:08,190 --> 00:25:12,380 И ако пиша нещо в подобно yale.edu и натиснете Enter, това, което 547 00:25:12,380 --> 00:25:19,250 Аз трябва да видя дали моята мрежа сътрудничи като го е направил за множество тестове преди клас 548 00:25:19,250 --> 00:25:24,584 began-- нека се опитаме google.com. 549 00:25:24,584 --> 00:25:26,390 Разбира се сега нищо не се получава. 550 00:25:26,390 --> 00:25:27,190 Това е прекрасно. 551 00:25:27,190 --> 00:25:30,660 Добре, стои в продължение на един миг. 552 00:25:30,660 --> 00:25:32,100 Nslookup google.com. 553 00:25:32,100 --> 00:25:35,570 554 00:25:35,570 --> 00:25:38,660 >> Е, нека да видим, ако действителната internet-- не. 555 00:25:38,660 --> 00:25:39,700 Това е, което се е случило. 556 00:25:39,700 --> 00:25:43,090 О, Боже мой, всичко е наред. 557 00:25:43,090 --> 00:25:45,490 Проби за Wi-Fi. 558 00:25:45,490 --> 00:25:47,410 >> Хей, искам да знам какво ми IP адрес е? 559 00:25:47,410 --> 00:25:49,722 Всичко е наред. 560 00:25:49,722 --> 00:25:50,820 YaleSecure. 561 00:25:50,820 --> 00:25:53,330 Това е как да отстранявате неизправности неща като компютърен учен. 562 00:25:53,330 --> 00:25:54,617 Ние се обръщаме на Wi-Fi разстояние. 563 00:25:54,617 --> 00:25:57,480 564 00:25:57,480 --> 00:25:59,450 ДОБРЕ. 565 00:25:59,450 --> 00:26:02,610 >> И действително, Scaz, имате ли нещо против ни логване в защитен такъв? 566 00:26:02,610 --> 00:26:06,246 В противен случай повече тестове are-- ОК, благодаря можете Yale-- или е на път да се счупят. 567 00:26:06,246 --> 00:26:07,370 Искам да отида на YaleSecure. 568 00:26:07,370 --> 00:26:09,880 569 00:26:09,880 --> 00:26:11,870 О, и може би ще бъде наред. 570 00:26:11,870 --> 00:26:12,686 Може би ние сме назад. 571 00:26:12,686 --> 00:26:16,810 572 00:26:16,810 --> 00:26:19,733 И това е начина, като компютър учен определи компютър. 573 00:26:19,733 --> 00:26:22,000 [Аплодисменти] 574 00:26:22,000 --> 00:26:23,220 Всичко е наред. 575 00:26:23,220 --> 00:26:27,160 Така че, когато аз бях в рамките на този т.нар терминален прозорец, 576 00:26:27,160 --> 00:26:32,270 и ако аз Nslookup yale.edu, там да отидем. 577 00:26:32,270 --> 00:26:38,350 Така че аз се върна първото ПР адрес на на DNS сървъра, че моя лаптоп използва. 578 00:26:38,350 --> 00:26:41,610 Така в допълнение към DHCP сървъра, че ние говорихме за преди малко казваше 579 00:26:41,610 --> 00:26:44,720 лаптопа ми какво ми IP адрес, е, че DHCP сървър 580 00:26:44,720 --> 00:26:46,860 Също така ми казва какво DNS сървър да използва. 581 00:26:46,860 --> 00:26:48,860 В противен случай щях да имам ръчно да въведете този инча 582 00:26:48,860 --> 00:26:50,359 >> Но това не е всичко, че интересно. 583 00:26:50,359 --> 00:26:54,310 Какво ме интересува, е, че това е най- IP адрес на уебсайт Yale очевидно. 584 00:26:54,310 --> 00:26:55,470 Така че в действителност, нека се опитаме това. 585 00:26:55,470 --> 00:27:02,710 Позволете ми да отида в един браузър и отидете да HTTP: //, а след това, че IP адрес, 586 00:27:02,710 --> 00:27:04,220 и натиснете Enter. 587 00:27:04,220 --> 00:27:06,700 И нека да видим. 588 00:27:06,700 --> 00:27:09,587 Ето как иначе можеш посетете уебсайта Йейл. 589 00:27:09,587 --> 00:27:10,920 Сега това не е всичко, което запомнящо се. 590 00:27:10,920 --> 00:27:12,220 Подобно, предварително Фрош най-вероятно не ще 591 00:27:12,220 --> 00:27:15,310 да се помни този конкретен адрес ако казал да посетите там след посещение. 592 00:27:15,310 --> 00:27:16,580 Но тя не изглежда да работи. 593 00:27:16,580 --> 00:27:21,179 И така DNS наистина само ни позволява да има много повече човешки приятелски адреси. 594 00:27:21,179 --> 00:27:23,220 Но те не задължително Просто се получи един отговор. 595 00:27:23,220 --> 00:27:25,640 >> В действителност, когато си наистина голяма технологична компания, 596 00:27:25,640 --> 00:27:27,620 вероятно ще пожелаете да има много сървъри. 597 00:27:27,620 --> 00:27:29,027 И дори това е подвеждащо. 598 00:27:29,027 --> 00:27:31,110 Така че Йейл, вероятно не има само един уеб сървър. 599 00:27:31,110 --> 00:27:34,150 Google вероятно не разполага с само на 10, или така уеб сървъри. 600 00:27:34,150 --> 00:27:36,960 Google особено вероятно има хиляди уеб сървъри 601 00:27:36,960 --> 00:27:40,030 по целия свят, които могат да отговорят на искания от хора като нас. 602 00:27:40,030 --> 00:27:43,870 >> Но те също така се използва технология, наречена балансиране на натоварването, които дълга история кратко, 603 00:27:43,870 --> 00:27:48,810 има само на няколко устройства в света разпространение на товара през повече сървъри. 604 00:27:48,810 --> 00:27:52,320 Така че това е нещо като паяжина, ако ще диспечирането на исканията. 605 00:27:52,320 --> 00:27:54,380 Но за сега, всичко, което е Интересно за днес 606 00:27:54,380 --> 00:27:56,870 е, че името на домейна като google.com дори може 607 00:27:56,870 --> 00:28:00,100 има множество IP адреси като това. 608 00:28:00,100 --> 00:28:04,610 >> Но как всички наши данни действително получите назад и напред, а след това в края на краищата? 609 00:28:04,610 --> 00:28:08,320 Е, оказва се, че има такива неща, наречени рутери в интернет. 610 00:28:08,320 --> 00:28:10,980 И това, което е един път на степен, че вие ​​вече знаете? 611 00:28:10,980 --> 00:28:13,730 И аз съм използвал думата няколко пъти в рамките на един дом, 612 00:28:13,730 --> 00:28:17,155 но с прости думи, какво прави един път правя? 613 00:28:17,155 --> 00:28:18,780 Дай ми само предположение въз основа на неговото име? 614 00:28:18,780 --> 00:28:20,082 >> АУДИТОРИЯ: Така път или пътека? 615 00:28:20,082 --> 00:28:21,790 DAVID J. Malan: Значи това е един път или на път. 616 00:28:21,790 --> 00:28:23,980 Така че по маршрут е път или път, абсолютно. 617 00:28:23,980 --> 00:28:27,000 И рутер, така че устройство, което всъщност маршрути информация, 618 00:28:27,000 --> 00:28:29,690 ще се движат данни между точки А и Б. 619 00:28:29,690 --> 00:28:31,920 >> И така в fact-- и това е може би, когато 620 00:28:31,920 --> 00:28:34,510 вие Google изображения на рутери по целия свят, можете да получите 621 00:28:34,510 --> 00:28:35,900 са сирене маркетингови диаграми. 622 00:28:35,900 --> 00:28:38,550 И така, това е нещо като най-много един представител мога да намеря 623 00:28:38,550 --> 00:28:39,841 който изглеждаше леко интересна. 624 00:28:39,841 --> 00:28:44,170 Всяка една от тези точки или проблясъци на надежда по целия свят представлява маршрутизатор. 625 00:28:44,170 --> 00:28:47,210 И всеки от тях има ред между някои други рутер. 626 00:28:47,210 --> 00:28:49,090 >> Защото наистина има са хиляди, може би 627 00:28:49,090 --> 00:28:52,560 милиони рутери около свят, някои от които са в домовете ни 628 00:28:52,560 --> 00:28:56,070 и на нашия кампуси, но много които са собственост на големи фирми 629 00:28:56,070 --> 00:29:00,250 и са свързани помежду си, така че, ако аз искате да изпратите някои данни от тук в Йейл 630 00:29:00,250 --> 00:29:04,430 обратно у дома в Кеймбридж, Йейл, вероятно не разполага с един единствен кабел, със сигурност, 631 00:29:04,430 --> 00:29:05,650 отиде директно в Харвард. 632 00:29:05,650 --> 00:29:07,399 И Yale не разполага един кабел ще 633 00:29:07,399 --> 00:29:10,010 да MIT, или в Станфорд, или да Berkeley, или да Google, 634 00:29:10,010 --> 00:29:11,820 или произволен брой дестинации. 635 00:29:11,820 --> 00:29:14,760 >> По-скоро, Yale и Harvard и всички останали в интернет 636 00:29:14,760 --> 00:29:17,610 няма един или повече маршрутизатори свързани с него, може би 637 00:29:17,610 --> 00:29:18,810 в периферията на територията на колежа. 638 00:29:18,810 --> 00:29:21,690 Така че, когато ми иска данни да напусне колежа Йейл, 639 00:29:21,690 --> 00:29:24,770 той отива, че най-близкия рутер, както е показано от една от тези точки. 640 00:29:24,770 --> 00:29:27,940 И тогава, че рутер цифри дали да го изпратите по този начин, или по този начин, 641 00:29:27,940 --> 00:29:33,440 или по този начин, или по този начин се основава на друга таблица в паметта, 642 00:29:33,440 --> 00:29:36,870 друг файл Excel или Google таблица че в една колона 643 00:29:36,870 --> 00:29:41,315 казва, ако вашият IP адрес започва с номер едно, проверете този начин. 644 00:29:41,315 --> 00:29:43,690 Ако вашият IP адрес започва с а номер две, проверете този начин. 645 00:29:43,690 --> 00:29:47,040 И така, можете да я съборят числено да има рутер изпращане 646 00:29:47,040 --> 00:29:49,040 данни във всички посоки. 647 00:29:49,040 --> 00:29:51,419 >> И ние можем да вид видите това, както добре. 648 00:29:51,419 --> 00:29:54,210 Да вървим напред в този терминал прозорец отново, за да си отида напред 649 00:29:54,210 --> 00:30:00,700 и проследяване на маршрута до, да речем, www.mit.edu, 650 00:30:00,700 --> 00:30:02,970 който е на няколко стотин мили. 651 00:30:02,970 --> 00:30:04,500 Това беше наистина адски бързо. 652 00:30:04,500 --> 00:30:06,290 >> И така, какво точно се е случило? 653 00:30:06,290 --> 00:30:10,360 Така само за седем стъпки, и Само за четири милисекунди, 654 00:30:10,360 --> 00:30:14,660 Изпратих данни през интернет от тук в Йейл да MIT. 655 00:30:14,660 --> 00:30:18,240 Всеки един от тези редове, можете да може би предполагам сега представлява това? 656 00:30:18,240 --> 00:30:19,060 >> АУДИТОРИЯ: A рутер. 657 00:30:19,060 --> 00:30:20,101 >> DAVID J. Malan: A рутер. 658 00:30:20,101 --> 00:30:24,090 Така че наистина, тя изглежда като има около седем или така рутери, 659 00:30:24,090 --> 00:30:29,350 или шест рутери в между мен физически в юридическия факултет на Йейл тук 660 00:30:29,350 --> 00:30:31,612 и уебсайт МИТ там. 661 00:30:31,612 --> 00:30:34,570 И това, което ние можем да събере от това е като follows-- и ми позволи да го почистите. 662 00:30:34,570 --> 00:30:38,180 Отивам да го повтаря отново с командата Онлайн аргумент на -q 1 до само да кажа, 663 00:30:38,180 --> 00:30:39,300 Просто ми даде една заявка. 664 00:30:39,300 --> 00:30:40,800 По подразбиране, следа маршрут прави три. 665 00:30:40,800 --> 00:30:42,350 И затова ние видяхме букети от числа. 666 00:30:42,350 --> 00:30:44,850 Искам да видя малко номера само за да поддържат изходната прахосмукачката. 667 00:30:44,850 --> 00:30:46,280 И нека да видим какво ще стане. 668 00:30:46,280 --> 00:30:49,220 >> Така че, независимо от причината, някой в ​​мисъл Yale 669 00:30:49,220 --> 00:30:54,130 че би било смешно да го наречем си подразбиране рутера arubacentral, които 670 00:30:54,130 --> 00:30:57,920 е на VLAN или виртуална LAN, виртуална локална 671 00:30:57,920 --> 00:30:59,810 мрежа 30--, така че вероятно имат най-малко 672 00:30:59,810 --> 00:31:03,050 29 others-- router.net.yale.internal. 673 00:31:03,050 --> 00:31:06,660 И .internal тук е вид фалшива домейн от високо ниво предназначена да бъде използвана само 674 00:31:06,660 --> 00:31:07,210 на територията на колежа. 675 00:31:07,210 --> 00:31:10,335 И забележи съответния IP адрес на тази рутер, където и тя е тук 676 00:31:10,335 --> 00:31:13,920 на територията на колежа, е 172.28.204.129. 677 00:31:13,920 --> 00:31:17,470 И тя взе 36 милисекунди да отида от тук до там. 678 00:31:17,470 --> 00:31:18,050 >> Funny история. 679 00:31:18,050 --> 00:31:19,716 Ние ще се свържем с които в един момент. 680 00:31:19,716 --> 00:31:22,920 Но сега на втория router-- да които очевидно arubacentral 681 00:31:22,920 --> 00:31:25,790 има някакъв вид физическа връзка най likely-- 682 00:31:25,790 --> 00:31:27,249 хората не си направи труда да го назовава. 683 00:31:27,249 --> 00:31:30,373 Йейл хората не се притеснява за именуване го, защото е вътре в мрежата ви 684 00:31:30,373 --> 00:31:30,940 изглежда. 685 00:31:30,940 --> 00:31:32,520 И така, той просто има IP адрес. 686 00:31:32,520 --> 00:31:34,660 >> Но после трета рутер тук на мрежата Йейл 687 00:31:34,660 --> 00:31:36,700 това е може би малко по- още по-далеч 688 00:31:36,700 --> 00:31:41,330 се нарича cen10g каквото че е asr.net.yale.internal. 689 00:31:41,330 --> 00:31:43,040 И това също е с IP адрес. 690 00:31:43,040 --> 00:31:44,990 >> А защо са тези номера вид колебае? 691 00:31:44,990 --> 00:31:47,890 2.9, 1.4, 36? 692 00:31:47,890 --> 00:31:48,840 Маршрутизаторите получите зает. 693 00:31:48,840 --> 00:31:50,420 И те ще получат претоварени, и подкрепени. 694 00:31:50,420 --> 00:31:53,200 Има хиляди хора по този кампус с помощта на интернет в момента. 695 00:31:53,200 --> 00:31:56,050 Има стотици хора в тази стая с помощта на интернет в момента. 696 00:31:56,050 --> 00:31:59,030 >> И така, какво се случва, е, че маршрутизатори може да се претоварени. 697 00:31:59,030 --> 00:32:01,350 И така, онези времена мощ колебаят малко. 698 00:32:01,350 --> 00:32:04,620 Така че това е защо те не го правят задължително увеличи прямо. 699 00:32:04,620 --> 00:32:07,510 >> Но нещата стават вид Интересно в етап четири. 700 00:32:07,510 --> 00:32:13,040 Очевидно между Yale и Четвърта стъпка е друг хоп. 701 00:32:13,040 --> 00:32:16,480 А там, където е рутера в стъпка четири вероятно? 702 00:32:16,480 --> 00:32:17,410 >> АУДИТОРИЯ: [недоловим] 703 00:32:17,410 --> 00:32:19,410 >> DAVID J. Malan: JFK може би, може би на летището. 704 00:32:19,410 --> 00:32:21,950 Но по някаква причина, системни администратори, така че 705 00:32:21,950 --> 00:32:24,140 отрепки, които работят за сървъри години са наречени рутери 706 00:32:24,140 --> 00:32:25,600 след най-близкото летище кода. 707 00:32:25,600 --> 00:32:27,420 Така JFK вероятно означава, това е просто някъде 708 00:32:27,420 --> 00:32:29,970 в Ню Йорк, може би в Манхатън или на един от кварталите. 709 00:32:29,970 --> 00:32:34,460 nyc2 означава, вероятно, друга рутер, който е някъде в Ню Йорк. 710 00:32:34,460 --> 00:32:37,140 >> Аз съвсем не знам къде ред шест е тук, рутер номер шест. 711 00:32:37,140 --> 00:32:40,110 quest.net голям ISP, доставчик на интернет услуги, 712 00:32:40,110 --> 00:32:43,240 която осигурява интернет свързаност до големи места като Yale и др. 713 00:32:43,240 --> 00:32:47,110 И тогава тази последна една, тя Изглежда, че MIT дори не 714 00:32:47,110 --> 00:32:50,180 имат собствен сайт в Кеймбридж е задължително, 715 00:32:50,180 --> 00:32:52,090 а по-скоро те имат аутсорсинг сайта им, 716 00:32:52,090 --> 00:32:55,150 или най-малко на физическите сървъри, на компания, наречена Akamai. 717 00:32:55,150 --> 00:32:57,940 И Akamai всъщност е чак по пътя от MIT в Кеймбридж 718 00:32:57,940 --> 00:32:58,790 Оказва се. 719 00:32:58,790 --> 00:33:02,360 >> Но осъзнаем също, че дори мисълта започваш да www.mit.edu, 720 00:33:02,360 --> 00:33:05,200 ние наистина може да бъде изпратен навсякъде по света. 721 00:33:05,200 --> 00:33:06,960 >> И нека да видим някъде другаде по света. 722 00:33:06,960 --> 00:33:09,240 Нека да вървим напред и да изчистите този екран и вместо 723 00:33:09,240 --> 00:33:15,240 проследи маршрута, само веднъж, така че запитване един, за да www.cnn.co.jp, 724 00:33:15,240 --> 00:33:18,390 Японската началната страница за CNN, новинарския сайт. 725 00:33:18,390 --> 00:33:20,660 И ако аз удари Въведете сега, нека да видим какво ще стане. 726 00:33:20,660 --> 00:33:23,610 Ние отново започвайки arubacentral. 727 00:33:23,610 --> 00:33:26,510 Ние след това отидете на безименен рутер, още няколко. 728 00:33:26,510 --> 00:33:29,527 Така тя взе 12 хмел да стигнем до Япония и този път. 729 00:33:29,527 --> 00:33:30,860 И нека да видим какво можем да събере. 730 00:33:30,860 --> 00:33:32,450 >> Така че същата хоп, хоп и съща. 731 00:33:32,450 --> 00:33:35,170 Малко по-различен сега. 732 00:33:35,170 --> 00:33:36,380 Това е една интересна. 733 00:33:36,380 --> 00:33:40,870 Така че аз съм се познае тук, stamford1 е няколко градове далеч в Кънектикът също. 734 00:33:40,870 --> 00:33:43,810 Тези рутери в ред шест и седем не разполагат имена. 735 00:33:43,810 --> 00:33:46,370 Но това е нещо невероятно. 736 00:33:46,370 --> 00:33:53,310 >> Така че това, което изглежда да бъде между изходното рутери в етап седми и осми? 737 00:33:53,310 --> 00:33:54,760 И защо казваш толкова? 738 00:33:54,760 --> 00:33:55,260 Да? 739 00:33:55,260 --> 00:33:56,060 >> АУДИТОРИЯ: Ocean. 740 00:33:56,060 --> 00:33:57,640 >> DAVID J. Malan: Вероятно океан. 741 00:33:57,640 --> 00:34:01,366 Ние знаем, че е вярно харесват, интуитивно, нали? 742 00:34:01,366 --> 00:34:04,790 Но можем да потвърдим, колкото натура на нещо като емпирично защо? 743 00:34:04,790 --> 00:34:06,860 Какво се е променило между редове седем и осем? 744 00:34:06,860 --> 00:34:09,429 745 00:34:09,429 --> 00:34:14,739 >> Отне много повече време, за да отидете на каквото и този безименен рутер седем е, 746 00:34:14,739 --> 00:34:18,670 Вероятно някъде в континенталния САЩ, за да се засили осем, 747 00:34:18,670 --> 00:34:22,639 което вероятно е някъде в Япония въз основа на името на домейна на .jp там. 748 00:34:22,639 --> 00:34:25,719 И така, тези, които допълнително Сто нещо милисекунди 749 00:34:25,719 --> 00:34:28,960 или 90, или така е милисекунди в резултат на нашите данни става 750 00:34:28,960 --> 00:34:31,100 в продължение на доста голям воден басейн. 751 00:34:31,100 --> 00:34:34,570 >> Сега любопитно, изглежда, че може би че кабел отива в целия САЩ. 752 00:34:34,570 --> 00:34:37,070 Ако ние всъщност става над Западното крайбрежие за да стигнем до Япония, 753 00:34:37,070 --> 00:34:39,111 това е вид на дългия път ако отидем в другата посока. 754 00:34:39,111 --> 00:34:41,400 Така че това не е съвсем ясно какво се случва физически. 755 00:34:41,400 --> 00:34:43,830 Но фактът, че всеки допълнителна хоп наистина 756 00:34:43,830 --> 00:34:46,020 отне значително по-дълго от всеки друг, това е 757 00:34:46,020 --> 00:34:50,440 доста добро потвърждение, че Си Ен Ен Японски уеб сървър е може би наистина 758 00:34:50,440 --> 00:34:51,310 в Япония. 759 00:34:51,310 --> 00:34:54,089 И това е със сигурност по-далеч далеч от MIT е било. 760 00:34:54,089 --> 00:34:56,380 И това е да се отбележи също, данните ви не е задължително 761 00:34:56,380 --> 00:34:58,794 ще пътуват по възможно най-кратки разстояния. 762 00:34:58,794 --> 00:35:00,960 В действителност, ако си поиграете със следи маршрут у дома 763 00:35:00,960 --> 00:35:04,170 просто бране на произволни сайтове, вие може да откриете, че само за да изпрати съобщение 764 00:35:04,170 --> 00:35:06,490 или да посетите даден уебсайт това е тук, в Ню Хейвън, 765 00:35:06,490 --> 00:35:09,200 понякога данните си мощ първа направите отклонение, слизат в DC, 766 00:35:09,200 --> 00:35:10,450 и след това се върна до. 767 00:35:10,450 --> 00:35:12,860 И това е само заради динамични решения за маршрутизация 768 00:35:12,860 --> 00:35:14,650 че тези компютри са прави. 769 00:35:14,650 --> 00:35:18,930 >> Сега просто за удоволствие, екипът на продукцията почиства един от тези клипове за нас 770 00:35:18,930 --> 00:35:20,807 просто да бъде малко по-стегнато. 771 00:35:20,807 --> 00:35:23,640 Но, за да ни даде бърз смисъл here-- и ние можем да оставим светлините on-- 772 00:35:23,640 --> 00:35:32,363 че да колко точно е окабеляване действително извършване на всички наши данни. 773 00:35:32,363 --> 00:35:33,029 [Възпроизвеждане на видео] 774 00:35:33,029 --> 00:35:36,023 [За възпроизвеждане на музика] 775 00:35:36,023 --> 00:36:31,911 776 00:36:31,911 --> 00:36:32,777 [END PLAYBACK] 777 00:36:32,777 --> 00:36:35,860 DAVID J. Malan: Всички мрежови видео има готино звучене музика очевидно. 778 00:36:35,860 --> 00:36:38,084 Така че това е, за да се получи само на усещане за това колко много има 779 00:36:38,084 --> 00:36:39,500 продължава под предния капак. 780 00:36:39,500 --> 00:36:41,355 >> Но нека погледнем по- малко по-ниско ниво в момента 781 00:36:41,355 --> 00:36:44,150 при какви данни е всъщност преминаващи тези линии, 782 00:36:44,150 --> 00:36:46,720 и дори ще безжично в една стая като тази. 783 00:36:46,720 --> 00:36:49,580 >> Така се оказва, когато поиска уеб страница, или да изпратите електронна поща, 784 00:36:49,580 --> 00:36:53,670 или получаване на дадена уеб страница, или на електронна поща, или а Gchat съобщение или съобщение във фейсбук 785 00:36:53,670 --> 00:36:57,800 или други подобни, които не е само един голяма част от бита, вливащи безжично 786 00:36:57,800 --> 00:37:00,600 чрез въздуха или в електронен вид на тел. 787 00:37:00,600 --> 00:37:03,680 По-скоро, това искане или отговор е като цяло 788 00:37:03,680 --> 00:37:05,810 chunked на отделни парчета. 789 00:37:05,810 --> 00:37:08,880 >> Така че, с други думи, когато имат поиска да се направи на друг компютър, 790 00:37:08,880 --> 00:37:10,980 или можете да се върнем отговор от друга computer-- 791 00:37:10,980 --> 00:37:15,800 като предположим, например, ако unfamiliar-- като твърде много хора 792 00:37:15,800 --> 00:37:18,400 изглежда да е тези days-- ако не са запознати с this-- 793 00:37:18,400 --> 00:37:20,200 Не това fellow-- този човек. 794 00:37:20,200 --> 00:37:23,950 Така че предполагам, че това е послание, че Искам да изпратя на някого в гърба. 795 00:37:23,950 --> 00:37:28,930 Кой е в много назад бих искал да получаване на снимка на Рик Астли днес? 796 00:37:28,930 --> 00:37:29,805 OK, как се казваш? 797 00:37:29,805 --> 00:37:30,590 >> АУДИТОРИЯ: Cole. 798 00:37:30,590 --> 00:37:31,306 >> DAVID J. Malan: Какво е това? 799 00:37:31,306 --> 00:37:31,672 >> АУДИТОРИЯ: Cole. 800 00:37:31,672 --> 00:37:32,040 >> DAVID J. Malan: Holt? 801 00:37:32,040 --> 00:37:32,540 Н-О? 802 00:37:32,540 --> 00:37:33,711 АУДИТОРИЯ: C-O-L-E. 803 00:37:33,711 --> 00:37:34,960 DAVID J. Malan: C-O-L-E, Коул. 804 00:37:34,960 --> 00:37:35,520 Извинете. 805 00:37:35,520 --> 00:37:36,430 C-O-L-E. 806 00:37:36,430 --> 00:37:36,930 Всичко е наред. 807 00:37:36,930 --> 00:37:40,990 Така че, ако искате да изпратите този Cole представям тук, вие знаете това 808 00:37:40,990 --> 00:37:42,410 е нещо като голяма картина, нали? 809 00:37:42,410 --> 00:37:44,472 Това може да бъде няколко килобайта, няколко мегабайта, 810 00:37:44,472 --> 00:37:45,930 особено ако тя е с висока разделителна способност. 811 00:37:45,930 --> 00:37:48,660 И аз наистина не искам да спирам всички останали да използват интернет 812 00:37:48,660 --> 00:37:50,680 Просто докато изпратя това наистина голяма, високо качество на картината 813 00:37:50,680 --> 00:37:52,138 на Рик Астли в цялата стая. 814 00:37:52,138 --> 00:37:55,310 Бих искал вашите данни, за да продължат да прекосяват мрежа и Wi-Fi 815 00:37:55,310 --> 00:37:56,100 както добре. 816 00:37:56,100 --> 00:38:00,100 >> И така се прави sense-- и това е възстановим по електронен път, 817 00:38:00,100 --> 00:38:01,780 не толкова в реалния свят. 818 00:38:01,780 --> 00:38:04,904 Всъщност, това ще има множествена значения, ако сте приели ми аудио изход. 819 00:38:04,904 --> 00:38:08,360 Така че, ако се скъса тази в на половина като този тук, 820 00:38:08,360 --> 00:38:11,912 това вече могат да пътуват по интернет по-ефективно, 821 00:38:11,912 --> 00:38:13,120 защото това е по-малка бройка. 822 00:38:13,120 --> 00:38:16,780 Така е и с по-ниска вероятност върви за да се сблъскат с трафика на някой друг 823 00:38:16,780 --> 00:38:17,650 в интернет. 824 00:38:17,650 --> 00:38:21,240 >> И така, това, което наистина прави вашия компютър когато искате да изпратите съобщение до Cole 825 00:38:21,240 --> 00:38:24,917 е то Хапки до подобно съобщение в по-малки парчета, фрагменти така да се каже. 826 00:38:24,917 --> 00:38:28,000 И тогава той ги поставя във вътрешността на това, което ние ще се обадя вид виртуални пликове. 827 00:38:28,000 --> 00:38:29,620 >> Така че аз имам четири хартиени пликове тук. 828 00:38:29,620 --> 00:38:32,690 И аз съм ги предварително номерирани, един, два, три и четири. 829 00:38:32,690 --> 00:38:35,800 И това, което аз ще направя на предната от това, просто като нормална поща, 830 00:38:35,800 --> 00:38:38,000 е Отивам да постави там Името на Коул. 831 00:38:38,000 --> 00:38:41,270 И тогава най-отгоре, аз съм ще постави там името ми, 832 00:38:41,270 --> 00:38:44,995 Давид, така че първият такъв пакет Пращам там в интернет 833 00:38:44,995 --> 00:38:47,620 изглежда малко нещо като това, характерните особености 834 00:38:47,620 --> 00:38:50,830 от които са, че има да се справи, а от адрес, 835 00:38:50,830 --> 00:38:52,670 и също число, така че че това се надяваме, 836 00:38:52,670 --> 00:38:55,680 е достатъчно информация за Коул да реконструира това съобщение. 837 00:38:55,680 --> 00:38:58,820 >> Така че нека да направим същото и тук, същото тук, а и тук, 838 00:38:58,820 --> 00:39:01,310 написването името му в Полето До всички тях. 839 00:39:01,310 --> 00:39:04,240 И след това да вървим напред и да сложи тези снимки вътре. 840 00:39:04,240 --> 00:39:06,540 >> Така че тук е един пакет че е готов да отиде. 841 00:39:06,540 --> 00:39:09,780 Ето още един пакет че е готов да отиде. 842 00:39:09,780 --> 00:39:14,100 Ето една трета пакети че е готов да отиде. 843 00:39:14,100 --> 00:39:16,870 И тук е четвърти пакет, който е готов да отиде. 844 00:39:16,870 --> 00:39:19,849 >> И сега това, което е интересно за как интернет в реалност произведения 845 00:39:19,849 --> 00:39:22,140 е, че въпреки че имам четири пакети, в които 846 00:39:22,140 --> 00:39:24,730 са предназначени за едни и същи населено място, те не са непременно 847 00:39:24,730 --> 00:39:26,870 ще преминават по същия маршрут. 848 00:39:26,870 --> 00:39:32,070 И така, въпреки че мога да предам тези Пакети до най-близкия рутера 849 00:39:32,070 --> 00:39:36,660 да речем, ако искате да ги изпрати във всички посоки, да видим 850 00:39:36,660 --> 00:39:40,706 какво всъщност се случва, целта на която е да ги получите в крайна сметка да Коул. 851 00:39:40,706 --> 00:39:44,850 852 00:39:44,850 --> 00:39:48,770 И наистина, те вече не са непременно като една и съща посока. 853 00:39:48,770 --> 00:39:50,510 И това е добре. 854 00:39:50,510 --> 00:39:52,480 Това е малко странно и Опра стил днес. 855 00:39:52,480 --> 00:39:56,540 >> И сега ме пусна нарочно вземе, че един гол. 856 00:39:56,540 --> 00:40:00,196 И сега Cole, ако искате да сглоби го възможно най-добре. 857 00:40:00,196 --> 00:40:06,610 858 00:40:06,610 --> 00:40:10,180 Разбира се, всички ние можем да предполагам какво заключението, тук ще бъде. 859 00:40:10,180 --> 00:40:12,600 Вие ще имате 3/4 от Рик Астли в един момент. 860 00:40:12,600 --> 00:40:15,920 861 00:40:15,920 --> 00:40:19,291 И това, което все пак е най- Отражение на това? 862 00:40:19,291 --> 00:40:20,540 Искаш ли да се опитам да го държат? 863 00:40:20,540 --> 00:40:23,540 Ние имаме една камера посочи към вас, ако искате 864 00:40:23,540 --> 00:40:26,226 да позира с Рик Астли тук. 865 00:40:26,226 --> 00:40:28,610 866 00:40:28,610 --> 00:40:29,510 Ето. 867 00:40:29,510 --> 00:40:30,410 Lovely. 868 00:40:30,410 --> 00:40:33,230 >> Но ти изглежда да липсва фрагмент от Рик Астли. 869 00:40:33,230 --> 00:40:37,015 Така се оказва, че интернет Обикновено се задвижва от не само IP, 870 00:40:37,015 --> 00:40:39,890 но в действителност ние чухме в самото започваща на лекция в тази video-- 871 00:40:39,890 --> 00:40:42,473 и вероятно сте виждали това акроним повече often-- това, което наистина 872 00:40:42,473 --> 00:40:44,360 е протокол сте склонни да чуят за? 873 00:40:44,360 --> 00:40:45,120 >> АУДИТОРИЯ: TCP / IP. 874 00:40:45,120 --> 00:40:48,090 >> DAVID J. Malan: TCP / IP, който е само комбинация 875 00:40:48,090 --> 00:40:49,940 на два протокола, наречен един IP. 876 00:40:49,940 --> 00:40:52,640 Което пак е само на снимачната площадка на конвенции, по която ние 877 00:40:52,640 --> 00:40:54,740 адрес всеки компютър в интернет. 878 00:40:54,740 --> 00:40:56,930 И тогава TCP, които служи друга цел. 879 00:40:56,930 --> 00:41:00,110 >> TCP е протокол, който обикновено се използва във връзка 880 00:41:00,110 --> 00:41:04,410 с IP, че сред другите неща, доставка гаранции. 881 00:41:04,410 --> 00:41:08,860 В действителност, TCP е протокол, който ще забележите, че един от пакетите 882 00:41:08,860 --> 00:41:10,930 очевидно не се получи да Cole, защото той изглежда 883 00:41:10,930 --> 00:41:12,830 да липсва номер четири от четири. 884 00:41:12,830 --> 00:41:16,530 И какво от това TCP, протокол прави, е да го казва Коул, 885 00:41:16,530 --> 00:41:19,850 хей Cole, ако получават само три от четирите пакети, 886 00:41:19,850 --> 00:41:22,600 ми, които ви кажа една са изчезнали, по същество, 887 00:41:22,600 --> 00:41:25,570 и след това моята цел в живота трябва да бъде за препредаване това. 888 00:41:25,570 --> 00:41:28,580 >> И така, ако аз също, на подател, използвайки TCP се, 889 00:41:28,580 --> 00:41:31,810 Тогава аз трябва да създадете нов packet-- Не е ли това една сбръчкана here-- 890 00:41:31,810 --> 00:41:35,980 препредава само тази част от го, така че в крайна сметка е Cole 891 00:41:35,980 --> 00:41:38,280 пълен сувенир, ако не друго. 892 00:41:38,280 --> 00:41:43,000 Но, така че в крайна сметка данните всъщност стигне до правилното й място. 893 00:41:43,000 --> 00:41:48,020 >> Но за съжаление, пишете името на Коул на предната не е достатъчно само по себе си. 894 00:41:48,020 --> 00:41:50,270 И наистина, аз не бих написал Името на Коул, но най-вероятно 895 00:41:50,270 --> 00:41:51,655 IP адреса си върху плика. 896 00:41:51,655 --> 00:41:52,780 И аз не бих написал Дейвид. 897 00:41:52,780 --> 00:41:56,550 Бих си напиша IP адрес върху плика така, че компютрите могат действително 898 00:41:56,550 --> 00:41:57,999 общуват назад и напред. 899 00:41:57,999 --> 00:42:00,540 Но се оказва, че компютрите може да направи повече от начин обслужват 900 00:42:00,540 --> 00:42:01,900 снимки на Рик Астли. 901 00:42:01,900 --> 00:42:05,340 Те могат също така да изпрати отново и получавате имейли, чат съобщения. 902 00:42:05,340 --> 00:42:09,780 Те могат да направят неща, като прехвърлянето на файлове, и всякакъв брой други инструменти 903 00:42:09,780 --> 00:42:12,330 използвате в интернет, сървъри могат да направят тези дни. 904 00:42:12,330 --> 00:42:15,300 >> И само защото една компания, или училище, или лице, 905 00:42:15,300 --> 00:42:19,420 иска да има уеб сървър, както и сървър за електронна поща и чат сървър, 906 00:42:19,420 --> 00:42:21,420 не означава, че трябва три компютъра. 907 00:42:21,420 --> 00:42:26,200 Можете да имате само един компютър с множество услуги, така да се каже. 908 00:42:26,200 --> 00:42:29,190 >> И така, когато Коул получава подобно съобщение, как 909 00:42:29,190 --> 00:42:32,940 няма компютъра си знам дали да показват, че картината в браузъра си, 910 00:42:32,940 --> 00:42:37,730 или в Gchat, или в Facebook Messenger, или в произволен брой други инструменти? 911 00:42:37,730 --> 00:42:40,430 >> Така се оказва, че също така и върху като плик е допълнително парче 912 00:42:40,430 --> 00:42:43,070 на информация, известна като номер на порт. 913 00:42:43,070 --> 00:42:45,240 И номер на порт е само няколко наистина, 914 00:42:45,240 --> 00:42:48,342 но това не еднозначно идентифицира компютъра, но услугата. 915 00:42:48,342 --> 00:42:49,550 А има и букети от тях. 916 00:42:49,550 --> 00:42:51,258 Така се оказва, че в света, хората 917 00:42:51,258 --> 00:42:57,095 решили на няколко такива конвенции, някои от които са следните. 918 00:42:57,095 --> 00:42:59,220 Така че има нещо, наречено File Transfer Protocol. 919 00:42:59,220 --> 00:42:59,870 Това е доста дата. 920 00:42:59,870 --> 00:43:00,970 Това е напълно несигурно. 921 00:43:00,970 --> 00:43:02,320 Много хора все още го използвате. 922 00:43:02,320 --> 00:43:04,240 И той използва номер на порт 21. 923 00:43:04,240 --> 00:43:07,250 С други думи, ако изпращане на файл чрез FTP, 924 00:43:07,250 --> 00:43:10,570 плика ще има не само изпращач и IP адреса на получателя, 925 00:43:10,570 --> 00:43:14,020 Тя ще разполага броя 21, така че получаващия компютър знае ох, това 926 00:43:14,020 --> 00:43:17,280 Следва информация за файла, а не имейл или на чат съобщение. 927 00:43:17,280 --> 00:43:19,016 >> 25 е SMTP. 928 00:43:19,016 --> 00:43:20,516 Колко от вас, които някога използва SMTP? 929 00:43:20,516 --> 00:43:22,850 930 00:43:22,850 --> 00:43:23,380 Wrong. 931 00:43:23,380 --> 00:43:24,490 Почти всички, които имате. 932 00:43:24,490 --> 00:43:28,730 Ако някога сте се използва електронна поща, сте използвали SMTP, прост протокол за предаване на поща, 933 00:43:28,730 --> 00:43:32,300 която е само на луксозен начин на казвайки, това е вида на компютъра или услуга 934 00:43:32,300 --> 00:43:34,600 който ви изпраща имейл изходящи. 935 00:43:34,600 --> 00:43:38,780 >> И ако някога сте виждали акроними като POP, IMAP или, а има и няколко други, 936 00:43:38,780 --> 00:43:40,670 са тези, за получаване на имейл, обикновено. 937 00:43:40,670 --> 00:43:42,650 Това просто означава, че е различна услуга. 938 00:43:42,650 --> 00:43:45,850 Това е софтуер, който някой пише, че изпраща или слуша 939 00:43:45,850 --> 00:43:48,880 по конкретен номер на порт, така че че да не се обърка имейли 940 00:43:48,880 --> 00:43:50,360 с някакъв друг тип информация. 941 00:43:50,360 --> 00:43:55,500 >> Сега в интернет е HTTP, което е номер 80, а също и порт 443. 942 00:43:55,500 --> 00:43:57,590 И в действителност, въпреки че Ние, хората, за щастие 943 00:43:57,590 --> 00:43:59,610 не е нужно да направите това, всеки път, когато посещавате 944 00:43:59,610 --> 00:44:05,810 уебсайт, като http://www.yale.edu, браузърът 945 00:44:05,810 --> 00:44:07,790 е просто е вид полезна с това, че това е 946 00:44:07,790 --> 00:44:10,970 ако приемем, че искате цифров порт 80. 947 00:44:10,970 --> 00:44:15,710 Ние вече знаем, че DNS мога да разбера какво IP адрес е на www.yale.edu. 948 00:44:15,710 --> 00:44:17,970 Но компютърът е само Ще се направи извод, че 949 00:44:17,970 --> 00:44:21,560 Искам порт 80, защото сте с помощта Chrome, или IE, или някакъв друг браузър. 950 00:44:21,560 --> 00:44:24,930 Но бих могъл да направя технически дебелото черво 80. 951 00:44:24,930 --> 00:44:28,520 И след това мога да кажа изрично браузъра си, изпрати пакет или повече 952 00:44:28,520 --> 00:44:32,080 на информация на www.yale.edu молещата днешната начална страница. 953 00:44:32,080 --> 00:44:36,070 Но конкретно адрес тя да Йейл IP на порт 80 954 00:44:36,070 --> 00:44:39,190 така че аз всъщност става дума резервно уеб сървър Йейл. 955 00:44:39,190 --> 00:44:42,229 >> Сега тя веднага изчезва защото само браузъри 956 00:44:42,229 --> 00:44:44,020 да реши, че не го правим Трябва да обърка хората 957 00:44:44,020 --> 00:44:46,810 от с още по-тайнствена информация, като дебелото черво 80. 958 00:44:46,810 --> 00:44:50,640 И честно казано, браузъри като Chrome дори не 959 00:44:50,640 --> 00:44:55,464 покажа HTTP вече, или дебелото черво, или наклонена черта черта, или наклонена черта, 960 00:44:55,464 --> 00:44:58,380 в известен смисъл, защото те се опитват за да направим нещата по-прости за потребителите. 961 00:44:58,380 --> 00:45:01,080 В друг смисъл, това е просто вид на потребителски опит thing-- 962 00:45:01,080 --> 00:45:02,720 нека да се отървете от някои от най-елементарно. 963 00:45:02,720 --> 00:45:05,405 Но това крие някои от тези основни детайли. 964 00:45:05,405 --> 00:45:09,360 >> И в действителност, никой от нас Вероятно някога написали HTTP вече. 965 00:45:09,360 --> 00:45:12,060 Можете само да въведете нещо като www.harvard.edu. 966 00:45:12,060 --> 00:45:15,310 И отново, Chrome заключава който искате HTTP. 967 00:45:15,310 --> 00:45:18,970 Но има и други протоколи че ние със сигурност може да използвате. 968 00:45:18,970 --> 00:45:24,480 >> Така че дадено всичко това, ако в момента на сортиране на пуснати на т.нар инженеринг шапка, 969 00:45:24,480 --> 00:45:27,417 как нещата наречените защитни стени работят? 970 00:45:27,417 --> 00:45:29,750 Значи вие сте най-вероятно като цяло запознат с защитната стена, 971 00:45:29,750 --> 00:45:30,990 не толкова във физическия смисъл на думата. 972 00:45:30,990 --> 00:45:32,470 Така през деня, и все още и до днес, 973 00:45:32,470 --> 00:45:35,430 ако имаш като стриптийз за молове Например, че има много магазини, 974 00:45:35,430 --> 00:45:38,500 обикновено стените между тях отделни складове или магазини 975 00:45:38,500 --> 00:45:43,180 са защитни стени в смисъл, че те имат специална изолация 976 00:45:43,180 --> 00:45:45,310 така че, ако пожар избухва в един магазин, 977 00:45:45,310 --> 00:45:48,210 то не е задължително разпространил в съседния магазин. 978 00:45:48,210 --> 00:45:51,710 >> Компютърния свят също има защитни стени че правя нещо по-различно. 979 00:45:51,710 --> 00:45:52,798 Какво означава огнено кълбо направя? 980 00:45:52,798 --> 00:45:53,298 Да? 981 00:45:53,298 --> 00:45:55,290 >> АУДИТОРИЯ: Основно отсякоха връзка 982 00:45:55,290 --> 00:45:59,493 ако те се сблъскват с нещо като, например, 983 00:45:59,493 --> 00:46:01,361 те имат редица лични изявления. 984 00:46:01,361 --> 00:46:04,340 И ако нещо се случи, те прекъсна връзката. 985 00:46:04,340 --> 00:46:07,570 Подобно, ако този зловреден [Недоловим] компютъра, or-- 986 00:46:07,570 --> 00:46:08,630 >> DAVID J. Malan: OK добро. 987 00:46:08,630 --> 00:46:11,220 Да, и в действителност сте дори ще малко по-нататък 988 00:46:11,220 --> 00:46:14,590 описва в нещо, което може да бъде наречена система за откриване на проникване, 989 00:46:14,590 --> 00:46:18,305 или IDS за кратко, с което сте всъщност имат правила, дефинирани. 990 00:46:18,305 --> 00:46:22,140 И ако не започват да се види подозрително поведение, когато се опитвате да се сложи край на това. 991 00:46:22,140 --> 00:46:24,250 >> И защитна стена, честно казано, при ниво на мрежи, 992 00:46:24,250 --> 00:46:26,821 е още по-тъп и по-лесно от това, като цяло. 993 00:46:26,821 --> 00:46:29,070 А има и различни видове на защитни системи в света. 994 00:46:29,070 --> 00:46:31,569 Но тези, които работят при нивото, за което говорим today-- 995 00:46:31,569 --> 00:46:35,330 IP и TCP-- работим още по-откровено. 996 00:46:35,330 --> 00:46:39,180 >> Например, ако сте били Yale система администратори, или Harvard система 997 00:46:39,180 --> 00:46:42,020 администратори, или някакъв Big Brother в някоя компания, 998 00:46:42,020 --> 00:46:45,040 и сте искали да предотврати всички ваши студенти или всичките си служители 999 00:46:45,040 --> 00:46:47,619 да ходят на facebook.com, всичко, което трябва да направите, 1000 00:46:47,619 --> 00:46:50,160 се уверете, че всички от техния мрежов трафик, на първо място, 1001 00:46:50,160 --> 00:46:51,850 преминава през специално устройство. 1002 00:46:51,850 --> 00:46:53,030 Нека го наречем защитна стена. 1003 00:46:53,030 --> 00:46:54,910 >> И това е добре, защото можете да направите вашия рутер 1004 00:46:54,910 --> 00:46:57,618 едно и също нещо като защитна стена, ако сложите един и същ вид софтуер 1005 00:46:57,618 --> 00:46:58,940 на същата машина. 1006 00:46:58,940 --> 00:47:01,780 Така че, ако всичките си студенти или служители на трафика 1007 00:47:01,780 --> 00:47:04,450 преживява това централна защитна стена, как 1008 00:47:04,450 --> 00:47:08,540 ще блокираме хора от излизането да facebook.com, например? 1009 00:47:08,540 --> 00:47:10,780 Какво би системата администратор трябва да направя? 1010 00:47:10,780 --> 00:47:11,370 Някой друг? 1011 00:47:11,370 --> 00:47:12,911 Нека се опитаме да обикалят. 1012 00:47:12,911 --> 00:47:15,074 >> АУДИТОРИЯ: [недоловим] 1013 00:47:15,074 --> 00:47:16,365 DAVID J. Malan: Кажи, че отново? 1014 00:47:16,365 --> 00:47:19,215 АУДИТОРИЯ: Трябва просто да се хванати вътре в системата. 1015 00:47:19,215 --> 00:47:22,487 Така че просто сложи Facebook в 127.0.0-- 1016 00:47:22,487 --> 00:47:23,820 DAVID J. Malan: О, интересно. 1017 00:47:23,820 --> 00:47:27,290 Така че всъщност можете да след това хакнете вашия DNS системата. 1018 00:47:27,290 --> 00:47:31,180 Това наистина е един начин бихте могли да направите това при което всяко време студент Yale дърпа 1019 00:47:31,180 --> 00:47:34,670 до www.facebook.com, всички от нас тук днес на територията на колежа 1020 00:47:34,670 --> 00:47:38,590 използвате Йейл DNS сървър, защото DHCP сървър Йейл ни даде 1021 00:47:38,590 --> 00:47:39,580 този адрес. 1022 00:47:39,580 --> 00:47:42,490 Така че да, бихте могли вид пробие неща или конвенция почивка 1023 00:47:42,490 --> 00:47:49,190 от просто казвам, да, адрес facebook.com е фалшив, 1024 00:47:49,190 --> 00:47:52,530 е 1.2.3.4, което е всъщност не легитимно. 1025 00:47:52,530 --> 00:47:53,930 Или може би това е 278. 1026 00:47:53,930 --> 00:47:57,460 каквото и да е в TV Покажи по- Преди време, така че никой от нас 1027 00:47:57,460 --> 00:47:59,176 всъщност може да посетите facebook.com. 1028 00:47:59,176 --> 00:48:00,590 >> Така че предполагам, Yale върши това. 1029 00:48:00,590 --> 00:48:03,336 Да предположим, Yale искал да запази Ти да не facebook.com. 1030 00:48:03,336 --> 00:48:05,700 Затова, те DNS променили настройките на 1031 00:48:05,700 --> 00:48:08,812 да ви дам един фалшив IP адрес за facebook.com. 1032 00:48:08,812 --> 00:48:10,616 Как ще отговорите? 1033 00:48:10,616 --> 00:48:12,990 Технически, not-- о, сега всеки иска да участва. 1034 00:48:12,990 --> 00:48:13,490 OK, да. 1035 00:48:13,490 --> 00:48:16,190 АУДИТОРИЯ: Можете само да въведете в действителната IP адрес на Facebook. 1036 00:48:16,190 --> 00:48:16,710 >> DAVID J. Malan: OK, добре. 1037 00:48:16,710 --> 00:48:19,350 Така че бихме могли просто да напишете в действителната IP адрес на Facebook, 1038 00:48:19,350 --> 00:48:21,090 много, както направих аз с уебсайт Йейл. 1039 00:48:21,090 --> 00:48:24,636 И ако на Facebook сървърът е конфигуриран в подкрепа на това, тя наистина трябва да работим. 1040 00:48:24,636 --> 00:48:26,510 Това е незначителна болка в шията, защото сега ние 1041 00:48:26,510 --> 00:48:30,220 Трябва да се помни, някои случайни 32-битова стойност, но които биха могли да работят. 1042 00:48:30,220 --> 00:48:31,622 Какво друго може да направите? 1043 00:48:31,622 --> 00:48:32,121 Да. 1044 00:48:32,121 --> 00:48:35,117 >> АУДИТОРИЯ: Вие може да се промени тези настройки [недоловим]. 1045 00:48:35,117 --> 00:48:37,700 DAVID J. Malan: Да, бихте могли дори и промяна на настройките на DNS. 1046 00:48:37,700 --> 00:48:40,480 Така че в действителност това е действително доста полезно, честно казано, 1047 00:48:40,480 --> 00:48:45,590 ако сте в дадено летище, или ако вие сте в едно кафе, или нещо, което 1048 00:48:45,590 --> 00:48:48,834 има несъвършена интернет, при която понякога на DNS сървъра просто спира да работи. 1049 00:48:48,834 --> 00:48:51,000 Така че дори и аз понякога правя това, не за злонамерен, I 1050 00:48:51,000 --> 00:48:52,750 искате да използвате Facebook цели, но наистина 1051 00:48:52,750 --> 00:48:56,344 защото изглежда да има мрежа връзка, но нищо не работи. 1052 00:48:56,344 --> 00:48:58,260 И така, един от първите, неща, които аз и ти try-- 1053 00:48:58,260 --> 00:49:01,710 да направите това на Windows too-- но на моя Mac, ако отида да Network. 1054 00:49:01,710 --> 00:49:03,330 И аз избирам моя Wi-Fi връзка. 1055 00:49:03,330 --> 00:49:04,750 И аз отивам да Advanced. 1056 00:49:04,750 --> 00:49:06,080 И аз отивам да DNS. 1057 00:49:06,080 --> 00:49:08,260 Това са тримата IP адреси, които Yale 1058 00:49:08,260 --> 00:49:10,290 е ми дава в продължение на три DNS сървъри. 1059 00:49:10,290 --> 00:49:14,110 Целта тогава е за мен да се опита всеки един от тях за решаване на адреси. 1060 00:49:14,110 --> 00:49:15,946 >> Но мога да замените те като направите един плюс. 1061 00:49:15,946 --> 00:49:18,333 И всеки, който иска да предложи DNS сървър? 1062 00:49:18,333 --> 00:49:19,120 >> АУДИТОРИЯ: 8.8.8.8? 1063 00:49:19,120 --> 00:49:20,578 >> DAVID J. Malan: О, ти си невероятна. 1064 00:49:20,578 --> 00:49:21,650 Да, 8.8.8.8. 1065 00:49:21,650 --> 00:49:26,170 Така Google, благослови сърцата им, купих IP адрес 8.8.8.8, 1066 00:49:26,170 --> 00:49:29,560 защото тя вид прилича Gs Вероятно и това е лесно за запомняне. 1067 00:49:29,560 --> 00:49:34,820 Но наистина, сега съм попълнил ми компютър, за да използвате DNS сървъра на Google. 1068 00:49:34,820 --> 00:49:38,050 >> Така че сега, ако отида да yale.edu, тя все още продължава да работи. 1069 00:49:38,050 --> 00:49:40,100 Но аз не съм с Йейл DNS сървърите вече. 1070 00:49:40,100 --> 00:49:44,430 И като отида да facebook.com, всички онези, погледнете прозорци 1071 00:49:44,430 --> 00:49:45,960 ще мине през Google. 1072 00:49:45,960 --> 00:49:49,120 >> Така че, от една страна, аз съм хитро заобикалят локалната система 1073 00:49:49,120 --> 00:49:51,810 Администраторите само по разбирането как работи в мрежа. 1074 00:49:51,810 --> 00:49:53,360 Но аз съм се плати цената. 1075 00:49:53,360 --> 00:49:54,740 Нищо не е безплатно. 1076 00:49:54,740 --> 00:49:56,096 Какво съм просто се отказали? 1077 00:49:56,096 --> 00:50:00,180 1078 00:50:00,180 --> 00:50:02,250 Какво съм просто се отказали? 1079 00:50:02,250 --> 00:50:06,090 Всички от вас, умни хора, които имат Използвам 8.8.8.8, защото това е готино 1080 00:50:06,090 --> 00:50:10,440 или решава проблеми, това, което имат си правил през цялото това време? 1081 00:50:10,440 --> 00:50:11,910 >> АУДИТОРИЯ: Пътуване по-далеч? 1082 00:50:11,910 --> 00:50:15,201 >> DAVID J. Malan: Може би пътуват по-далеч, защото на Google вероятно не чак толкова 1083 00:50:15,201 --> 00:50:16,770 близо сървъра надолу по улицата. 1084 00:50:16,770 --> 00:50:18,420 Но по-обезпокоително. 1085 00:50:18,420 --> 00:50:18,920 Да? 1086 00:50:18,920 --> 00:50:20,940 >> АУДИТОРИЯ: Така че сега Google знае къде отиваш. 1087 00:50:20,940 --> 00:50:23,856 >> DAVID J. Malan: Google знае буквално всеки уеб сайт, който посещавате, 1088 00:50:23,856 --> 00:50:26,080 защото вие сте буквално да ги пита, хей Google, 1089 00:50:26,080 --> 00:50:28,360 може да ви преведе yale.edu за мен? 1090 00:50:28,360 --> 00:50:32,430 Или ей Google, може да ви преведе този друг адрес на уебсайт за мен 1091 00:50:32,430 --> 00:50:33,334 в един IP адрес. 1092 00:50:33,334 --> 00:50:35,750 И така they're-- аз нямам представа за какво говориш. 1093 00:50:35,750 --> 00:50:38,080 И така, те знаят всичко за вас. 1094 00:50:38,080 --> 00:50:42,180 Така осъзнаят, че това е безплатна услуга с цел от тяхна гледна точка 1095 00:50:42,180 --> 00:50:42,680 както добре. 1096 00:50:42,680 --> 00:50:44,420 Но това със сигурност може да те измъкна от капан. 1097 00:50:44,420 --> 00:50:46,380 >> Сега, само за да разгледа една друга въпрос, който често идва 1098 00:50:46,380 --> 00:50:48,640 сред студентите, особено когато пътувате в чужбина 1099 00:50:48,640 --> 00:50:50,765 в някои страни като Китай, където има наистина 1100 00:50:50,765 --> 00:50:54,559 е Great Firewall на Китай, при който правителството там доста блокове 1101 00:50:54,559 --> 00:50:56,100 малко на движението на различни равнища. 1102 00:50:56,100 --> 00:50:58,141 Вие не трябва просто да блокиране на трафика на ниво 1103 00:50:58,141 --> 00:51:01,240 ние говорим тук, DNS или по друг начин, можете да го блокира на други нива. 1104 00:51:01,240 --> 00:51:04,030 >> И в действителност, само за да да е ясно, защитна стена 1105 00:51:04,030 --> 00:51:08,400 може да работи още по-просто, отколкото просто като системните администратори се променят 1106 00:51:08,400 --> 00:51:09,500 DNS настройки. 1107 00:51:09,500 --> 00:51:12,920 Защитната стена, устройство между ни и останалата част на света, 1108 00:51:12,920 --> 00:51:16,850 може просто да блокира всяко изходящо искания до IP адреса 1109 00:51:16,850 --> 00:51:21,240 за Facebook на порт 80, или ПР адрес за harvard.edu, 1110 00:51:21,240 --> 00:51:22,580 или ПР адрес на нищо. 1111 00:51:22,580 --> 00:51:26,280 Така защитна стена може да си погледнеш пликове "IP адреси и дори пристанище 1112 00:51:26,280 --> 00:51:29,384 числа, и ако искаха да Yale, тя може просто да спрете всички нас 1113 00:51:29,384 --> 00:51:32,550 от дори при използването на FTP вече, което би вероятно да бъде нещо добро, защото това 1114 00:51:32,550 --> 00:51:34,320 наистина е един несигурен протокол. 1115 00:51:34,320 --> 00:51:37,620 Yale дори може да ни спре от посещение на целостта на мрежата 1116 00:51:37,620 --> 00:51:42,632 Просто като блокира всички порт движението по брой 80, както добре. 1117 00:51:42,632 --> 00:51:43,840 Така, че може да е друг начин. 1118 00:51:43,840 --> 00:51:45,740 А има и още по-красиви начини, както добре. 1119 00:51:45,740 --> 00:51:47,770 >> Но когато сте на път в чужбина, например, 1120 00:51:47,770 --> 00:51:50,740 или ако сте в интернет кафе, или ако сте навсякъде, където има 1121 00:51:50,740 --> 00:51:53,179 блокажи или заплахи, какво можеш да направиш? 1122 00:51:53,179 --> 00:51:56,220 Е, ако отидете надолу по улицата, за да Starbucks или пътувате в дадено летище, 1123 00:51:56,220 --> 00:51:58,780 по принцип може просто хоп на Wi-Fi, като изберете 1124 00:51:58,780 --> 00:52:04,631 харесват, JFK Wi-Fi на LaGuardia Wi-Fi, или Logan Airport Wi-Fi, или какво не. 1125 00:52:04,631 --> 00:52:05,880 И това не е криптирана, нали? 1126 00:52:05,880 --> 00:52:06,949 Няма по-икона на катинар. 1127 00:52:06,949 --> 00:52:09,490 И най-вероятно не бъдете подканени за потребителско име и парола. 1128 00:52:09,490 --> 00:52:11,240 Вие сте просто подканени с някаква глупава форма 1129 00:52:11,240 --> 00:52:15,260 да каже подобно, аз съм съгласен да я използва само за в продължение на 30 минути, или нещо подобно. 1130 00:52:15,260 --> 00:52:18,761 >> Но няма криптиране между вие и Starbucks Wi-Fi достъп 1131 00:52:18,761 --> 00:52:20,760 точка, нещата, с антените на стената. 1132 00:52:20,760 --> 00:52:24,840 Няма никакво криптиране между вас и Wi-Fi сигнали на летището. 1133 00:52:24,840 --> 00:52:29,060 >> И така е технически, че страховито лице седеше на няколко места надолу от вас 1134 00:52:29,060 --> 00:52:31,970 в Starbucks или на летището би могло да бъде, с правилния софтуер, 1135 00:52:31,970 --> 00:52:35,164 гледане на всички от вашата безжична трафик на неговия или нейния лаптоп. 1136 00:52:35,164 --> 00:52:37,080 Това не е толкова трудно да се сложите лаптопа в това, което е 1137 00:52:37,080 --> 00:52:39,880 наречено безразборни режим, които, както подсказва и името, 1138 00:52:39,880 --> 00:52:41,760 означава, че сте вид насипно състояние с правилата. 1139 00:52:41,760 --> 00:52:44,740 И тя просто слуша не само за трафик, предназначен за него, 1140 00:52:44,740 --> 00:52:47,700 но също така и на всички останали е трафик в обхват. 1141 00:52:47,700 --> 00:52:50,550 >> И по тази логика, може да видите всички пакети информация 1142 00:52:50,550 --> 00:52:51,360 , която получавате. 1143 00:52:51,360 --> 00:52:53,510 И ако тези пакети не са криптирани, вие 1144 00:52:53,510 --> 00:52:56,680 поставяме себе си на риск от вашите имейли, или вашите съобщения, 1145 00:52:56,680 --> 00:52:58,620 или нещо друго получаване изложени. 1146 00:52:58,620 --> 00:53:01,220 >> Така че, дори ако не сте в чужбина но ти си просто в Starbucks, 1147 00:53:01,220 --> 00:53:03,800 или сте на някакъв случаен човек Wi-Fi, който не е криптирана, 1148 00:53:03,800 --> 00:53:05,410 на VPN е нещо добро. 1149 00:53:05,410 --> 00:53:07,410 A VPN е виртуална частна мрежа. 1150 00:53:07,410 --> 00:53:09,480 И това е една технология която ви позволява да имате 1151 00:53:09,480 --> 00:53:14,560 криптирана, а бъркани connection-- любител от Цезар или Vigenere-- 1152 00:53:14,560 --> 00:53:17,420 между вашия лаптоп, или телефон, или вашия работен плот, 1153 00:53:17,420 --> 00:53:22,460 и на сървъра на друго място, като сървъра на територията на колежа Йейл. 1154 00:53:22,460 --> 00:53:25,840 >> И ако пътувате abroad-- и в действителност, това ви се струва в хотели 1155 00:53:25,840 --> 00:53:26,560 през цялото време. 1156 00:53:26,560 --> 00:53:28,580 И най-вече като се стремят компютърни специалисти 1157 00:53:28,580 --> 00:53:32,090 където вие може, като отрепки, искате да използвате пристанища, различни от 80, 1158 00:53:32,090 --> 00:53:35,770 и пристанища, различни от 443-- и Всъщност за проблем зададете шест, 1159 00:53:35,770 --> 00:53:39,280 ние ще се играе с множествена TCP портове само по choice-- много 1160 00:53:39,280 --> 00:53:42,940 на хотели и магазини, и мрежи просто блокира такива неща 1161 00:53:42,940 --> 00:53:45,970 защото те донякъде наивно, или невеж, просто мисля, 1162 00:53:45,970 --> 00:53:48,010 че никой не се нуждае от тези други пристанища. 1163 00:53:48,010 --> 00:53:51,150 >> И така, с помощта на VPN може да ви заобикалянето на тези видове ограничения, 1164 00:53:51,150 --> 00:53:54,050 защото това, което прави, е по-VPN той ви позволява в Starbucks, 1165 00:53:54,050 --> 00:53:58,630 или на летището, или навсякъде по света за да се свържете encryptedly да yale.edu, 1166 00:53:58,630 --> 00:54:02,950 до известна сървър тук на територията на колежа, и след тунела, така да се каже, 1167 00:54:02,950 --> 00:54:06,570 всичките си трафик от където и Ако сте през Йейл, в който момент 1168 00:54:06,570 --> 00:54:08,720 След това той отива при крайното си местоназначение. 1169 00:54:08,720 --> 00:54:11,150 >> Но като го криптиране, можете избегне всеки от следните видове 1170 00:54:11,150 --> 00:54:15,380 на филтри или налагането че някои локална мрежа е наложено. 1171 00:54:15,380 --> 00:54:17,980 И плюс, че имате много по-силен отбраната 1172 00:54:17,980 --> 00:54:19,730 срещу страховити хора около вас, които биха могли 1173 00:54:19,730 --> 00:54:21,300 се опитва да слушате на вашия трафик. 1174 00:54:21,300 --> 00:54:24,591 Все още може да бъде страховито хора тук обратно у дома в Йейл гледате вашия трафик 1175 00:54:24,591 --> 00:54:28,440 тъй като тя излиза от VPN, но най-малко сте избута заплахата по-далеч. 1176 00:54:28,440 --> 00:54:30,490 И това е и тук, пласирам. 1177 00:54:30,490 --> 00:54:33,645 >> Сега, разбира се, ако се намирате в Китай или дори в кафенето, 1178 00:54:33,645 --> 00:54:35,770 и сте тунелиране всички вашия трафик през Yale, 1179 00:54:35,770 --> 00:54:37,590 каква цена плащаме може би? 1180 00:54:37,590 --> 00:54:38,272 >> АУДИТОРИЯ: Speed. 1181 00:54:38,272 --> 00:54:39,480 DAVID J. Malan: Speed, нали? 1182 00:54:39,480 --> 00:54:41,430 Там трябва да е някаква математика или някои украшения, участващи 1183 00:54:41,430 --> 00:54:42,574 по отношение на реалното криптиране. 1184 00:54:42,574 --> 00:54:44,990 Може да има хиляди мили от разстояние или хиляди 1185 00:54:44,990 --> 00:54:47,250 на мили от кабели между вас и Йейл. 1186 00:54:47,250 --> 00:54:49,800 И това е много лошо, ако сте в Китай, например, 1187 00:54:49,800 --> 00:54:51,650 и искате да посетите един сайт в Китай. 1188 00:54:51,650 --> 00:54:54,230 И така, данните ви ще САЩ, а след това обратно в Китай 1189 00:54:54,230 --> 00:54:56,620 само защото сте криптиране то през този тунел. 1190 00:54:56,620 --> 00:54:59,960 >> Но тя решава техническия и да работят проблеми, така. 1191 00:54:59,960 --> 00:55:02,050 Но всичко се свежда до тези много прости идеи. 1192 00:55:02,050 --> 00:55:06,530 И Харвард, за тези, любопитно, има един, както и тук, в vpn.harvard.edu, 1193 00:55:06,530 --> 00:55:09,150 която работи точно като Йейл. 1194 00:55:09,150 --> 00:55:12,580 >> Така е и с всичко, което каза, защо Полезно е цялата тази мрежа? 1195 00:55:12,580 --> 00:55:14,080 И какво можем да започнем да правим с него? 1196 00:55:14,080 --> 00:55:15,630 Ами, нека да направим това сега е по-реална. 1197 00:55:15,630 --> 00:55:17,610 Това е съкращение с които повечето от нас 1198 00:55:17,610 --> 00:55:22,140 вероятно са супер familiar-- HTTP-- което е съкращение от хипер трансфер на текст 1199 00:55:22,140 --> 00:55:22,950 протокол. 1200 00:55:22,950 --> 00:55:26,460 И това просто означава, че това е езика, протоколът 1201 00:55:26,460 --> 00:55:29,140 че уеб браузъри и уеб сървър говорят. 1202 00:55:29,140 --> 00:55:31,437 >> The P в HTTP е наистина протокол. 1203 00:55:31,437 --> 00:55:33,270 А протокол е само набор от конвенции. 1204 00:55:33,270 --> 00:55:36,690 Виждали сме IP-- интернет protocol-- TCP-- за контрол на предаването 1205 00:55:36,690 --> 00:55:38,290 protocol-- и HTTP. 1206 00:55:38,290 --> 00:55:40,570 Но какво е това глупаво нещо на протокол? 1207 00:55:40,570 --> 00:55:41,930 Това е просто набор от конвенции. 1208 00:55:41,930 --> 00:55:43,760 >> Така че, ако аз нещо като слезе тук, и искам да ви поздравя. 1209 00:55:43,760 --> 00:55:44,930 Бих казал, здрасти, моето име е Дейвид. 1210 00:55:44,930 --> 00:55:45,600 >> АУДИТОРИЯ: Luis. 1211 00:55:45,600 --> 00:55:46,475 >> DAVID J. Malan: Luis. 1212 00:55:46,475 --> 00:55:49,360 Ние имаме тази глупава човешка конвенция на ръкува тук. 1213 00:55:49,360 --> 00:55:50,570 Но това е протокол, нали? 1214 00:55:50,570 --> 00:55:51,470 I удължава ръката ми. 1215 00:55:51,470 --> 00:55:52,530 Luis протегна ръка. 1216 00:55:52,530 --> 00:55:53,070 Направихме това. 1217 00:55:53,070 --> 00:55:54,790 И след това приключи, готови. 1218 00:55:54,790 --> 00:55:58,100 >> И това е точно същото, дух на компютър протокол 1219 00:55:58,100 --> 00:56:02,770 където, както в HTTP, това, което се случва, е това. 1220 00:56:02,770 --> 00:56:05,520 Ако сте на компютъра на остане тук, и там е някои уеб 1221 00:56:05,520 --> 00:56:07,230 сървър има в дясно. 1222 00:56:07,230 --> 00:56:11,130 И компютъра отляво иска да да изиска информация от този сървър. 1223 00:56:11,130 --> 00:56:13,140 Това е вид на двупосочен операция. 1224 00:56:13,140 --> 00:56:15,800 Браузърът в ляво пита за някои уеб страница. 1225 00:56:15,800 --> 00:56:18,404 Сървърът на правото реагира с някои уеб страница. 1226 00:56:18,404 --> 00:56:20,570 И ние ще видим каква форма тези, които се вземат в един момент. 1227 00:56:20,570 --> 00:56:24,311 >> И се оказва, че тези computers-- този браузър и сървър или клиент 1228 00:56:24,311 --> 00:56:25,310 и сървъра, така да се каже. 1229 00:56:25,310 --> 00:56:28,120 Много прилича на ресторант, където клиент пита за нещо, 1230 00:56:28,120 --> 00:56:31,670 и сървъра е привеждане него или нея something-- получите 1231 00:56:31,670 --> 00:56:33,170 е вид оперативна дума. 1232 00:56:33,170 --> 00:56:38,560 Буквално във вътрешността на плика, че моя браузър изпраща от тук до уеб 1233 00:56:38,560 --> 00:56:40,880 сървър е думата точка. 1234 00:56:40,880 --> 00:56:42,700 Както аз искам да отида днешните новини. 1235 00:56:42,700 --> 00:56:45,370 Искам да си взема Facebook емисия новини или I 1236 00:56:45,370 --> 00:56:47,330 искате да получите някои страницата от сървъра. 1237 00:56:47,330 --> 00:56:50,760 >> По-конкретно, това е това, което е става вътре от този плик. 1238 00:56:50,760 --> 00:56:53,810 Така че аз, с Коул, по същество изпратено Cole отговор. 1239 00:56:53,810 --> 00:56:56,750 Ако си представим, че Коул всъщност Исках снимка на Рик Астли, 1240 00:56:56,750 --> 00:57:00,700 той би могъл да ми изпрати запитване сходна по дух до това. 1241 00:57:00,700 --> 00:57:04,670 Вътре му плик с мен, когато Аз съм в момента играе ролята на Google, 1242 00:57:04,670 --> 00:57:08,270 Би било искане, което буквално казва, да, а след това и с нетърпение slash-- 1243 00:57:08,270 --> 00:57:10,636 и вероятно сте виждали наклонени черти в URLs преди. 1244 00:57:10,636 --> 00:57:13,260 Това просто означава, дайте ми по подразбиране страница, по подразбиране Рик Астли 1245 00:57:13,260 --> 00:57:14,560 картина в този случай. 1246 00:57:14,560 --> 00:57:20,100 >> И между другото, Cole говори езика HTTP версия 1.1 или 1.1 протокола. 1247 00:57:20,100 --> 00:57:22,090 И се оказва, че има по-стара версия 1.0. 1248 00:57:22,090 --> 00:57:23,910 Но компютри са склонни да използват 1.1. 1249 00:57:23,910 --> 00:57:27,840 >> Втората линия е полезно нещо, че Ще се върна към може би не след дълго. 1250 00:57:27,840 --> 00:57:31,900 Но това е просто една спецификация за мен, получателя, че нещо, което искам 1251 00:57:31,900 --> 00:57:33,586 е www.google.com. 1252 00:57:33,586 --> 00:57:36,340 Тъй като това е много възможно тези дни за десетки, 1253 00:57:36,340 --> 00:57:39,510 стотици сайтове с различни имена на домейни на всички 1254 00:57:39,510 --> 00:57:40,735 живеят на същия сървър. 1255 00:57:40,735 --> 00:57:42,860 Това няма да е истина толкова много в случай на Google. 1256 00:57:42,860 --> 00:57:45,261 Но в по-малка компания случай, може да бъде абсолютно. 1257 00:57:45,261 --> 00:57:47,260 Така че Коул е просто вид пускането в плика, 1258 00:57:47,260 --> 00:57:50,840 Между другото, когато това се достига Вашия IP адрес на порт 80, 1259 00:57:50,840 --> 00:57:54,450 Просто бъдете сигурни, че знаете I www.google.com, не искам 1260 00:57:54,450 --> 00:57:56,740 друг произволен сайт на същия сървър. 1261 00:57:56,740 --> 00:58:00,360 >> Това, което след това отговори на Коул с, в края на деня, е картина. 1262 00:58:00,360 --> 00:58:02,920 Но на върха тази снимка вътрешността на плика 1263 00:58:02,920 --> 00:58:05,600 всъщност е някакъв текст, когато казвам, OK. 1264 00:58:05,600 --> 00:58:07,970 Аз говоря HTTP версия 1.1 също. 1265 00:58:07,970 --> 00:58:09,200 02:00. 1266 00:58:09,200 --> 00:58:11,730 Което е код на състояние, че повечето от нас имат вероятно 1267 00:58:11,730 --> 00:58:14,185 никога не е виждал, защото това означава, OK. 1268 00:58:14,185 --> 00:58:16,810 И това е добре, защото това означава Аз съм реагира успешно 1269 00:58:16,810 --> 00:58:18,040 на искането на Коул. 1270 00:58:18,040 --> 00:58:21,930 >> Какви номера имате вероятно виждал в интернет, които не са ОК? 1271 00:58:21,930 --> 00:58:22,780 >> АУДИТОРИЯ: 404. 1272 00:58:22,780 --> 00:58:24,830 >> DAVID J. Malan: 404-- Файлът не е намерен. 1273 00:58:24,830 --> 00:58:27,520 Така че наистина, всеки път, когато съм виждал един от тези досадни файл не 1274 00:58:27,520 --> 00:58:31,010 намерени грешки, защото Интернет страницата е мъртъв, 1275 00:58:31,010 --> 00:58:34,190 или защото сте с печатна грешка един URL, че просто означава, 1276 00:58:34,190 --> 00:58:37,600 че малкият пакет, който си компютър получи от сървъра 1277 00:58:37,600 --> 00:58:42,670 съдържаща се на съобщение HTTP 1.1, 404-- не е намерен. 1278 00:58:42,670 --> 00:58:44,930 Това файл или това искане сте направили не е намерен. 1279 00:58:44,930 --> 00:58:48,660 >> Освен това, в рамките на плика обикновено е тази линия, тип съдържание. 1280 00:58:48,660 --> 00:58:51,080 Понякога това е HTML, нещо, което скоро ще видим. 1281 00:58:51,080 --> 00:58:52,225 Понякога е по-JPEG. 1282 00:58:52,225 --> 00:58:53,100 Понякога е по-GIF. 1283 00:58:53,100 --> 00:58:56,060 Понякога това е файлът с видеоклипа, на аудио файл, всяка редица неща. 1284 00:58:56,060 --> 00:59:00,059 Така че във вътрешността на плика е просто Малко намек за онова, което аз съм получаване. 1285 00:59:00,059 --> 00:59:03,100 Има други кодове за състояние също, някои от които ние ще разгледаме в P определя шест, 1286 00:59:03,100 --> 00:59:05,890 и вие ще се натъкнете в P определя седем и / или осем. 1287 00:59:05,890 --> 00:59:08,580 Но някои тук, като 404, които сме виждали. 1288 00:59:08,580 --> 00:59:11,700 Забранения, 403, означава като разрешенията са погрешни, 1289 00:59:11,700 --> 00:59:14,740 като не сте вид тя конфигуриран правилно. 1290 00:59:14,740 --> 00:59:17,830 301 и 302, ние рядко ще видите визуално. 1291 00:59:17,830 --> 00:59:19,150 Но те означават пренасочи. 1292 00:59:19,150 --> 00:59:21,650 Всеки път, когато съм отишъл до един URL и сте били магически 1293 00:59:21,650 --> 00:59:24,410 изпрати някъде другаде, това е защото браузъра е изпратен обратно 1294 00:59:24,410 --> 00:59:27,210 плик, съдържащ броя 301 или 302, 1295 00:59:27,210 --> 00:59:30,790 и адреса, че иска вашия браузър, за да преминете към вместо. 1296 00:59:30,790 --> 00:59:32,010 >> 500 е ужасно. 1297 00:59:32,010 --> 00:59:34,842 Ще го видим след дълго, вероятно в P определя шест или P определя седем. 1298 00:59:34,842 --> 00:59:37,050 И това обикновено означава, има някакъв бъг в кода си, 1299 00:59:37,050 --> 00:59:40,000 защото наистина ще бъде написването код, който реагира на уеб заявки. 1300 00:59:40,000 --> 00:59:42,110 И вие сте просто имам някои грешка в логиката или синтаксиса, 1301 00:59:42,110 --> 00:59:43,820 и сървъра не може да се справи. 1302 00:59:43,820 --> 00:59:47,460 >> Така че нека да видим как можем да използваме и разберем тези искания, както следва. 1303 00:59:47,460 --> 00:59:50,716 Ако отида до, да речем, google.com. 1304 00:59:50,716 --> 00:59:55,240 Пусни ме да www.google.com. 1305 00:59:55,240 --> 01:00:01,220 И заради демонстрация на, нека виж, аз трябва да отидете на Settings тук. 1306 01:00:01,220 --> 01:00:03,180 Отивам да отидете в Settings Търсене. 1307 01:00:03,180 --> 01:00:08,236 И Google има все по-досадно функции, но полезни функции. 1308 01:00:08,236 --> 01:00:11,110 Така че Google има това нещо подобно на мигновени Резултати от където можете да започнете да пишете, 1309 01:00:11,110 --> 01:00:12,889 и автоматично нещата започнат да се появяват. 1310 01:00:12,889 --> 01:00:14,680 И това е всичко наред и технически полезно, 1311 01:00:14,680 --> 01:00:16,420 и ние ще разберем не след дълго как работи това. 1312 01:00:16,420 --> 01:00:18,429 Но за сега, аз съм завъртане разстояние мигновени резултати, 1313 01:00:18,429 --> 01:00:20,720 защото искам да ми браузър вид дейност, старото училище, така 1314 01:00:20,720 --> 01:00:22,940 че мога да видя какво става. 1315 01:00:22,940 --> 01:00:23,840 >> Така че сега съм отново тук. 1316 01:00:23,840 --> 01:00:25,090 И аз искам да търсите за котки. 1317 01:00:25,090 --> 01:00:30,351 И забележи аз виждам някои предложения, някои много доброкачествени предложения 1318 01:00:30,351 --> 01:00:30,850 за щастие. 1319 01:00:30,850 --> 01:00:34,730 И сега, ако аз се удари Enter, нека да видим какво ще стане. 1320 01:00:34,730 --> 01:00:35,850 >> Така че има някои котки. 1321 01:00:35,850 --> 01:00:37,540 И най-горния хит е на Wikipedia. 1322 01:00:37,540 --> 01:00:39,820 Но днес ние се грижим за технологията тук. 1323 01:00:39,820 --> 01:00:42,479 Така че URL адреса, към който съм е изпратена е това тук. 1324 01:00:42,479 --> 01:00:44,520 А има и някои неща съм наистина не разбирам. 1325 01:00:44,520 --> 01:00:47,430 >> Така че аз отивам да се продължи напред, защото Някак знам как работи Google, 1326 01:00:47,430 --> 01:00:50,700 и аз отивам да се дестилират това URL в простата си форма. 1327 01:00:50,700 --> 01:00:52,510 И сега аз отивам да натиснете въведете отново. 1328 01:00:52,510 --> 01:00:53,360 И тя продължава да работи. 1329 01:00:53,360 --> 01:00:55,800 Имам страница на резултатите от всички около котки. 1330 01:00:55,800 --> 01:00:58,460 >> Но забележете простотата на моя URL. 1331 01:00:58,460 --> 01:01:00,820 Оказва се, това е начинът, голяма част от уеб творби. 1332 01:01:00,820 --> 01:01:03,500 Мрежата е просто едно цяло куп компютри 1333 01:01:03,500 --> 01:01:05,320 използвате софтуер, който взема вход. 1334 01:01:05,320 --> 01:01:07,480 Това не е да получите вход низ стил. 1335 01:01:07,480 --> 01:01:09,670 Това не е командния ред аргументи като ние сме свикнали. 1336 01:01:09,670 --> 01:01:13,449 Те вземат вход, тези уеб сървъри, по пътя на адресите доста често. 1337 01:01:13,449 --> 01:01:15,240 И всеки път, когато съм търсене за нещо, 1338 01:01:15,240 --> 01:01:17,448 всяко време сте влезли в Facebook, всеки път, когато съм 1339 01:01:17,448 --> 01:01:20,090 направил нищо с интерактивни уеб страница, това, което правиш 1340 01:01:20,090 --> 01:01:24,340 е ефективно да изпрати форма, така че да speak-- текстови полета, полета за отметки, 1341 01:01:24,340 --> 01:01:27,880 малки кръгове, и какво ли още не, които изпращат информация от вас на сървъра. 1342 01:01:27,880 --> 01:01:31,960 >> И се оказва, че в интернет сървър знае да погледнете, че URL 1343 01:01:31,960 --> 01:01:36,040 и да го направи разбор, като го погледнете характер от характера търсите нещо 1344 01:01:36,040 --> 01:01:38,000 Интересно, след като въпросителен знак. 1345 01:01:38,000 --> 01:01:40,910 Защото след въпросителен знак, Оказва се, че ще дойде 1346 01:01:40,910 --> 01:01:42,730 куп ключови двойки стойности. 1347 01:01:42,730 --> 01:01:44,570 Искам да кажа ключ = стойност. 1348 01:01:44,570 --> 01:01:48,130 И след това, ако има multiple-- може би амперсанд, някакъв друг ключ = стойност, 1349 01:01:48,130 --> 01:01:50,200 амперсанд, ключ = стойност. 1350 01:01:50,200 --> 01:01:54,560 >> Така че ние сме вид виждал тази идея Преди, когато нещо има стойност. 1351 01:01:54,560 --> 01:01:55,880 Това е просто един нов формат тук. 1352 01:01:55,880 --> 01:01:59,040 И аз просто знам, по силата на споразумение, Google използва р за запитване. 1353 01:01:59,040 --> 01:02:02,670 И тогава, ако искам да търсите за кучета, I може ръчно търсене на кучета по този начин. 1354 01:02:02,670 --> 01:02:06,360 И тогава аз съм очевидно става някои резултати от търсенето, включващи кучета. 1355 01:02:06,360 --> 01:02:07,727 >> Така че изглежда да е интересно. 1356 01:02:07,727 --> 01:02:10,060 И наистина, какво се случва под предния капак е това. 1357 01:02:10,060 --> 01:02:11,460 Позволете ми да направя това. 1358 01:02:11,460 --> 01:02:13,620 Това е A-- нека да видим. 1359 01:02:13,620 --> 01:02:16,320 Нека се върнем отново тук само за миг. 1360 01:02:16,320 --> 01:02:19,810 >> Ще видим, че има друга начини да предоставят информация. 1361 01:02:19,810 --> 01:02:25,340 Така че, ако аз съм влезете в Facebook, или Gmail, или всеки друг популярен уебсайт, 1362 01:02:25,340 --> 01:02:30,720 изглежда вид лошо, ако каквото аз напечатани в полето за търсене озовава в моя URL, 1363 01:02:30,720 --> 01:02:32,850 в адресната лента на браузъра си е. 1364 01:02:32,850 --> 01:02:33,690 Защо? 1365 01:02:33,690 --> 01:02:35,395 Защо това е меко казано тревожно? 1366 01:02:35,395 --> 01:02:39,567 1367 01:02:39,567 --> 01:02:40,067 Да? 1368 01:02:40,067 --> 01:02:41,380 АУДИТОРИЯ: Въведете парола. 1369 01:02:41,380 --> 01:02:41,720 DAVID J. Malan: Да. 1370 01:02:41,720 --> 01:02:44,000 И какво, ако това, което съм въведена е моята парола? 1371 01:02:44,000 --> 01:02:47,881 Някак не го искат, така че очевидно видима в адресната лента на браузъра си е. 1372 01:02:47,881 --> 01:02:50,630 One, защото ми досадно съквартирант има тенденция да гледате над рамото ми, 1373 01:02:50,630 --> 01:02:53,980 и той или тя вече може да види, въпреки че това беше куршуми, когато съм го пишете в, 1374 01:02:53,980 --> 01:02:54,810 малки кръгове. 1375 01:02:54,810 --> 01:02:56,010 Сега е в моя адрес бара. 1376 01:02:56,010 --> 01:02:59,270 >> Нещо повече, това, което е вярно за неща сте склонни да напишете в адресната лента. 1377 01:02:59,270 --> 01:03:00,230 >> АУДИТОРИЯ: [недоловим] 1378 01:03:00,230 --> 01:03:01,505 >> DAVID J. Malan: Какво е това? 1379 01:03:01,505 --> 01:03:02,630 АУДИТОРИЯ: Той получава изпратени. 1380 01:03:02,630 --> 01:03:03,510 DAVID J. Malan: Той получава изпратени. 1381 01:03:03,510 --> 01:03:05,102 И също така, той се помнят. 1382 01:03:05,102 --> 01:03:07,060 Защото следващия път изпишете нещата до там, 1383 01:03:07,060 --> 01:03:10,440 често тя autocompletes и го помни това, което сте написали преди. 1384 01:03:10,440 --> 01:03:13,850 И така, там е тази истинска история че си братя и сестри, или си съквартирант, 1385 01:03:13,850 --> 01:03:16,830 или който и да преминете през да почти всеки уеб сайт, виж 1386 01:03:16,830 --> 01:03:19,760 сте посетили, защото това е влезете в профила си, че адресната лента. 1387 01:03:19,760 --> 01:03:22,790 >> Освен това, предполагам, че искате да качите снимка на Facebook. 1388 01:03:22,790 --> 01:03:26,520 Как в света сте Ще сложите снимка в URL? 1389 01:03:26,520 --> 01:03:30,217 >> Ами оказва се, можете да го направите в някои начин, но със сигурност това не е очевидно. 1390 01:03:30,217 --> 01:03:33,050 И така, там е този друг начин на изпращане на информация в плик, 1391 01:03:33,050 --> 01:03:35,680 не чрез GET, но чрез нещо, наречено POST. 1392 01:03:35,680 --> 01:03:38,060 И на теория, тя изглежда почти същото. 1393 01:03:38,060 --> 01:03:41,270 Вместо думата GET, POST, което казваме, и след това същия вид формат. 1394 01:03:41,270 --> 01:03:43,310 >> Например, това е снимка на това, което 1395 01:03:43,310 --> 01:03:46,920 тя може да изглежда, ако се опитам сеч в Facebook, която ме изпраща файл 1396 01:03:46,920 --> 01:03:51,230 наречено login.php, който всъщност е все още и до днес нарича така. 1397 01:03:51,230 --> 01:03:53,910 Това е същата марка име на файла даде да я преди много години. 1398 01:03:53,910 --> 01:03:58,520 Това е програма, пише той в PHP чрез които потребителите могат да влизат в сайта. 1399 01:03:58,520 --> 01:04:00,370 >> Но вие трябва да изпратите някои допълнителни данни. 1400 01:04:00,370 --> 01:04:05,170 И вместо да върви след като на името на файла, както преди с cats-- 1401 01:04:05,170 --> 01:04:09,720 р = cats-- тя може да отиде по-ниска в искането, по-дълбоко във вътрешността на плика, ако 1402 01:04:09,720 --> 01:04:12,440 Ще където никой не може да го види, и ако тя не се окажете 1403 01:04:12,440 --> 01:04:15,670 в лента на браузъра на потребителя, и следователно Не забравяйте, за хората да Snoop 1404 01:04:15,670 --> 01:04:16,290 наоколо. 1405 01:04:16,290 --> 01:04:21,260 >> И така, тук ми имейл адрес и моята фалшива парола действително отиде. 1406 01:04:21,260 --> 01:04:27,400 И ако Facebook използва Не HTTP, HTTPS, но, 1407 01:04:27,400 --> 01:04:30,710 всичко това ще бъдат криптирани, бъркани, ала Цезар или Vigenere, 1408 01:04:30,710 --> 01:04:34,960 но по-fancily така че никой всъщност може да видите това искане. 1409 01:04:34,960 --> 01:04:38,120 >> И така наистина, всеки път, когато има един URL, който започва с HTTPS, 1410 01:04:38,120 --> 01:04:39,560 това просто означава, че е кодирано. 1411 01:04:39,560 --> 01:04:42,710 Но в края на деня, това, което е всъщност вътре от тези пликове? 1412 01:04:42,710 --> 01:04:44,070 Това беше супер ниско ниво. 1413 01:04:44,070 --> 01:04:46,240 И за щастие, не сме ще трябва задължително 1414 01:04:46,240 --> 01:04:49,310 да отида толкова ниско ниво всеки път да започнете да пишете интересен софтуер. 1415 01:04:49,310 --> 01:04:51,060 Можем да започнем да се вземат идеите на една седмица 1416 01:04:51,060 --> 01:04:54,020 чрез пет, да предположим, че Сега е тази инфраструктура, която 1417 01:04:54,020 --> 01:04:57,160 ни позволява да пишат софтуер която работи в интернет, 1418 01:04:57,160 --> 01:05:00,120 и това ще ни позволи този смешен седмица, за да започнете 1419 01:05:00,120 --> 01:05:01,840 погледнете в нещо, наречено HTML. 1420 01:05:01,840 --> 01:05:04,750 Това е вещество, което е още по- по-дълбоко във вътрешността на плика, 1421 01:05:04,750 --> 01:05:06,150 но това е неща, ние сме Ще започнете да пишете. 1422 01:05:06,150 --> 01:05:08,020 И това е от нещата по- Интересното е, че ние сме 1423 01:05:08,020 --> 01:05:11,420 щях да пиша програми, които започва генериране автоматично 1424 01:05:11,420 --> 01:05:15,410 така че нашите уебсайтове не са твърди кодирани, но вземат вход и изход произвеждат. 1425 01:05:15,410 --> 01:05:18,810 >> Това е може би най-простият мрежата страница можете да направите в света. 1426 01:05:18,810 --> 01:05:23,000 Наистина не мога да се отворят нещо глупаво като TextEdit 1427 01:05:23,000 --> 01:05:26,160 на моя Mac, което току-що ми дава текстов прозорец като този. 1428 01:05:26,160 --> 01:05:29,510 Потребителите на персонални компютри имат Notepad.ext, който е много подобен по дух. 1429 01:05:29,510 --> 01:05:33,212 >> И аз буквално може да объркате посочени this-- DOCTYPE HTML, 1430 01:05:33,212 --> 01:05:34,420 което изглежда малко загадъчен. 1431 01:05:34,420 --> 01:05:35,850 Но ние ще се върнем към това. 1432 01:05:35,850 --> 01:05:38,730 HTML, с тези странни ъглови скоби и наклонени черти, 1433 01:05:38,730 --> 01:05:42,240 вътрешността на която сега аз отивам да се каже, Тук идва на главата на моята уеб страница. 1434 01:05:42,240 --> 01:05:45,220 Вътре в това, аз просто знам, и вие скоро ще знаем, 1435 01:05:45,220 --> 01:05:47,850 че мога да сложа заглавието на моята уеб страница. 1436 01:05:47,850 --> 01:05:49,720 И тогава под ръководител на уеб страницата е 1437 01:05:49,720 --> 01:05:51,972 Ще отидете на така наречения тяло на уеб страницата. 1438 01:05:51,972 --> 01:05:54,180 И аз съм просто редовете само като в C някак да се запази 1439 01:05:54,180 --> 01:05:57,620 нещата добре четим стилово. 1440 01:05:57,620 --> 01:06:04,745 И сега аз отивам да спаси това като файл на компютъра си, наречена hello.html. 1441 01:06:04,745 --> 01:06:06,770 >> И аз ще го кажа, да, използвайте HTML. 1442 01:06:06,770 --> 01:06:09,690 Не го смените с .txt, дори макар всичко това е текстов файл, 1443 01:06:09,690 --> 01:06:12,130 точно като програма C написана с текстов редактор. 1444 01:06:12,130 --> 01:06:15,080 Въпреки че не е в CS50 IDE в момент, точно тук, на моя Mac. 1445 01:06:15,080 --> 01:06:18,490 >> И ако аз сега отидете на работния плот, ще видите hello.html. 1446 01:06:18,490 --> 01:06:20,720 Ако кликнете два пъти това, тя ще се отвори Chrome. 1447 01:06:20,720 --> 01:06:23,260 И въпреки, че този файл се случва да живеят на компютъра си, 1448 01:06:23,260 --> 01:06:26,550 че е може би най-простият уеб страница бих могъл да направя. 1449 01:06:26,550 --> 01:06:30,080 >> Забележете, че заглавието на таб път до върха е здравей свят. 1450 01:06:30,080 --> 01:06:32,470 Тялото на уеб страницата е наистина здравей свят. 1451 01:06:32,470 --> 01:06:35,830 И всичко, което съм направил, за да получите До този момент е прилагане, 1452 01:06:35,830 --> 01:06:38,342 или е напише нов език, наречен HTML. 1453 01:06:38,342 --> 01:06:40,300 Това не е програмиране език като C. Има 1454 01:06:40,300 --> 01:06:42,508 няма да бъде състояния, и контури, както и функции. 1455 01:06:42,508 --> 01:06:46,560 Това е език за маркиране, в която случай, че просто кажете на приемащото 1456 01:06:46,560 --> 01:06:48,410 програма за това, което искате да направите. 1457 01:06:48,410 --> 01:06:51,195 Това означава, хей браузър, тук идва една HTML страница. 1458 01:06:51,195 --> 01:06:53,040 Ей браузър, тук идва ръководителят на страницата ми. 1459 01:06:53,040 --> 01:06:55,130 Ей браузър, тук идва тялото на страницата ми. 1460 01:06:55,130 --> 01:06:57,100 Ей браузър, че това е за тялото. 1461 01:06:57,100 --> 01:06:59,350 Това е всичко за HTML страницата. 1462 01:06:59,350 --> 01:07:03,560 >> И с тези прости дефиниции сам, скоро ще видите, че една, 1463 01:07:03,560 --> 01:07:05,122 можем да представим това като дърво. 1464 01:07:05,122 --> 01:07:06,080 Но повече за това по-късно. 1465 01:07:06,080 --> 01:07:08,788 Така че това всички ще свързване към нашите най-нови структури от данни. 1466 01:07:08,788 --> 01:07:12,460 Two, ние ще представим тази глупава шега. 1467 01:07:12,460 --> 01:07:15,680 Това е действително татуировка, която този човек е имал на врата му. 1468 01:07:15,680 --> 01:07:19,660 Това е може би смешно първата седмица или две, а след това, може би не е толкова много. 1469 01:07:19,660 --> 01:07:22,960 >> Но HTML, а дори и в интернет страница I-що направи, супер ум 1470 01:07:22,960 --> 01:07:25,670 вдървено disappointing-- просто казвам здрасти свят 1471 01:07:25,670 --> 01:07:27,210 в черен текст на бял фон. 1472 01:07:27,210 --> 01:07:28,680 Със сигурност можем да направим много по-добре. 1473 01:07:28,680 --> 01:07:31,552 И ние ще го направят чрез въвеждане друг език, наречен CSS. 1474 01:07:31,552 --> 01:07:34,760 Това също не е програмен language-- не примки, и условия, или за електрически вериги, 1475 01:07:34,760 --> 01:07:38,470 но наистина, просто синтаксис, чрез която можем да кажем, направи този текст голям. 1476 01:07:38,470 --> 01:07:39,415 Направете този текст малка. 1477 01:07:39,415 --> 01:07:40,040 Право го приведе в съответствие. 1478 01:07:40,040 --> 01:07:40,650 Left се приведе в съответствие. 1479 01:07:40,650 --> 01:07:41,195 Направете го розово. 1480 01:07:41,195 --> 01:07:41,820 Направете го лилаво. 1481 01:07:41,820 --> 01:07:42,650 Направете го синьо. 1482 01:07:42,650 --> 01:07:44,860 Или произволен брой други визуални ефекти. 1483 01:07:44,860 --> 01:07:48,590 И така, ние ще видим как да започнете stylizing уеб страници, така че те да изглеждат по начин, 1484 01:07:48,590 --> 01:07:50,480 по-близо до това, което искаме. 1485 01:07:50,480 --> 01:07:56,930 >> И накрая, ние сме наистина съсипа Може би много от телевизия и филм за вас. 1486 01:07:56,930 --> 01:07:58,930 Мислех да свършва тук с крайни нашите секунди 1487 01:07:58,930 --> 01:08:03,700 на крайния клип, който ви показва как хакване на интернет работи. 1488 01:08:03,700 --> 01:08:06,250 Ако можехме да затъмни светва за последен път. 1489 01:08:06,250 --> 01:08:07,250 >> [Възпроизвеждане на видео] 1490 01:08:07,250 --> 01:08:09,520 >> -Няма начин. 1491 01:08:09,520 --> 01:08:10,650 Аз съм се хакнат. 1492 01:08:10,650 --> 01:08:11,770 >> -Okorsky? 1493 01:08:11,770 --> 01:08:14,230 >> -No-- Не, това е голямо. 1494 01:08:14,230 --> 01:08:17,074 Те вече са изгорени през публичния защитната стена NCIS. 1495 01:08:17,074 --> 01:08:19,990 -Е, Изолиране на възела и сметището ги от другата страна на рутера. 1496 01:08:19,990 --> 01:08:20,990 -Опитвам се. 1497 01:08:20,990 --> 01:08:23,990 Тя се движи твърде бързо. 1498 01:08:23,990 --> 01:08:25,179 >> -О, Това не е добро. 1499 01:08:25,179 --> 01:08:27,470 Те използвате нашата връзка [Недоловим] тази база данни. 1500 01:08:27,470 --> 01:08:28,458 Тя Север. 1501 01:08:28,458 --> 01:08:28,958 -Аз Не мога. 1502 01:08:28,958 --> 01:08:29,454 Това е точка атака. 1503 01:08:29,454 --> 01:08:31,438 Той или тя е само Ще след моята машина. 1504 01:08:31,438 --> 01:08:32,430 >> -Това Не е възможно. 1505 01:08:32,430 --> 01:08:33,847 Има DOD криптиране ниво мина. 1506 01:08:33,847 --> 01:08:35,055 Това ще отнеме месеци да get-- 1507 01:08:35,055 --> 01:08:35,857 -Hey, Какво е това? 1508 01:08:35,857 --> 01:08:36,398 А видео игра? 1509 01:08:36,398 --> 01:08:37,886 >> -Не Тони, ние сте се хакнат. 1510 01:08:37,886 --> 01:08:40,795 >> -Ако Те ще получат в компютъра на Аби, цялата мрежа NCIS е следващия. 1511 01:08:40,795 --> 01:08:42,050 >> -Аз Не може да го спре. 1512 01:08:42,050 --> 01:08:43,050 Направи нещо Макгий. 1513 01:08:43,050 --> 01:08:44,550 >> -I've Никога не е виждал код като този. 1514 01:08:44,550 --> 01:08:47,432 1515 01:08:47,432 --> 01:08:48,571 -О. 1516 01:08:48,571 --> 01:08:49,196 -Къде Е той отиде? 1517 01:08:49,196 --> 01:08:50,604 Аби? 1518 01:08:50,604 --> 01:08:51,520 -Аз Не съм направил нищо. 1519 01:08:51,520 --> 01:08:53,020 Мислех, че го направих. 1520 01:08:53,020 --> 01:08:54,520 >> -Не. 1521 01:08:54,520 --> 01:08:57,232 >> -Направих. 1522 01:08:57,232 --> 01:08:58,307 >> [END PLAYBACK] 1523 01:08:58,307 --> 01:09:00,390 DAVID J. Malan: Най-доброто част е двама души машинопис 1524 01:09:00,390 --> 01:09:02,170 на клавиатурата в същото време. 1525 01:09:02,170 --> 01:09:03,200 >> Така, че това е за CS50. 1526 01:09:03,200 --> 01:09:04,700 Ние ще си наоколо, за работно време. 1527 01:09:04,700 --> 01:09:06,344 И ние ще се видим следващия път. 1528 01:09:06,344 --> 01:09:07,760 [За възпроизвеждане на музика - "Зайнфелд ТЕМА"] 1529 01:09:07,760 --> 01:09:11,139 1530 01:09:11,139 --> 01:09:11,680 Това е CS50. 1531 01:09:11,680 --> 01:09:17,960 1532 01:09:17,960 --> 01:09:20,854 Аз не искам да бъда пират. 1533 01:09:20,854 --> 01:09:21,770 SPEAKER 2: Yarr Дейвид. 1534 01:09:21,770 --> 01:09:23,700 Това е глоба дублет можете да носите. 1535 01:09:23,700 --> 01:09:26,450 Лот на предния ръб с това, че бутер. 1536 01:09:26,450 --> 01:09:29,327