[Reproducció de música] ALTAVEU 1: Molt bé, benvingut una còpia de CS50. Aquest és el final de la vuitena setmana, i gairebé Halloween. Horari d'oficina demà a la nit serà de els més aterridors grans encara, i no perquè de Halloween. Però en aquesta nota, no adonar-se que problema sisos, la correcció ortogràfica conjunt de problemes, és conegut que, per a molts estudiants, els més difícils, sens dubte un dels conjunts de problemes C, i realment, en general. I esmento això només perquè es tracta d' la setmana en que un munt de gent amb especial èmfasi tractant per obtenir el corrector ortogràfic maleïda per treballar. I l'únic que m'animo és que, com es veurà avui, i el dilluns, vam començar a colpejar a aquest pic aquesta setmana que, ara, les coses es converteixen en un poc més familiar, una mica més accessible, ja que la transició d'un entorn de línia d'ordres en C un entorn basat en web en PHP. I pel que m'animo a vostè, encara que és realment al final del seu enginy en tractant d'obtenir el conjunt p per treballar, si això és de fet el lloc que vostè està en, o trobarà en, prova al poder a través d'ell. Perquè jo sí que crec que estarà molt content i molt orgullós de si mateix, si realment acaba la part de la Per descomptat, la part C, en què l'alta, si estressant, tingui en compte. Així que això no és per espantar. Això és només la intenció d'encoratjar quedar-se fins aquesta hora extra per tal de Obtenir la correcció ortogràfica de treball. I si ho fa, es donen compte que aquest és opcional, per complet. Però tenim l'anomenat gran tauler que es va posar en marxa aquest matí. Des d'aquest matí, jo estava damunt de la gran incorporat, que és una mesura de la quantitat de RAM i la quantitat de temps de funcionament el corrector ortogràfic programa requereix. Però jo ja he hagut de desplaçar-se. Ara sóc el nombre de mala sort 13. I el que vostè veu aquí és, David Kaufman, i Lauren, i Adam, i Jason, i altres són ara sobre de la gran taula. Si es mira més enllà, a la dreta, tots tenim molt bona implementacions de mida d'almenys - tornar el nombre de paraules al diccionari. I en cadascuna d'aquestes columnes, se li veure la quantitat de RAM cadascun dels nostres implementacions utilitzeu, quant temps de funcionament que està prenent per executar càrrega, en comparació amb xec, davant a la mida i descarregar i, a continuació, la temps de funcionament total. Així que per tranquil · litzar Elmer, i Patrick, i Linda, i tots els altres que ve després de tu, no hi ha absolutament no hi ha vergonya a ser cap la part inferior del tauler gran. En tot cas, això significa que vostè té treballant, i és correcte, però és no necessàriament tan eficaç, l'espai o quant a temps, ja que podria ser. Per tant, totalment opcional. Però la intenció de ser una pastanaga de classes per que quan s'està treballant en la seva p establert, que està tan orgullós de si mateix, tinc feina, que publica a la gran tauler, tens un molt bon nombre, vas a sopar, et trobes esquena, i els seus companys ha afilat que fos en el gran tauler. Bé, és el moment, en aquest moment, per anar tornar al tauler de dibuix per tal de re-desafiar el gran tauler. Si ens fixem en l'especificació, la instruccions per a la interfície amb la gran tauler ara es publiquen. Així que un parell de caps emergents - un, el projecte de proposta per a la final projecte s'ha de aquest proper dilluns. Veure aquesta especificació en el curs de lloc web pel que això significa. No deixa de ser un informal però va pensar email provocant entre vostè i el seu TF, realment només prengui la iniciativa, iniciar la conversa, tot i que la majoria de vostès ni tan sols han escrit una la pàgina web abans, ni tan sols sé el que és possible que, com es pot, aplicar el seu projecte final. Anar a la fe que vostè sabrà com fer una mica més força les coses en un parell de setmanes. Així que començar aquest procés pel especificació d'explorar possibles idees. A més, què ens convidem a fer és - tenim una tradició, des de fa molts anys ara, en el supòsit de rebre això - store.cs50.net. Tot es ven al cost. I no deixa de ser una oportunitat per utilitzar CS50, si vol fer que, en i de per descomptat. Per exemple, hi ha coses com ara les samarretes que vostè pot ser que hagi vist passant pel campus, les samarretes. I després, també convidem als estudiants a presentar els seus dissenys per a ser immortalitzat en la botiga CS50. Per exemple, una de les de l'any passat favorits que serà, potser, ara ressonen amb vostès és aquest d'aquí. Article molt popular. Així que si vol participar en això, posarem un formulari de sobte, en cs50.net/design, a la qual es pot pujar una imatge que vostè ha fet en Illustrator o Photoshop, o algun programa similar. I si vostè està familiaritzat amb aquest tipus d'especificacions, volem que ser una imatge PNG, almenys 200 punts per polzades, i menys de la que molts píxels; i menys de 10 megabytes. Per a més informació, enviar per correu electrònic el caps de curs a heads@cs50.net si que li agradaria participar en això. Molt bé, així que avui, no més C. Per tant, començar a estirar les capes de la Internet, la web, i com pot en realitat començar a escriure programari per aquest entorn diferent. Així, en particular, anem a preguntar, en primer lloc, la qüestió de la - m'ho dius a arribar a la nostra familiaritzat dibuixar aplicació aquí. Permetin-me plantejar la qüestió de, Com funciona l'internet. [? ESTUDIANT: Magic. ?] ALTAVEU 1: Magic. D'acord. Bona resposta. Així que anem a començar per aquí avui en dia, i veure si no podem fer-ho una mica menys màgica en una hora. Anem a tractar de dir-li que en el context d'una història. Així que vostè és fans d'anar a facebook.com, o reddit.com, o qualsevol que sigui en aquests dies. I així, el que realment està succeint quan s'escriu en una mena facebook.com, i prem Enter, a Chrome, o Firefox o IE, o Safari, o qualsevol navegador que estàs fent en realitat? Podem explicar aquesta història, potser frase per frase? Quina és una de les primeres coses que succeeix quan es premi la tecla Enter, després de escriure facebook.com? [? ESTUDIANT: El seu] ordinador? fa una petició HTTP. ALTAVEU 1: OK. Així que l'equip fa que - anem a cridar - una sol · licitud HTTP. Ara, què vol dir això? Bé, tots nosaltres hem vist o escrit, des de fa anys, H-T-T-P sovint seguit de dos punts, slash, slash. Llavors, què és això? Bé, HTTP és hipertext Protocol de transferència. I això és només una forma elegant de dir, és el llenguatge que els navegadors web, com Chrome i altres, i servidors web, com facebook.com, parlar amb un a l'altre. I és bastant simple, Anglès llenguatge orientat. És gairebé com pseudocodi. I és una manera d'un client, ho anem a trucar - un navegador - comunicar-se amb el servidor. I igual que en un restaurant, quan, el client, seure en una taula i després demanar alguna cosa fora de la menú del servidor, aquest servidor és va a portar de tornada una mica, sigui el que sigui que vostè va demanar. El mateix en el món de la informàtica. Un navegador - un client - es va a fer una petició, i llavors, espero tornar alguna cosa del servidor. I aquesta cosa és, a una alt nivell, la pàgina web. En un nivell lleugerament inferior, és un arxiu escrit en un altre llenguatge anomenat HTML - Llenguatge de marcat d'hipertext. Però més sobre això en un moment. Així HyperText Transfer Protocol - HTTP - aquest és el protocol que navegador i l'ús del servidor. Bé, què és un protocol, exactament? Bé, vostè pot pensar en com un llenguatge. Però si arribo a la nostra audiència aquí, una cosa normal per a nosaltres els éssers humans a no és, quan saludem a algú, Dic, hola, el meu nom és David. [? ESTUDIANT: Hola,] em dic Dipty?. ALTAVEU 1: "Hola, em dic Dipty ", respon ella. I pel que hem tingut aquesta força arbitrària interacció de donar-li la mà, igual que sovint la convenció humana en la majoria dels països. I això és un protocol, oi? En certa manera em vaig iniciar per estendre el meu banda, maldestrament, a l'escenari de Sanders aquí. Es va adonar, oh, he rebut un sol · licitud d'una mà aparentment. I ella va respondre a aquesta sol · licitud pel fet reconèixer-ho. Un reconeixement, ACK, és en realitat un frase molt comú en el món de la la creació de xarxes, per a un servidor a reconèixer el client. Llavors, vam concloure que el tipus de transacció, i la malaptesa més. Així que això és realment el que està passant sota de la caputxa també. Déjame fer això una mica més tècnicament sota el capó. Me'n vaig a anar d'aquí a una finestra de terminal. Aquesta finestra de terminal passa a estar al meu Mac, però es pot fer el mateix tipus de coses en CS50 Appliance. I estic realment va a utilitzar un programa d' que no utilitzarem realment per molt en tot el semestre. Però es diu Telnet. De tornada en el dia, Telnet va ser el programa que utilitza per connectar a un servidor remot, per comprovar el seu correu o per fer alguna cosa així. Per ara, utilitzarem aquest vell programa de l'escola, Telnet, que pretén ser un navegador. I jo seguiré endavant i fer el següent - permetin-me augmentar la meva mida de font. I jo vaig a dir, Telnet a la servidor anomenat www.facebook.com, però específicament, Telnet al port 80. Tornarem a això. Però per ara, saber que la majoria dels serveis de a Internet s'identifiquen de forma única per un nombre. En aquest cas, és 80. Ara, la majoria de vostès tenen probablement mai abans escrit 80. Però en realitat, si vaig a un navegador i tiri cap amunt, per exemple, http://www.facebook.com/-- que és auto-completar, això és no és la meva història - bé, així que ara, anem a 80 punts slash. Per això sostinc que tot i que vostè ha Probablement mai escrit això abans, amb el còlon després de 80 facebook.com, amb sort, encara va a treballar. I, de fet, va a facebook.com. Així que resulta que el 80 per ha estat implícit. Cap de nosaltres els éssers humans han tingut el tipus que fa anys. Atès que els navegadors, per defecte, l' suposem que el nombre que voleu utilitzar quan es diu a un servidor per parlar és, de fet, 80. A causa Llarga història curta, els servidors pot fer molt més que només servir pàgines web. Ells poden respondre als missatges instantanis. Es poden enviar missatges de correu electrònic. Hi ha un munt de serveis que es pot executar en un sol servidor. Pel que aquestes xifres - en aquest cas, 80 - identifica de forma única un dels serveis, la qual cosa és HTTP, els protocol web d'un servidor en realitat podria suportar. Però puc simular aquesta petició ara textualment, utilitzant aquesta antiga escola Programa de Telnet. Així que vaig a pretendre ara essencialment ser un navegador HTTP i parlar mitjançant l'enviament, amb el meu teclat, exactament les ordres que Chrome només sabia com enviar per a mi màgicament. Així que seguiré endavant i premeu Enter. Tingueu en compte que s'està tractant 31.13.69.32. 13 Què és això? Així que és una adreça IP. Ara, fins i tot si no estàs molt familiaritzat amb les complexitats d'aquests, probablement tingui un sentit general que aquestes coses existeixen. I una adreça IP - Direcció de protocol d'Internet - és només un identificador únic per un ordinador a Internet. Això és una mica d'una simplificació excessiva de moment. Però cada ordinador a Internet té una adreça IP única, igual que tots els casa en, per exemple, els EUA té una única adreça postal, una cosa així com 123 Main Street, en qualsevol ciutat, EUA. Així que alguna cosa com això. I això, també, és la simplificació excessiva. Però aquestes adreces que tenim al món postal i les adreces que tenim en el món de la informàtica identificar de forma única perquè els servidors quan s'envia un missatge a ells per Internet, o quan es posa una carta en un vell bústia de l'escola - correu postal - el servei sap com aconseguir que sol · licitud o la carta, a la destinat destinatari. Ara el meu equip, d'alguna manera, acaba de adonar que IP única de Facebook és 31.13.69.32. De fet, probablement es pot canviar. Facebook té probablement múltiples IP adreces, perquè absolutament tenir més d'un servidor. Però el que ha passat per a nosaltres màgicament. De fet, el nom secret intern de la servidor aparentment He connectat que es diu star.c10r.facebook.com, sigui el que sigui. És només el que el sistema de administrador a Facebook va decidir trucar a aquest servidor en particular que va ser enviat un tant a l'atzar a. Així que ara si la meva connexió no té el temps d'espera, vaig a pretendre ser aquest navegador. Diré aconseguir espai barra diagonal espai. I jo vaig a fingir estar parlant HTTP versió 1.1, que és què la majoria dels navegadors utilitzen. I parlaré específicament d' el servidor, per cert, vull que el lloc web conegut en el món com facebook.com. Intro Intro. I ara, adonar-se del que ha passat. El servidor, el cambrer, ha respost al meu ordre, o la meva sol · licitud, amb un altre missatge de text. Ara, de nou, en el món dels navegadors, com Chrome i Safari, que no ho faria veure això, com l'ésser humà. Microsoft i Google simplement amaguen aquests detalls de nosaltres. Però Facebook ha respost amb una resposta, també en el llenguatge d'HTTP. Observeu que hi ha un codi d'aquí, 302, que en realitat té un significat especial per convenció. Va trobar, per la qual cosa almenys prometedor. Però pel que sembla, Facebook està dient jo, mm-mm, que no vull el que em vas demanar. En el seu lloc, vol d'avui especial, que és facebook.com / unsupportedbrowser. Per tant en un nivell alt, el que fa Facebook semblen estar fent aquí? M'està redireccionant. Així que Facebook no li agrada el fet que estic fingint ser aquest altre navegador. I el que és redirigir em a algun lloc web. En realitat sóc curiós, ara, què això s'assembla. Vull passar a la de Chrome, així que es pot veure el que ells volen que jo veig. Així que ara que he fet em van enviar de tornada a Facebook ja s'han adonat, oh, tens un navegador compatible. Ni tan sols anem a mostrar aquesta pàgina. Així que seguirem endavant i veure si no podem arreglar això. Vaig a haver de enganyar una mica. I més sobre això en les setmanes per venir. Però faré una cosa aquí. I vaig a explicar això en poc temps. Dóna'm només un moment per enganyar, i wow. Així que anem a veure si. D'acord. Vaig a explicar el que estic fent en un moment. Vaig a seguir endavant i cancel · lar aquest connexió i intenti de nou. Aconsegueix reduir HTTP 1.1 www.facebook.com amfitrió user-agent. D'acord. Ara he pretès ser Chrome. Així que resulta que quan un explorador envia una sol · licitud a un servidor, és només el sistema d'honor. Si dic que sóc Chrome, Facebook assumirà que sóc Chrome. I el mitjà pel qual em vaig identificar jo com Chrome és per aquesta atroçment llarga cadena. Essencialment, tot el navegador fabricants en el món tenen decidit, bé, aquesta versió d'aquest navegador en el sistema operatiu tenir una cadena d'agent d'usuari que es veu com aquest embolic boig allà. I Mozilla està aquí per raons històriques. Però noto la quantitat d'informació que estic fuites d'facebook.com sense si d'iniciar sessió T'estic dient que Marc és Mac que estic fent servir. Jo li dic que és un Intel basa Mac amb Mac OS 10.8.5. Sigui dit de passada, aquesta informació es va per a cada lloc web que vostè visita amb el seu navegador. Bastant inofensiu fins ara, però es posa una mica més sucós. Tingueu en compte que, si llegim prou, Estic utilitzant la versió de Chrome 30.0.1599.101. Però ara, notarà que la resposta No és tan dolent com ho era abans. On està dient Facebook que em vagi ara? M'està dient, un cop més, el lloc - m'està dient que és traslladat de manera permanent. Bé, on diables es van Facebook? Sí, per la qual cosa és una diferència subtil. Però noti, aquí, que el lloc web en realitat ha tornat a posar a HTTPS. Així que conte llarg, aquesta és una manera que Facebook està fent complir que en realitat acaben en la versió segura de la seva pàgina web, la qual està usant xifrat - més complex que el xifrat es parlat de p de dos sets, però xifrat, però. En aquest punt es posa dur per a mi paròdia de la seva web sol · licitar l'ús de Telnet. Perquè si estan dient que utilitzi SSL - el prefix HTTPS és el això implica - si estan dient que jo faci servir criptografia, no hi ha manera que vagi per xifrar manualment el meu missatge davant de tots vostès aquí, i intentar trobar la manera de fer això. No només va a aconseguir molt més complex. Però del que el navegador està fent per vostè. Anem a veure si podem fer això una mica més simplement, a continuació, amb un lloc web que no està esperant que siguem tan segur. Anem a anar a, per exemple, harvard.edu al port 80. Intro. Molt bé, així que frega HTTP 1.1. I què significa aquesta primera barra? Perquè quedi clar, per què Segueixo escrivint això? Bé, normalment, quan s'escriu una adreça URL - i per desgràcia, normalment els navegadors amagar aquesta en aquests dies - Normalment, quan vostè va a harvard.edu, que l'URL oficial s'acaba en una barra. A causa que una sola barra denota quina part del disc dur? L'arrel del disc dur. Nosaltres, en l'aparell en realitat no hem tingut per pensar en això, perquè estem sempre a la carpeta de John Harvard. Però la seva carpeta està en una altra carpeta. I aquesta carpeta està en l'arrel de la El disc dur de l'aparell, per així dir-ho, encara que sigui virtual. Així que una barra simple com això significa l'arrel del disc dur. És com C barra invertida còlon, o és l'arrel del seu volum a Mac OS. Però Chrome i altres navegadors d'aquests dia, s'han tornat fàcils d'usar, i que oculten que frega per complet. Però això és tot el que significa en el meu missatge de text - dóna'm l'arrel de harvard.edu 's pàgina d'inici, és a dir, la pàgina per defecte en si. Així que permetin-me anar per davant i prem enter. Vull recordar a l'acollida que vull www.harvard.edu, per si de cas hi altres llocs web que viuen a la mateix servidor físic. D'acord. Harvard té una mica impacient amb mi. Així que anem a fer això de nou, més ràpid. Aconsegueix reduir HTTP 1.1 www.harvard.edu amfitrió user-agent - Suposo que els nostres servidors no atenció tant sobre això - Intro Intro. Sort. Oh maleïda sigui, sol · licitud incorrecta. D'acord. Llavors, què està passant aquí - hola, harvard.edu. Per què està fent - interessant. Oh, OK. Llavors, què està fent ara Harvard - i estem va girar ràpidament fora de aquest camí, perquè va a resultar tediós ràpidament - adonar que Harvard és en realitat comprimint la seva resposta a mi, el que no és l'ideal. Perquè, segons sembla, com un ésser humà, no ho faig saber com descomprimir els bits que s'han enviat a mi comprimit. I estan sent mostrades és escombraries allà, perquè són zeros i uns, però no són caràcters ASCII. Són patrons de zeros i uns que han estat comprimits perquè ocupin menys espai. Així que molt ràpidament, a veure si puc recuperar aquí. Intentarem, potser, un altre campus per complet. mit.edu get slash slash HTTP 1.1 Host www.mit.edu user-agent de còlon allà. Gràcies, MIT. D'acord. Així que aquí tenim una pàgina web. Així que aquest és l'idioma conegut com HTML - Llenguatge de marcat d'hipertext. Estic simplement desplaçant-se de nou en el temps per arribar a la mateixa punta superior d'aquesta pàgina. I observi com el MIT ha respost a la meva petició. 200 és bona. 200/2 de tot el que és, literalment, a D'acord. I això és un codi d'estat que nosaltres els humans realment mai vegeu, en el bon sentit. Perquè vol dir que tot està bé. Observeu que el MIT m'està informant, escolta, el servidor ens estem quedant s'anomena Apache, que és un molt popular el codi obert del servidor web gratuït. Estan corrent, pel que sembla, UNIX, que és un sistema operatiu com Linux. Tingueu en compte que pel que sembla actualitzat la seva pàgina web a les 4:00 am, Temps Mitjà de Greenwich. Observeu un parell de detalls. Estan tornant, per a mi, text / html. Així que ja veurem el que això significa en un moment. Han sembla em donen 14.717 bytes per valor d'HTML. I alguns altres, més esotèric la informació està aquí. Però aquí és on es posa interessant. Aquesta és la forma de fer una pàgina web. Aquesta és la forma de fer una pàgina web la títol de la pestanya, al navegador, és MIT guió Massachusetts Institute de Tecnologia. I de fet, si ens remuntem a Chrome i visiti www.mit.edu, observi que, de fet, en el títol aquí, MIT és ruixada Massachusetts Institut dot, dot, dot. I ara compte, també, si faig clic dret o controlar feu clic a l'escriptori d'aquí, i anar a Mostra la font - almenys en Chrome, encara que tots els navegadors fa a través d'algun mitjà - aquí és que el mateix arxiu. Li passa a ser un codi de color, o la sintaxi ressaltada. Però igual que amb el codi C que No va ser acolorida per vostè, que era acolorida per gedit, de manera similar Chrome és només fer la més bonica de llegir. Però això és el que aviat estarem escrivint. Així que això és el final del joc. El servidor ha respost amb què informació, igual que va respondre amb la mà del nostre encaixada de mans. Però, què més ha d'anar en en entre aquests passos? Bé, quan escric en, en aquest últim cas, www.mit.edu i prem enter, ens sé que està parlant amb el port 80 automàticament, port simplement ser aquest nombre. Però on va ser l'adreça IP? Com està el meu ordinador esbrinar què l'adreça IP de mit.edu és? Bé, resulta que, en aquest món, no coses que es diuen servidors DNS. I m'ho dius a mi anar per davant i dibuix una foto ràpida per aquí. I això només va a esbossar, en Grosso modo, què està passant. Així que anem a pretendre que aquest és el meu portàtil aquí, a Sanders. I ha Wi-Fi, pel que està connectat sense fils a alguna cosa. Què està realment connectat? Bé, per aquí, no hi ha alguna cosa en el paret amb algunes antenes. I això es diu un punt d'accés - AP. Punt d'accés sense fils, un router sense fil - cridar el que vulguis. Però estan per tot el campus, amb aquestes petites antenes. El nostre són fetes per Cisco, en general. I així, d'alguna manera, el meu equip està parlant al punt d'accés sense fils, en algun lloc de Sanders, o planta baixa, oa l'exterior. Mentrestant, això té una gran quantitat de cables físics va a, probablement, el Centre de la Ciència, que anem a dir així. En realitat, no sembla que això. Que en realitat es veu molt millor. Així, el Centre de Ciències té un munt de les computadores dins de la mateixa que d'alguna manera estan connectats físicament a tots d'aquests punts d'accés al campus. I aquests equips físics, anem a truqui routers o gateways. Un router, com el seu nom indica, és propòsit en la vida és per enrutar informació. Es necessita una sèrie de bits, des d'un ordinador, com a entrada, i s'adona que en aquests bits han de ser enviats. Així que en el cas del meu sol · licitud de mit.edu, en realitat és bastant fàcil. La meva petició ve del meu navegador, a Wi-Fi, amb el punt d'accés i, a continuació, a través d'una mica de cable, en un router al Centre de Ciències. I d'alguna manera, el router al Centre de Ciències s'adona que el MIT és d'aquesta manera. I jo seguiré endavant els trossets, vaig a via els bits, pel camí, fins Mass Ave, al MIT. Però, com sé que el meu equip ho l'adreça IP, fins i tot era? Doncs resulta que en algun lloc aquí hi ha servidors - i jo vaig a dibuixar bastant abstracta - com a servidor DNS - Sistema de noms de domini. Aquests no són els routers. Aquests són els diferents tipus de servidors l'objectiu a la vida és traduir de sistema principal, com www.mit.edu, a IP direccions, com 1.2.3.4 Així servidors DNS fer exactament això. Vostè pot pensar en ells com tenir un gran base de dades, o en realitat, com una gran Excel presentar amb dues columnes. Es tracta de noms de host, un és adreces IP. I simplement convertir una a l' un altre, en qualsevol direcció. Ara bé, en realitat, és una mica més complex que això. Però així és com el meu equip, el meu atzar Mac o PC en aquesta taula aquí, sap el que l'identificador únic és per www.mit.edu o Facebook, o harvard.edu, per al cas. Però, és clar, hi ha la totalitat de Mass Ave aquí. I llavors, arribem a MIT, que aquest en realitat és més convincent. Això serà MIT. I així, també tenen alguns servidors. I que d'alguna manera tenen un cable o sense fils, connexió a Harvard. I, per descomptat, podem anar molt més lluny pel camí de MIT, i parlar amb gairebé qualsevol ordinador del món. Però anem a veure si no podem veure-ho. Deixa tornar al meu Terminal finestra per un moment. I suposem que em vaig adonar quina és l'adreça IP és per mit.edu com Telnet el va descobrir abans, el navegador es pot clarament esbrinar per mi. I jo vaig a executar un altre programa, En aquesta finestra de terminal, anomenat Ruta de seguiment, seguiment del ruta des d'aquí - Literalment, aquesta taula - a www.mit.edu. Anem a veure què passa. Permetin-me realitat reduir la mida de font. OOP. No, jo volia donar-te una sorpresa. D'acord. Així que aquí anem. Deixin-me seguir endavant i executar aquest aquí. I el que estava veient fa un moment, i estem veient de nou ara, és aquesta sortida - www.mit.edu traceroute. Observeu, a la primera línia, aquest programa de fet adonar que el MIT Adreça IP és aquest número aquí. I ara, què està passant entre nosaltres i ells? Així que aquesta línia d'aquí, a la fila un, i això línia d'aquí, a la segona fila i, a continuació, la tercera fila - què és cada un d'aquests línies probablement representen? Ubicacions, punts, segur. Se'ls coneix com el llúpol, conceptualment. Però físicament, què són? Són routers. Només tenim, en realitat, una peça de maquinari aquí per parlar fins ara. Són routers. Així que aquesta cosa aquí - Nom del boig - però això és probablement sala de màquines, MR, al Centre de Ciències. És una porta d'entrada, també conegut com a router. Això és només un número únic que a algú se li va ocórrer a ell. I és dins d'harvard.edu. I aquesta és l'adreça IP d'aquest router això és, de nou, probablement en el Centre de Ciències, en base al seu nom. Aquesta segona fila representa una altra router que no té un sobrenom aparentment - un nom de host - és només té una adreça IP. Així que el conte llarg, per obtenir dades de punts de l'A a la B, no és més que un simple Encaminador de Harvard, i el router del MIT, i el router de Google, i el router de Facebook. Hi ha desenes, centenars, milers de routers entre qualsevol punt A i qualsevol punt B a l'Internet. Però en general, es poden obtenir dades d'un punt a un altre en menys de 30 salts. En altres paraules, és suficient amb lliurar les dades a 30 o menys d'aquests encaminadors. I és en general molts menys d'això. Bé, anem a veure el que passa aquí. A la fila 3, arribem a un router anomenat core Science Center gateway una cosa o altra. A la fila 4, tenim Border Gateway - aquests són només sigles críptiques - també dins harvard.edu. Heus aquí un altre Border Gateway. I llavors, de sobte, espera, sembla que estem a la ciutat de Nova York. Així que resulta - i estic a inferir només del nom de host. Això podria induir a error. Podria ser en el futur. És difícil de dir - però això es pot utilitzar com una revelació que la distància més curta entre dues punts a l'Internet no és necessàriament una línia recta. Si pensem en el curt com el més ràpid camí, el menys congestionat camí, és molt possible - encara que no podem estar segurs - que les dades es desplaça un decent distància entre files de cinc i sis. Ara, per desgràcia, el MIT, o algú, es una mica d'auto-defensa, i han començar ignorant les nostres peticions. Aquests routers s'han configurat per ignorar les peticions de la manera que són tu, que ets tu, qui ets tu. Així que anem a veure si podem fer això amb algú més cooperatiu. Així que Stanford té una bona tradició de tenir una mica més d'obertura. Així que anem a veure el que passa aquí. Un cop més, bastant críptic. Però comencem, de nou, en la màquina habitació de la Ciència Center, a la fila un. Així que això és bo. La majoria dels servidors contestar, incloent Stanford. Així compte hem passat de la sala de màquines al Centre de Ciències, en certa encaminador anònim en un altre lloc, a un altre Centre de Ciències de porta d'enllaç, d'una frontera porta d'entrada, a continuació, a alguna cosa aquí - nox.org. Aquesta és la cruïlla del Nord, un punt d'interconnexió popular on moltes de cables, molts proveïdors d'Internet - Els proveïdors de serveis d'Internet - connectar a. Aquí hi ha una altra IP sense nom aquí. Hi ha un altre com a servidor. Però això és interessant. On és el router fila 8, probablement? Així que és probable que a Washington, DC. I els puc classe de corroborar hipòtesi que aquest temps. Perquè quant de temps ens portarà a anar del Centre de Ciències d'aquest router a la fila set? Bé, aquests milisegons mesuraments al costat dret aquí estan estimacions de l'època. Hi ha tres d'ells a causa de que la programa, traceroute, tracta tots els encaminador tres vegades, perquè el puguin aconseguir un mitjà visual dels nombres. Però, segons sembla, té sis milisegons per aconseguir a remar router 7. Però la rapidesa possible, pel que sembla, es viatjar, si és una mica, entre Boston i Washington DC? 14 milisegons és el temps que es triga per aquest missatge instantani, perquè correu electrònic, perquè la sol · licitud de la pàgina web de viatjar d'aquí a Washington DC. Si vaig més enllà, al router el número 10, quina ciutat estic pel que sembla ara? Per tant, de Houston. I això es corrobora pel salt en el temps. És molt lent per arribar a Houston. Es triga 47 milisegons per arribar des Boston Houston en aquest cas. I si mirem més enllà, LAX - sembla que estem arribant a Stanford tipus d'aquesta manera, en passar per LA. Però estic inferint que des LAX. Els nois tendeixen a utilitzar codis d'aeroports per als noms de routers aquí. I això és una espècie de constant amb aquesta suposició. 82 mil · lisegons. Després, pel que sembla, anem a un altre LAX, un altre router LA i, a continuació, alguns sense nom, i finalment, un críptic nom de la xarxa de Stanford, o pròxima a la mateixa, stanford.edu, és 90 milisegons de distància, o 6 més hores amb avió. Així que així és com viatgen les dades ràpids a l'Internet. I és el que estem absolutament donar per fet en aquests dies. Quan vostè està tenint alguns Gchat amb algú, i els missatges són apareixent, considereu el ràpida que està passant. I visualment, és de fet succeeix en aquest tipus de tarifa. Així doncs, entre els punts ui 18, en aquest cas, hi coses a més dels routers. Quines són algunes màquines a Internet que poden bloquejar el trànsit d'aconseguir a través? ESTUDIANT: Firewalls. ALTAVEU 1: Llavors, tallafocs. I tenim tallafocs personals, que el teu Mac o PC poden mantenir trànsit dins o fora. Harvard té tallafocs. MIT presumiblement té tallafocs. I no Stanford, igual que tota la Els proveïdors de serveis d'Internet que posseeixen aquests routers entre els punts A i B. Però alguna vegada s'atura a considerar, o l'atenció, com funciona un tallafocs. Bé ja tenim l'edifici bàsic blocs amb la que per dissenyar aquesta resposta. Si fos un firewall - i anem a suposar que vostè està en alguna entre el punt A i el punt B. Un cable està entrant en tu, i sortir de tu. Així que vostè té la capacitat tecnològica a mirar tots els sobres de informació que estan fluint entre vostè i l'altra persona. En altres paraules, aquests missatges s'estava escriure manualment, es pot pensar en com escriure una nota ràpida per a algú, posar l'adreça IP de l' receptor, i el número de port del receptor, en aquest sobre, a continuació, escriure la seva pròpia adreça IP i la seva pròpia número de port a la part superior esquerra cantonada com si fos una carta. A continuació, l'envia fora sense fils. I d'alguna manera viatja a través de routers, a través de cables, sense fils, pel camí de MIT. Així que si vostè és un tallafocs, com deixeu que això passi? Què faria vostè si la seva pròxima p set va ser implementar un firewall? Com puc evitar que tota la gent de Harvard sempre parlant al MIT gent una altra vegada? [? ESTUDIANT: Vostè] revertir la carta?. ALTAVEU 1: Què? [? ESTUDIANT: Reverse] la lletra primerenca. ALTAVEU 1: Invertir la carta - Què vols dir? [? ESTUDIANT: Enviar] que de tornada al remitent. ALTAVEU 1: Enviar per tu. D'acord. Així que es podria rebutjar el virtual envoltant, més o menys, fent tornar a remitent d'alguna manera. Així que, això és el que volem aconseguir. Però anem a bussejar una mica més profund. Com puc fer això? Si l'entrada a aquest problema - si estic el servidor de seguretat, i jo sóc efectivament de peu entre els punts A i B, i Jo sóc un home mitjà que arriba a cercar a l'interior d'aquest sobre, i després decidir si s'ha d'enviar de nou a Harvard o permetre que continuï, el que Sóc jo, el firewall, vaig a estimar la vista? Crec que he sentit aquí. [? ESTUDIANT: On és] ve?. ALTAVEU 1: On està venint. Així que si l'adreça IP d'origen - el petit nombre fins aquí - és una adreça IP pertanyent de Harvard - i que en realitat puc saber que amb una alta probabilitat. La majoria de les adreces IP de Harvard començar amb 140247 dot dot alguna cosa alguna cosa, o 128.103 punts dot alguna cosa alguna cosa. Harvard posseeix aquests trossos d'adreces IP. Bé, si veig que les adreces IP com remitent, puc tornar-lo. En realitat, Internet no molesta perdre el temps l'enviament dels bits de l'esquena. És només, literalment, descarta el paquet si l'elimina, de manera efectiva. Llavors, ¿què més podia mirar però? Suposem que jo vull que la gent a Harvard visita mit.edu, i tiri cap amunt llocs web, i veure vídeos al MIT, i similars. Però no vull que els éssers humans a Harvard enviant un correu electrònic a ningú al MIT. Com anava a permetre el tràfic de Harvard al MIT, a través del web, però no permetre una mena correu electrònic? [? ESTUDIANT: El] el número de port?. ALTAVEU 1: Un nombre de port - aquesta és la només un altre ingredient que tenim. Tenim l'adreça IP, que acabem de apalancada, o tenim el número de port, on el 80, vam dir, únicament identifica el trànsit web. Ara, jo no esperaria que vostè sàpiga això - alguns de vostès ja saben de la familiaritat - el que és un nombre que s'utilitza per correu electrònic, en general? Sovint 25. 25 es refereix a SMTP, que és un correu protocol de transferència que pugui tenir hagut de crear en algun moment, si ets utilitzant Eudora o l'Outlook, o alguna cosa així. És només un altre nombre - 25. Telnet, que estàvem usant abans, utilitza 23. FTP - protocol de transferència d'arxius, si alguna vegada sentit parlar que un - utilitza 21. HTTPS, la versió segura d'HTTP, que tornarem a en poc temps, utilitza 443. Així que el món té un munt de nombres que es correlacionen paquets - més aviat, correlacionar serveis a aquests nombres reals. Així que això és tot un firewall està fent. Es tracta de prendre una mirada dins d'aquest virtual sobre i, a continuació, decidir si o no per reenviar al llarg de, basat en aquests ingredients. Ara, què podria fer clarament Harvard per superar aquest tallafocs, llavors? Si vostè vol ser capaç d'enviar un missatge al MIT però no ser detectat, així, es pot falsificar la seva adreça IP, i acaba d'alguna manera ser de luxe suficient, saber com escriure codi C, i escriure el seu propi programa de xarxa que canvia la direcció de l'empresa. El problema és que tot es pot enviar dades de forma anònima, però si vols obtenir algun tipus de resposta, com veure MIT pàgina d'inici, òbviament, això es dirigeix ha de ser correcta. En cas contrari, es pot dir res vostè vol, vostè no va a sentir darrere d'ells. Però aquests són només un dels tipus dels atacs que es pot enviar. Però resulta que quan enviem aquests missatges - i farem un exemple d'això. Resulta que, si tinc un missatge que Vull enviar, no s'acaba d'enviar a un sobre. Per raons d'eficàcia, sobretot quan els arxius que vostè està demanant o els respostes que està rebent són particularment gran, el TCP/IP-- Transmission Control Protocol / Internet Protocol - és només una fantasia forma de dir el que el treball en xarxa programari i ordinadors fan - és que donar un missatge com aquest, i tallar en fragments - diguem quatre fragments. I si ara em vaig tallar aquesta dalt a aquí, tallar aquesta dalt a aquí, quin és el meu ordinador i després va a fer és que és Va a prendre un fragment i el va posar en un sobre. Molt bé, i veurem si a - anem a veure. Es va a prendre un. Es va a prendre un altre sobre, i es posarà la segona part d'aquest missatge d'aquí. Està bé. Es va a prendre la tercera banda, la va posar aquí. Potser la propera vegada anem a només ho fan dues parts. I anem a prendre la quarta part, i el va posar aquí. I, ara, ha de ser per escrit en aquests sobres - que pretendrem fer, pel temps de l'amor, i en realitat no escriure. El que cal escriure en cadascuna de aquests quatre sobres, amb el meu missatge a algú? [? ESTUDIANT: El] ordre?. ALTAVEU 1: Per tant, l'ordre. Necessito no només l'adreça IP i la números de port, com acabem de dir, jo Ara necessita un número de seqüència d'una espècie dir, que és un paquet, aquest és dos, això és de tres, això és quatre. I això és realment útil. A causa de la Internet, que resulta, és en realitat molt poc fiable. Els routers poden estar congestionada. Els cables poden quedar aclaparat - una simplificació excessiva - però, amb els bits de tal manera que el que els routers han de fer és deixar caure els paquets. En altres paraules, si la Internet és només realment congestionada, pot obtenir tres dels quatre paquets. Però si vostè té un identificador únic a cada un d'ells, vostè sabrà que vostè és falta paquet número quatre de quatre. Així que vostè pot demanar al noi de la altre extrem de reenviar. Però suposant que això no succeeixi, anem a veure el que podria succeir. Així que si vull enviar un missatge a - que voldria rebre el meu missatge des d'Internet? ¿I algú més proper al front. Brian, oi? Està bé. Queda't aquí. Vaig a enviar a vostè. I el millor d'Internet és que es podria ni tan sols seguir el mateix camí. Així que aquí vaig. Li envio un missatge, fragment d'un dels quatre. Sigui un router. Simplement deixeu que altres persones tracten de la mateixa. Aquí el tens. Donarem això a vostè, i donarem això a vostè. I anem a veure la rapidesa - el nombre de milisegons que triga fer arribar aquest missatge a Brian. Tothom arriba a participar avui. Està bé. Brian té un, i dos. Si algú vol ser - [? ESTUDIANT: Els quatre. ?] ALTAVEU 1: Té els quatre. Així que ningú va triar a caure un paquet. Això està bé. Això està bé. Així que Brian té ara als quatre. Si vols seguir endavant i tornar a muntar els de nosaltres. Ho sé, estem pretenent. Així que pel bé de temps - tenim quatre. Així que, OK, obriu un d'ells. D'acord. Aquesta és una quarta part de el meu missatge per a vosaltres. Ara, obre el segon. Això pot ser divertit, al final, només per a mi i Brian. Bé, tens dues. Així que, mentrestant, vam físicament això amb les tisores, però tot el porta a fragmentar aquestes coses en un ordinador és per enviar alguns dels bits en un paquet, en un virtual de sobre, alguns dels bits al altres, alguns en un altre, i alguns en un quart, i després, deixar que l'ordinador decidir, sobre la base d'aquestes xifres, en quin ordre té per concatenar ells. I Brian, potser, l'únic un que pot veure això. El missatge que vaig enviar al cervell - a causa d' Per descomptat, la Internet està plena de aquests, és - Sí Així que aquest és el missatge. I Brian pot aferrar-se a això. Així que va tenir, òbviament, un temps per fer això. Però això és el que realment passa, com l'enrutament de dades a través de la audiència d'aquesta manera. Però no és, de nou, un nombre de punts, routers, firewalls i altres aquestes coses entre els punts A i B. I en lloc d'explicar la història verbalment, vaig pensar a tirar d'aquesta vídeo que alguns dels nostres amics, de Erikson, anys enrere, en realitat junts que explica com funciona tot això. I és prop de 10 minuts més o menys llarg. Així que donarem, ara, Guerrers de la xarxa. [Reproducció de música] NARRADOR: Per primera vegada en la història, les persones i la maquinària són Treballant junts, realitzar un somni - una força unificadora que no coneix límits geogràfics, sense distinció de raça, credo o color - una nova era on la comunicació veritablement uneix a les persones. Aquest és l'alba de la xarxa. Vols saber com funciona? Feu clic aquí per començar la viatge a la xarxa. Ara és exactament el que va succeir quan ha fet clic en aquest enllaç? Vostè va començar un flux d'informació. Aquesta informació es desplaça cap al mateixa sala de correu personal, quan el Sr Paquets IP que, ho etiqueta, i l'envia en el seu camí. Cada paquet està limitada en la seva grandària. La sala de correu ha de decidir com dividir la informació, i com empaquetar. Ara el paquet necessita una etiqueta que conté informació important, com la direcció del remitent, l'adreça del receptor, i el tipus de paquet que és. A causa que aquest paquet en particular va sortir a la internet, també obté una adreça del servidor intermediari, que té una funció especial, com veurem més endavant. El paquet és llançat ara cap a la seva xarxa d'àrea local o LAN. Aquesta xarxa s'utilitza per connectar tots els equips locals, routers, impressores, etc per a la informació intercanvi dins de les parets físiques de l'edifici. La LAN és un lloc gens controlat, i per desgràcia, els accidents pot succeir. La carretera de la LAN està ple amb tots els tipus d'informació. Aquests són els paquets IP, paquets de Novell, AppleTalk paquets - que van en contra el trànsit, com de costum. El router local llegeix per abordar i, si cal, aixeca el paquet a altra xarxa. Ah, el router - un símbol de control en un aparentment món desorganitzat. ROUTER: Vaja, ho sento per això. Anem a posar això aquí, aquest d'aquí. Això mou aquí. Aquest es mou aquí. No m'agrada. Anem a passar això. Això va aquí. [Inaudible] Dit d'una altra jangle aquí. Anem a posar això aquí. No, vaig a anar amb això. Posem que un aquí. NARRADOR: Aquí està - sistemàtica, indiferent, metòdic, conservador, i, de vegades, no és a la velocitat. Però almenys és exacta, en la seva major part. ROUTER: Deixa això d'allà. Que un va allà, que un va allà, i aquest hi va. Bé, una altra hi va. Això va aquí. [Inaudible] NARRADOR: A mesura que els paquets surten de la router, que s'obren camí en el intranet corporativa i el cap per l'interruptor de router. Una mica més eficient que el router, l'interruptor de la fresadora juga a la lleugera amb paquets IP, enrutament hàbilment al llarg del seu camí - un assistent de pinball digital, si es vol. ROUTER INTERRUPTOR: Aquí anem. Aquí ve un altre. I és una altra. Mira això, mama. Heus aquí. Whoop, per la part posterior. Ei, aquí, aquí. Sobre l'esquerra. A la dreta. Sobre l'esquerra. A la dreta. Ja el tens. Aquí ve. Tira, anota. Va. Hey Wayne, cura, aquí ve un altre. Oh, aquí anem. NARRADOR: Quan els paquets arriben al seu destinació, estan recollit pel interfície de xarxa, a punt per ser enviat al següent nivell - en aquest cas, el proxy. El proxy és utilitzat per moltes empreses com tipus d'un home de mitjana per disminuir la càrrega en el seu internet connexió, i per raons de seguretat, així. Com es pot veure, els paquets són tots de diferents mides, depenent del seu contingut. El proxy obre el paquet i busca per l'adreça web o URL. Depenent de si l'adreça és acceptable, el paquet s'envia Internet. Hi ha, però, algunes direccions que no compleixen amb l'aprovació del el proxy - és a dir, les empreses o directrius de gestió. Aquests es tracten amb sumàriament. Tindrem res d'això. Per als que ho fan, és a la carretera de nou. El següent, el servidor de seguretat. El tallafocs de l'empresa serveix per a dos propòsits. Evita que algunes coses bastant desagradables a través d'Internet entre al intranet, i també poden prevenir informació confidencial de l'empresa de de ser enviat a la Internet. Una vegada a través del tallafocs, encaminador recull el paquet i el col · loca en un camí molt més estret, o ample de banda, com es diu. Òbviament, el camí no és molt ampli suficient per portar a tots. Ara potser es pregunti què passa amb totes les un paquet que no ho fan al llarg del camí. Bé, quan el Sr IP no rep una reconeixement que ha estat un paquet rebre en el seu moment, es va limitar a envia un paquet de reemplaçament. Ara estem preparats per entrar al món d'Internet, una tela d'aranya de xarxes interconnectades que abastar tot el globus. Aquí, routers i switches estableixen vincles entre les xarxes. Ara la xarxa és una forma completament diferent medi ambient que trobarà a els murs de protecció de la xarxa LAN. Aquí fora, és el Wild West - un munt d'espai, un munt de oportunitats, un munt de coses que explorar i llocs per anar. Gràcies al poc control i regulació, noves idees troben fèrtils sòl per empènyer el sobre de les seves possibilitats. Però a causa d'aquesta llibertat, certs perills també amenacen. Mai se sap quan et trobaràs amb el Ping de la mort temuda, un especial versió d'una sol · licitud de ping normal, que algun idiota pensa treure de polleguera hosts confiats. La ruta dels paquets poden prendre pot ser a través d' satèl · lit, línies telefòniques, ràdio, o fins i tot cables transoceànics. Ells no sempre tenen el més ràpid, o més curts, rutes possibles. Però arribaran al final. Potser per això a vegades és anomenada l'espera d'ample món. Però quan tot està funcionant sense problemes, pot eludir el món més de cinc vegades en la gota d'un barret, literalment - i tot pel cost de una trucada local, o menys. Gairebé al final del nostre destí, trobarem un altre firewall. Depenent de la seva punt de vista com paquet de dades, el servidor de seguretat podria ser una bastió de la seguretat, o un adversari temible. Tot depèn de quin costat estàs i el que són les seves intencions. El servidor de seguretat està dissenyat per deixar entrar només aquells paquets que compleixen amb els seus criteris. Aquest firewall està funcionant en els ports 80 i 25. Tots els intents d'entrar a través d'altres ports estan tancats per als negocis. El port 25 s'utilitza per a paquets de correu, mentre el port 80 és l'entrada de paquets de la Internet al servidor web. Dins del tallafocs, les aplicacions són examinat més a fons. Alguns paquets fan que sigui fàcilment a través costums, mentre que altres mirar una mica dubtosa. L'oficial de tallafocs no és fàcil enganyat, per exemple, quan d'aquest ping paquet de la mort tracta de disfressar- un paquet Ping normal. FIREWALL: Next. D'acord. Endavant. Això està bé. No hi ha problema. Que tinguis un bon dia. Sigui aquí. Adéu. NARRADOR: Per als paquets de la sort prou com per arribar fins aquí, el viatge està per acabar. És només una línia en la interfície d' s'han d'abordar a la web. Avui en dia la web pot funcionar en molts coses, d'un mainframe, a una càmera web, a l'ordinador en el seu escriptori. O per què no la seva nevera? Amb la configuració adequada, es poden trobar si vostè té els ingredients per pollastre a la caçadora, o si has d'anar de compres. Recordeu que aquest és l'alba de la xarxa. Gairebé tot és possible. Un per un, es reben els paquets, obert i sense envasar. La informació que contenen - és a dir, la sol · licitud per obtenir informació - s'envia a la web aplicació de servidor. El paquet en si és reciclat, a punt per ser utilitzat de nou, i plena amb el seu informació sol · licitada, dirigida i enviar, en el seu camí de tornada, de tornada més enllà del tallafocs, routers, i en a través de la internet, de nou a través tallafocs corporatiu i, si interfície, a punt per proporcionar la seva navegador web amb la informació que va sol · licitar - és a dir, aquesta pel · lícula. Satisfet amb els seus esforços i confiant en un món millor, la nostra confiança paquets de dades feliçment cap la posta de sol d'un nou dia, sabent plenament, han servit seus amos també. Ara no és que un final feliç? ALTAVEU 1: Això és, llavors, com funciona l'Internet. A través de butlletí de problemes 7 vols comprendre millor aquest fenomen i que aprendre una mica d'HTML, PHP, etc. Més sobre això en l'especificació que sortirà divendres. I ens veiem el dilluns.