DAVID MALAN: Tudo bem. Este é CS50. E este é o início da semana de sete. Então, hoje, talvez felizmente, começamos nossa transição a partir do nível mais baixo mundo da programação C para o nível mais elevado mundo da programação web. E com isso, vamos dar uma olhada exatamente como a internet funciona, o que essas máquinas e esses internets que você está usando há anos realmente fazem debaixo do capô em direção uma melhor compreensão de como tudo funciona, e como você pode fazer o trabalho para você. Para isso, por que não dar uma olhar primeiro para um clipe de um programa de TV chamados Numb3rs, que vai ficar nos iniciados a respeito de exatamente como a internet funciona. [REPRODUÇÃO DE VÍDEO] -É Um endereço IPP4 de 32 bits. -IP. Essa é a internet. Rede-Privadas. É rede privada da Amita. Oh, ela é tão incrível. -Oh, Charlie. -É Um endereço IP espelho. Ela está deixando-nos ver o que ela está fazendo em tempo real. [FIM REPRODUÇÃO DE VÍDEO] DAVID MALAN: Então não há um todo muito errado com aquele programa de TV. Então, vamos provocar uma separação exatamente uma das primeiras coisas e ver se não podemos envolvê nossas mentes em torno dele. Assim, o último quadro do esse filme, dessa mostra é este aqui, que parece sugerir que esta é o que algum hacker está usando para entrar em algum sistema. Mas não. Se você ampliar a este código-fonte, o que é uma linguagem chamada Objective C em que aplicativos do iPhone, apps do iPad, e Mac Aplicativos do sistema operacional são escritos, você vai ver que este é algum tipo de programa de desenho que tem um lápis de cera como uma variável. Então, além disso, você pode ter notado este endereço aqui. Agora, esta é uma tão errado. E este é, provavelmente, deliberadamente escolhido ser um endereço inválido para que ele não conduzem a algum lugar se um telespectador realmente visita. Mas este número aqui, algo dot algo dot dot algo algo é o que é geralmente conhecido como um endereço IP. E é realmente uma boa Segue a este tópico mais em geral, conhecido como IP, protocolo de internet. Então você provavelmente pelo menos ouviu esta frase antes. Mas o que é IP, ou Internet protocolo que você entenda isso hoje? As probabilidades são, se pedimos uma show de mãos, a maioria de vocês provavelmente já disse que o palavras endereço IP antes. Então, o que você quis dizer? AUDIÊNCIA: [inaudível]? DAVID MALAN: O que é isso? AUDIÊNCIA: [inaudível]? DAVID MALAN: Uma vez mais. AUDIÊNCIA: Endereço do computador. DAVID MALAN: O endereço do computador. Assim que é exatamente certo. Acontece que cada computador na internet, e nos dias de hoje, todos os telefones em seu bolso e tablet em sua mochila, tem endereço IP, uma internet endereço de protocolo, que é um endereço único que identifica que ao longo de toda a internet. Agora, isso é um pouco de branco mentira, porque o mundo é, na verdade, ficando sem endereços IP. Então nós começamos a usar endereços IP privados. Mas mais sobre isso em um momento. Mas você pode pensar em um endereço IP como como sua rua serviço postal endereço. Temos usar o exemplo de Maxwell Dworkin, o edifício CS, antes- 33 Oxford Street Cambridge, Massa, 02138, EUA. Esse é o seu endereço único no mundo. Da mesma forma fazer computadores têm endereços únicos. Eles só acontecerá a olhar um pouco diferente- um número de um número de pontos dot um número dot um número. E será que alguém realmente sabe o que o intervalo válido de números é para cada um desses hashes? Sim. AUDIÊNCIA: 0-255? DAVID MALAN: Exatamente. 0-255. E mesmo que você não sabia que, agora tirar uma conclusão, quantos bits são utilizados para representar cada um desses números, em seguida,? Oito aparentemente por causa o mais alto que você pode contar é 255, que é um valor de 8 bits. Assim, no total, um endereço IP é de 32-bits. Então o encaminhamento rápido ao conclusão matemática, quantas possíveis endereços IP existem no mundo, então? Então, isso é 8 mais 8 mais 8 mais 8, de modo que é 32 bits. E nós sempre dissemos que 2 a 32 é mais ou menos? Está bem. Vou campo este. Quatro bilhões. E nós conversamos sobre isso na semana zero quando falamos sobre os livros de telefone com números loucos de páginas. Mas a sorte dele é que não há um número finito de endereços IP. E mesmo que quatro bilhões Pode parecer muito, nós, seres humanos têm sido consome muito poucos deles para todos os nossos servidores e dispositivos e assim por diante. Então, isso está realmente se tornando um problema. Agora, tende a haver uma esquema por trás que tem o IP. Por exemplo, muitos dos os computadores de Harvard têm endereços únicos que começam com um destes dois valores. MIT, de modo semelhante, tem um prefixo. E um monte de empresas e universidades têm o seu próprio prefixo único. E então a maioria de nós para a nossa casa conexões de internet e afins, partilhamos alguns prefixo que Comcast ou alguém como o que acontece ao próprio. E isso é só para dizer que, se você olhou para a maioria dos computadores no campus, eles provavelmente têm um IP endereço que se parece com isso. Agora, você pode também, ocasionalmente, ver um endereço IP que começa como este. De fato, se algum de vocês cresceu com acesso à internet em casa, e você nunca foram suficientemente tecnicamente curioso para bisbilhotar suas próprias configurações de computador, você provavelmente vez vi um endereço que parece mais este, que começou com 10, ou 172,6, ou 192.168, ou algumas variantes do mesmo. E isso só significa que o mundo é posta de lado um monte de números ser privado, o que significa você pode usá-los em sua casa, você pode até mesmo usá-los em seu campus e dentro da sua empresa, mas você não pode usá-los na internet em geral. E assim estes privado IPs foram uma solução de para certificar-se de que, pelo menos, tão medida em que o mundo inteiro está em causa, nós não estamos usando que muitos endereços IP. Mas, pelo menos, podemos, em nossa própria campus, tem praticamente tantos IPs como nós queremos. Mas quem se importa? Qual é a relevância de tudo isso para um uso real da internet? Bem, vamos dar uma olhada talvez uma simples foto aqui. Deixe-me, tanto através de os para cima na tela. E perdoe minha caligrafia aqui. Mas se pensarmos em nós mesmos como sendo este pequeno laptop aqui em algum lugar do campus, estes dias que tem Wi-Fi. Mas no passado e se você encontrar o adaptador correto, ele pode ter um cabo ethernet que da mesma forma deixar você se conecta a algum tipo de dispositivo. E você pode chamar isso de uma série de coisas. Mas eu estou indo para ir em frente e chamar isso, por agora, que tal um ponto de acesso? Portanto, este é o meu laptop. Este é o meu AP, ou ponto de acesso, e este é um dispositivo sem fio, não ao contrário aqueles que Harvard tem todo o teto e paredes em torno do campus que têm luzes piscando e que são o que seus laptops costumava falar sem fios para o resto da rede. Então, de alguma forma, este portátil está falando para que coisa na parede, na sala de jantar, ou em outro lugar. Agora, entretanto, que do ponto de acesso é conectado a algo mais no campus. E é provavelmente algo conhecido como um interruptor. E eles se parecem muito mais interessante que apenas estes diagramas de caixa. Mas de alguma forma, essa coisa é conectado a um switch. E, por sua vez, de alguma forma que o interruptor está ligado a um dispositivo que é provavelmente uma pouco maior, chamado de roteador. E então, enquanto isso, Harvard está ligado a toda a internet que vamos desenhar como essa nuvem aqui, através de um certo número de arames ou tecnologia sem fio. Portanto, há um monte de passos entre a mim e ao resto do mundo. E, de fato, mesmo dentro esta foto aqui, existem alguns outros servidores ou serviços envolvidos. E eu estou indo só para desenhar estes um tanto abstratamente apenas para que tenhamos as siglas antes de nós. Um é chamado de DHCP. E um outro, um pouco mais interessante para hoje, é chamado de DNS. Então, esses são os servidores que estão de alguma forma acessível para o meu computador também. Então, agora, vamos provocá além de um pouco de jargão. Assim, o ponto de acesso é apenas este dispositivo sem fio muitas vezes com antenas que realmente deixar você falar com um sem fio. Em casa, você pode chamar este router uma casa. Ele pode ser feito por Linksys, ou a Apple, ou D-Link, ou qualquer número de empresas. Isso, por sua vez, está ligado a um interruptor de algum tipo. Ou de volta para casa, o que é o seu Wi-Fi dispositivo provavelmente ligado ao em vez disso? Porque você provavelmente não possuir todos os equipamentos. Sim. Modem por cabo ou DSL de volta para casa que você tem de Verizon, Comcast ou, ou uma dessas transportadoras. Então, acho que de toda essa complexidade como apoio a uma universidade ou realmente uma empresa como a Comcast. E realmente, o material que está em sua casa é provavelmente neste lado da cerca mais talvez uma delas em casa route-- um estes são modems de cabo ou DSL modems poderiam proporcionar. Então, um switch é apenas um dispositivo com todo um conjunto de tomadas de dados na mesma. Na verdade, se você se lembra que a notícia relatório jogamos na tela grande um par de semanas atrás, onde nós estavam falando choque do escudo, e quão ruim isto era? E havia destes fotografias de cabos e conectores, e coisas que parecem técnico? Aqueles eram apenas interruptores mudos que apenas internet conecta computadores conectando cabos para eles. Então, isso é tudo que um switch é. Agora, esses dispositivos obter um pouco mais interessante. DHCP. Se você já remexia o seu computador em casa ou mesmo no campus, você pode ter visto esta sigla. Alguém sabe o que um servidor DHCP está? Protocolo de configuração dinâmica de acolhimento? Não é o tipo de coisa que você realmente precisa anotar. DHCP. ninguém em tudo? Tudo certo. Então, vamos rebobinar a história. Se a história aqui na mão é predicado no meu ter um endereço exclusivo no mundo, um endereço IP, onde é que isso veio? No passado, quando você tem que campus, você realmente teve perguntar a alguém em Harvard, que deve ser o meu endereço IP. E você faria manualmente digitá-lo em seu computador. Mas, mais recentemente, as tecnologias existem que permitem que você dinamicamente, DHCP, obter um endereço IP simplesmente quando você ligue para campus sem fios ou com um arame. Assim servidor DHCP é apenas um servidor que dá ao seu computador um IP exclusivo endereço, um pouco ao acaso ou através de algum algoritmo. Mas se você acha que volta a algumas semanas ou alguns anos, quando se registou inicialmente seu computador no campus, você estava dizendo Harvard, autorizar me para me dar um endereço IP. Agora start DNS para obter um pouco mais interessante. Domain Name System. Alguém quer tomar uma facada o que essa coisa é aqui? É um ou mais servidores que executar uma tarefa bastante simples que é tipo de importante. Sim. AUDIÊNCIA: traduz URLs [inaudível]. DAVID MALAN: Yeah. Ele traduz URLs para IP endereços e vice-versa. Considere-se, afinal, de que quando você vai no site, você digitar algo como facebook.com, ou google.com, ou harvard.edu, você certamente nunca digitou provavelmente um endereço IP numérico. E você pode pensar o motivo. De volta ao dia, mesmo Agora, em certa medida, quando você faz um telefone chamar para uma empresa, eles realmente se esforçam para comprar-se um número de 800 que realmente tem palavras nela, como 1-800-collect ou algo isso é memorável como esse para que as pessoas não tem que se lembrar que C-O-L-G-E-C-T, na verdade, se expande para. Então, nós já vimos isso heurístico no passado. E, de fato, é o que os endereços IP eo que vamos chamar nomes de host ou totalmente qualificado nomes de domínio fazer por nós. Ela nos permite servidores de endereço por palavras em vez de números. Assim como nós, na verdade, ver essa conversão. Eu estou indo para ir em frente e abrir um programa. Eu estou indo só para ir em frente e abrir uma janela de terminal. E eu estou indo para ir em frente e mostrar o que um servidor DNS faz. Por exemplo, se eu queria ver qual é o endereço IP é de Facebook, Eu posso digitar em um terminal pedir como isto-- e você pode fazer isso mesmo dentro do seu aparelho. E isso é pesquisa facebook.com. E eu vejo um monte de coisas. Esta é a primeira resposta Server-- DNS de Harvard que a imagem que eu tenho atraídos para lá. --que da me dizendo que o IP do Facebook endereço é aparentemente isso. Então deixe-me ir em frente e cópia que 173.252.120.16. E deixe-me abrir Chrome no meu Mac. E deixe-me ir para http: // e colar que o endereço IP e pressione Enter. E, de fato, eu me encontro no Facebook. Assim que a conversão de algum modo, de facto, aconteceu. E se eu fizer isso de novo, vamos fazer nslookup, www.google.com. Eu voltar um monte de respostas. E, de fato, há maneiras diferentes que as empresas implementar isso. Às vezes, eles dizem o mundo eles têm um endereço IP. Mas que um endereço IP é resolvido ou mapeado para vários servidores. Ou, no caso do Google, que dizer ao mundo, nós temos um monte de endereços IP. Seu laptop é bem-vinda para falar entre em contato com qualquer um desses servidores. Então, tudo que vem acontecendo por baixo do capô. Quando você digita www.google.com Enter em seu navegador, o seu browser, e em transformar o seu funcionamento, Mac OS ou Windows, ou Ubuntu Linux, pedir ao servidor DNS nas proximidades, o que é o endereço real do servidor. Uma vez que o último dispositivo neste quadro, um roteador, é aquele cujo propósito na vida é para encaminhar a informação, rotear pacotes por assim dizer, envelopes de informação digital contendo zeros e uns de emissor para o destino, de origem para o receptor. E assim a coisa rotas do roteador. Então, por que é isso tudo particularmente relevante? Bem, vamos dar uma olhada em como isso pode ser usado. Suponha que eu tenho aqui uma foto de Rob Boden. Então suponho que eu quero enviar esta foto de Rob Boden em Dan nas costas da sala de aula. Então eu sou um computador como o meu laptop, e Dan é algum outro computador na internet. E eu quero enviar um pacote de informações de mim para ele. Isso levanta a questão: como é que eu realmente rota este pacote para ele. Bem, em termos humanos, eu diria, hey, você pode passar isso para Dan? E, em seguida, um monte de você provavelmente passá-lo de volta e para frente e para trás até finalmente faz o seu caminho ao longo de Dan. Mas isso é um pouco imprecisa. Computadores provavelmente precisará ser um pouco mais metódica. Então, provavelmente, Dan tem um endereço IP. Então, o que realmente devo fazer é que eu deveria levar, por exemplo, um envelope em branco assim. E eu não sei o que O endereço IP do Dan é. Então, eu estou indo só para generalizá-lo como IP de Dan. E eu vou colocar isso em o de campo do meu envelope. E enquanto isso, eu tenho um endereço IP. Não importa hoje o que é. Então, eu estou indo só para dizer que meu IP no canto de trás lá. E então, eu estou indo para ir em frente e colocar esta imagem dentro deste envelope. E, em seguida, cada um de vocês, presumivelmente, como roteadores na internet, foram pré-configuradas por os seres humanos em geral ou às vezes por algoritmos automatizados para saber que se o endereço IP de Dan começa com um 1, ele deve ir por esse caminho. Se o endereço IP de Dan começa com a 2, ele deve ir por esse caminho. Talvez um 3 vai desse jeito. Talvez um 4 vai desse jeito. E isso é um pouco demais. Simplista, mas essa é a idéia geral. Cada um destes routers-- e não pode ser como muitos como 30 entre eu e Dan. --have algum tipo de planilha dentro da sua memória, uma tabela de banco de dados, que apenas diz: Endereço IP que se parece com isso, vai desta forma. Um endereço IP que parece assim, vai assim. E é assim que ele faz decisões bastante simplista. Mas acontece que esses roteadores fazer algo mais do que isso, potencialmente. Eles permitem que os computadores entrega garantia, pelo menos com alta probabilidade. Então você pode, também, ter ouvido, mesmo se você nunca se importou muito ou se perguntou o que é, você pode ter ouvido de alguma coisa por esta sigla. Vamos voltar aqui para apenas um momento e puxar para cima este. TCP, protocolo de controle de transmissão. Outra forma técnica de apenas descrevendo uma outra tecnologia que é usado na internet. Então, IP, protocolo de internet é utilizado para o endereçamento. É um padrão que o mundo surgiu com o que disse, você colocar um endereço IP aqui para Dan, e um endereço IP aqui para si mesmo, e, em seguida, você colocar algum informações em um envelope. Mas TCP é outra tecnologia, usado em conjunto com o IP. E, de fato, se você já visto essas siglas antes, Você provavelmente já viu TCP cortar IP que apenas significa que as pessoas tendem a usá-los juntos. Bem, TCP é uma espécie de legal, pois permite você para aumentar a probabilidade que os dados são realmente vai ficar de mim para Dan. Na verdade, a internet é um lugar maluco. Não há nenhuma garantia de que se eu enviar os dados desta forma que está indo para ir dessa forma da próxima vez. Poderia ir por esse caminho ou daquela maneira. A menor distância entre dois pontos não é necessariamente uma linha reta ou na mesma linha. Além disso, alguns de vocês caras podem cometer erros ou ficar sobrecarregado com muito muitos envelopes vindo em sua direção. Então você só vai desistir e literalmente soltar algumas delas envelopes no chão. E, na mesma forma podem ser dados caiu na internet por roteadores. Assim, para diminuir o chances de isso, eu vou para levar a minha pouca segurança tesoura cortar aqui e Rob em, digamos, quatro peças, quatro segmentos. E agora, eu estou indo para ir em frente e colocar mais um pedaço de informação nesta envelope. Vou dizer algo como: 1 de 4. Então, agora, o meu envelope final, em menos o primeiro, parece que isso. Eu estou indo para ir em frente e colocar isso aqui. E por causa do tempo, eu vou rotular os outros de forma idêntica à do 2 4, 3 de 4, 4 de 4. Mais uma vez, com o endereço IP de Dan no frente dele e com o meu endereço IP na parte traseira esquerda, mas eu não pode enviá-los por enquanto. Pois verifica-se que na internet, servidores podem fazer várias coisas. Na verdade, todos nós podemos usar a web um pouco, a rede mundial de computadores, http: // o que quer. Mas há outro serviços na internet. Quais são alguns dos outros serviços, tipo de usuário, serviços amigáveis ​​para o consumidor que vêm à mente, além um programa-tipo de navegador web? AUDIÊNCIA: Email. DAVID MALAN: Email. Está bem. Boa. O que é mais uma? AUDIÊNCIA: Bate-papo. DAVID MALAN: Então bate-papo, se que é o Skype, ou Gchat, ou algo assim. AUDIÊNCIA: Armazenamento. DAVID MALAN: Então algum tipo de serviço de armazenamento, com certeza. Algo como Dropbox, ou caixa, ou semelhante. Portanto, não é diferente serviços na internet. E verifica-se que Dan, se ele é realmente um computador, não tem de ser dedicado de uma coisa na vida. Ele realmente pode fazer várias coisas. E, de fato, ele pode ser um servidor de e-mail. Ele pode ser um servidor web. Ele pode ser um servidor de chat. Mas isso parece sugerir que Dan precisa saber com antecedência quais são os conteúdo dessas mensagens. Isso é uma página web que eu estou lhe enviando? É um email que eu estou lhe enviando? É um instante mensagem que estou enviando-lhe? Então, nós precisamos de mais um pedaço de informações sobre estes envelope de modo que Dan, quando ele recebe este envelope, sabe que programa usar para exibi-lo. É um navegador? É o Google? É o Skype? Ou é Outlook ou algum outro programa por completo? E assim, com o TCP vem apenas uma convenção humana. O mundo decidiu há alguns anos atrás de associar números inteiros únicos com os serviços mais populares. Um é chamado de Protocolo de Transferência de Arquivo, FTP, mas é um pouco datada agora. Mas seu identificador exclusivo é 21. SMTP para email de saída, sua única identificador é de 25 apenas porque. DNS, a única coisa de que falamos anteriormente, usa o número 53 para suas consultas. Como o que é o IP endereço google.com? E agora, o mais familiarizado você pode ter em algum lugar, em algum momento visto o número 80 e talvez 443. Esses são os únicos identificadores para HTTP, que é o idioma veremos em breve usado para o tráfego web entre navegadores e servidores. E 443 é para o versão segura dos mesmos. Assim, a um último detalhe que eu sou vai colocar no meu envelope é que eu não vou enviar esta apenas para IP de Dan. Vou enviá-lo para dizer, : 80, se o que eu estou tentando enviar ele é uma página web, uma página da web que contém a foto de Rob Boden. Então, eu vou fazer o mesmo coisa sobre estes outros envelopes. E então, em última análise, eu vou cair estes fora com o roteador mais próximo, Reconhecendo que esta roteador pode não ser necessariamente tomar o mesmo caminho de cada vez. Na verdade, eu poderia ter a primeiro pacote indo para este lado. Segundo pacote pode ir por esse caminho. Terceiro packet-- iniciar encaminhamento. --might ir por aqui. E em theory-- não pode mantê-lo. Em teoria, todos os quatro destes pacotes deveria eventualmente rota sua maneira, no entanto eficiente ou ineficiente, todo o caminho para a parte traseira. Em que ponto, Dan, mediante recebimento, pode remontá-las baseado on-- o engraçado é que, todos nós sabemos que o resultado aqui vai ser. Dan está indo para obter uma imagem de Rob. Mas vamos ver como isso funciona. Bem, sim, Dan vai obter parte de uma imagem de Rob. Muito bom. Todo mundo está hoje participando. Tudo certo. Assim como Dan começa a receber estes pacotes, vamos fazer uma pergunta. E se um de vocês fica preguiçoso, sobrecarregado, mal-intencionado, ou apenas com alimentação fora, e um ou mais dos pacote não torná-lo para Dan? Como é que Dan vai saber que ele não fez receber um dos segmentos dos quatro Enviei-lhe? Apenas de forma intuitiva, o que podemos fazer? Sim? AUDIÊNCIA: [inaudível]. DAVID MALAN: Exatamente. Porque eu tenho contado a eles de forma única, e Como segmentos lá muitos eu especifiquei deve ser, ele pode deduzir que o qual, se for o caso, um dos segmentos ele está realmente faltando. E o que diz a TCP computadores para fazer, se os computadores, como Mac OS, e Windows, Linux e suporte e compreender TCP, o que eles fazem, Documentação do TCP essencialmente Dan diz que deve enviar-me uma mensagem de volta dizendo, ei, David, Eu estou sentindo falta de número de pacotes 1 de 4, ou 3 de 4, o que ela é. E então, meu trabalho é levar outra foto de Rob, que temos de extras para mais tarde hoje se você gostaria de ter um com você, e então eu posso reenviar esse segmento de Rob todo o caminho para a volta. Assim como simplista como este mecanismo é, que é o que está acontecendo quase todo o tempo você faz algo na internet, especialmente para estes o mais popular dos serviços. Há outros protocolos, além de outras tecnologias de TCP que trabalhar um pouco diferente. Mas muitos dos serviços que tipicamente usar realmente dependem destes protocolos. Assim, Dan, você conseguiu o imagem completa lá atrás? Sim. Temos remontado Rob nas costas. Muito obrigado aos roteadores. Suponha-se, eu realmente quero o veja os roteadores entre mim e MIT, assim como vocês foram os roteadores entre mim e Dan. Bem, ao invés de nslookup para pesquisa de servidor de nomes, Eu posso, em vez digite rota de rastreamento, que é realmente vai fazer o que diz. E eu vou fazer e modo silencioso com um traço. É um argumento de linha de comando que apenas diz, tente este uma vez e não várias vezes. E agora, eu vou digitar www.mit.edu. Agora, a saída é bastante rápido e enigmática. Mas o que é interessante sobre esta é que cada uma destas linhas representa, essencialmente, um aluno nesta audiência se você fosse o caminho entre mim e MIT. O que você vê aqui, em primeiro lugar, é o nome de domínio que eu digitei, ou de domínio totalmente qualificado nome, como é chamado corretamente. E isto é, aparentemente, o Endereço IP do www.mit.edu. Meu computador percebi que para mim. Isso aqui é uma promessa que vamos apenas para tentar chegar a MIT no prazo de 30 saltos. É melhor haver não mais do que 30 alunos entre mim e Dan. E agora, cada uma dessas linhas representa literalmente um roteador entre mim e Dan, literalmente um de vocês. E assim, este não parece ter um nome, um nome de domínio. Ele só tem um IP. E levou apenas 0,662 milissegundos para obter de mim para que o primeiro roteador. O próximo não era que muito mais longe. Levou apenas um milisegundos para chegar lá. E agora, felizmente, as coisas ficar um pouco mais user-friendly com nomes que são enigmáticas mas um pouco mais a dizer. Isso aparentemente é um roteador no núcleo da rede da Harvard alojados, só porque as pessoas disseram-nos este, no Centro de Ciências, SC. E GW é apenas uma notação abreviada para porta de entrada que é um sinônimo para o roteador. Portanto, este é um sistema maneira sobrescrito do administrador de nomear um dos servidores no Centro de Ciências. Entretanto, esse servidor é aparentemente ligados por algum tipo de cabo a outro roteador que é apelidado o gateway fronteira um traço alguma coisa, o que quer que esses números significam. E, em seguida, aparentemente, Harvard tem uma conexão isso é outra milissegundo distância a algo chamado a encruzilhada do norte que é um ponto de troca de tráfego comum entre grandes lugares como Harvard onde os lotes de cabeamento vai em e permite que as interligações entre diferentes entidades. Passo seis, infelizmente, não tem um nome válido. E o passo sete fica interessante. Eu não tenho nenhuma idéia do que a maioria destes dizer. Mas NY faz saltar para fora de mim. E o que isso provavelmente significa? Não é mesmo técnica. Apenas New York. Então, na verdade, o que há de humano comum convenção não garantida mas a convenção comum é a de roteadores nome pela natureza da cidade ou do aeroporto código que eles estão mais perto. Assim, com alguma probabilidade, este número router sete é, provavelmente, de fato, em Nova York. E isso parece corroborar essa suposição porque é seis milissegundos em vez de apenas um ou então para alguma coisa aqui no campus. Mas agora levar isso em conta, direito sobre Megabus ou outros enfeites, isso pode levar quatro, cinco, seis horas para obter um ser humano a partir daqui para Nova York. Para pegar um pedaço de dados, leva apenas seis milésimos de segundo para obter um pacote de mim para Dan se ele fosse todo o caminho de Nova York. Então, finalmente, este aparentemente é o nome de domínio real para www.mit.edu. Eles têm aparentemente terceirizou seus servidores web para uma empresa chamada Akamai, o que significa alguma outra empresa executa seus servidores. E é por isso que estamos vendo que coisa estranha lá. Bem, vamos fazer isso mais uma vez. Vamos ir em frente e fazer um traço rota para o nosso amigo Professor Nick Parlante em Stanford que tem um servidor chamado nifty.stanfor.edu. Enter. E agora, vamos ver, provavelmente, um percurso um pouco mais longo que passa por mais algumas cidades. Então, aqui estes sem nome Servidores de Harvard aqui. Estamos no centro de Harvard, o gateway fronteira de Harvard, encruzilhada do norte, sempre que tal seja. E agora, está ficando um pouco mais interessante. Eu estou supondo que router número oito está em que cidade? AUDIÊNCIA: [interpondo VOZES] DAVID MALAN: Chicago, provavelmente, com base sobre esta, com base nesta coisa aqui. E agora temos Salt Lake City, talvez, talvez Los Angeles aqui, e, em seguida, LAX, sim, isso provavelmente é LA pelo fundo. Até que, finalmente, ele vai do sul da Califórnia todo o caminho até o norte da Califórnia para onde é Stanford, em Palo Alto. Então, muito legal. E vamos dar um passo adiante. Ele, aparentemente, seria levá-lo 82 milissegundos para enviar uma mensagem para Dan, se você fosse na Califórnia em vez de Nova Iorque. Vamos fazer alguma coisa como rotas de rastreamento, uma tente www.cnn.co.jp para o Versão japonesa do site da CNN. E agora, nós ainda estamos em Boston parece no momento. Um casal de servidores e seis oito não estão respondendo porque está sendo um pouco particular. Mas, finalmente, parece haver algo interessante acontecendo entre, vamos dizer, passo sete e nove. O que é provavelmente entre sete e nove anos, e, certamente, entre sete e 17 passo? Há um enorme salto na quantidade de tempo ele está tomando para dados para ir de um destes lúpulo, um desses routers para outro. Assim, as probabilidades são, em algum lugar aqui, há provavelmente, especialmente aqui, há provavelmente um grande corpo de água que tem algum trans-Pacífico ou trans Cabo Atlântico, que requer, na verdade, ainda mais tempo para os dados a ir de um ponto a outro. Mas, novamente, imaginar as horas levaria a voar para o Japão. Aqui, em cerca de 200 milissegundos, lança, sua mensagem é realmente lá. Então você pode brincar com esta no aparelho ou mesmo no Windows ou Mac OS com ligeiramente diferentes comandos. Às vezes, você vai ter essas estrelas, como em filas de seis e oito, que significa apenas que os roteadores não estão configurados para lhe dar uma resposta pelo amor de privacidade. Mas, geralmente, esta técnica seria, de fato, trabalhar. Então não é que também há outros informações suculento espreita em ferramentas que você toma para concedido a cada dia. Assim, por exemplo, se você receber um e-mail, francamente, como alguns de vocês pode ter recentemente, de questionável origens, se você nunca olhou para interface do Gmail antes, se é para a interface de faculdade ou seu pessoal, você pode ver o seu caixa de entrada com essa aparência. E, de fato, este é um e-mail Enviei, malan@harvard.edu, para jharvard@cs50.harvard.edu esta manhã apenas para que eu pudesse tirar um screenshot. Mas ao que parece, tudo desta vez no Gmail, há aquele pequeno triângulo em direção ao canto superior direito há ao lado da crista Harvard que se você clicar, você pode clicar em Mostrar original. E se você fizer isso, você vai realmente ver um monte de informações muito esotérico como data e hora, e IP endereços e nomes de domínio. Mas você vai ver, em suma, o cabeçalhos que todo esse tempo têm foi atingido em cada enviar e-mail que você envia e recebe. E é desses cabeçalhos que as pessoas podem usar, cientista da computação ou de outra forma, na verdade, com a inferir alguma probabilidade, onde e de quem um e-mail realmente veio. Na verdade, vamos falar em semanas mais tarde sobre como e-mail propriamente dito pode ser gerado programática que é uma coisa muito boa para um site que quer enviar e-mails para os usuários. Mas vamos ver, também, o quão trivial é forjar e-mails de alguém a outra pessoa, a menos que você realmente saiba como verificar os cabeçalhos. E mesmo que é um perdedor proposição nos dias de hoje. Assim, com o que disse, vamos uma camada de cima. Começamos com IP que aborda pacotes para nós, dá-lhes endereços únicos. TCP, o que, em suma, garante a entrega ou pelo menos aumenta a probabilidade do mesmo por adicionando coisas como segmentos, 1 ou 4, 2 de 4, 3 de 4, e 4 de 4. E agora, vamos camada em cima de que um outro protocolo. Todas estas coisas são protocolos, convenções de computador que ditam como dois computadores falar uns com os outros. De HTTP, finalmente, hoje em dia, é protocolo de transferência de hipertexto. E isto é o protocolo que os navegadores usar quando se fala de servidores web. Então, quando você puxar para cima um navegador como Chrome ou IE, ou Firefox, ou Safari, ou o que quer, e você digitar algo como facebook.com e pressione Enter, Não só faz o seu primeiro computador traduzir facebook.com em quê? Um endereço IP. Em seguida, ele converts-- ele envia uma mensagem para esse ditado endereço IP, dá-me a página de hoje ou dar me a tela de login do Facebook. Ou se você já estiver logado, dar me o modo de exibição padrão do meu cronograma. Então é isso que diz HTTP. E mais coloquialmente, se eu sou um web servidor e você é-- qual é o seu nome, de novo? AUDIÊNCIA: Margot. DAVID MALAN: Margot é um web servidor, e eu sou um navegador web, e eu simplesmente quero recuperar minha cronograma de Margot, margot.com, Eu diria, Olá, eu sou Davi. AUDIÊNCIA: Oi, eu sou Margot. DAVID MALAN: E você, então, responder com informações adicionais para mim. Então nós temos esse humano estúpido convenção para instance-- obrigado. --de apertando as mãos uns dos outros. E os computadores têm a mesma idéia onde um cliente, como um navegador, pede um servidor para fazer algo em seu nome. E aqui está uma foto, por exemplo. À esquerda é um computador portátil, ambiente de trabalho, qualquer que seja, ou mesmo um telefone. E na direita é muito datada de vista de um servidor. Eles normalmente parece menor e mais sexy estes dias. Mas o ponto é simplesmente que há algum tipo de comunicação entre cliente e servidor. E clientes, no sentido de de alguém em um restaurante eo garçom ou garçonete, mesma idéia com computadores. Os clientes e servidores, um pede informações, uma responde com informações. Agora, como é que isso informações voltar? Bem, considere isso. Obter é uma espécie de padrão maneira-- e é um termo super simples. --que só dita como um navegador obtém informações a partir de um servidor. Em outras palavras, ao invés de apenas goof-ily estendendo minha mão para Margot, se eu realmente fosse um navegador, eu iria enfiar dentro de um envelope, como eu fiz com a foto do Rob antes, um mensagem de texto que diz literalmente algo como isso, get / http / 1.1hostwww.google.com ou margot.com ou qualquer que seja o O nome de servidor pode acontecer de ser. E então, dot dot dot, algumas outras coisas. Mas, literalmente, dentro de um envelope faria ser textual bastante simples mensagem como essa. Que após o recebimento, Margot faria abrir, ler o conteúdo, e responder adequadamente. Agora, é um pouco não-óbvia com este exemplo. Mas chegar /, o que é a barra provavelmente se referindo, apenas com base em sua familiaridade com navegar na web na vida diária? Qual é a barra? AUDIÊNCIA: [inaudível]. DAVID MALAN: Uma seqüência de escape. Não é má idéia, mas geralmente seqüências de escape ir por outro caminho. Isso seria uma barra invertida normalmente. Mas não é um pensamento ruim. Sim? Um ponteiro. Também é bom pensamento, mas ainda mais simples do que isso. O diretório home. A raiz de um disco rígido, por assim dizer. A maioria de nós não escreva isso. Mas, tecnicamente, se você quisesse ser super adequado nos dias de hoje, você iria para algo como http://www.facebook.com/. Agora, eu disse que a maioria de nós não faria necessita de escrever a barra. E, francamente, a maioria navegadores, Chrome incluído, não se incomodam mesmo mostrando nós a barra nos dias de hoje só porque eles gostam de ser simples e sucinto. Mas a barra significa apenas ir a www.facebook.com e obter slash, a raiz do disco rígido, a página padrão no facebook.com. Usando o protocolo? Bem, usando a versão 1.1 do esta coisa conhecida como HTTP. O servidor, ou Margot-- e pela maneira, fazer Você se importa que eu estou usando você nestes? Está bem. Então, nós estamos bem agora. Então Margot resposta agora com um envelope de sua própria, dentro do qual é uma mensagem de forma semelhante textual. A primeira linha das quais é, sim, eu falo HTTP versão 1.1. 200 é o código de status que apenas significa que tudo está OK. Eu tenho a página que você está procurando. Enquanto isso, o Content-Type: text / html, este é a maneira semi-arcano de Margot de dizer: o que você requisitou é uma página web. E é tipo, de modo a speak-- quase como um sentimento variável, mas isso é nível muito mais elevado agora. O seu tipo de dados é texto mas especificamente HTML. A linguagem veremos em breve. E então, há algumas outras coisas. Então, outra coisa é, literalmente, o que Facebook está a responder com. Então vamos ver isso também. Deixe-me ir em frente e abrir até Chrome no meu laptop que você pode fazer em seu próprio computador também. E eu estou indo para ir em frente e abrir www.facebook.com. Enter. E eu recebo essa tela familiares aqui. Mas agora, eu vou fazer outra coisa. Eu estou indo para ir em frente e vá em Exibir, Developer. E ir para desenvolvedor Tools, que você deve tem dentro de Chrome em seu computador, pelo menos dentro de seu aparelho. Vou percorrer este coisa aqui, e você está vai ver um monte inteiro de texto enigmático aqui. Acontece que o que colocar dentro Margot desse envelope em resposta a me é uma linguagem chamada HTML, HyperText Markup Language. Não é uma programação linguagem, porque você não pode, não tem loops, e as condições, e funções, e coisas assim. É uma linguagem de marcação. Nesse, ele tem uma sintaxe especial chamados de tags e atributos que diz um navegador o que mostrar na tela e como exibi-lo. Deve ser centralizado? Deve ser em negrito? Vermelho, verde, azul? É uma linguagem de marcação. Nesse, ele diz um navegador o que mostrar na tela. Portanto, esta é, literalmente, todo o HTML e mais esse servidor Facebook está cuspindo e que Chrome e IE, Firefox e ter foi concebido por seu respectivos autores para entender. E, de fato, é uma pouco mais confusa do que isso. Se, em vez disso, vá em Exibir, Developer, View Source, este é realmente o que Facebook está a colocar. Espécie de zero para cinco para o estilo, certo, se nós inferir que esta provavelmente não é a melhor. Mas, francamente, eles podem fugir com porque se você está servindo-se bilhões de páginas da web por dia, você realmente não quer perder tempo e bytes, e dinheiro em última análise, na transmissão coisas como nova linha caracteres e espaços e tabulações porque você está gastando por largura de banda desnecessariamente com o seu ISP. Então, na verdade, este é significado para ser minified desta maneira. Mas o Chrome está fazendo para nós é, ele está tomando este HTML, que parece completamente como uma bagunça e ininteligível para a saúde humana, e é só formatá-lo. É muito imprimi-lo para que nós podemos envolver nossas mentes em torno dele um pouco mais facilmente. Mas o mais interessante é este. Se eu clicar agora no Chrome, não elementos de rede, mas, Eu vou ver um pouco tela de registro que é vai me mostrar tudo das solicitações HTTP que está realmente indo para trás e frente entre mim e no Facebook ou me e Margot se eu fizer mais do que um pedido. Então, eu estou indo para ir em frente e clique o ícone de recarga aqui no Chrome. E agora, um grupo inteiro de material passou voando na parte inferior. Eu estou indo para rolar de volta até o topo. E agora, perceber isso, o primeiro solicitar meu navegador fiz foi www.facebook.com. Ele está usando o get mecanismo que significa apenas ele está falando a linguagem textual que vimos um exemplo de um momento atrás. E, além disso, verifica-se que a resposta que o Facebook me deu é de 200 OK, o que significa que encontrado na página web em questão. Se eu clicar sobre essa linha, eu posso realmente ver esses cabeçalhos um pouco mais claramente. Estes farão mais sentido antes do tempo. Mas observe que o meu navegador envia uma todo grande quantidade de informações como anfitrião, e método, e cookies. Vamos voltar àqueles antes do tempo. E você vai finalmente entender o que na verdade é um cookie e como você em breve estará enviando-los. E você pode ver o que Facebook está enviando de volta, incluindo o tipo de conteúdo de texto HTML, a data e hora atual, a sua privacidade política, ou a falta dela, e em seguida, finalmente, um número de biscoitos que estão a ser definido em seu computador também. Mas nós vamos provocar os apart antes do tempo. Mas em suma, cada vez que você visitado uma página web, agora por anos, você foi o envio de mensagens para o que eu enviada em um envelope a Margot e Dan. E você foi ficando para trás respostas como esta do Facebook. Mas além disso, acho que o que está sendo divulgados para o Facebook, e Google, e todos os outros a cada vez que você visita uma página web? O que é do lado de fora de cada envelope seu computador tem sido o envio? O seu endereço de IP, certo? Talvez não o seu nome por si, mas o seu endereço de IP. E, assim, vamos ligar os pontos mais tarde, se você estiver usando os serviços como a web, ou BitTorrent, ea vida, e de se ter registado um computador em um lugar como Harvard, alguém em algum lugar sabe que John Endereços IP de Harvard isto, ponto este, dot isso, dot este. E, de fato, os registros podem manteve tanto a campus como este, em uma rede Comcast, na Verizon, ou, francamente, no NSA como temos aprendido recentemente, que registra praticamente tudo que você está fazendo na internet. E nós vamos voltar a esta classe futuro sobre as implicações destes decisões de design e segurança. Mas a verdade é que você realmente não tenho tudo o que muita privacidade. Toda vez que você foi visitar em qualquer lugar na web, você foi mostrar a sua mão e revelando, pelo menos, o seu endereço de IP. Nota tão assustador de lado, o que podemos fazer para incorporar coisas como gatos em uma página da web? Portanto, temos um monte de respostas que pode voltar a partir do servidor. E nós não vamos ver tudo isso hoje. Mas 200 é bom. E você provavelmente não viu tudo isso como um ser humano antes. Mas você provavelmente já viu pelo menos, um destes. Qual desses pode parecer familiar? AUDIÊNCIA: 404 DAVID MALAN: Então 404. Arquivo não encontrado. E, de fato, você vai ver isso programaticamente si mesmo. 404 apenas significa que o arquivo que você solicitou, cortar ou cortar alguma coisa, simplesmente não existe. E um servidor web normalmente responde com 404 como resultado Enquanto isso, em breve veremos que o conteúdo dessa mensagem são esta linguagem conhecida como HTML. E este é um super simples trecho de HTML que não faz nada que não seja exibir Olá mundo na tela. Na verdade, você vê no topo desta algo chamado um tipo de documento declaração de que apenas diz, hey, mundo. Este arquivo contém HTML. E, em seguida, o próximo bit de HTML que você vai escrever, ele tem um suporte aberto, e, em seguida, a palavra HTML, em seguida, um suporte fechado e, em seguida cabeça aberta, e perto do suporte. Assim, em breve, vamos realmente fazer isso mais mecanicamente. Deixe-me ir para o meu aparelho, mas você pode fazer isso em qualquer lugar que você tem um editor de texto para. Eu estou indo para ir em frente e salvar um arquivo chamado hello.html. Vou colocá-lo no meu desktop para manter as coisas de super simples agora. E eu vou fazer exatamente o que eu acabei de ver. Assim, tipo doc HTML, HTML suporte aberto. E agora, o aviso prévio, eu vou fazer o oposto preventivamente. E pelo contrário, eu quero dizer a mesma marca, por assim dizer, mas ele começa com uma barra. E então, aqui, Eu vou dizer, cabeça, pois verifica-se que cada página web tem uma cabeça chamada que é uma coisa que vai no título Bar, no topo da página. No título é apenas vai ser Olá aqui. E agora, eu vou ter um corpo a esta página web. Assim, cada página da web tem dois uma cabeça em cima e um corpo que é a coragem da página. E aqui, eu estou indo só para dizer algo como Olá mundo. E eu estou indo para salvar esse arquivo. Se eu agora minimizar gedit, olha, há um pequeno arquivo no meu desktop chamado hello.html. Agora, isso não é em um servidor Ainda, de per si, Com efeito, é apenas na minha própria área de trabalho pessoal aqui. Mas se eu abrir o Chrome e pressione Control O- há o gato em questão. --e eu ir para o meu desktop. E eu abrir hello.html, há, em verdade, é a minha página web super simples. O corpo da minha página e esta janela branca aqui é o corpo com Olá mundo. E o título na cabeça a página está na guia lá. E vamos ver logo que ele é super simples para abrir outras páginas também. Por exemplo, eu estou indo para ir em alguns dos códigos de distribuição Para esta semana, fonte sete, e eu vou abrir não o JPEG que esse cara está aqui. Mas eu vou abrir image.html, que em última análise se parece com isso. Mas deixe-me agora abrir esta em gedit, e vai para a fonte Dropbox sete, e image.html. A maioria deles é apenas comenta como veremos em breve. Mas se eu quiser colocar Grumpy Gato dentro da página web, basta colocar outro suporte aberto, e, em seguida, a palavra-chave ou imagem img para breve, e em seguida alternativa texto por razões de acessibilidade se alguém tem uma tela leitor ou algo parecido. Fonte que é, o que é o nome do arquivo, cat.jpeg. E, em seguida, porque esta tag é um pouco especial, colocamos a barra, como vamos ver, dentro da tag. Mas o resultado final é um web página que se parece com isso. Assim, em breve, o que vai ser está fazendo agora com o tempo está usando a web e criação de páginas web para em última análise, ser recipientes não só para as coisas tolas como imagens e links, e tabelas, e listas com marcadores, e similares, mas também para dar-nos a nós mesmos uma interface gráfica do usuário, uma interface gráfica, não muito diferente do que fizemos nós Breakout. Mas dentro desse ambiente, estamos vai começar usando linguagens como PHP, e JavaScript, o banco de dados linguagem chamada SQL, uma linguagem de script do lado do cliente chamada JavaScript para realmente criar todas as interfaces mais dinâmicas, mas num contexto muito, muito mais familiar. Mas antes disso, vamos Concluímos hoje com um olhar, como prometido, do que realmente está acontecendo por baixo do capuz com a internet si. Estipular para hoje que a Internet pode ser usada para transferir as coisas como páginas da web sobre HTTP muito como eu apertou a mão de Margot antes. Mas há tantas outras serviços que usam TCP e IP que nós tomamos para concedido que o trabalho, como veremos aqui neste filme que vai nos levar ao fim hoje. [REPRODUÇÃO DE VÍDEO] -Para Pela primeira vez em história, pessoas e máquinas estão trabalhando em conjunto, realizando um sonho. A força de união que sabe sem limites geográficos. Sem distinção de raça, credo ou cor. Uma nova era onde a comunicação realmente une as pessoas. Este é o alvorecer da Net. Quer saber como ele funciona? Clique aqui para começar a sua viagem para a rede. Agora, exatamente o que aconteceu quando você clicou no link? Você começou um fluxo de informações. Esta informação viaja para baixo em sua sala de correio pessoal quando o Sr. IP empacota, rotula ele, e envia-lo em seu caminho. Cada pacote é o tamanho limitado. A sala de correio tem de decidir como dividir a informação e como empacotá-lo. Agora, a embalagem precisa de uma etiqueta contendo informações importantes, como endereço, receptor de remetente endereço eo tipo de pacote é. Porque este pacote especial está saindo para a internet, que também recebe um endereço para o servidor proxy, o que tem uma função especial como veremos mais tarde. O pacote é então lançado para sua rede de área local ou LAN. Esta rede é utilizada para ligar todos os computadores locais, impressoras roteadores, et cetera para troca de informações dentro da física paredes do edifício. A LAN é uma bonita descontrolada lugar e, infelizmente, os acidentes pode acontecer. A estrada de LAN é embalado com todos os tipos de informações. Estes são os pacotes IP, Novell pacotes, pacotes Apple Talk. Eles estão indo contra o tráfico, como de costume. O router local lê o tratar e, se necessário, levanta o pacote para outra rede. Ah, o roteador. Um símbolo de controle em uma mundo aparentemente desorganizado. Lá está ele, a sistemática, indiferente, metódico, conservador, e às vezes não completamente até a velocidade. Mas, pelo menos, ele é exato para a maior parte. À medida que os pacotes de deixar o roteador, eles fazem seu caminho na intranet corporativa e de cabeça para o switch roteador. Um pouco mais eficiente do que o roteador, o roteador switch joga rápido e solto com os pacotes IP, habilmente roteamento-los ao longo do caminho. Um Pinball Assistente digital, se você quiser. -Aqui Vamos nós. Aí vem um outro. E é outra. Assista a este, mamãe. Aqui está vai. Whoops. Em torno da volta. Hey. Em lá. Em lá. Mais para a esquerda. Mais para a direita. Mais para a esquerda. Mais para a direita. Você conseguiu. Aqui vai. Ele atira. Ele marca. Vai. Ei, espere. Ei, cuidado. Aí vem um outro. Oh, aqui vamos nós. -como Os pacotes chegam seu destino, eles são apanhados pela interface de rede, pronta para ser enviada para o próximo nível, neste caso, o proxy. O proxy é utilizado por muitos empresas como a espécie de um homem de meia a fim de diminuir a carga em sua conexão com a internet e, por razões de segurança, bem. Como você pode ver, os pacotes são todos de vários tamanhos, dependendo de seu conteúdo. O proxy abre o pacote e procura o endereço da Web ou URL. Dependendo se o endereço é aceitável, o pacote é enviado para a internet. Existem, no entanto, alguns endereços que não fazer reunir-se com a aprovação da o proxy, isto é, diretrizes corporativas ou de gestão. Estes são sumariamente tratados. Nós vamos ter nada disso. Para aqueles que fazem isso, é na estrada novamente. Em seguida, o firewall. O firewall corporativo serve a dois propósitos. Ela impede que alguns bastante coisas desagradáveis ​​na internet de vir para a intranet. E ele também pode prevenir informações corporativas sensíveis sejam enviadas para a internet. Depois de atravessar o firewall, um roteador recolhe o pacote e coloca-lo em um muito mais estreito estrada ou largura de banda, como dizemos. Obviamente, a linha não é ampla o suficiente para levá-los todos. Agora, você pode se perguntar, o que acontece com todos os pacotes que não fazê-lo ao longo do caminho. Bem, quando o Sr. IP não receber uma confirmação que um pacote tenha sido recebeu, no devido tempo, ele simplesmente envia um pacote para o substituir. Agora estamos prontos para entrar no mundo da internet, uma aranha web de redes interconectadas que abrangem todo o nosso globo. Aqui, roteadores e switches estabelecer ligações entre as redes. Agora, a rede é uma forma inteiramente ambiente diferente do que você vai encontrar dentro do muros de proteção da sua rede LAN. Aqui fora, é o selvagem Oeste, muito espaço, muitas oportunidades, a abundância de coisas para explorar, e lugares para ir. Graças a muito pouco controle e regulação, novas idéias encontrar solo fértil para empurrar o envelope de suas possibilidades. Mas por causa dessa liberdade, alguns perigos se escondem. Você nunca sabe quando você atender o temido ping da morte, uma versão especial de um pedido normal de de ping que algum idiota pensou-se para bagunçar anfitriões desavisados. O caminho nossos pacotes podem ser através de satélite, linhas telefônicas, sem fio, ou mesmo cabo transoceânico. Eles nem sempre ter o mais rápido ou rotas mais curtas possível, mas eles vão chegar lá, eventualmente. Talvez seja por isso que às vezes é chamado a espera em todo o mundo. Mas quando tudo é trabalhar sem problemas, você poderia contornar o globo cinco vezes na queda de um chapéu, literalmente, e tudo para o custo de uma chamada local ou menos. Perto do final do nosso destino, vamos encontrar um outro firewall. Dependendo da sua perspectiva, como um pacote de dados, o firewall pode ser um bastião de segurança ou temido adversário. Tudo depende de que lado você está , e quais são suas intenções. O firewall é projetado para deixar entrar só aqueles pacotes que atendam seus critérios. Este firewall está operando nas portas 80 e 25. Todas as tentativas de entrar através de outro portas estão fechadas para o negócio. A porta 25 é utilizada para pacotes de correio. Embora a porta 80 é a porta de entrada para pacotes da internet para a web servidor. Dentro do firewall, os pacotes são avaliados mais profundamente. Alguns pacotes de torná-lo facilmente pela alfândega, enquanto outros têm apenas um pouco duvidoso. Agora, o oficial de firewall não é facilmente enganado, por exemplo, quando este ping de tentativas de pacotes morte para disfarçar-se como um pacote normal de ping. -Mova Junto. Está certo. Sem problemas. Tenha um bom dia. Deixe-me sair daqui. Tchau. -Para Aqueles pacotes sorte o suficiente para torná-lo tão longe, a viagem está quase no fim. É apenas uma linha na interface a ser levado para o servidor web. Hoje em dia, um servidor web pode ser executado em muitos coisas, de um mainframe, para uma webcam, para o computador em sua mesa. Por que não a sua geladeira? Com o conjunto adequado acima, você pode descobrir se você tem o resultado para Cacciatore frango ou se você tiver que ir às compras. Lembre-se, este é o alvorecer da Net. Quase tudo é possível. Um por um, os pacotes são recebeu, abriu, e descompactado. A informação que contêm, que é o seu pedido de informação, é enviado para a web aplicativo de servidor. O pacote em si é reciclado. Pronto para ser usado novamente e cheio de a informação solicitada, dirigida, e enviar em seu caminho de volta para você. Voltar passado os firewalls, roteadores, e em meio à internet. Voltar através do firewall corporativo. E em sua interface. Pronto para abastecer seu navegador com as informações solicitadas. Que é este filme. Satisfeito com os seus esforços e confiando em um mundo melhor, nossos fiéis pacotes de dados cavalgam alegremente no por do sol de outro dia, sabendo plenamente que têm servido os seus mestres bem. Agora, não é que um final feliz. [FIM REPRODUÇÃO DE VÍDEO] DAVID MALAN: Isso é tudo para CS50. Vamos vê-lo na próxima semana. [MÚSICA - Katy Perry, "Dark Horse"]