1 00:00:00,000 --> 00:00:10,792 2 00:00:10,792 --> 00:00:11,750 DAVID MALAN: Tudo bem. 3 00:00:11,750 --> 00:00:13,630 Este é CS50. 4 00:00:13,630 --> 00:00:15,950 E este é o início da semana de sete. 5 00:00:15,950 --> 00:00:19,120 Então, hoje, talvez felizmente, começamos nossa transição 6 00:00:19,120 --> 00:00:21,630 a partir do nível mais baixo mundo da programação C 7 00:00:21,630 --> 00:00:24,290 para o nível mais elevado mundo da programação web. 8 00:00:24,290 --> 00:00:28,060 E com isso, vamos dar uma olhada exatamente como a internet funciona, 9 00:00:28,060 --> 00:00:31,920 o que essas máquinas e esses internets que você está usando há anos 10 00:00:31,920 --> 00:00:35,090 realmente fazem debaixo do capô em direção uma melhor compreensão de como tudo 11 00:00:35,090 --> 00:00:37,660 funciona, e como você pode fazer o trabalho para você. 12 00:00:37,660 --> 00:00:41,480 >> Para isso, por que não dar uma olhar primeiro para um clipe de um programa de TV 13 00:00:41,480 --> 00:00:45,680 chamados Numb3rs, que vai ficar nos iniciados a respeito de exatamente como a internet funciona. 14 00:00:45,680 --> 00:00:46,964 15 00:00:46,964 --> 00:00:47,630 [REPRODUÇÃO DE VÍDEO] 16 00:00:47,630 --> 00:00:49,858 -É Um endereço IPP4 de 32 bits. 17 00:00:49,858 --> 00:00:50,794 -IP. 18 00:00:50,794 --> 00:00:51,730 Essa é a internet. 19 00:00:51,730 --> 00:00:52,640 >> Rede-Privadas. 20 00:00:52,640 --> 00:00:53,865 É rede privada da Amita. 21 00:00:53,865 --> 00:01:06,635 22 00:01:06,635 --> 00:01:08,120 Oh, ela é tão incrível. 23 00:01:08,120 --> 00:01:09,605 24 00:01:09,605 --> 00:01:11,120 >> -Oh, Charlie. 25 00:01:11,120 --> 00:01:12,640 >> -É Um endereço IP espelho. 26 00:01:12,640 --> 00:01:15,672 Ela está deixando-nos ver o que ela está fazendo em tempo real. 27 00:01:15,672 --> 00:01:16,505 [FIM REPRODUÇÃO DE VÍDEO] 28 00:01:16,505 --> 00:01:19,570 DAVID MALAN: Então não há um todo muito errado com aquele programa de TV. 29 00:01:19,570 --> 00:01:23,250 Então, vamos provocar uma separação exatamente uma das primeiras coisas 30 00:01:23,250 --> 00:01:25,210 e ver se não podemos envolvê nossas mentes em torno dele. 31 00:01:25,210 --> 00:01:28,110 Assim, o último quadro do esse filme, dessa mostra 32 00:01:28,110 --> 00:01:30,360 é este aqui, que parece sugerir que esta 33 00:01:30,360 --> 00:01:33,300 é o que algum hacker está usando para entrar em algum sistema. 34 00:01:33,300 --> 00:01:33,875 >> Mas não. 35 00:01:33,875 --> 00:01:36,030 Se você ampliar a este código-fonte, o que 36 00:01:36,030 --> 00:01:40,210 é uma linguagem chamada Objective C em que aplicativos do iPhone, apps do iPad, e Mac 37 00:01:40,210 --> 00:01:42,060 Aplicativos do sistema operacional são escritos, você vai ver que este 38 00:01:42,060 --> 00:01:45,400 é algum tipo de programa de desenho que tem um lápis de cera como uma variável. 39 00:01:45,400 --> 00:01:47,800 40 00:01:47,800 --> 00:01:51,880 >> Então, além disso, você pode ter notado este endereço aqui. 41 00:01:51,880 --> 00:01:53,330 Agora, esta é uma tão errado. 42 00:01:53,330 --> 00:01:56,740 E este é, provavelmente, deliberadamente escolhido ser um endereço inválido para que ele 43 00:01:56,740 --> 00:02:00,010 não conduzem a algum lugar se um telespectador realmente visita. 44 00:02:00,010 --> 00:02:02,620 Mas este número aqui, algo dot algo 45 00:02:02,620 --> 00:02:05,799 dot dot algo algo é o que é geralmente conhecido como um endereço IP. 46 00:02:05,799 --> 00:02:07,840 E é realmente uma boa Segue a este tópico mais 47 00:02:07,840 --> 00:02:10,930 em geral, conhecido como IP, protocolo de internet. 48 00:02:10,930 --> 00:02:14,210 Então você provavelmente pelo menos ouviu esta frase antes. 49 00:02:14,210 --> 00:02:18,980 Mas o que é IP, ou Internet protocolo que você entenda isso hoje? 50 00:02:18,980 --> 00:02:21,376 51 00:02:21,376 --> 00:02:23,625 As probabilidades são, se pedimos uma show de mãos, a maioria de vocês 52 00:02:23,625 --> 00:02:26,880 provavelmente já disse que o palavras endereço IP antes. 53 00:02:26,880 --> 00:02:27,955 Então, o que você quis dizer? 54 00:02:27,955 --> 00:02:29,578 55 00:02:29,578 --> 00:02:30,779 >> AUDIÊNCIA: [inaudível]? 56 00:02:30,779 --> 00:02:31,820 DAVID MALAN: O que é isso? 57 00:02:31,820 --> 00:02:33,170 AUDIÊNCIA: [inaudível]? 58 00:02:33,170 --> 00:02:33,455 DAVID MALAN: Uma vez mais. 59 00:02:33,455 --> 00:02:34,840 AUDIÊNCIA: Endereço do computador. 60 00:02:34,840 --> 00:02:35,950 DAVID MALAN: O endereço do computador. 61 00:02:35,950 --> 00:02:36,949 Assim que é exatamente certo. 62 00:02:36,949 --> 00:02:39,660 Acontece que cada computador na internet, 63 00:02:39,660 --> 00:02:42,940 e nos dias de hoje, todos os telefones em seu bolso e tablet em sua mochila, 64 00:02:42,940 --> 00:02:45,880 tem endereço IP, uma internet endereço de protocolo, que 65 00:02:45,880 --> 00:02:49,379 é um endereço único que identifica que ao longo de toda a internet. 66 00:02:49,379 --> 00:02:51,920 Agora, isso é um pouco de branco mentira, porque o mundo é, na verdade, 67 00:02:51,920 --> 00:02:53,240 ficando sem endereços IP. 68 00:02:53,240 --> 00:02:55,900 >> Então nós começamos a usar endereços IP privados. 69 00:02:55,900 --> 00:02:57,160 Mas mais sobre isso em um momento. 70 00:02:57,160 --> 00:03:00,731 Mas você pode pensar em um endereço IP como como sua rua serviço postal 71 00:03:00,731 --> 00:03:01,230 endereço. 72 00:03:01,230 --> 00:03:04,160 Temos usar o exemplo de Maxwell Dworkin, o edifício CS, antes- 73 00:03:04,160 --> 00:03:07,920 33 Oxford Street Cambridge, Massa, 02138, EUA. 74 00:03:07,920 --> 00:03:10,400 Esse é o seu endereço único no mundo. 75 00:03:10,400 --> 00:03:12,547 >> Da mesma forma fazer computadores têm endereços únicos. 76 00:03:12,547 --> 00:03:14,380 Eles só acontecerá a olhar um pouco diferente- 77 00:03:14,380 --> 00:03:17,219 um número de um número de pontos dot um número dot um número. 78 00:03:17,219 --> 00:03:19,760 E será que alguém realmente sabe o que o intervalo válido de números 79 00:03:19,760 --> 00:03:21,105 é para cada um desses hashes? 80 00:03:21,105 --> 00:03:21,604 Sim. 81 00:03:21,604 --> 00:03:23,045 >> AUDIÊNCIA: 0-255? 82 00:03:23,045 --> 00:03:23,920 DAVID MALAN: Exatamente. 83 00:03:23,920 --> 00:03:25,450 0-255. 84 00:03:25,450 --> 00:03:28,360 E mesmo que você não sabia que, agora tirar uma conclusão, 85 00:03:28,360 --> 00:03:31,130 quantos bits são utilizados para representar cada um desses números, em seguida,? 86 00:03:31,130 --> 00:03:32,232 87 00:03:32,232 --> 00:03:34,440 Oito aparentemente por causa o mais alto que você pode contar 88 00:03:34,440 --> 00:03:36,720 é 255, que é um valor de 8 bits. 89 00:03:36,720 --> 00:03:38,980 Assim, no total, um endereço IP é de 32-bits. 90 00:03:38,980 --> 00:03:41,310 Então o encaminhamento rápido ao conclusão matemática, 91 00:03:41,310 --> 00:03:43,900 quantas possíveis endereços IP existem no mundo, então? 92 00:03:43,900 --> 00:03:46,990 93 00:03:46,990 --> 00:03:50,100 >> Então, isso é 8 mais 8 mais 8 mais 8, de modo que é 32 bits. 94 00:03:50,100 --> 00:03:52,490 E nós sempre dissemos que 2 a 32 é mais ou menos? 95 00:03:52,490 --> 00:03:53,940 96 00:03:53,940 --> 00:03:54,440 Está bem. 97 00:03:54,440 --> 00:03:55,273 Vou campo este. 98 00:03:55,273 --> 00:03:55,864 Quatro bilhões. 99 00:03:55,864 --> 00:03:58,780 E nós conversamos sobre isso na semana zero quando falamos sobre os livros de telefone 100 00:03:58,780 --> 00:04:00,170 com números loucos de páginas. 101 00:04:00,170 --> 00:04:03,450 Mas a sorte dele é que não há um número finito de endereços IP. 102 00:04:03,450 --> 00:04:05,740 E mesmo que quatro bilhões Pode parecer muito, 103 00:04:05,740 --> 00:04:07,770 nós, seres humanos têm sido consome muito poucos 104 00:04:07,770 --> 00:04:10,350 deles para todos os nossos servidores e dispositivos e assim por diante. 105 00:04:10,350 --> 00:04:12,170 >> Então, isso está realmente se tornando um problema. 106 00:04:12,170 --> 00:04:16,500 Agora, tende a haver uma esquema por trás que tem o IP. 107 00:04:16,500 --> 00:04:18,560 Por exemplo, muitos dos os computadores de Harvard 108 00:04:18,560 --> 00:04:21,810 têm endereços únicos que começam com um destes dois valores. 109 00:04:21,810 --> 00:04:23,560 MIT, de modo semelhante, tem um prefixo. 110 00:04:23,560 --> 00:04:26,889 E um monte de empresas e universidades têm o seu próprio prefixo único. 111 00:04:26,889 --> 00:04:29,680 E então a maioria de nós para a nossa casa conexões de internet e afins, 112 00:04:29,680 --> 00:04:33,575 partilhamos alguns prefixo que Comcast ou alguém como o que acontece ao próprio. 113 00:04:33,575 --> 00:04:36,640 E isso é só para dizer que, se você olhou para a maioria dos computadores no campus, 114 00:04:36,640 --> 00:04:40,070 eles provavelmente têm um IP endereço que se parece com isso. 115 00:04:40,070 --> 00:04:43,180 >> Agora, você pode também, ocasionalmente, ver um endereço IP que começa como este. 116 00:04:43,180 --> 00:04:46,150 De fato, se algum de vocês cresceu com acesso à internet em casa, 117 00:04:46,150 --> 00:04:49,270 e você nunca foram suficientemente tecnicamente curioso para bisbilhotar 118 00:04:49,270 --> 00:04:51,800 suas próprias configurações de computador, você provavelmente vez 119 00:04:51,800 --> 00:04:56,990 vi um endereço que parece mais este, que começou com 10, ou 172,6, 120 00:04:56,990 --> 00:05:00,480 ou 192.168, ou algumas variantes do mesmo. 121 00:05:00,480 --> 00:05:04,025 >> E isso só significa que o mundo é posta de lado um monte de números 122 00:05:04,025 --> 00:05:06,400 ser privado, o que significa você pode usá-los em sua casa, 123 00:05:06,400 --> 00:05:08,941 você pode até mesmo usá-los em seu campus e dentro da sua empresa, 124 00:05:08,941 --> 00:05:10,970 mas você não pode usá-los na internet em geral. 125 00:05:10,970 --> 00:05:13,320 >> E assim estes privado IPs foram uma solução de 126 00:05:13,320 --> 00:05:16,990 para certificar-se de que, pelo menos, tão medida em que o mundo inteiro está em causa, 127 00:05:16,990 --> 00:05:18,890 nós não estamos usando que muitos endereços IP. 128 00:05:18,890 --> 00:05:22,840 Mas, pelo menos, podemos, em nossa própria campus, tem praticamente tantos IPs 129 00:05:22,840 --> 00:05:23,590 como nós queremos. 130 00:05:23,590 --> 00:05:24,410 Mas quem se importa? 131 00:05:24,410 --> 00:05:28,500 Qual é a relevância de tudo isso para um uso real da internet? 132 00:05:28,500 --> 00:05:31,450 >> Bem, vamos dar uma olhada talvez uma simples foto aqui. 133 00:05:31,450 --> 00:05:33,550 Deixe-me, tanto através de os para cima na tela. 134 00:05:33,550 --> 00:05:36,050 E perdoe minha caligrafia aqui. 135 00:05:36,050 --> 00:05:39,500 Mas se pensarmos em nós mesmos como sendo este pequeno laptop aqui 136 00:05:39,500 --> 00:05:41,830 em algum lugar do campus, estes dias que tem Wi-Fi. 137 00:05:41,830 --> 00:05:44,180 >> Mas no passado e se você encontrar o adaptador correto, 138 00:05:44,180 --> 00:05:47,420 ele pode ter um cabo ethernet que da mesma forma deixar 139 00:05:47,420 --> 00:05:49,130 você se conecta a algum tipo de dispositivo. 140 00:05:49,130 --> 00:05:51,090 E você pode chamar isso de uma série de coisas. 141 00:05:51,090 --> 00:05:55,930 Mas eu estou indo para ir em frente e chamar isso, por agora, que tal um ponto de acesso? 142 00:05:55,930 --> 00:05:57,690 >> Portanto, este é o meu laptop. 143 00:05:57,690 --> 00:06:01,130 Este é o meu AP, ou ponto de acesso, e este é um dispositivo sem fio, 144 00:06:01,130 --> 00:06:04,400 não ao contrário aqueles que Harvard tem todo o teto 145 00:06:04,400 --> 00:06:07,420 e paredes em torno do campus que têm luzes piscando 146 00:06:07,420 --> 00:06:10,930 e que são o que seus laptops costumava falar sem fios 147 00:06:10,930 --> 00:06:12,160 para o resto da rede. 148 00:06:12,160 --> 00:06:14,880 >> Então, de alguma forma, este portátil está falando para que coisa na parede, 149 00:06:14,880 --> 00:06:16,540 na sala de jantar, ou em outro lugar. 150 00:06:16,540 --> 00:06:21,410 Agora, entretanto, que do ponto de acesso é conectado a algo mais no campus. 151 00:06:21,410 --> 00:06:24,810 E é provavelmente algo conhecido como um interruptor. 152 00:06:24,810 --> 00:06:27,690 E eles se parecem muito mais interessante que apenas estes diagramas de caixa. 153 00:06:27,690 --> 00:06:29,760 >> Mas de alguma forma, essa coisa é conectado a um switch. 154 00:06:29,760 --> 00:06:31,900 E, por sua vez, de alguma forma que o interruptor está ligado 155 00:06:31,900 --> 00:06:35,890 a um dispositivo que é provavelmente uma pouco maior, chamado de roteador. 156 00:06:35,890 --> 00:06:37,930 E então, enquanto isso, Harvard está ligado 157 00:06:37,930 --> 00:06:41,210 a toda a internet que vamos desenhar como essa nuvem aqui, 158 00:06:41,210 --> 00:06:43,850 através de um certo número de arames ou tecnologia sem fio. 159 00:06:43,850 --> 00:06:46,670 >> Portanto, há um monte de passos entre a mim e ao resto do mundo. 160 00:06:46,670 --> 00:06:49,620 E, de fato, mesmo dentro esta foto aqui, 161 00:06:49,620 --> 00:06:52,634 existem alguns outros servidores ou serviços envolvidos. 162 00:06:52,634 --> 00:06:54,800 E eu estou indo só para desenhar estes um tanto abstratamente 163 00:06:54,800 --> 00:06:57,050 apenas para que tenhamos as siglas antes de nós. 164 00:06:57,050 --> 00:06:57,993 >> Um é chamado de DHCP. 165 00:06:57,993 --> 00:06:59,330 166 00:06:59,330 --> 00:07:03,440 E um outro, um pouco mais interessante para hoje, é chamado de DNS. 167 00:07:03,440 --> 00:07:09,160 Então, esses são os servidores que estão de alguma forma acessível para o meu computador também. 168 00:07:09,160 --> 00:07:10,910 Então, agora, vamos provocá além de um pouco de jargão. 169 00:07:10,910 --> 00:07:13,410 Assim, o ponto de acesso é apenas este dispositivo sem fio 170 00:07:13,410 --> 00:07:16,079 muitas vezes com antenas que realmente deixar você falar com um sem fio. 171 00:07:16,079 --> 00:07:17,870 Em casa, você pode chamar este router uma casa. 172 00:07:17,870 --> 00:07:21,550 Ele pode ser feito por Linksys, ou a Apple, ou D-Link, ou qualquer número de empresas. 173 00:07:21,550 --> 00:07:23,930 Isso, por sua vez, está ligado a um interruptor de algum tipo. 174 00:07:23,930 --> 00:07:28,287 Ou de volta para casa, o que é o seu Wi-Fi dispositivo provavelmente ligado ao em vez disso? 175 00:07:28,287 --> 00:07:30,370 Porque você provavelmente não possuir todos os equipamentos. 176 00:07:30,370 --> 00:07:31,900 177 00:07:31,900 --> 00:07:32,400 Sim. 178 00:07:32,400 --> 00:07:36,379 Modem por cabo ou DSL de volta para casa que você tem de Verizon, Comcast ou, 179 00:07:36,379 --> 00:07:37,420 ou uma dessas transportadoras. 180 00:07:37,420 --> 00:07:41,520 Então, acho que de toda essa complexidade como apoio a uma universidade ou realmente 181 00:07:41,520 --> 00:07:42,920 uma empresa como a Comcast. 182 00:07:42,920 --> 00:07:44,690 E realmente, o material que está em sua casa 183 00:07:44,690 --> 00:07:46,800 é provavelmente neste lado da cerca mais talvez 184 00:07:46,800 --> 00:07:50,380 uma delas em casa route-- um estes são modems de cabo ou DSL 185 00:07:50,380 --> 00:07:51,720 modems poderiam proporcionar. 186 00:07:51,720 --> 00:07:55,650 >> Então, um switch é apenas um dispositivo com todo um conjunto de tomadas de dados na mesma. 187 00:07:55,650 --> 00:07:58,940 Na verdade, se você se lembra que a notícia relatório jogamos na tela grande 188 00:07:58,940 --> 00:08:01,930 um par de semanas atrás, onde nós estavam falando choque do escudo, 189 00:08:01,930 --> 00:08:03,270 e quão ruim isto era? 190 00:08:03,270 --> 00:08:05,850 E havia destes fotografias de cabos e conectores, 191 00:08:05,850 --> 00:08:07,569 e coisas que parecem técnico? 192 00:08:07,569 --> 00:08:10,360 Aqueles eram apenas interruptores mudos que apenas internet conecta computadores 193 00:08:10,360 --> 00:08:12,810 conectando cabos para eles. 194 00:08:12,810 --> 00:08:14,140 >> Então, isso é tudo que um switch é. 195 00:08:14,140 --> 00:08:16,363 Agora, esses dispositivos obter um pouco mais interessante. 196 00:08:16,363 --> 00:08:16,863 DHCP. 197 00:08:16,863 --> 00:08:17,846 198 00:08:17,846 --> 00:08:20,470 Se você já remexia o seu computador em casa ou mesmo no campus, 199 00:08:20,470 --> 00:08:21,845 você pode ter visto esta sigla. 200 00:08:21,845 --> 00:08:24,480 Alguém sabe o que um servidor DHCP está? 201 00:08:24,480 --> 00:08:25,560 202 00:08:25,560 --> 00:08:27,360 Protocolo de configuração dinâmica de acolhimento? 203 00:08:27,360 --> 00:08:28,324 204 00:08:28,324 --> 00:08:30,490 Não é o tipo de coisa que você realmente precisa anotar. 205 00:08:30,490 --> 00:08:30,990 DHCP. 206 00:08:30,990 --> 00:08:32,480 207 00:08:32,480 --> 00:08:33,891 ninguém em tudo? 208 00:08:33,891 --> 00:08:34,390 Tudo certo. 209 00:08:34,390 --> 00:08:35,520 Então, vamos rebobinar a história. 210 00:08:35,520 --> 00:08:39,210 Se a história aqui na mão é predicado no meu ter um endereço exclusivo 211 00:08:39,210 --> 00:08:42,909 no mundo, um endereço IP, onde é que isso veio? 212 00:08:42,909 --> 00:08:44,640 No passado, quando você tem que campus, 213 00:08:44,640 --> 00:08:47,790 você realmente teve perguntar a alguém em Harvard, que deve ser o meu endereço IP. 214 00:08:47,790 --> 00:08:49,873 E você faria manualmente digitá-lo em seu computador. 215 00:08:49,873 --> 00:08:53,770 Mas, mais recentemente, as tecnologias existem que permitem que você dinamicamente, 216 00:08:53,770 --> 00:08:58,460 DHCP, obter um endereço IP simplesmente quando você ligue para campus sem fios 217 00:08:58,460 --> 00:08:59,220 ou com um arame. 218 00:08:59,220 --> 00:09:03,800 Assim servidor DHCP é apenas um servidor que dá ao seu computador um IP exclusivo 219 00:09:03,800 --> 00:09:06,349 endereço, um pouco ao acaso ou através de algum algoritmo. 220 00:09:06,349 --> 00:09:08,390 Mas se você acha que volta a algumas semanas ou alguns anos, 221 00:09:08,390 --> 00:09:10,670 quando se registou inicialmente seu computador no campus, 222 00:09:10,670 --> 00:09:13,957 você estava dizendo Harvard, autorizar me para me dar um endereço IP. 223 00:09:13,957 --> 00:09:15,915 Agora start DNS para obter um pouco mais interessante. 224 00:09:15,915 --> 00:09:17,050 225 00:09:17,050 --> 00:09:18,940 Domain Name System. 226 00:09:18,940 --> 00:09:21,970 Alguém quer tomar uma facada o que essa coisa é aqui? 227 00:09:21,970 --> 00:09:26,195 >> É um ou mais servidores que executar uma tarefa bastante simples que é 228 00:09:26,195 --> 00:09:26,945 tipo de importante. 229 00:09:26,945 --> 00:09:30,150 230 00:09:30,150 --> 00:09:31,130 Sim. 231 00:09:31,130 --> 00:09:33,810 >> AUDIÊNCIA: traduz URLs [inaudível]. 232 00:09:33,810 --> 00:09:34,560 DAVID MALAN: Yeah. 233 00:09:34,560 --> 00:09:38,970 Ele traduz URLs para IP endereços e vice-versa. 234 00:09:38,970 --> 00:09:41,310 Considere-se, afinal, de que quando você vai no site, 235 00:09:41,310 --> 00:09:46,200 você digitar algo como facebook.com, ou google.com, ou harvard.edu, 236 00:09:46,200 --> 00:09:50,620 você certamente nunca digitou provavelmente um endereço IP numérico. 237 00:09:50,620 --> 00:09:52,490 >> E você pode pensar o motivo. 238 00:09:52,490 --> 00:09:54,910 De volta ao dia, mesmo Agora, em certa medida, 239 00:09:54,910 --> 00:09:58,030 quando você faz um telefone chamar para uma empresa, 240 00:09:58,030 --> 00:10:02,275 eles realmente se esforçam para comprar-se um número de 800 que realmente tem palavras 241 00:10:02,275 --> 00:10:06,140 nela, como 1-800-collect ou algo isso é memorável como esse para que 242 00:10:06,140 --> 00:10:10,692 as pessoas não tem que se lembrar que C-O-L-G-E-C-T, na verdade, se expande para. 243 00:10:10,692 --> 00:10:12,400 Então, nós já vimos isso heurístico no passado. 244 00:10:12,400 --> 00:10:15,720 E, de fato, é o que os endereços IP eo que vamos chamar nomes de host 245 00:10:15,720 --> 00:10:18,120 ou totalmente qualificado nomes de domínio fazer por nós. 246 00:10:18,120 --> 00:10:22,610 Ela nos permite servidores de endereço por palavras em vez de números. 247 00:10:22,610 --> 00:10:24,560 Assim como nós, na verdade, ver essa conversão. 248 00:10:24,560 --> 00:10:26,393 Eu estou indo para ir em frente e abrir um programa. 249 00:10:26,393 --> 00:10:26,975 250 00:10:26,975 --> 00:10:29,350 Eu estou indo só para ir em frente e abrir uma janela de terminal. 251 00:10:29,350 --> 00:10:31,933 E eu estou indo para ir em frente e mostrar o que um servidor DNS faz. 252 00:10:31,933 --> 00:10:35,700 Por exemplo, se eu queria ver qual é o endereço IP é de Facebook, 253 00:10:35,700 --> 00:10:37,720 Eu posso digitar em um terminal pedir como isto-- 254 00:10:37,720 --> 00:10:40,010 e você pode fazer isso mesmo dentro do seu aparelho. 255 00:10:40,010 --> 00:10:41,595 E isso é pesquisa facebook.com. 256 00:10:41,595 --> 00:10:43,220 257 00:10:43,220 --> 00:10:44,500 >> E eu vejo um monte de coisas. 258 00:10:44,500 --> 00:10:48,097 Esta é a primeira resposta Server-- DNS de Harvard 259 00:10:48,097 --> 00:10:49,930 que a imagem que eu tenho atraídos para lá. --que da 260 00:10:49,930 --> 00:10:54,300 me dizendo que o IP do Facebook endereço é aparentemente isso. 261 00:10:54,300 --> 00:10:58,650 Então deixe-me ir em frente e cópia que 173.252.120.16. 262 00:10:58,650 --> 00:11:00,960 E deixe-me abrir Chrome no meu Mac. 263 00:11:00,960 --> 00:11:06,690 E deixe-me ir para http: // e colar que o endereço IP e pressione Enter. 264 00:11:06,690 --> 00:11:08,950 >> E, de fato, eu me encontro no Facebook. 265 00:11:08,950 --> 00:11:11,090 Assim que a conversão de algum modo, de facto, aconteceu. 266 00:11:11,090 --> 00:11:15,314 E se eu fizer isso de novo, vamos fazer nslookup, www.google.com. 267 00:11:15,314 --> 00:11:17,302 Eu voltar um monte de respostas. 268 00:11:17,302 --> 00:11:20,010 E, de fato, há maneiras diferentes que as empresas implementar isso. 269 00:11:20,010 --> 00:11:22,440 Às vezes, eles dizem o mundo eles têm um endereço IP. 270 00:11:22,440 --> 00:11:25,824 >> Mas que um endereço IP é resolvido ou mapeado para vários servidores. 271 00:11:25,824 --> 00:11:27,740 Ou, no caso do Google, que dizer ao mundo, 272 00:11:27,740 --> 00:11:29,510 nós temos um monte de endereços IP. 273 00:11:29,510 --> 00:11:33,910 Seu laptop é bem-vinda para falar entre em contato com qualquer um desses servidores. 274 00:11:33,910 --> 00:11:36,200 Então, tudo que vem acontecendo por baixo do capô. 275 00:11:36,200 --> 00:11:40,830 >> Quando você digita www.google.com Enter em seu navegador, o seu browser, 276 00:11:40,830 --> 00:11:46,180 e em transformar o seu funcionamento, Mac OS ou Windows, ou Ubuntu Linux, 277 00:11:46,180 --> 00:11:51,010 pedir ao servidor DNS nas proximidades, o que é o endereço real do servidor. 278 00:11:51,010 --> 00:11:54,330 Uma vez que o último dispositivo neste quadro, um roteador, 279 00:11:54,330 --> 00:11:57,840 é aquele cujo propósito na vida é para encaminhar a informação, 280 00:11:57,840 --> 00:12:01,150 rotear pacotes por assim dizer, envelopes de informação digital 281 00:12:01,150 --> 00:12:06,320 contendo zeros e uns de emissor para o destino, de origem 282 00:12:06,320 --> 00:12:07,200 para o receptor. 283 00:12:07,200 --> 00:12:09,760 >> E assim a coisa rotas do roteador. 284 00:12:09,760 --> 00:12:13,000 Então, por que é isso tudo particularmente relevante? 285 00:12:13,000 --> 00:12:16,000 Bem, vamos dar uma olhada em como isso pode ser usado. 286 00:12:16,000 --> 00:12:21,600 Suponha que eu tenho aqui uma foto de Rob Boden. 287 00:12:21,600 --> 00:12:22,690 288 00:12:22,690 --> 00:12:25,150 Então suponho que eu quero enviar esta foto de Rob Boden 289 00:12:25,150 --> 00:12:27,530 em Dan nas costas da sala de aula. 290 00:12:27,530 --> 00:12:29,976 >> Então eu sou um computador como o meu laptop, e Dan 291 00:12:29,976 --> 00:12:31,600 é algum outro computador na internet. 292 00:12:31,600 --> 00:12:34,380 E eu quero enviar um pacote de informações de mim para ele. 293 00:12:34,380 --> 00:12:37,952 Isso levanta a questão: como é que eu realmente rota este pacote para ele. 294 00:12:37,952 --> 00:12:40,660 Bem, em termos humanos, eu diria, hey, você pode passar isso para Dan? 295 00:12:40,660 --> 00:12:42,826 >> E, em seguida, um monte de você provavelmente passá-lo de volta 296 00:12:42,826 --> 00:12:45,890 e para frente e para trás até finalmente faz o seu caminho ao longo de Dan. 297 00:12:45,890 --> 00:12:47,700 Mas isso é um pouco imprecisa. 298 00:12:47,700 --> 00:12:50,370 Computadores provavelmente precisará ser um pouco mais metódica. 299 00:12:50,370 --> 00:12:53,190 Então, provavelmente, Dan tem um endereço IP. 300 00:12:53,190 --> 00:12:57,190 Então, o que realmente devo fazer é que eu deveria levar, por exemplo, um envelope em branco 301 00:12:57,190 --> 00:12:58,140 assim. 302 00:12:58,140 --> 00:13:00,130 E eu não sei o que O endereço IP do Dan é. 303 00:13:00,130 --> 00:13:04,300 >> Então, eu estou indo só para generalizá-lo como IP de Dan. 304 00:13:04,300 --> 00:13:07,511 E eu vou colocar isso em o de campo do meu envelope. 305 00:13:07,511 --> 00:13:09,010 E enquanto isso, eu tenho um endereço IP. 306 00:13:09,010 --> 00:13:10,610 Não importa hoje o que é. 307 00:13:10,610 --> 00:13:15,130 Então, eu estou indo só para dizer que meu IP no canto de trás lá. 308 00:13:15,130 --> 00:13:19,350 E então, eu estou indo para ir em frente e colocar esta imagem dentro deste envelope. 309 00:13:19,350 --> 00:13:22,800 >> E, em seguida, cada um de vocês, presumivelmente, como roteadores na internet, 310 00:13:22,800 --> 00:13:25,470 foram pré-configuradas por os seres humanos em geral ou às vezes 311 00:13:25,470 --> 00:13:29,854 por algoritmos automatizados para saber que se o endereço IP de Dan começa com um 1, 312 00:13:29,854 --> 00:13:30,770 ele deve ir por esse caminho. 313 00:13:30,770 --> 00:13:33,300 Se o endereço IP de Dan começa com a 2, ele deve ir por esse caminho. 314 00:13:33,300 --> 00:13:34,450 Talvez um 3 vai desse jeito. 315 00:13:34,450 --> 00:13:35,575 Talvez um 4 vai desse jeito. 316 00:13:35,575 --> 00:13:36,700 E isso é um pouco demais. 317 00:13:36,700 --> 00:13:38,670 Simplista, mas essa é a idéia geral. 318 00:13:38,670 --> 00:13:42,370 Cada um destes routers-- e não pode ser como muitos como 30 entre eu e Dan. 319 00:13:42,370 --> 00:13:45,140 --have algum tipo de planilha dentro da sua memória, 320 00:13:45,140 --> 00:13:49,070 uma tabela de banco de dados, que apenas diz: Endereço IP que se parece com isso, 321 00:13:49,070 --> 00:13:49,730 vai desta forma. 322 00:13:49,730 --> 00:13:51,960 Um endereço IP que parece assim, vai assim. 323 00:13:51,960 --> 00:13:54,750 E é assim que ele faz decisões bastante simplista. 324 00:13:54,750 --> 00:13:59,440 >> Mas acontece que esses roteadores fazer algo mais do que isso, potencialmente. 325 00:13:59,440 --> 00:14:03,550 Eles permitem que os computadores entrega garantia, pelo menos 326 00:14:03,550 --> 00:14:05,000 com alta probabilidade. 327 00:14:05,000 --> 00:14:08,340 Então você pode, também, ter ouvido, mesmo se você nunca se importou muito ou se perguntou 328 00:14:08,340 --> 00:14:12,140 o que é, você pode ter ouvido de alguma coisa por esta sigla. 329 00:14:12,140 --> 00:14:15,500 Vamos voltar aqui para apenas um momento e puxar para cima este. 330 00:14:15,500 --> 00:14:18,550 >> TCP, protocolo de controle de transmissão. 331 00:14:18,550 --> 00:14:21,494 Outra forma técnica de apenas descrevendo uma outra tecnologia 332 00:14:21,494 --> 00:14:22,660 que é usado na internet. 333 00:14:22,660 --> 00:14:24,809 Então, IP, protocolo de internet é utilizado para o endereçamento. 334 00:14:24,809 --> 00:14:27,100 É um padrão que o mundo surgiu com o que disse, 335 00:14:27,100 --> 00:14:31,059 você colocar um endereço IP aqui para Dan, e um endereço IP aqui para si mesmo, 336 00:14:31,059 --> 00:14:33,100 e, em seguida, você colocar algum informações em um envelope. 337 00:14:33,100 --> 00:14:36,600 >> Mas TCP é outra tecnologia, usado em conjunto com o IP. 338 00:14:36,600 --> 00:14:38,970 E, de fato, se você já visto essas siglas antes, 339 00:14:38,970 --> 00:14:42,110 Você provavelmente já viu TCP cortar IP que apenas 340 00:14:42,110 --> 00:14:43,900 significa que as pessoas tendem a usá-los juntos. 341 00:14:43,900 --> 00:14:47,570 Bem, TCP é uma espécie de legal, pois permite 342 00:14:47,570 --> 00:14:50,220 você para aumentar a probabilidade que os dados são realmente 343 00:14:50,220 --> 00:14:51,970 vai ficar de mim para Dan. 344 00:14:51,970 --> 00:14:54,080 >> Na verdade, a internet é um lugar maluco. 345 00:14:54,080 --> 00:14:56,530 Não há nenhuma garantia de que se eu enviar os dados desta forma 346 00:14:56,530 --> 00:14:58,530 que está indo para ir dessa forma da próxima vez. 347 00:14:58,530 --> 00:14:59,905 Poderia ir por esse caminho ou daquela maneira. 348 00:14:59,905 --> 00:15:02,680 A menor distância entre dois pontos não é necessariamente 349 00:15:02,680 --> 00:15:04,860 uma linha reta ou na mesma linha. 350 00:15:04,860 --> 00:15:07,170 >> Além disso, alguns de vocês caras podem cometer erros 351 00:15:07,170 --> 00:15:09,780 ou ficar sobrecarregado com muito muitos envelopes vindo em sua direção. 352 00:15:09,780 --> 00:15:10,940 Então você só vai desistir e literalmente 353 00:15:10,940 --> 00:15:13,050 soltar algumas delas envelopes no chão. 354 00:15:13,050 --> 00:15:16,930 E, na mesma forma podem ser dados caiu na internet por roteadores. 355 00:15:16,930 --> 00:15:18,680 Assim, para diminuir o chances de isso, eu vou 356 00:15:18,680 --> 00:15:21,980 para levar a minha pouca segurança tesoura cortar aqui e Rob 357 00:15:21,980 --> 00:15:26,140 em, digamos, quatro peças, quatro segmentos. 358 00:15:26,140 --> 00:15:27,210 359 00:15:27,210 --> 00:15:33,350 >> E agora, eu estou indo para ir em frente e colocar mais um pedaço de informação 360 00:15:33,350 --> 00:15:34,610 nesta envelope. 361 00:15:34,610 --> 00:15:39,630 Vou dizer algo como: 1 de 4. 362 00:15:39,630 --> 00:15:43,370 Então, agora, o meu envelope final, em menos o primeiro, parece que isso. 363 00:15:43,370 --> 00:15:45,500 Eu estou indo para ir em frente e colocar isso aqui. 364 00:15:45,500 --> 00:15:47,070 365 00:15:47,070 --> 00:15:53,430 E por causa do tempo, eu vou rotular os outros de forma idêntica à do 2 4, 366 00:15:53,430 --> 00:15:57,760 3 de 4, 4 de 4. 367 00:15:57,760 --> 00:16:02,170 >> Mais uma vez, com o endereço IP de Dan no frente dele e com o meu endereço IP 368 00:16:02,170 --> 00:16:06,660 na parte traseira esquerda, mas eu não pode enviá-los por enquanto. 369 00:16:06,660 --> 00:16:08,930 Pois verifica-se que na internet, 370 00:16:08,930 --> 00:16:10,980 servidores podem fazer várias coisas. 371 00:16:10,980 --> 00:16:14,300 Na verdade, todos nós podemos usar a web um pouco, a rede mundial de computadores, 372 00:16:14,300 --> 00:16:16,139 http: // o que quer. 373 00:16:16,139 --> 00:16:17,930 Mas há outro serviços na internet. 374 00:16:17,930 --> 00:16:21,760 Quais são alguns dos outros serviços, tipo de usuário, serviços amigáveis ​​para o consumidor 375 00:16:21,760 --> 00:16:25,020 que vêm à mente, além um programa-tipo de navegador web? 376 00:16:25,020 --> 00:16:26,724 377 00:16:26,724 --> 00:16:27,390 AUDIÊNCIA: Email. 378 00:16:27,390 --> 00:16:28,180 DAVID MALAN: Email. 379 00:16:28,180 --> 00:16:28,410 Está bem. 380 00:16:28,410 --> 00:16:28,630 Boa. 381 00:16:28,630 --> 00:16:29,446 O que é mais uma? 382 00:16:29,446 --> 00:16:30,070 AUDIÊNCIA: Bate-papo. 383 00:16:30,070 --> 00:16:32,780 DAVID MALAN: Então bate-papo, se que é o Skype, ou Gchat, ou algo 384 00:16:32,780 --> 00:16:33,992 assim. 385 00:16:33,992 --> 00:16:34,817 >> AUDIÊNCIA: Armazenamento. 386 00:16:34,817 --> 00:16:37,150 DAVID MALAN: Então algum tipo de serviço de armazenamento, com certeza. 387 00:16:37,150 --> 00:16:39,004 Algo como Dropbox, ou caixa, ou semelhante. 388 00:16:39,004 --> 00:16:40,920 Portanto, não é diferente serviços na internet. 389 00:16:40,920 --> 00:16:44,090 E verifica-se que Dan, se ele é realmente um computador, 390 00:16:44,090 --> 00:16:46,520 não tem de ser dedicado de uma coisa na vida. 391 00:16:46,520 --> 00:16:49,650 Ele realmente pode fazer várias coisas. 392 00:16:49,650 --> 00:16:51,740 E, de fato, ele pode ser um servidor de e-mail. 393 00:16:51,740 --> 00:16:53,270 Ele pode ser um servidor web. 394 00:16:53,270 --> 00:16:55,120 Ele pode ser um servidor de chat. 395 00:16:55,120 --> 00:16:57,600 >> Mas isso parece sugerir que Dan precisa saber 396 00:16:57,600 --> 00:17:01,010 com antecedência quais são os conteúdo dessas mensagens. 397 00:17:01,010 --> 00:17:02,830 Isso é uma página web que eu estou lhe enviando? 398 00:17:02,830 --> 00:17:04,140 É um email que eu estou lhe enviando? 399 00:17:04,140 --> 00:17:05,930 É um instante mensagem que estou enviando-lhe? 400 00:17:05,930 --> 00:17:08,630 Então, nós precisamos de mais um pedaço de informações sobre estes envelope 401 00:17:08,630 --> 00:17:10,930 de modo que Dan, quando ele recebe este envelope, 402 00:17:10,930 --> 00:17:13,119 sabe que programa usar para exibi-lo. 403 00:17:13,119 --> 00:17:14,200 >> É um navegador? 404 00:17:14,200 --> 00:17:15,170 É o Google? 405 00:17:15,170 --> 00:17:16,170 É o Skype? 406 00:17:16,170 --> 00:17:19,760 Ou é Outlook ou algum outro programa por completo? 407 00:17:19,760 --> 00:17:23,740 E assim, com o TCP vem apenas uma convenção humana. 408 00:17:23,740 --> 00:17:26,930 O mundo decidiu há alguns anos atrás de associar números inteiros únicos 409 00:17:26,930 --> 00:17:28,520 com os serviços mais populares. 410 00:17:28,520 --> 00:17:31,920 >> Um é chamado de Protocolo de Transferência de Arquivo, FTP, mas é um pouco datada agora. 411 00:17:31,920 --> 00:17:34,150 Mas seu identificador exclusivo é 21. 412 00:17:34,150 --> 00:17:39,020 SMTP para email de saída, sua única identificador é de 25 apenas porque. 413 00:17:39,020 --> 00:17:43,616 DNS, a única coisa de que falamos anteriormente, usa o número 53 para suas consultas. 414 00:17:43,616 --> 00:17:45,365 Como o que é o IP endereço google.com? 415 00:17:45,365 --> 00:17:46,580 416 00:17:46,580 --> 00:17:49,790 >> E agora, o mais familiarizado você pode ter em algum lugar, em algum momento 417 00:17:49,790 --> 00:17:52,620 visto o número 80 e talvez 443. 418 00:17:52,620 --> 00:17:55,822 Esses são os únicos identificadores para HTTP, 419 00:17:55,822 --> 00:17:57,530 que é o idioma veremos em breve usado 420 00:17:57,530 --> 00:18:00,000 para o tráfego web entre navegadores e servidores. 421 00:18:00,000 --> 00:18:02,740 E 443 é para o versão segura dos mesmos. 422 00:18:02,740 --> 00:18:05,530 >> Assim, a um último detalhe que eu sou vai colocar no meu envelope 423 00:18:05,530 --> 00:18:08,530 é que eu não vou enviar esta apenas para IP de Dan. 424 00:18:08,530 --> 00:18:13,630 Vou enviá-lo para dizer, : 80, se o que eu estou tentando enviar 425 00:18:13,630 --> 00:18:16,862 ele é uma página web, uma página da web que contém a foto de Rob Boden. 426 00:18:16,862 --> 00:18:19,320 Então, eu vou fazer o mesmo coisa sobre estes outros envelopes. 427 00:18:19,320 --> 00:18:23,620 >> E então, em última análise, eu vou cair estes fora com o roteador mais próximo, 428 00:18:23,620 --> 00:18:26,300 Reconhecendo que esta roteador pode não ser necessariamente 429 00:18:26,300 --> 00:18:28,210 tomar o mesmo caminho de cada vez. 430 00:18:28,210 --> 00:18:30,900 Na verdade, eu poderia ter a primeiro pacote indo para este lado. 431 00:18:30,900 --> 00:18:32,670 Segundo pacote pode ir por esse caminho. 432 00:18:32,670 --> 00:18:34,250 Terceiro packet-- iniciar encaminhamento. 433 00:18:34,250 --> 00:18:35,420 --might ir por aqui. 434 00:18:35,420 --> 00:18:36,440 435 00:18:36,440 --> 00:18:39,530 E em theory-- não pode mantê-lo. 436 00:18:39,530 --> 00:18:43,660 Em teoria, todos os quatro destes pacotes deveria eventualmente rota sua maneira, 437 00:18:43,660 --> 00:18:46,940 no entanto eficiente ou ineficiente, todo o caminho para a parte traseira. 438 00:18:46,940 --> 00:18:51,560 >> Em que ponto, Dan, mediante recebimento, pode remontá-las 439 00:18:51,560 --> 00:18:55,735 baseado on-- o engraçado é que, todos nós sabemos que o resultado aqui 440 00:18:55,735 --> 00:18:56,360 vai ser. 441 00:18:56,360 --> 00:18:57,600 Dan está indo para obter uma imagem de Rob. 442 00:18:57,600 --> 00:18:58,974 Mas vamos ver como isso funciona. 443 00:18:58,974 --> 00:18:59,664 444 00:18:59,664 --> 00:19:02,080 Bem, sim, Dan vai obter parte de uma imagem de Rob. 445 00:19:02,080 --> 00:19:04,286 446 00:19:04,286 --> 00:19:04,785 Muito bom. 447 00:19:04,785 --> 00:19:06,200 448 00:19:06,200 --> 00:19:07,580 Todo mundo está hoje participando. 449 00:19:07,580 --> 00:19:09,200 450 00:19:09,200 --> 00:19:09,910 Tudo certo. 451 00:19:09,910 --> 00:19:13,870 Assim como Dan começa a receber estes pacotes, vamos fazer uma pergunta. 452 00:19:13,870 --> 00:19:18,820 E se um de vocês fica preguiçoso, sobrecarregado, mal-intencionado, ou apenas com alimentação 453 00:19:18,820 --> 00:19:22,570 fora, e um ou mais dos pacote não torná-lo para Dan? 454 00:19:22,570 --> 00:19:26,920 >> Como é que Dan vai saber que ele não fez receber um dos segmentos dos quatro 455 00:19:26,920 --> 00:19:28,040 Enviei-lhe? 456 00:19:28,040 --> 00:19:30,040 Apenas de forma intuitiva, o que podemos fazer? 457 00:19:30,040 --> 00:19:30,540 Sim? 458 00:19:30,540 --> 00:19:31,456 >> AUDIÊNCIA: [inaudível]. 459 00:19:31,456 --> 00:19:35,885 460 00:19:35,885 --> 00:19:36,760 DAVID MALAN: Exatamente. 461 00:19:36,760 --> 00:19:40,250 Porque eu tenho contado a eles de forma única, e Como segmentos lá muitos eu especifiquei 462 00:19:40,250 --> 00:19:44,030 deve ser, ele pode deduzir que o qual, se for o caso, um dos segmentos 463 00:19:44,030 --> 00:19:45,070 ele está realmente faltando. 464 00:19:45,070 --> 00:19:48,770 E o que diz a TCP computadores para fazer, se os computadores, como Mac OS, 465 00:19:48,770 --> 00:19:52,510 e Windows, Linux e suporte e compreender TCP, o que eles fazem, 466 00:19:52,510 --> 00:19:57,010 Documentação do TCP essencialmente Dan diz que deve enviar-me 467 00:19:57,010 --> 00:20:00,580 uma mensagem de volta dizendo, ei, David, Eu estou sentindo falta de número de pacotes 1 de 4, 468 00:20:00,580 --> 00:20:02,290 ou 3 de 4, o que ela é. 469 00:20:02,290 --> 00:20:06,016 >> E então, meu trabalho é levar outra foto de Rob, 470 00:20:06,016 --> 00:20:09,140 que temos de extras para mais tarde hoje se você gostaria de ter um com você, 471 00:20:09,140 --> 00:20:13,550 e então eu posso reenviar esse segmento de Rob todo o caminho para a volta. 472 00:20:13,550 --> 00:20:16,380 >> Assim como simplista como este mecanismo é, que 473 00:20:16,380 --> 00:20:20,310 é o que está acontecendo quase todo o tempo você faz algo na internet, 474 00:20:20,310 --> 00:20:22,530 especialmente para estes o mais popular dos serviços. 475 00:20:22,530 --> 00:20:26,500 Há outros protocolos, além de outras tecnologias de TCP 476 00:20:26,500 --> 00:20:27,880 que trabalhar um pouco diferente. 477 00:20:27,880 --> 00:20:33,040 Mas muitos dos serviços que tipicamente usar realmente dependem destes protocolos. 478 00:20:33,040 --> 00:20:35,720 >> Assim, Dan, você conseguiu o imagem completa lá atrás? 479 00:20:35,720 --> 00:20:36,220 Sim. 480 00:20:36,220 --> 00:20:37,840 Temos remontado Rob nas costas. 481 00:20:37,840 --> 00:20:39,610 Muito obrigado aos roteadores. 482 00:20:39,610 --> 00:20:43,260 Suponha-se, eu realmente quero o veja os roteadores entre mim 483 00:20:43,260 --> 00:20:46,400 e MIT, assim como vocês foram os roteadores entre mim e Dan. 484 00:20:46,400 --> 00:20:49,500 >> Bem, ao invés de nslookup para pesquisa de servidor de nomes, 485 00:20:49,500 --> 00:20:53,150 Eu posso, em vez digite rota de rastreamento, que é realmente vai fazer o que diz. 486 00:20:53,150 --> 00:20:55,240 E eu vou fazer e modo silencioso com um traço. 487 00:20:55,240 --> 00:20:57,448 É um argumento de linha de comando que apenas diz, tente este 488 00:20:57,448 --> 00:20:58,740 uma vez e não várias vezes. 489 00:20:58,740 --> 00:21:02,210 >> E agora, eu vou digitar www.mit.edu. 490 00:21:02,210 --> 00:21:05,660 Agora, a saída é bastante rápido e enigmática. 491 00:21:05,660 --> 00:21:08,300 Mas o que é interessante sobre esta é que cada uma destas linhas 492 00:21:08,300 --> 00:21:10,750 representa, essencialmente, um aluno nesta audiência 493 00:21:10,750 --> 00:21:13,870 se você fosse o caminho entre mim e MIT. 494 00:21:13,870 --> 00:21:17,930 O que você vê aqui, em primeiro lugar, é o nome de domínio que eu digitei, 495 00:21:17,930 --> 00:21:20,500 ou de domínio totalmente qualificado nome, como é chamado corretamente. 496 00:21:20,500 --> 00:21:24,420 >> E isto é, aparentemente, o Endereço IP do www.mit.edu. 497 00:21:24,420 --> 00:21:26,260 Meu computador percebi que para mim. 498 00:21:26,260 --> 00:21:29,170 Isso aqui é uma promessa que vamos apenas 499 00:21:29,170 --> 00:21:31,490 para tentar chegar a MIT no prazo de 30 saltos. 500 00:21:31,490 --> 00:21:34,180 É melhor haver não mais do que 30 alunos entre mim e Dan. 501 00:21:34,180 --> 00:21:37,870 E agora, cada uma dessas linhas representa literalmente um roteador 502 00:21:37,870 --> 00:21:40,280 entre mim e Dan, literalmente um de vocês. 503 00:21:40,280 --> 00:21:42,950 >> E assim, este não parece ter um nome, um nome de domínio. 504 00:21:42,950 --> 00:21:44,150 Ele só tem um IP. 505 00:21:44,150 --> 00:21:49,439 E levou apenas 0,662 milissegundos para obter de mim para que o primeiro roteador. 506 00:21:49,439 --> 00:21:51,230 O próximo não era que muito mais longe. 507 00:21:51,230 --> 00:21:53,560 Levou apenas um milisegundos para chegar lá. 508 00:21:53,560 --> 00:21:56,280 E agora, felizmente, as coisas ficar um pouco mais user-friendly 509 00:21:56,280 --> 00:21:58,860 com nomes que são enigmáticas mas um pouco mais a dizer. 510 00:21:58,860 --> 00:22:03,440 >> Isso aparentemente é um roteador no núcleo da rede da Harvard alojados, 511 00:22:03,440 --> 00:22:06,330 só porque as pessoas disseram-nos este, no Centro de Ciências, SC. 512 00:22:06,330 --> 00:22:11,720 E GW é apenas uma notação abreviada para porta de entrada que é um sinônimo para o roteador. 513 00:22:11,720 --> 00:22:14,630 Portanto, este é um sistema maneira sobrescrito do administrador 514 00:22:14,630 --> 00:22:17,230 de nomear um dos servidores no Centro de Ciências. 515 00:22:17,230 --> 00:22:20,360 >> Entretanto, esse servidor é aparentemente ligados por algum tipo de cabo 516 00:22:20,360 --> 00:22:24,760 a outro roteador que é apelidado o gateway fronteira um traço 517 00:22:24,760 --> 00:22:26,770 alguma coisa, o que quer que esses números significam. 518 00:22:26,770 --> 00:22:29,230 E, em seguida, aparentemente, Harvard tem uma conexão 519 00:22:29,230 --> 00:22:31,340 isso é outra milissegundo distância a algo 520 00:22:31,340 --> 00:22:35,590 chamado a encruzilhada do norte que é um ponto de troca de tráfego comum 521 00:22:35,590 --> 00:22:38,430 entre grandes lugares como Harvard onde os lotes de cabeamento vai em 522 00:22:38,430 --> 00:22:40,870 e permite que as interligações entre diferentes entidades. 523 00:22:40,870 --> 00:22:43,700 >> Passo seis, infelizmente, não tem um nome válido. 524 00:22:43,700 --> 00:22:45,370 E o passo sete fica interessante. 525 00:22:45,370 --> 00:22:46,820 526 00:22:46,820 --> 00:22:49,260 Eu não tenho nenhuma idéia do que a maioria destes dizer. 527 00:22:49,260 --> 00:22:50,875 Mas NY faz saltar para fora de mim. 528 00:22:50,875 --> 00:22:52,375 E o que isso provavelmente significa? 529 00:22:52,375 --> 00:22:54,810 530 00:22:54,810 --> 00:22:56,520 Não é mesmo técnica. 531 00:22:56,520 --> 00:22:57,400 Apenas New York. 532 00:22:57,400 --> 00:23:00,510 Então, na verdade, o que há de humano comum convenção não garantida 533 00:23:00,510 --> 00:23:04,730 mas a convenção comum é a de roteadores nome pela natureza da cidade ou do aeroporto 534 00:23:04,730 --> 00:23:05,960 código que eles estão mais perto. 535 00:23:05,960 --> 00:23:08,630 >> Assim, com alguma probabilidade, este número router sete 536 00:23:08,630 --> 00:23:10,270 é, provavelmente, de fato, em Nova York. 537 00:23:10,270 --> 00:23:13,020 E isso parece corroborar essa suposição porque é 538 00:23:13,020 --> 00:23:16,700 seis milissegundos em vez de apenas um ou então para alguma coisa aqui no campus. 539 00:23:16,700 --> 00:23:19,900 Mas agora levar isso em conta, direito sobre Megabus ou outros enfeites, 540 00:23:19,900 --> 00:23:23,810 isso pode levar quatro, cinco, seis horas para obter um ser humano a partir daqui para Nova York. 541 00:23:23,810 --> 00:23:28,040 >> Para pegar um pedaço de dados, leva apenas seis milésimos de segundo 542 00:23:28,040 --> 00:23:31,020 para obter um pacote de mim para Dan se ele fosse todo o caminho de Nova York. 543 00:23:31,020 --> 00:23:36,832 Então, finalmente, este aparentemente é o nome de domínio real para www.mit.edu. 544 00:23:36,832 --> 00:23:38,790 Eles têm aparentemente terceirizou seus servidores web 545 00:23:38,790 --> 00:23:42,030 para uma empresa chamada Akamai, o que significa alguma outra empresa executa seus servidores. 546 00:23:42,030 --> 00:23:44,380 E é por isso que estamos vendo que coisa estranha lá. 547 00:23:44,380 --> 00:23:45,720 >> Bem, vamos fazer isso mais uma vez. 548 00:23:45,720 --> 00:23:49,150 Vamos ir em frente e fazer um traço rota para o nosso amigo Professor Nick 549 00:23:49,150 --> 00:23:52,955 Parlante em Stanford que tem um servidor chamado nifty.stanfor.edu. 550 00:23:52,955 --> 00:23:55,870 551 00:23:55,870 --> 00:23:56,980 Enter. 552 00:23:56,980 --> 00:23:59,460 E agora, vamos ver, provavelmente, um percurso um pouco mais longo 553 00:23:59,460 --> 00:24:00,960 que passa por mais algumas cidades. 554 00:24:00,960 --> 00:24:03,160 Então, aqui estes sem nome Servidores de Harvard aqui. 555 00:24:03,160 --> 00:24:05,660 Estamos no centro de Harvard, o gateway fronteira de Harvard, 556 00:24:05,660 --> 00:24:08,081 encruzilhada do norte, sempre que tal seja. 557 00:24:08,081 --> 00:24:10,080 E agora, está ficando um pouco mais interessante. 558 00:24:10,080 --> 00:24:12,960 Eu estou supondo que router número oito está em que cidade? 559 00:24:12,960 --> 00:24:14,210 AUDIÊNCIA: [interpondo VOZES] 560 00:24:14,210 --> 00:24:18,570 DAVID MALAN: Chicago, provavelmente, com base sobre esta, com base nesta coisa aqui. 561 00:24:18,570 --> 00:24:25,220 E agora temos Salt Lake City, talvez, talvez Los Angeles aqui, e, em seguida, LAX, 562 00:24:25,220 --> 00:24:27,690 sim, isso provavelmente é LA pelo fundo. 563 00:24:27,690 --> 00:24:29,940 Até que, finalmente, ele vai do sul da Califórnia 564 00:24:29,940 --> 00:24:34,420 todo o caminho até o norte da Califórnia para onde é Stanford, em Palo Alto. 565 00:24:34,420 --> 00:24:35,299 Então, muito legal. 566 00:24:35,299 --> 00:24:36,840 E vamos dar um passo adiante. 567 00:24:36,840 --> 00:24:39,000 Ele, aparentemente, seria levá-lo 82 milissegundos 568 00:24:39,000 --> 00:24:42,360 para enviar uma mensagem para Dan, se você fosse na Califórnia em vez de Nova Iorque. 569 00:24:42,360 --> 00:24:45,090 Vamos fazer alguma coisa como rotas de rastreamento, uma 570 00:24:45,090 --> 00:24:51,350 tente www.cnn.co.jp para o Versão japonesa do site da CNN. 571 00:24:51,350 --> 00:24:52,540 572 00:24:52,540 --> 00:24:54,910 E agora, nós ainda estamos em Boston parece no momento. 573 00:24:54,910 --> 00:24:56,050 574 00:24:56,050 --> 00:24:58,165 >> Um casal de servidores e seis oito não estão respondendo 575 00:24:58,165 --> 00:24:59,790 porque está sendo um pouco particular. 576 00:24:59,790 --> 00:25:04,970 Mas, finalmente, parece haver algo interessante acontecendo entre, 577 00:25:04,970 --> 00:25:08,395 vamos dizer, passo sete e nove. 578 00:25:08,395 --> 00:25:09,800 579 00:25:09,800 --> 00:25:12,610 O que é provavelmente entre sete e nove anos, e, certamente, 580 00:25:12,610 --> 00:25:14,610 entre sete e 17 passo? 581 00:25:14,610 --> 00:25:18,090 582 00:25:18,090 --> 00:25:20,210 Há um enorme salto na quantidade de tempo 583 00:25:20,210 --> 00:25:23,540 ele está tomando para dados para ir de um destes lúpulo, um desses routers 584 00:25:23,540 --> 00:25:24,060 para outro. 585 00:25:24,060 --> 00:25:27,310 >> Assim, as probabilidades são, em algum lugar aqui, há provavelmente, 586 00:25:27,310 --> 00:25:31,440 especialmente aqui, há provavelmente um grande corpo de água que 587 00:25:31,440 --> 00:25:35,320 tem algum trans-Pacífico ou trans Cabo Atlântico, que requer, na verdade, 588 00:25:35,320 --> 00:25:37,710 ainda mais tempo para os dados a ir de um ponto a outro. 589 00:25:37,710 --> 00:25:40,690 Mas, novamente, imaginar as horas levaria a voar para o Japão. 590 00:25:40,690 --> 00:25:45,786 Aqui, em cerca de 200 milissegundos, lança, sua mensagem é realmente lá. 591 00:25:45,786 --> 00:25:48,160 Então você pode brincar com esta no aparelho ou mesmo 592 00:25:48,160 --> 00:25:50,940 no Windows ou Mac OS com ligeiramente diferentes comandos. 593 00:25:50,940 --> 00:25:53,860 Às vezes, você vai ter essas estrelas, como em filas de seis e oito, que 594 00:25:53,860 --> 00:25:55,300 significa apenas que os roteadores não estão configurados 595 00:25:55,300 --> 00:25:57,120 para lhe dar uma resposta pelo amor de privacidade. 596 00:25:57,120 --> 00:26:00,210 Mas, geralmente, esta técnica seria, de fato, trabalhar. 597 00:26:00,210 --> 00:26:03,730 >> Então não é que também há outros informações suculento espreita em ferramentas 598 00:26:03,730 --> 00:26:05,610 que você toma para concedido a cada dia. 599 00:26:05,610 --> 00:26:08,560 Assim, por exemplo, se você receber um e-mail, francamente, como alguns de vocês 600 00:26:08,560 --> 00:26:11,270 pode ter recentemente, de questionável origens, se você nunca 601 00:26:11,270 --> 00:26:13,330 olhou para interface do Gmail antes, se é 602 00:26:13,330 --> 00:26:15,560 para a interface de faculdade ou seu pessoal, 603 00:26:15,560 --> 00:26:17,620 você pode ver o seu caixa de entrada com essa aparência. 604 00:26:17,620 --> 00:26:20,910 >> E, de fato, este é um e-mail Enviei, malan@harvard.edu, 605 00:26:20,910 --> 00:26:24,620 para jharvard@cs50.harvard.edu esta manhã apenas 606 00:26:24,620 --> 00:26:26,070 para que eu pudesse tirar um screenshot. 607 00:26:26,070 --> 00:26:28,149 Mas ao que parece, tudo desta vez no Gmail, 608 00:26:28,149 --> 00:26:30,190 há aquele pequeno triângulo em direção ao canto superior direito 609 00:26:30,190 --> 00:26:34,080 há ao lado da crista Harvard que se você clicar, você pode clicar em Mostrar original. 610 00:26:34,080 --> 00:26:35,160 611 00:26:35,160 --> 00:26:39,260 E se você fizer isso, você vai realmente ver um monte de informações muito esotérico 612 00:26:39,260 --> 00:26:43,360 como data e hora, e IP endereços e nomes de domínio. 613 00:26:43,360 --> 00:26:46,990 >> Mas você vai ver, em suma, o cabeçalhos que todo esse tempo têm 614 00:26:46,990 --> 00:26:50,430 foi atingido em cada enviar e-mail que você envia e recebe. 615 00:26:50,430 --> 00:26:54,130 E é desses cabeçalhos que as pessoas podem usar, cientista da computação ou de outra forma, 616 00:26:54,130 --> 00:26:56,670 na verdade, com a inferir alguma probabilidade, onde 617 00:26:56,670 --> 00:26:59,290 e de quem um e-mail realmente veio. 618 00:26:59,290 --> 00:27:01,830 >> Na verdade, vamos falar em semanas mais tarde sobre como e-mail 619 00:27:01,830 --> 00:27:04,100 propriamente dito pode ser gerado programática que 620 00:27:04,100 --> 00:27:07,100 é uma coisa muito boa para um site que quer enviar e-mails para os usuários. 621 00:27:07,100 --> 00:27:12,020 Mas vamos ver, também, o quão trivial é forjar e-mails de alguém 622 00:27:12,020 --> 00:27:15,380 a outra pessoa, a menos que você realmente saiba como verificar os cabeçalhos. 623 00:27:15,380 --> 00:27:18,670 E mesmo que é um perdedor proposição nos dias de hoje. 624 00:27:18,670 --> 00:27:22,220 >> Assim, com o que disse, vamos uma camada de cima. 625 00:27:22,220 --> 00:27:25,100 Começamos com IP que aborda pacotes para nós, 626 00:27:25,100 --> 00:27:26,470 dá-lhes endereços únicos. 627 00:27:26,470 --> 00:27:29,770 TCP, o que, em suma, garante a entrega ou pelo menos 628 00:27:29,770 --> 00:27:34,002 aumenta a probabilidade do mesmo por adicionando coisas como segmentos, 1 ou 4, 629 00:27:34,002 --> 00:27:36,740 2 de 4, 3 de 4, e 4 de 4. 630 00:27:36,740 --> 00:27:40,710 >> E agora, vamos camada em cima de que um outro protocolo. 631 00:27:40,710 --> 00:27:44,550 Todas estas coisas são protocolos, convenções de computador 632 00:27:44,550 --> 00:27:47,670 que ditam como dois computadores falar uns com os outros. 633 00:27:47,670 --> 00:27:52,030 De HTTP, finalmente, hoje em dia, é protocolo de transferência de hipertexto. 634 00:27:52,030 --> 00:27:54,100 E isto é o protocolo que os navegadores 635 00:27:54,100 --> 00:27:56,410 usar quando se fala de servidores web. 636 00:27:56,410 --> 00:27:59,970 >> Então, quando você puxar para cima um navegador como Chrome ou IE, ou Firefox, ou Safari, 637 00:27:59,970 --> 00:28:04,230 ou o que quer, e você digitar algo como facebook.com e pressione Enter, 638 00:28:04,230 --> 00:28:08,390 Não só faz o seu primeiro computador traduzir facebook.com em quê? 639 00:28:08,390 --> 00:28:10,590 640 00:28:10,590 --> 00:28:11,770 Um endereço IP. 641 00:28:11,770 --> 00:28:17,420 Em seguida, ele converts-- ele envia uma mensagem para esse ditado endereço IP, 642 00:28:17,420 --> 00:28:21,360 dá-me a página de hoje ou dar me a tela de login do Facebook. 643 00:28:21,360 --> 00:28:25,290 >> Ou se você já estiver logado, dar me o modo de exibição padrão do meu cronograma. 644 00:28:25,290 --> 00:28:26,820 Então é isso que diz HTTP. 645 00:28:26,820 --> 00:28:30,055 E mais coloquialmente, se eu sou um web servidor e você é-- qual é o seu nome, 646 00:28:30,055 --> 00:28:30,180 de novo? 647 00:28:30,180 --> 00:28:30,920 >> AUDIÊNCIA: Margot. 648 00:28:30,920 --> 00:28:34,250 >> DAVID MALAN: Margot é um web servidor, e eu sou um navegador web, 649 00:28:34,250 --> 00:28:37,610 e eu simplesmente quero recuperar minha cronograma de Margot, margot.com, 650 00:28:37,610 --> 00:28:39,640 Eu diria, Olá, eu sou Davi. 651 00:28:39,640 --> 00:28:40,870 >> AUDIÊNCIA: Oi, eu sou Margot. 652 00:28:40,870 --> 00:28:43,570 >> DAVID MALAN: E você, então, responder com informações adicionais para mim. 653 00:28:43,570 --> 00:28:45,890 Então nós temos esse humano estúpido convenção para instance-- obrigado. 654 00:28:45,890 --> 00:28:47,510 --de apertando as mãos uns dos outros. 655 00:28:47,510 --> 00:28:51,670 E os computadores têm a mesma idéia onde um cliente, como um navegador, 656 00:28:51,670 --> 00:28:55,600 pede um servidor para fazer algo em seu nome. 657 00:28:55,600 --> 00:28:57,540 >> E aqui está uma foto, por exemplo. 658 00:28:57,540 --> 00:29:01,120 À esquerda é um computador portátil, ambiente de trabalho, qualquer que seja, ou mesmo um telefone. 659 00:29:01,120 --> 00:29:03,890 E na direita é muito datada de vista de um servidor. 660 00:29:03,890 --> 00:29:06,460 Eles normalmente parece menor e mais sexy estes dias. 661 00:29:06,460 --> 00:29:09,570 Mas o ponto é simplesmente que há algum tipo de comunicação 662 00:29:09,570 --> 00:29:11,800 entre cliente e servidor. 663 00:29:11,800 --> 00:29:14,080 >> E clientes, no sentido de de alguém em um restaurante 664 00:29:14,080 --> 00:29:16,620 eo garçom ou garçonete, mesma idéia com computadores. 665 00:29:16,620 --> 00:29:19,340 Os clientes e servidores, um pede informações, 666 00:29:19,340 --> 00:29:21,560 uma responde com informações. 667 00:29:21,560 --> 00:29:23,920 Agora, como é que isso informações voltar? 668 00:29:23,920 --> 00:29:25,890 Bem, considere isso. 669 00:29:25,890 --> 00:29:30,360 Obter é uma espécie de padrão maneira-- e é um termo super simples. 670 00:29:30,360 --> 00:29:34,530 --que só dita como um navegador obtém informações a partir de um servidor. 671 00:29:34,530 --> 00:29:38,270 >> Em outras palavras, ao invés de apenas goof-ily estendendo minha mão para Margot, 672 00:29:38,270 --> 00:29:42,100 se eu realmente fosse um navegador, eu iria enfiar dentro de um envelope, 673 00:29:42,100 --> 00:29:46,580 como eu fiz com a foto do Rob antes, um mensagem de texto que diz literalmente 674 00:29:46,580 --> 00:29:53,084 algo como isso, get / http / 1.1hostwww.google.com 675 00:29:53,084 --> 00:29:56,670 ou margot.com ou qualquer que seja o O nome de servidor pode acontecer de ser. 676 00:29:56,670 --> 00:29:58,540 E então, dot dot dot, algumas outras coisas. 677 00:29:58,540 --> 00:30:00,310 >> Mas, literalmente, dentro de um envelope faria 678 00:30:00,310 --> 00:30:03,290 ser textual bastante simples mensagem como essa. 679 00:30:03,290 --> 00:30:05,990 Que após o recebimento, Margot faria abrir, ler o conteúdo, 680 00:30:05,990 --> 00:30:07,640 e responder adequadamente. 681 00:30:07,640 --> 00:30:12,000 Agora, é um pouco não-óbvia com este exemplo. 682 00:30:12,000 --> 00:30:16,130 Mas chegar /, o que é a barra provavelmente se referindo, apenas com base 683 00:30:16,130 --> 00:30:20,470 em sua familiaridade com navegar na web na vida diária? 684 00:30:20,470 --> 00:30:22,206 Qual é a barra? 685 00:30:22,206 --> 00:30:23,147 >> AUDIÊNCIA: [inaudível]. 686 00:30:23,147 --> 00:30:24,480 DAVID MALAN: Uma seqüência de escape. 687 00:30:24,480 --> 00:30:27,280 Não é má idéia, mas geralmente seqüências de escape ir por outro caminho. 688 00:30:27,280 --> 00:30:28,760 Isso seria uma barra invertida normalmente. 689 00:30:28,760 --> 00:30:29,560 Mas não é um pensamento ruim. 690 00:30:29,560 --> 00:30:30,060 Sim? 691 00:30:30,060 --> 00:30:31,190 692 00:30:31,190 --> 00:30:31,830 Um ponteiro. 693 00:30:31,830 --> 00:30:35,100 Também é bom pensamento, mas ainda mais simples do que isso. 694 00:30:35,100 --> 00:30:36,250 O diretório home. 695 00:30:36,250 --> 00:30:38,380 A raiz de um disco rígido, por assim dizer. 696 00:30:38,380 --> 00:30:39,890 A maioria de nós não escreva isso. 697 00:30:39,890 --> 00:30:43,150 Mas, tecnicamente, se você quisesse ser super adequado nos dias de hoje, 698 00:30:43,150 --> 00:30:50,056 você iria para algo como http://www.facebook.com/. 699 00:30:50,056 --> 00:30:52,580 >> Agora, eu disse que a maioria de nós não faria necessita de escrever a barra. 700 00:30:52,580 --> 00:30:54,770 E, francamente, a maioria navegadores, Chrome incluído, 701 00:30:54,770 --> 00:30:57,019 não se incomodam mesmo mostrando nós a barra nos dias de hoje 702 00:30:57,019 --> 00:30:59,060 só porque eles gostam de ser simples e sucinto. 703 00:30:59,060 --> 00:31:02,920 Mas a barra significa apenas ir a www.facebook.com e obter 704 00:31:02,920 --> 00:31:08,076 slash, a raiz do disco rígido, a página padrão no facebook.com. 705 00:31:08,076 --> 00:31:09,240 Usando o protocolo? 706 00:31:09,240 --> 00:31:14,910 Bem, usando a versão 1.1 do esta coisa conhecida como HTTP. 707 00:31:14,910 --> 00:31:16,750 >> O servidor, ou Margot-- e pela maneira, fazer 708 00:31:16,750 --> 00:31:17,920 Você se importa que eu estou usando você nestes? 709 00:31:17,920 --> 00:31:18,419 Está bem. 710 00:31:18,419 --> 00:31:19,430 Então, nós estamos bem agora. 711 00:31:19,430 --> 00:31:23,910 Então Margot resposta agora com um envelope de sua própria, dentro do qual 712 00:31:23,910 --> 00:31:26,040 é uma mensagem de forma semelhante textual. 713 00:31:26,040 --> 00:31:30,640 A primeira linha das quais é, sim, eu falo HTTP versão 1.1. 714 00:31:30,640 --> 00:31:34,930 200 é o código de status que apenas significa que tudo está OK. 715 00:31:34,930 --> 00:31:37,440 Eu tenho a página que você está procurando. 716 00:31:37,440 --> 00:31:44,040 >> Enquanto isso, o Content-Type: text / html, este é a maneira semi-arcano de Margot de dizer: 717 00:31:44,040 --> 00:31:46,190 o que você requisitou é uma página web. 718 00:31:46,190 --> 00:31:50,530 E é tipo, de modo a speak-- quase como um sentimento variável, 719 00:31:50,530 --> 00:31:52,060 mas isso é nível muito mais elevado agora. 720 00:31:52,060 --> 00:31:55,380 O seu tipo de dados é texto mas especificamente HTML. 721 00:31:55,380 --> 00:31:57,210 A linguagem veremos em breve. 722 00:31:57,210 --> 00:31:58,700 >> E então, há algumas outras coisas. 723 00:31:58,700 --> 00:32:02,060 Então, outra coisa é, literalmente, o que Facebook está a responder com. 724 00:32:02,060 --> 00:32:03,400 Então vamos ver isso também. 725 00:32:03,400 --> 00:32:05,380 Deixe-me ir em frente e abrir até Chrome no meu laptop 726 00:32:05,380 --> 00:32:07,980 que você pode fazer em seu próprio computador também. 727 00:32:07,980 --> 00:32:12,035 E eu estou indo para ir em frente e abrir www.facebook.com. 728 00:32:12,035 --> 00:32:12,535 Enter. 729 00:32:12,535 --> 00:32:13,590 730 00:32:13,590 --> 00:32:16,264 E eu recebo essa tela familiares aqui. 731 00:32:16,264 --> 00:32:17,930 Mas agora, eu vou fazer outra coisa. 732 00:32:17,930 --> 00:32:21,670 Eu estou indo para ir em frente e vá em Exibir, Developer. 733 00:32:21,670 --> 00:32:24,190 E ir para desenvolvedor Tools, que você deve 734 00:32:24,190 --> 00:32:27,377 tem dentro de Chrome em seu computador, pelo menos dentro de seu aparelho. 735 00:32:27,377 --> 00:32:29,460 Vou percorrer este coisa aqui, e você está 736 00:32:29,460 --> 00:32:33,060 vai ver um monte inteiro de texto enigmático aqui. 737 00:32:33,060 --> 00:32:37,920 >> Acontece que o que colocar dentro Margot desse envelope em resposta a me 738 00:32:37,920 --> 00:32:41,472 é uma linguagem chamada HTML, HyperText Markup Language. 739 00:32:41,472 --> 00:32:43,680 Não é uma programação linguagem, porque você não pode, 740 00:32:43,680 --> 00:32:46,679 não tem loops, e as condições, e funções, e coisas assim. 741 00:32:46,679 --> 00:32:47,870 É uma linguagem de marcação. 742 00:32:47,870 --> 00:32:52,110 Nesse, ele tem uma sintaxe especial chamados de tags e atributos 743 00:32:52,110 --> 00:32:57,120 que diz um navegador o que mostrar na tela e como exibi-lo. 744 00:32:57,120 --> 00:32:57,920 Deve ser centralizado? 745 00:32:57,920 --> 00:32:58,920 Deve ser em negrito? 746 00:32:58,920 --> 00:33:00,270 Vermelho, verde, azul? 747 00:33:00,270 --> 00:33:01,390 É uma linguagem de marcação. 748 00:33:01,390 --> 00:33:04,970 Nesse, ele diz um navegador o que mostrar na tela. 749 00:33:04,970 --> 00:33:10,530 Portanto, esta é, literalmente, todo o HTML e mais esse servidor Facebook 750 00:33:10,530 --> 00:33:13,950 está cuspindo e que Chrome e IE, Firefox e ter 751 00:33:13,950 --> 00:33:17,820 foi concebido por seu respectivos autores para entender. 752 00:33:17,820 --> 00:33:20,780 >> E, de fato, é uma pouco mais confusa do que isso. 753 00:33:20,780 --> 00:33:24,290 Se, em vez disso, vá em Exibir, Developer, View Source, 754 00:33:24,290 --> 00:33:27,550 este é realmente o que Facebook está a colocar. 755 00:33:27,550 --> 00:33:29,800 Espécie de zero para cinco para o estilo, certo, se nós 756 00:33:29,800 --> 00:33:31,479 inferir que esta provavelmente não é a melhor. 757 00:33:31,479 --> 00:33:34,270 Mas, francamente, eles podem fugir com porque se você está servindo-se 758 00:33:34,270 --> 00:33:36,090 bilhões de páginas da web por dia, você realmente 759 00:33:36,090 --> 00:33:40,040 não quer perder tempo e bytes, e dinheiro em última análise, na transmissão 760 00:33:40,040 --> 00:33:43,000 coisas como nova linha caracteres e espaços e tabulações 761 00:33:43,000 --> 00:33:46,870 porque você está gastando por largura de banda desnecessariamente com o seu ISP. 762 00:33:46,870 --> 00:33:49,580 >> Então, na verdade, este é significado para ser minified desta maneira. 763 00:33:49,580 --> 00:33:51,740 Mas o Chrome está fazendo para nós é, ele está tomando 764 00:33:51,740 --> 00:33:56,310 este HTML, que parece completamente como uma bagunça e ininteligível para a saúde humana, 765 00:33:56,310 --> 00:33:57,580 e é só formatá-lo. 766 00:33:57,580 --> 00:34:00,280 É muito imprimi-lo para que nós podemos envolver nossas mentes em torno dele 767 00:34:00,280 --> 00:34:01,452 um pouco mais facilmente. 768 00:34:01,452 --> 00:34:02,660 Mas o mais interessante é este. 769 00:34:02,660 --> 00:34:06,180 Se eu clicar agora no Chrome, não elementos de rede, mas, 770 00:34:06,180 --> 00:34:08,520 Eu vou ver um pouco tela de registro que é 771 00:34:08,520 --> 00:34:11,040 vai me mostrar tudo das solicitações HTTP 772 00:34:11,040 --> 00:34:14,380 que está realmente indo para trás e frente entre mim e no Facebook ou me 773 00:34:14,380 --> 00:34:17,219 e Margot se eu fizer mais do que um pedido. 774 00:34:17,219 --> 00:34:21,409 >> Então, eu estou indo para ir em frente e clique o ícone de recarga aqui no Chrome. 775 00:34:21,409 --> 00:34:23,850 E agora, um grupo inteiro de material passou voando na parte inferior. 776 00:34:23,850 --> 00:34:25,710 Eu estou indo para rolar de volta até o topo. 777 00:34:25,710 --> 00:34:29,350 E agora, perceber isso, o primeiro solicitar meu navegador 778 00:34:29,350 --> 00:34:31,340 fiz foi www.facebook.com. 779 00:34:31,340 --> 00:34:34,199 >> Ele está usando o get mecanismo que significa apenas 780 00:34:34,199 --> 00:34:37,810 ele está falando a linguagem textual que vimos um exemplo de um momento atrás. 781 00:34:37,810 --> 00:34:41,909 E, além disso, verifica-se que a resposta que o Facebook 782 00:34:41,909 --> 00:34:46,070 me deu é de 200 OK, o que significa que encontrado na página web em questão. 783 00:34:46,070 --> 00:34:49,630 >> Se eu clicar sobre essa linha, eu posso realmente ver esses cabeçalhos um pouco mais 784 00:34:49,630 --> 00:34:50,800 claramente. 785 00:34:50,800 --> 00:34:52,810 Estes farão mais sentido antes do tempo. 786 00:34:52,810 --> 00:34:57,020 Mas observe que o meu navegador envia uma todo grande quantidade de informações como anfitrião, 787 00:34:57,020 --> 00:34:59,320 e método, e cookies. 788 00:34:59,320 --> 00:35:00,879 Vamos voltar àqueles antes do tempo. 789 00:35:00,879 --> 00:35:03,170 E você vai finalmente entender o que na verdade é um cookie 790 00:35:03,170 --> 00:35:04,930 e como você em breve estará enviando-los. 791 00:35:04,930 --> 00:35:06,900 >> E você pode ver o que Facebook está enviando de volta, 792 00:35:06,900 --> 00:35:12,230 incluindo o tipo de conteúdo de texto HTML, a data e hora atual, a sua privacidade 793 00:35:12,230 --> 00:35:15,530 política, ou a falta dela, e em seguida, finalmente, um número de biscoitos 794 00:35:15,530 --> 00:35:18,050 que estão a ser definido em seu computador também. 795 00:35:18,050 --> 00:35:20,140 Mas nós vamos provocar os apart antes do tempo. 796 00:35:20,140 --> 00:35:23,950 >> Mas em suma, cada vez que você visitado uma página web, agora por anos, 797 00:35:23,950 --> 00:35:26,970 você foi o envio de mensagens para o que eu enviada em um envelope 798 00:35:26,970 --> 00:35:28,230 a Margot e Dan. 799 00:35:28,230 --> 00:35:31,210 E você foi ficando para trás respostas como esta do Facebook. 800 00:35:31,210 --> 00:35:35,650 Mas além disso, acho que o que está sendo divulgados para o Facebook, e Google, 801 00:35:35,650 --> 00:35:39,101 e todos os outros a cada vez que você visita uma página web? 802 00:35:39,101 --> 00:35:42,100 O que é do lado de fora de cada envelope seu computador tem sido o envio? 803 00:35:42,100 --> 00:35:43,800 804 00:35:43,800 --> 00:35:45,590 O seu endereço de IP, certo? 805 00:35:45,590 --> 00:35:48,720 Talvez não o seu nome por si, mas o seu endereço de IP. 806 00:35:48,720 --> 00:35:52,410 E, assim, vamos ligar os pontos mais tarde, se você estiver usando os serviços 807 00:35:52,410 --> 00:35:54,430 como a web, ou BitTorrent, ea vida, 808 00:35:54,430 --> 00:35:56,860 e de se ter registado um computador em um lugar como Harvard, 809 00:35:56,860 --> 00:36:01,080 alguém em algum lugar sabe que John Endereços IP de Harvard isto, ponto este, 810 00:36:01,080 --> 00:36:02,350 dot isso, dot este. 811 00:36:02,350 --> 00:36:06,730 >> E, de fato, os registros podem manteve tanto a campus como este, em uma rede Comcast, 812 00:36:06,730 --> 00:36:10,270 na Verizon, ou, francamente, no NSA como temos aprendido recentemente, 813 00:36:10,270 --> 00:36:14,040 que registra praticamente tudo que você está fazendo na internet. 814 00:36:14,040 --> 00:36:15,910 E nós vamos voltar a esta classe futuro 815 00:36:15,910 --> 00:36:18,990 sobre as implicações destes decisões de design e segurança. 816 00:36:18,990 --> 00:36:21,920 >> Mas a verdade é que você realmente não tenho tudo o que muita privacidade. 817 00:36:21,920 --> 00:36:25,380 Toda vez que você foi visitar em qualquer lugar na web, você foi mostrar a sua mão 818 00:36:25,380 --> 00:36:28,720 e revelando, pelo menos, o seu endereço de IP. 819 00:36:28,720 --> 00:36:35,930 Nota tão assustador de lado, o que podemos fazer para incorporar coisas como gatos em uma página da web? 820 00:36:35,930 --> 00:36:40,730 >> Portanto, temos um monte de respostas que pode voltar a partir do servidor. 821 00:36:40,730 --> 00:36:42,340 E nós não vamos ver tudo isso hoje. 822 00:36:42,340 --> 00:36:43,800 Mas 200 é bom. 823 00:36:43,800 --> 00:36:46,622 E você provavelmente não viu tudo isso como um ser humano antes. 824 00:36:46,622 --> 00:36:48,580 Mas você provavelmente já viu pelo menos, um destes. 825 00:36:48,580 --> 00:36:50,204 Qual desses pode parecer familiar? 826 00:36:50,204 --> 00:36:51,097 AUDIÊNCIA: 404 827 00:36:51,097 --> 00:36:51,930 DAVID MALAN: Então 404. 828 00:36:51,930 --> 00:36:52,695 Arquivo não encontrado. 829 00:36:52,695 --> 00:36:55,320 E, de fato, você vai ver isso programaticamente si mesmo. 830 00:36:55,320 --> 00:37:00,220 404 apenas significa que o arquivo que você solicitou, cortar ou cortar alguma coisa, simplesmente 831 00:37:00,220 --> 00:37:00,950 não existe. 832 00:37:00,950 --> 00:37:04,380 E um servidor web normalmente responde com 404 como resultado 833 00:37:04,380 --> 00:37:09,680 >> Enquanto isso, em breve veremos que o conteúdo dessa mensagem 834 00:37:09,680 --> 00:37:11,800 são esta linguagem conhecida como HTML. 835 00:37:11,800 --> 00:37:15,070 E este é um super simples trecho de HTML 836 00:37:15,070 --> 00:37:18,380 que não faz nada que não seja exibir Olá mundo na tela. 837 00:37:18,380 --> 00:37:21,830 Na verdade, você vê no topo desta algo chamado um tipo de documento 838 00:37:21,830 --> 00:37:24,220 declaração de que apenas diz, hey, mundo. 839 00:37:24,220 --> 00:37:25,964 Este arquivo contém HTML. 840 00:37:25,964 --> 00:37:28,380 E, em seguida, o próximo bit de HTML que você vai escrever, 841 00:37:28,380 --> 00:37:30,930 ele tem um suporte aberto, e, em seguida, a palavra HTML, 842 00:37:30,930 --> 00:37:33,670 em seguida, um suporte fechado e, em seguida cabeça aberta, e perto do suporte. 843 00:37:33,670 --> 00:37:36,000 Assim, em breve, vamos realmente fazer isso mais mecanicamente. 844 00:37:36,000 --> 00:37:39,980 Deixe-me ir para o meu aparelho, mas você pode fazer isso em qualquer lugar 845 00:37:39,980 --> 00:37:42,110 que você tem um editor de texto para. 846 00:37:42,110 --> 00:37:45,105 >> Eu estou indo para ir em frente e salvar um arquivo chamado hello.html. 847 00:37:45,105 --> 00:37:46,440 848 00:37:46,440 --> 00:37:49,640 Vou colocá-lo no meu desktop para manter as coisas de super simples agora. 849 00:37:49,640 --> 00:37:51,760 E eu vou fazer exatamente o que eu acabei de ver. 850 00:37:51,760 --> 00:37:55,452 Assim, tipo doc HTML, HTML suporte aberto. 851 00:37:55,452 --> 00:37:57,910 E agora, o aviso prévio, eu vou fazer o oposto preventivamente. 852 00:37:57,910 --> 00:38:01,000 E pelo contrário, eu quero dizer a mesma marca, por assim dizer, 853 00:38:01,000 --> 00:38:02,767 mas ele começa com uma barra. 854 00:38:02,767 --> 00:38:04,600 E então, aqui, Eu vou dizer, cabeça, 855 00:38:04,600 --> 00:38:07,530 pois verifica-se que cada página web tem uma cabeça chamada que 856 00:38:07,530 --> 00:38:10,300 é uma coisa que vai no título Bar, no topo da página. 857 00:38:10,300 --> 00:38:13,026 No título é apenas vai ser Olá aqui. 858 00:38:13,026 --> 00:38:15,150 E agora, eu vou ter um corpo a esta página web. 859 00:38:15,150 --> 00:38:18,130 Assim, cada página da web tem dois uma cabeça em cima e um corpo 860 00:38:18,130 --> 00:38:19,522 que é a coragem da página. 861 00:38:19,522 --> 00:38:21,980 E aqui, eu estou indo só para dizer algo como Olá mundo. 862 00:38:21,980 --> 00:38:23,440 E eu estou indo para salvar esse arquivo. 863 00:38:23,440 --> 00:38:26,150 Se eu agora minimizar gedit, olha, há um pequeno arquivo 864 00:38:26,150 --> 00:38:28,470 no meu desktop chamado hello.html. 865 00:38:28,470 --> 00:38:30,820 Agora, isso não é em um servidor Ainda, de per si, Com efeito, é 866 00:38:30,820 --> 00:38:33,040 apenas na minha própria área de trabalho pessoal aqui. 867 00:38:33,040 --> 00:38:36,910 Mas se eu abrir o Chrome e pressione Control O- há o gato em questão. 868 00:38:36,910 --> 00:38:38,710 --e eu ir para o meu desktop. 869 00:38:38,710 --> 00:38:43,730 >> E eu abrir hello.html, há, em verdade, é a minha página web super simples. 870 00:38:43,730 --> 00:38:45,490 O corpo da minha página e esta janela branca 871 00:38:45,490 --> 00:38:47,610 aqui é o corpo com Olá mundo. 872 00:38:47,610 --> 00:38:51,020 E o título na cabeça a página está na guia lá. 873 00:38:51,020 --> 00:38:53,020 E vamos ver logo que ele é super 874 00:38:53,020 --> 00:38:55,004 simples para abrir outras páginas também. 875 00:38:55,004 --> 00:38:57,670 Por exemplo, eu estou indo para ir em alguns dos códigos de distribuição 876 00:38:57,670 --> 00:39:00,230 Para esta semana, fonte sete, e eu vou 877 00:39:00,230 --> 00:39:03,150 abrir não o JPEG que esse cara está aqui. 878 00:39:03,150 --> 00:39:08,430 Mas eu vou abrir image.html, que em última análise se parece com isso. 879 00:39:08,430 --> 00:39:15,140 Mas deixe-me agora abrir esta em gedit, e vai para a fonte Dropbox sete, 880 00:39:15,140 --> 00:39:17,470 e image.html. 881 00:39:17,470 --> 00:39:19,430 882 00:39:19,430 --> 00:39:21,960 >> A maioria deles é apenas comenta como veremos em breve. 883 00:39:21,960 --> 00:39:25,210 Mas se eu quiser colocar Grumpy Gato dentro da página web, 884 00:39:25,210 --> 00:39:29,890 basta colocar outro suporte aberto, e, em seguida, a palavra-chave ou imagem img 885 00:39:29,890 --> 00:39:33,080 para breve, e em seguida alternativa texto por razões de acessibilidade 886 00:39:33,080 --> 00:39:35,890 se alguém tem uma tela leitor ou algo parecido. 887 00:39:35,890 --> 00:39:38,260 Fonte que é, o que é o nome do arquivo, cat.jpeg. 888 00:39:38,260 --> 00:39:39,280 889 00:39:39,280 --> 00:39:41,400 >> E, em seguida, porque esta tag é um pouco especial, 890 00:39:41,400 --> 00:39:44,140 colocamos a barra, como vamos ver, dentro da tag. 891 00:39:44,140 --> 00:39:47,180 Mas o resultado final é um web página que se parece com isso. 892 00:39:47,180 --> 00:39:51,320 Assim, em breve, o que vai ser está fazendo agora com o tempo está usando a web 893 00:39:51,320 --> 00:39:54,200 e criação de páginas web para em última análise, ser recipientes 894 00:39:54,200 --> 00:39:57,280 não só para as coisas tolas como imagens e links, e tabelas, 895 00:39:57,280 --> 00:40:00,770 e listas com marcadores, e similares, mas também para dar-nos a nós mesmos 896 00:40:00,770 --> 00:40:04,890 uma interface gráfica do usuário, uma interface gráfica, não muito diferente do que fizemos nós Breakout. 897 00:40:04,890 --> 00:40:08,330 >> Mas dentro desse ambiente, estamos vai começar usando linguagens como PHP, 898 00:40:08,330 --> 00:40:10,960 e JavaScript, o banco de dados linguagem chamada SQL, 899 00:40:10,960 --> 00:40:14,050 uma linguagem de script do lado do cliente chamada JavaScript para realmente criar 900 00:40:14,050 --> 00:40:18,760 todas as interfaces mais dinâmicas, mas num contexto muito, muito mais familiar. 901 00:40:18,760 --> 00:40:21,970 Mas antes disso, vamos Concluímos hoje com um olhar, 902 00:40:21,970 --> 00:40:25,280 como prometido, do que realmente está acontecendo por baixo do capuz com a internet 903 00:40:25,280 --> 00:40:26,060 si. 904 00:40:26,060 --> 00:40:28,400 >> Estipular para hoje que a Internet pode 905 00:40:28,400 --> 00:40:31,390 ser usada para transferir as coisas como páginas da web sobre HTTP 906 00:40:31,390 --> 00:40:33,150 muito como eu apertou a mão de Margot antes. 907 00:40:33,150 --> 00:40:36,470 Mas há tantas outras serviços que usam TCP e IP 908 00:40:36,470 --> 00:40:39,800 que nós tomamos para concedido que o trabalho, como veremos aqui 909 00:40:39,800 --> 00:40:42,477 neste filme que vai nos levar ao fim hoje. 910 00:40:42,477 --> 00:40:45,956 >> [REPRODUÇÃO DE VÍDEO] 911 00:40:45,956 --> 00:41:31,710 912 00:41:31,710 --> 00:41:35,870 >> -Para Pela primeira vez em história, pessoas e máquinas 913 00:41:35,870 --> 00:41:38,940 estão trabalhando em conjunto, realizando um sonho. 914 00:41:38,940 --> 00:41:41,780 A força de união que sabe sem limites geográficos. 915 00:41:41,780 --> 00:41:45,010 Sem distinção de raça, credo ou cor. 916 00:41:45,010 --> 00:41:49,130 Uma nova era onde a comunicação realmente une as pessoas. 917 00:41:49,130 --> 00:41:51,795 Este é o alvorecer da Net. 918 00:41:51,795 --> 00:41:54,920 919 00:41:54,920 --> 00:41:56,450 >> Quer saber como ele funciona? 920 00:41:56,450 --> 00:42:00,260 Clique aqui para começar a sua viagem para a rede. 921 00:42:00,260 --> 00:42:02,780 922 00:42:02,780 --> 00:42:05,380 Agora, exatamente o que aconteceu quando você clicou no link? 923 00:42:05,380 --> 00:42:07,190 Você começou um fluxo de informações. 924 00:42:07,190 --> 00:42:09,790 Esta informação viaja para baixo em sua sala de correio pessoal 925 00:42:09,790 --> 00:42:14,040 quando o Sr. IP empacota, rotula ele, e envia-lo em seu caminho. 926 00:42:14,040 --> 00:42:16,030 >> Cada pacote é o tamanho limitado. 927 00:42:16,030 --> 00:42:19,900 A sala de correio tem de decidir como dividir a informação e como empacotá-lo. 928 00:42:19,900 --> 00:42:23,400 Agora, a embalagem precisa de uma etiqueta contendo informações importantes, 929 00:42:23,400 --> 00:42:27,480 como endereço, receptor de remetente endereço eo tipo de pacote é. 930 00:42:27,480 --> 00:42:41,070 931 00:42:41,070 --> 00:42:43,700 >> Porque este pacote especial está saindo para a internet, 932 00:42:43,700 --> 00:42:46,240 que também recebe um endereço para o servidor proxy, o que 933 00:42:46,240 --> 00:42:47,990 tem uma função especial como veremos mais tarde. 934 00:42:47,990 --> 00:42:49,080 935 00:42:49,080 --> 00:42:53,430 O pacote é então lançado para sua rede de área local ou LAN. 936 00:42:53,430 --> 00:42:56,220 Esta rede é utilizada para ligar todos os computadores locais, 937 00:42:56,220 --> 00:42:58,760 impressoras roteadores, et cetera para troca de informações 938 00:42:58,760 --> 00:43:00,790 dentro da física paredes do edifício. 939 00:43:00,790 --> 00:43:04,840 A LAN é uma bonita descontrolada lugar e, infelizmente, os acidentes 940 00:43:04,840 --> 00:43:05,828 pode acontecer. 941 00:43:05,828 --> 00:43:13,240 942 00:43:13,240 --> 00:43:16,020 >> A estrada de LAN é embalado com todos os tipos de informações. 943 00:43:16,020 --> 00:43:19,270 Estes são os pacotes IP, Novell pacotes, pacotes Apple Talk. 944 00:43:19,270 --> 00:43:21,440 Eles estão indo contra o tráfico, como de costume. 945 00:43:21,440 --> 00:43:24,040 O router local lê o tratar e, se necessário, 946 00:43:24,040 --> 00:43:25,935 levanta o pacote para outra rede. 947 00:43:25,935 --> 00:43:27,610 948 00:43:27,610 --> 00:43:28,810 Ah, o roteador. 949 00:43:28,810 --> 00:43:31,990 Um símbolo de controle em uma mundo aparentemente desorganizado. 950 00:43:31,990 --> 00:43:41,050 951 00:43:41,050 --> 00:43:45,480 >> Lá está ele, a sistemática, indiferente, metódico, conservador, 952 00:43:45,480 --> 00:43:48,100 e às vezes não completamente até a velocidade. 953 00:43:48,100 --> 00:43:50,430 Mas, pelo menos, ele é exato para a maior parte. 954 00:43:50,430 --> 00:44:03,090 955 00:44:03,090 --> 00:44:05,530 >> À medida que os pacotes de deixar o roteador, eles fazem seu caminho 956 00:44:05,530 --> 00:44:08,780 na intranet corporativa e de cabeça para o switch roteador. 957 00:44:08,780 --> 00:44:10,179 958 00:44:10,179 --> 00:44:12,470 Um pouco mais eficiente do que o roteador, o roteador switch 959 00:44:12,470 --> 00:44:16,700 joga rápido e solto com os pacotes IP, habilmente roteamento-los ao longo do caminho. 960 00:44:16,700 --> 00:44:18,950 Um Pinball Assistente digital, se você quiser. 961 00:44:18,950 --> 00:44:19,532 >> -Aqui Vamos nós. 962 00:44:19,532 --> 00:44:20,490 Aí vem um outro. 963 00:44:20,490 --> 00:44:21,198 E é outra. 964 00:44:21,198 --> 00:44:21,886 Assista a este, mamãe. 965 00:44:21,886 --> 00:44:22,258 Aqui está vai. 966 00:44:22,258 --> 00:44:22,382 Whoops. 967 00:44:22,382 --> 00:44:23,126 Em torno da volta. 968 00:44:23,126 --> 00:44:23,374 Hey. 969 00:44:23,374 --> 00:44:23,622 Em lá. 970 00:44:23,622 --> 00:44:24,122 Em lá. 971 00:44:24,122 --> 00:44:24,862 Mais para a esquerda. 972 00:44:24,862 --> 00:44:25,110 Mais para a direita. 973 00:44:25,110 --> 00:44:25,358 Mais para a esquerda. 974 00:44:25,358 --> 00:44:26,350 Mais para a direita. 975 00:44:26,350 --> 00:44:26,596 Você conseguiu. 976 00:44:26,596 --> 00:44:26,846 Aqui vai. 977 00:44:26,846 --> 00:44:27,342 Ele atira. 978 00:44:27,342 --> 00:44:27,840 Ele marca. 979 00:44:27,840 --> 00:44:28,100 Vai. 980 00:44:28,100 --> 00:44:28,580 Ei, espere. 981 00:44:28,580 --> 00:44:28,940 Ei, cuidado. 982 00:44:28,940 --> 00:44:29,898 Aí vem um outro. 983 00:44:29,898 --> 00:44:30,860 Oh, aqui vamos nós. 984 00:44:30,860 --> 00:44:33,740 985 00:44:33,740 --> 00:44:35,930 >> -como Os pacotes chegam seu destino, eles são 986 00:44:35,930 --> 00:44:40,640 apanhados pela interface de rede, pronta para ser enviada para o próximo nível, 987 00:44:40,640 --> 00:44:42,000 neste caso, o proxy. 988 00:44:42,000 --> 00:44:43,060 989 00:44:43,060 --> 00:44:46,210 O proxy é utilizado por muitos empresas como a espécie de um homem de meia 990 00:44:46,210 --> 00:44:48,650 a fim de diminuir a carga em sua conexão com a internet 991 00:44:48,650 --> 00:44:50,040 e, por razões de segurança, bem. 992 00:44:50,040 --> 00:44:51,824 993 00:44:51,824 --> 00:44:55,310 Como você pode ver, os pacotes são todos de vários tamanhos, 994 00:44:55,310 --> 00:44:56,650 dependendo de seu conteúdo. 995 00:44:56,650 --> 00:45:10,750 996 00:45:10,750 --> 00:45:14,790 >> O proxy abre o pacote e procura o endereço da Web ou URL. 997 00:45:14,790 --> 00:45:16,230 998 00:45:16,230 --> 00:45:18,707 Dependendo se o endereço é aceitável, 999 00:45:18,707 --> 00:45:20,290 o pacote é enviado para a internet. 1000 00:45:20,290 --> 00:45:25,880 1001 00:45:25,880 --> 00:45:28,700 Existem, no entanto, alguns endereços que não fazer 1002 00:45:28,700 --> 00:45:31,440 reunir-se com a aprovação da o proxy, isto é, 1003 00:45:31,440 --> 00:45:33,305 diretrizes corporativas ou de gestão. 1004 00:45:33,305 --> 00:45:35,830 1005 00:45:35,830 --> 00:45:38,290 Estes são sumariamente tratados. 1006 00:45:38,290 --> 00:45:39,530 1007 00:45:39,530 --> 00:45:41,070 Nós vamos ter nada disso. 1008 00:45:41,070 --> 00:45:43,350 Para aqueles que fazem isso, é na estrada novamente. 1009 00:45:43,350 --> 00:45:52,740 1010 00:45:52,740 --> 00:45:54,695 >> Em seguida, o firewall. 1011 00:45:54,695 --> 00:45:58,060 1012 00:45:58,060 --> 00:46:01,414 O firewall corporativo serve a dois propósitos. 1013 00:46:01,414 --> 00:46:03,580 Ela impede que alguns bastante coisas desagradáveis ​​na internet 1014 00:46:03,580 --> 00:46:05,379 de vir para a intranet. 1015 00:46:05,379 --> 00:46:07,670 E ele também pode prevenir informações corporativas sensíveis 1016 00:46:07,670 --> 00:46:09,900 sejam enviadas para a internet. 1017 00:46:09,900 --> 00:46:11,810 1018 00:46:11,810 --> 00:46:14,210 >> Depois de atravessar o firewall, um roteador recolhe o pacote 1019 00:46:14,210 --> 00:46:18,290 e coloca-lo em um muito mais estreito estrada ou largura de banda, como dizemos. 1020 00:46:18,290 --> 00:46:21,505 Obviamente, a linha não é ampla o suficiente para levá-los todos. 1021 00:46:21,505 --> 00:46:22,727 1022 00:46:22,727 --> 00:46:25,060 Agora, você pode se perguntar, o que acontece com todos os pacotes 1023 00:46:25,060 --> 00:46:27,250 que não fazê-lo ao longo do caminho. 1024 00:46:27,250 --> 00:46:29,880 Bem, quando o Sr. IP não receber uma confirmação 1025 00:46:29,880 --> 00:46:32,160 que um pacote tenha sido recebeu, no devido tempo, 1026 00:46:32,160 --> 00:46:34,060 ele simplesmente envia um pacote para o substituir. 1027 00:46:34,060 --> 00:46:36,040 1028 00:46:36,040 --> 00:46:40,510 >> Agora estamos prontos para entrar no mundo da internet, uma aranha 1029 00:46:40,510 --> 00:46:44,656 web de redes interconectadas que abrangem todo o nosso globo. 1030 00:46:44,656 --> 00:46:47,845 Aqui, roteadores e switches estabelecer ligações entre as redes. 1031 00:46:47,845 --> 00:46:49,239 1032 00:46:49,239 --> 00:46:51,280 Agora, a rede é uma forma inteiramente ambiente diferente 1033 00:46:51,280 --> 00:46:53,740 do que você vai encontrar dentro do muros de proteção da sua rede LAN. 1034 00:46:53,740 --> 00:46:56,510 >> Aqui fora, é o selvagem Oeste, muito espaço, 1035 00:46:56,510 --> 00:47:00,440 muitas oportunidades, a abundância de coisas para explorar, e lugares para ir. 1036 00:47:00,440 --> 00:47:02,790 Graças a muito pouco controle e regulação, 1037 00:47:02,790 --> 00:47:07,250 novas idéias encontrar solo fértil para empurrar o envelope de suas possibilidades. 1038 00:47:07,250 --> 00:47:10,590 Mas por causa dessa liberdade, alguns perigos se escondem. 1039 00:47:10,590 --> 00:47:14,230 >> Você nunca sabe quando você atender o temido ping da morte, 1040 00:47:14,230 --> 00:47:18,040 uma versão especial de um pedido normal de de ping que algum idiota pensou-se 1041 00:47:18,040 --> 00:47:19,830 para bagunçar anfitriões desavisados. 1042 00:47:19,830 --> 00:47:21,470 1043 00:47:21,470 --> 00:47:25,490 O caminho nossos pacotes podem ser através de satélite, linhas telefônicas, sem fio, 1044 00:47:25,490 --> 00:47:27,340 ou mesmo cabo transoceânico. 1045 00:47:27,340 --> 00:47:30,290 >> Eles nem sempre ter o mais rápido ou rotas mais curtas possível, 1046 00:47:30,290 --> 00:47:33,330 mas eles vão chegar lá, eventualmente. 1047 00:47:33,330 --> 00:47:37,255 Talvez seja por isso que às vezes é chamado a espera em todo o mundo. 1048 00:47:37,255 --> 00:47:39,650 Mas quando tudo é trabalhar sem problemas, você 1049 00:47:39,650 --> 00:47:43,270 poderia contornar o globo cinco vezes na queda de um chapéu, 1050 00:47:43,270 --> 00:47:46,690 literalmente, e tudo para o custo de uma chamada local ou menos. 1051 00:47:46,690 --> 00:47:47,970 1052 00:47:47,970 --> 00:47:51,025 >> Perto do final do nosso destino, vamos encontrar um outro firewall. 1053 00:47:51,025 --> 00:47:53,710 1054 00:47:53,710 --> 00:47:56,160 Dependendo da sua perspectiva, como um pacote de dados, 1055 00:47:56,160 --> 00:48:00,520 o firewall pode ser um bastião de segurança ou temido adversário. 1056 00:48:00,520 --> 00:48:04,420 Tudo depende de que lado você está , e quais são suas intenções. 1057 00:48:04,420 --> 00:48:08,365 >> O firewall é projetado para deixar entrar só aqueles pacotes que atendam seus critérios. 1058 00:48:08,365 --> 00:48:09,590 1059 00:48:09,590 --> 00:48:11,940 Este firewall está operando nas portas 80 e 25. 1060 00:48:11,940 --> 00:48:13,250 1061 00:48:13,250 --> 00:48:16,380 Todas as tentativas de entrar através de outro portas estão fechadas para o negócio. 1062 00:48:16,380 --> 00:48:27,690 1063 00:48:27,690 --> 00:48:30,600 >> A porta 25 é utilizada para pacotes de correio. 1064 00:48:30,600 --> 00:48:32,750 1065 00:48:32,750 --> 00:48:35,791 Embora a porta 80 é a porta de entrada para pacotes da internet para a web 1066 00:48:35,791 --> 00:48:36,290 servidor. 1067 00:48:36,290 --> 00:48:38,880 1068 00:48:38,880 --> 00:48:42,540 Dentro do firewall, os pacotes são avaliados mais profundamente. 1069 00:48:42,540 --> 00:48:44,660 Alguns pacotes de torná-lo facilmente pela alfândega, 1070 00:48:44,660 --> 00:48:47,500 enquanto outros têm apenas um pouco duvidoso. 1071 00:48:47,500 --> 00:48:49,630 >> Agora, o oficial de firewall não é facilmente enganado, 1072 00:48:49,630 --> 00:48:53,010 por exemplo, quando este ping de tentativas de pacotes morte 1073 00:48:53,010 --> 00:48:55,628 para disfarçar-se como um pacote normal de ping. 1074 00:48:55,628 --> 00:48:56,128 -Mova Junto. 1075 00:48:56,128 --> 00:48:56,606 Está certo. 1076 00:48:56,606 --> 00:48:57,106 Sem problemas. 1077 00:48:57,106 --> 00:48:58,040 Tenha um bom dia. 1078 00:48:58,040 --> 00:48:59,360 Deixe-me sair daqui. 1079 00:48:59,360 --> 00:49:00,460 Tchau. 1080 00:49:00,460 --> 00:49:02,990 >> -Para Aqueles pacotes sorte o suficiente para torná-lo tão longe, 1081 00:49:02,990 --> 00:49:04,860 a viagem está quase no fim. 1082 00:49:04,860 --> 00:49:07,280 1083 00:49:07,280 --> 00:49:11,560 É apenas uma linha na interface a ser levado para o servidor web. 1084 00:49:11,560 --> 00:49:12,610 1085 00:49:12,610 --> 00:49:16,850 Hoje em dia, um servidor web pode ser executado em muitos coisas, de um mainframe, para uma webcam, 1086 00:49:16,850 --> 00:49:18,430 para o computador em sua mesa. 1087 00:49:18,430 --> 00:49:20,220 Por que não a sua geladeira? 1088 00:49:20,220 --> 00:49:22,140 >> Com o conjunto adequado acima, você pode descobrir 1089 00:49:22,140 --> 00:49:24,330 se você tem o resultado para Cacciatore frango 1090 00:49:24,330 --> 00:49:25,690 ou se você tiver que ir às compras. 1091 00:49:25,690 --> 00:49:28,625 Lembre-se, este é o alvorecer da Net. 1092 00:49:28,625 --> 00:49:29,850 Quase tudo é possível. 1093 00:49:29,850 --> 00:49:32,960 1094 00:49:32,960 --> 00:49:37,080 >> Um por um, os pacotes são recebeu, abriu, e descompactado. 1095 00:49:37,080 --> 00:49:40,350 1096 00:49:40,350 --> 00:49:44,280 A informação que contêm, que é o seu pedido de informação, 1097 00:49:44,280 --> 00:49:46,080 é enviado para a web aplicativo de servidor. 1098 00:49:46,080 --> 00:49:52,670 1099 00:49:52,670 --> 00:49:54,345 >> O pacote em si é reciclado. 1100 00:49:54,345 --> 00:49:57,280 1101 00:49:57,280 --> 00:50:06,770 Pronto para ser usado novamente e cheio de a informação solicitada, dirigida, 1102 00:50:06,770 --> 00:50:08,680 e enviar em seu caminho de volta para você. 1103 00:50:08,680 --> 00:50:10,430 1104 00:50:10,430 --> 00:50:14,700 Voltar passado os firewalls, roteadores, e em meio à internet. 1105 00:50:14,700 --> 00:50:18,164 1106 00:50:18,164 --> 00:50:19,705 Voltar através do firewall corporativo. 1107 00:50:19,705 --> 00:50:24,461 1108 00:50:24,461 --> 00:50:26,295 E em sua interface. 1109 00:50:26,295 --> 00:50:27,400 1110 00:50:27,400 --> 00:50:30,630 Pronto para abastecer seu navegador com as informações solicitadas. 1111 00:50:30,630 --> 00:50:33,010 1112 00:50:33,010 --> 00:50:34,538 Que é este filme. 1113 00:50:34,538 --> 00:50:40,030 1114 00:50:40,030 --> 00:50:43,200 >> Satisfeito com os seus esforços e confiando em um mundo melhor, 1115 00:50:43,200 --> 00:50:45,960 nossos fiéis pacotes de dados cavalgam alegremente 1116 00:50:45,960 --> 00:50:49,830 no por do sol de outro dia, sabendo plenamente que 1117 00:50:49,830 --> 00:50:51,635 têm servido os seus mestres bem. 1118 00:50:51,635 --> 00:50:54,030 1119 00:50:54,030 --> 00:50:57,209 Agora, não é que um final feliz. 1120 00:50:57,209 --> 00:50:58,042 [FIM REPRODUÇÃO DE VÍDEO] 1121 00:50:58,042 --> 00:50:59,533 DAVID MALAN: Isso é tudo para CS50. 1122 00:50:59,533 --> 00:51:01,521 Vamos vê-lo na próxima semana. 1123 00:51:01,521 --> 00:51:05,994 1124 00:51:05,994 --> 00:51:11,220 >> [MÚSICA - Katy Perry, "Dark Horse"] 1125 00:51:11,220 --> 00:54:19,222