DAVID MALAN: All right. Dette er CS50. Og dette er starten på uke syv. Så i dag, kanskje heldigvis, Vi begynner vår overgang fra det lavere nivå verden av C-programmering til høyere nivå verden av web-programmering. Og med det, vil vi ta en titt på nøyaktig hvordan internett fungerer, hva disse maskinene og disse internets at du har brukt i mange år nå faktisk gjør under panseret mot en bedre forståelse av hvordan det hele fungerer, og hvordan du kan gjøre den jobben for deg. Mot dette målet, hvorfor ikke vi ta en ser først på et klipp fra et TV-show kalt Numb3rs, som vil få oss i gang som til nøyaktig hvordan internett fungerer. [VIDEO PLAYBACK] -Det Er en 32-bit IPP4 adresse. -IP. Det er internett. -Private Nettverk. Det er Amita private nettverk. Å, hun er så utrolig. -Å, Charlie. -Det Er et speil IP-adresse. Hun la oss se hva hun gjør i sanntid. [END VIDEO PLAYBACK] DAVID MALAN: Så det er en hel mye galt med det TV-show. Så la oss erte hverandre nøyaktig en av de første slike ting og se om vi ikke kan pakke inn våre sinn rundt det. Så det siste bildet den filmen, for at showet er dette en her, som synes å antyde at dette er det noen hacker bruker å komme inn i noe system. Men nei. Hvis du zoomer inn på dette kildekoden, som er et språk som heter Objective C i Hvilken Iphone apps, iPad apps, og Mac OS apps er skrevet, vil du se at dette er for en slags tegneprogram som har en stift som en variabel. Så i tillegg, kan du har lagt merke til denne adressen her. Nå er dette et så galt. Og dette er trolig bevisst valgt å være en ugyldig adresse, slik at den ikke faktisk føre sted hvis en TV-seer faktisk besøker den. Men dette tallet her, noe dot noe dot noe dot noe er hva som er vanligvis kjent som en IP-adresse. Og det er faktisk en god naturlig overgang til dette emnet mer generelt, kjent som IP, internettprotokoll. Så du har sannsynligvis minst hørt dette uttrykket før. Men hva er IP, eller Internett protokoll som du forstår det i dag? Odds er, hvis vi bedt om en håndsopprekning, de fleste av dere har sikkert sagt det ord IP-adresse før. Så hva mente du? PUBLIKUM: [uhørlig]? DAVID MALAN: Hva er det? PUBLIKUM: [uhørlig]? DAVID MALAN: Enda en gang. PUBLIKUM: adressen til datamaskinen. DAVID MALAN: The adressen til datamaskinen. Så det er helt riktig. Det viser seg at hver datamaskin på internett, og i disse dager, hver telefon i ditt lomme og tablet i ryggsekken, har en IP-adresse, internett protokolladresse, som er en unik adresse som identifiserer det hele internett. Nå, det er litt av en hvit ligge fordi verden er faktisk kjører ut av IP-adresser. Så vi har begynt å bruke private IP-adresser. Men mer om det i et øyeblikk. Men du kan tenke på en IP-adresse så ut som din postgangen street adressen. Vi har bruker eksemplet med Maxwell Dworkin, CS bygningen, før- 33 Oxford Street Cambridge, Mass, 02138, USA. Det er dens unike adresse i verden. Tilsvarende gjør datamaskiner har unike adresser. De bare tilfeldigvis se litt forskjellige- et tall dot en rekke dot et tall dot et nummer. Og er det noen som faktisk vet hva gyldig område av tall er for hver av disse hashtegn? Yeah. PUBLIKUM: 0 til 255? DAVID MALAN: Nettopp. 0 til 255. Og selv om du ikke visste at nå trekke en konklusjon, hvor mange biter som brukes for å representere hver av disse tallene da? Åtte tilsynelatende på grunn av det høyeste du kan telle er 255, som er en 8-bits verdi. Så totalt, er en IP-adresse 32-bits. Så fort videresending til matematisk konklusjon, hvor mange mulige IP-adresser er der ute i verden, da? Så det er åtte pluss åtte pluss åtte pluss 8, slik at det er 32 biter. Og vi har alltid sagt at 2 til 32 er omtrent? OK. Jeg skal feltet denne. Fire milliarder. Og vi snakket om det i uken null når vi snakket om telefonen bøker med sprø antall sider. Men også av det er at det er et endelig antall IP-adresser. Og selv om fire milliarder kan virke som mye, vi mennesker har vært forbruker ganske mange av dem for alle våre servere og enheter og så videre. Så dette er faktisk blitt et problem. Nå er det en tendens til å være en Ordningen bak hvem som har hva IP. For eksempel er mange av datamaskinene på Harvard har unike adresser som begynner med en av disse to verdier. MIT, på samme måte, har et prefiks. Og en rekke selskaper og universiteter har sin egen unike prefiks. Og da de fleste av oss for våre hjem Internett-tilkoblinger og lignende, vi dele noen prefiks som Comcast eller noen sånt skjer med eier. Og dette er bare for å si at hvis du sett på de fleste datamaskiner på campus, de ville trolig ha en IP- adresse som ser slik ut. Nå kan du også tidvis se en IP-adresse den starter som dette. Faktisk, hvis noen av dere vokste opp med internettilgang hjemme, og du var alltid tilstrekkelig teknisk nysgjerrig på å rote rundt din egen datamaskin innstillinger, du sannsynligvis stedet så en adresse som ser mer ut som dette, som startet med 10, eller 172,6, eller 192.168, eller noen varianter av disse. Og det betyr bare at verden er satt til side en hel haug med tall å være privat, noe som betyr du kan bruke dem i ditt hjem, du kan også bruke dem på campus og i din bedrift, men du kan ikke bruke dem på internett for øvrig. Og så disse private IP-adresser har vært en løsning mot å sørge for at minst så langt som hele verden er opptatt av, Vi bruker ikke så mange IP-adresser. Men minst, vi kan, på vår egen campus, har ganske mye som mange IP-adresser som vi ønsker. Men hvem bryr seg? Hva er relevansen av alt dette til en faktisk bruk av internett? Vel, la oss ta en titt på kanskje et enkelt bilde her. La meg gjennom begge disse opp på skjermen. Og tilgi min håndskrift her. Men hvis vi tenker på oss selv som være denne lille laptop her et sted på campus, disse dager den har Wi-Fi. Men i gamle dager, og hvis deg å finne riktig adapter, det kan ha en ethernet-kabel som ville på samme måte la du kobler til en slags enhet. Og du kan kalle dette en rekke ting. Men jeg kommer til å gå videre og kaller dette, for nå, hva med et aksesspunkt? Så dette er min laptop. Dette er min AP, eller tilgangspunktet, og dette er noen trådløse enheten, Ikke ulikt de som Harvard har alle over tak og vegger rundt campus som har blinkende lys og som er hva dine bærbare datamaskiner brukes til å snakke trådløst til resten av nettverket. Så en eller annen måte denne bærbare snakker til at ting på veggen, i spisesalen, eller andre steder. Nå, i mellomtiden, er at tilgangspunkt koblet til noe annet på campus. Og det er sannsynligvis noe kjent som en bryter. Og de ser mye mer interessant enn bare disse boks diagrammer. Men en eller annen måte, det er tingen koblet til en bryter. Og igjen, en eller annen måte at bryteren er koblet til en enhet som er sannsynligvis en litt større, kalles en ruter. Og så, i mellomtiden, Harvard er koblet til hele Internett som vi vil trekke så denne skyen her, via et antall ledninger eller trådløs teknologi. Så det er mange trinn mellom meg og resten av verden. Og ja, selv innenfor dette bildet her, er det noen andre servere eller tjenester som er involvert. Og jeg bare kommer til å trekke disse noe abstrakt bare slik at vi har akronymene før oss. Den ene heter DHCP. Og en annen, litt mer interessant for i dag, kalles DNS. Så disse er servere som er en eller annen måte tilgjengelig for maskinen min også. Så nå, la oss erte hverandre litt sjargong. Så tilgangspunktet er bare denne trådløse enheten ofte med antenner som faktisk la deg snakke med en trådløst. Hjemme, kan du ringe dette til et hjem ruter. Det kan gjøres med Linksys, eller Apple, eller D-Link, eller en rekke selskaper. Som i sin tur er forbundet til en bryter av noe slag. Eller hjemme, hva er din Wi-Fi enhet trolig koblet til i stedet? Fordi du sannsynligvis ikke eier alt dette utstyret. Yeah. Kabelmodem eller DSL-modem hjem som du fikk fra Verizon, eller Comcast, eller en av disse bærere. Så tenk på alt dette kompleksitet som å støtte et universitet eller virkelig en virksomhet som Comcast. Og egentlig, ting det er i ditt hjem er sannsynligvis på denne siden av gjerdet pluss kanskje en av disse hjem route-- en av disse er kabelmodem eller DSL modemer de kan gi. Så en bryter er bare en enhet med en hel haug med datakontakter i den. Faktisk, hvis du husker at nyheter Rapporten vi spilte på den store skjermen et par uker siden hvor vi snakket om granatsjokk, og hvor ille dette var? Og det var disse fotografier av kabler og knekt, og ting som ser teknisk? De var bare dumme brytere som bare internett kobler sammen datamaskiner ved å plugge kablene inn i dem. Så det er alt en bryter. Nå disse anordninger får en litt mer interessant. DHCP. Hvis du har poked rundt datamaskin hjemme eller på campus, du har kanskje sett denne forkortelsen. Vet noen hva en DHCP server er? Dynamic Host Configuration Protocol? Ikke den typen ting du virkelig trenger å skrive ned. DHCP. noen i det hele tatt? OK. Så la oss spole historien. Hvis historien her på hånden er betinget på min å ha en unik adresse i verden, en IP-adresse, hvor kommer det fra? I gamle dager, da har du til campus, du faktisk hadde spør noen på Harvard, hva skal min IP-adresse være. Og du ville gjort manuelt skriv det inn i datamaskinen. Men nå nylig, teknologier eksistere som tillater deg å dynamisk, DHCP, få en IP-adresse bare når du plugger inn i campus trådløst eller med en wire. Så DHCP-server er bare en server som gir din datamaskin en unik IP adresse, noe tilfeldig eller via noen algoritme. Men hvis du tenker tilbake en noen uker eller et par år, når du først er registrert datamaskinen på campus, du fortalte Harvard, autorisere meg å gi meg en IP-adresse. Nå DNS ​​begynner å få en litt mer interessant. Domenenavnsystemet. Er det noen som ønsker å ta et stikk på hva denne tingen er her? Det er en eller flere servere som utføre en ganske enkel oppgave som er slags viktig. Yeah. PUBLIKUM: Overs URLer [uhørbart]. DAVID MALAN: Yeah. Det oversnettadresser til IP adresser og vice versa. Tenk, tross alt, at når du går på nettsiden, du skriver inn noe sånt som facebook.com, eller google.com, eller harvard.edu, du sikkert aldri har skrevet mest sannsynlig en numerisk IP-adresse. Og du kan tenke på grunnen. Tilbake i dag, selv nå til en viss grad, når du gjør en telefon ringe til et selskap, de virkelig prøver hardt for å kjøpe seg et 800-nummer som faktisk har ord i det, som 1-800-collect eller noe det er minneverdig som det slik at folk trenger ikke å huske hva C-O-L-L-E-C-T faktisk ekspanderer til. Så vi har sett denne heuristisk i det siste. Og ja, det er hva IP-adresser og hva vi vil kalle vertsnavn eller fullt kvalifisert domenenavn gjøre for oss. Det tillater oss å adresse servere med ord i stedet for tall. Så hvordan gjør vi faktisk se denne konverteringen. Jeg kommer til å gå videre og åpne opp et program. Jeg skal bare gå videre og åpne opp et terminalvindu. Og jeg kommer til å gå videre og vise deg hva en DNS-server gjør. For eksempel, hvis jeg ønsket å se hva IP-adressen er av Facebook, Jeg kan skrive på en terminal spør som dette-- og du kan gjøre dette selv innsiden av maskinen. Og det er oppslag facebook.com. Og jeg ser en haug med ting. Denne første reaksjon er Harvards DNS server-- det bildet som jeg har trukket dit. --that s forteller meg at Facebooks IP Adressen er tydeligvis dette. Så la meg gå videre og kopi som 173.252.120.16. Og la meg åpne opp Chrome på min Mac. Og la meg gå til http: // og lim at IP-adressen og trykk på Enter. Og ja, jeg finner meg selv på Facebook. Så en eller annen måte at konvertering, faktisk skjedde. Og hvis jeg gjør dette igjen, la oss gjør nslookup, www.google.com. Jeg får tilbake en hel haug med svar. Og ja, det er forskjellige måter at selskapene gjennomføre dette. Noen ganger, de forteller verden de har en IP-adresse. Men at en IP-adresse blir løst eller tilordnet til flere servere. Eller i tilfelle av Google, de forteller om i verden, vi har en hel haug med IP-adresser. Din bærbare er velkommen til å snakke kontakt med hvilket som helst av disse serverne. Så alle som har pågått på under panseret. Når du skriver inn www.google.com Tast i nettleseren, nettleseren din, og i sin tur operativsystemet, Mac OS eller Windows eller Ubuntu Linux, spør den nærliggende DNS-server, hva er den faktiske adressen til denne serveren. Fordi den siste enheten i dette bildet, en ruter, er det en som har som formål i livet er å ruteinformasjon, rute pakker så å si, konvolutter av digital informasjon inneholder nuller og enere fra avsender til destinasjon, fra opprinnelsen til mottaker. Og så en router ruter ting. Så hvorfor er dette alt særlig relevant? Vel, la oss ta en titt på hvordan dette kan brukes. Anta at jeg har her et bilde av Rob Boden. Så antar at jeg ønsker å Send dette bildet av Rob Boden inn Dan i ryggen av forelesningssalen. Så jeg er en datamaskin som min laptop, og Dan er en annen datamaskin på internett. Og jeg ønsker å sende en pakke av informasjon fra meg til ham. Som ber spørsmålet, hvordan gjør jeg faktisk rute denne pakken til ham. Vel, i menneskelige termer, vil jeg si, hei, kan du sende dette til Dan? Og så, en haug av dere ville trolig passere den tilbake frem og tilbake og tilbake inntil til slutt gjør sin vei over til Dan. Men det er litt upresis. Datamaskiner sannsynligvis må være litt mer metodisk. Så sannsynligvis har Dan en IP-adresse. Så hva som egentlig jeg bør gjøre er jeg burde ta, for eksempel, en blank konvolutt som dette. Og jeg vet ikke hva Dan IP-adresse er. Så jeg skal bare general det som Dan IP. Og jeg kommer til å sette dette i Til-feltet i konvolutten min. Og i mellomtiden, jeg har en IP-adresse. Det spiller ingen rolle i dag hva det er. Så jeg skal bare si My IP i hjørnet tilbake dit. Og så, jeg kommer til å gå foran og sette Dette bildet innsiden av denne konvolutten. Og så, hver av dere, formodentlig, som rutere på internett, har blitt forhåndskonfigurert av mennesker generelt eller noen ganger ved bruk av automatiske algoritmer for å vite at hvis Dan IP-adressen starter med en 1, det skal gå den veien. Hvis Dan IP-adressen starter med 2, bør det gå den veien. Kanskje en 3 går på den måten. Kanskje en 4 går på den måten. Og det er litt altfor. Enkelt, men det er den generelle ideen. Hver av disse routers-- og det kanskje være så mange som 30 mellom meg og Dan. --have en slags regneark innsiden av deres minne, en database tabell, som bare sier, IP-adresse som ser slik ut, går på denne måten. En IP-adresse som ser som dette, går den veien. Og det er slik det gjør ganske forenklede beslutninger. Men det viser seg at disse ruterne gjøre noe mer enn det, potensielt. De lar datamaskiner til garanti for levering, i det minste med høy sannsynlighet. Så du kanskje også har hørt, selv om du har aldri helt brydde seg eller lurt hva det er, har du kanskje hørt på noe av dette akronym. La oss gå tilbake hit for bare et øyeblikk og trekke opp dette. TCP, Transmission Control Protocol. En annen teknisk måte bare beskriver en annen teknologi som er brukt på internett. Så IP, Internett-protokoll brukes for adressering. Det noen standard at verden kom opp med det sagt, du putter en IP-adresse her for Dan, og én IP-adresse her for deg selv, og deretter sette noen informasjon i en konvolutt. Men TCP er en annen teknologi, brukes i forbindelse med IP. Og ja, hvis du har noen gang sett disse akronymer før, du har sikkert sett TCP slash IP som nettopp betyr at folk har en tendens til å bruke dem sammen. Vel, er slag av TCP kult fordi det tillater du å øke sannsynligheten at dataene er faktisk kommer til å få fra meg til Dan. Faktisk, er internett en gal plass. Det er ingen garanti for at hvis jeg sender data på denne måten at det kommer til å gå på den måten neste gang. Det kan gå den veien eller den måten. Den korteste avstanden mellom to punktene er ikke nødvendigvis en rettkjedet eller på samme linje. Videre vil en del av dere gutta kan gjøre feil eller bli overveldet med for mange konvolutter som kommer din vei. Så du bare kommer til å gi opp og bokstavelig slippe noen av disse konvolutter på gulvet. Og i den samme måten kan data være falt på internett ved rutere. Så for å redusere Oddsen for dette, jeg kommer å ta min lille sikkerhet saks her og kutte Rob inn i, la oss si, fire stykker, fire segmenter. Og nå, jeg kommer til å gå videre og sette enda en bit av informasjon på denne konvolutten. Jeg kommer til å si noe sånt som 1 av 4. Så nå, min siste konvolutt, på minst det første, ser ut som dette. Jeg kommer til å gå videre og sette dette inn her. Og for tiden skyld, kommer jeg til å merke de andre identisk som 2 av 4, 3 av 4, 4 av 4. Igjen, med Dan rens IP-adresse i foran det og med min IP-adresse på ryggen igjen, men jeg kan ikke sende dem ennå. Fordi det viser seg som på internett, servere kan gjøre flere ting. Faktisk kan vi alle bruke nettet ganske mye, den verdensomspennende nettet, http: // uansett. Men det finnes andre tjenester på internett. Hva er noen andre tjenester, sortere av brukeren, forbrukervennlige tjenester at våren til tankene foruten en nettleser-type program? PUBLIKUM: E-post. DAVID MALAN: E-post. OK. Good. Hva er en annen en? PUBLIKUM: Chat. DAVID MALAN: Så chat, enten det er Skype, eller Gchat, eller noe sånn. PUBLIKUM: Lagring. DAVID MALAN: Så en slags lagringstjeneste, absolutt. Noe sånt som Dropbox, eller boks eller lignende. Så det er annerledes tjenester på internett. Og det viser seg at Dan, hvis han er faktisk en datamaskin, ikke behøver å være dedikert til én ting i livet. Han kan faktisk gjøre flere ting. Og ja, han kan være en e-post server. Han kan være en web-server. Han kan være en chat-server. Men det ser ut til å foreslå at Dan trenger å vite på forhånd hva som er de Innholdet i disse meldingene. Er dette en nettside Jeg sender ham? Er det en e-post jeg sender ham? Er det en umiddelbar melding jeg sender ham? Så vi trenger en mer stykke informasjon om disse konvolutt slik at Dan, når han mottar denne konvolutten, vet hva programmet skal brukes til å vise det. Er det en nettleser? Er det Google? Er det Skype? Eller er det Outlook eller noen andre programmet helt? Og så, kommer med TCP bare en menneskelig konvensjonen. Verdens besluttet noen år siden å knytte unike heltall med de mest populære tjenestene. Ens kalt File Transfer Protocol, FTP, selv om det er litt datert nå. Men sin unike identifikator er 21. SMTP for utgående e-post, sin unike identifikator er 25 bare fordi. DNS, ting vi snakket om tidligere, bruker nummer 53 for sine spørringer. Som hva er IP Adressen google.com? Og nå, jo mer kjent du kan ha et sted på et tidspunkt sett nummer 80 og kanskje 443. De er den unike identifikatorer for HTTP, som er språket vi vil snart se brukt for web-trafikk mellom nettlesere og servere. Og 443 er for sikker versjon av denne. Så en siste detalj jeg er kommer til å sette på konvolutten min er at jeg ikke kommer til Send dette bare for å Dan IP. Jeg kommer til å sende den å si, : 80, hvis det jeg prøver å sende ham er en nettside, en nettside som inneholder Rob Boden bilde. Så jeg kommer til å gjøre det samme ting på disse andre konvolutter. Og så til slutt, jeg kommer til å droppe disse av med den nærmeste router, erkjenner at det router kanskje ikke nødvendigvis ta den samme banen hver gang. Faktisk kan jeg ha første pakken kommer på denne måten. Second pakke kan gå den veien. Tredje packet-- starte ruting. --might gå over her. Og i theory-- ikke kan holde det. I teorien alle fire av disse pakkene bør til slutt ruten sin vei, men effektivt eller ineffektivt, hele veien til baksiden. På hvilket tidspunkt, Dan, etter kvittering, kan montere dem basert on-- det morsomme er, vi vet alle hva utfallet her kommer til å være. Dan kommer til å få et bilde av Rob. Men la oss se hvordan dette funker. Vel, heller, Dan kommer til å få en del av et bilde av Rob. Veldig bra. Alle har deltatt i dag. OK. Så som Dan begynner å motta disse pakker, la oss stille et spørsmål. Hva om en av dere får lat, overbelastet, ondsinnet, eller bare drevet av, og ett eller flere av Pakken gjør det ikke til Dan? Hvordan er Dan kommer til å vite at han ikke gjorde det får en av segmenter av fire Jeg sendte ham? Bare intuitivt, hva kan vi gjøre? Yeah? PUBLIKUM: [uhørlig]. DAVID MALAN: Nettopp. Fordi jeg har unikt nummerert dem, og Jeg har spesifisert hvor mange segmenter der bør være, kan han slutte fra at hvilke, om noen, av segmentene han er faktisk mangler. Og hva TCP forteller datamaskiner til gjør, hvis datamaskiner, som Mac OS, og Windows, og Linux-støtte og forstå TCP, som de gjør, TCP dokumentasjon hovedsak sier at Dan skulle sende meg en melding tilbake og sa hei, David, Jeg mangler pakke nummer 1 av 4, eller 3 av 4, avhengig av hva som det er. Og da er min jobb å ta et annet bilde av Rob, som vi har statister av for senere i dag Hvis du ønsker å ta med deg, og så kan jeg sende det segmentet av Rob hele veien til baksiden. Så som forenklede som denne mekanismen er, at er hva som skjer nesten enhver tid du gjør noe på internett, spesielt for disse mest populære av tjenester. Det finnes andre protokoller, andre teknologier i tillegg til TCP som fungerer litt annerledes. Men så mange av de tjenestene vi vanligvis bruker faktisk stole på disse protokollene. Så Dan, fikk du hele bildet tilbake dit? Ja. Vi har satt sammen Rob i ryggen. Tusen takk til rutere. Tenk, jeg faktisk vil ha se rutere mellom meg og MIT, var mye som dere rutere mellom meg og Dan. Vel, i stedet for nslookup for navnetjener oppslag, Jeg kan i stedet skrive spor rute, som faktisk kommer til å gjøre det den sier. Og jeg kommer til å gjøre, og stille modus med dash en. Det er en kommandolinje argument som bare sier, prøv dette gang og ikke flere ganger. Og nå kommer jeg til å skrive www.mit.edu. Nå er det utgang ganske rask og kryptisk. Men hva er ryddig om dette er at hver av disse rekker i hovedsak representerer en student i denne målgruppen hvis du var stien mellom meg og MIT. Det du ser her oppe, først, er domenenavnet som jeg skrev inn, eller fullt kvalifisert domenenavn navn som det er skikkelig kalt. Og dette tilsynelatende er den IP-adressen til www.mit.edu. Datamaskinen min skjønte at ut for meg. Dette her er et løfte at vi bare kommer å prøve å nå MIT innen 30 hopp. Det bedre å være ikke mer enn 30 studenter mellom meg og Dan. Og nå, hver av disse radene representerer bokstavelig talt en ruter mellom meg og Dan, bokstavelig talt en av dere. Og så dette ser ikke ut å ha et navn, et domenenavn. Den har bare en IP. Og det tok bare 0,662 millisekunder å komme fra meg til den første ruteren. Den neste var ikke at mye lenger unna. Det tok bare én millisekund for å komme dit. Og nå, heldigvis, ting få litt mer brukervennlig med navn som er kryptisk men litt mer å fortelle. Dette er tilsynelatende en ruter i Kjernen i Harvard nettverk huset, bare fordi folk har fortalt oss Dette, i Science Center, SC. Og GW er bare en forkortelse notasjon for gateway som er et synonym for ruteren. Så dette er noe system administratorens hevet måte navngi en av serverne i Science Center. I mellomtiden er at serveren tilsynelatende forbundet ved hjelp av en form for kabel til en annen router som er klengenavnet grensen gateway en dash noe, uansett hva disse tallene betyr. Og så, tilsynelatende, Harvard har en forbindelse det er en annen millisekund bort til noe kalt den nordlige veiskille som er en felles samtrafikkpunkt mellom store steder som Harvard hvor mye kabling går i og lar sammenkoblinger mellom ulike enheter. Trinn seks, dessverre, ikke har en gyldig navn. Og steg syv blir interessant. Jeg aner ikke hva de fleste av disse mener. Men NY ikke hoppe ut på meg. Og hva betyr det trolig bety? Det er ikke engang teknisk. Bare New York. Så ja, hva er vanlig menneske konvensjonen ikke garantert men felles konvensjonen er å navngi rutere av natur i byen eller flyplassen kode som de er nærmest. Så med en viss sannsynlighet, denne ruteren nummer syv er sannsynligvis, ja, i New York. Og dette ser ut til å underbygge denne antakelsen fordi det er seks millisekunder i stedet for bare ett eller så til noe her på campus. Men nå tar dette i betraktning, rett på Megabus eller whatnot, det kan ta fire, fem, seks timer for å få et menneske herfra til New York. For å få en bit av data, det tar bare seks millisekunder å få en pakke fra meg til Dan hvis Han var hele veien i New York. Da endelig, tilsynelatende er dette faktiske domenenavnet for www.mit.edu. De har tydeligvis outsourcet sine webservere til et selskap kalt Akamai som betyr noen andre selskap driver sine servere. Og det er derfor vi ser det rare ting der. Vel, la oss gjøre dette på nytt. La oss gå videre og gjøre et spor rute til vår venn Professor Nick Parlante ved Stanford som har en server kalt nifty.stanfor.edu. Enter. Og nå, vi får se nok en litt lengre bane som går gjennom noen flere byer. Så her disse navnløse Harvard servere her. Vi er i kjernen av Harvard, grensen gateway of Harvard, de nordlige veiskille, uansett hvor dette er. Og nå, det blir en litt mer interessant. Jeg gjetter på at ruteren nummer åtte er i hvilken by? PUBLIKUM: [interposing VOICES] DAVID MALAN: Chicago trolig, basert om dette, basert på denne tingen her. Og nå har vi Salt Lake City kanskje, kanskje Los Angeles her, og deretter LAX, Jepp, dette er trolig LA ved bunnen. Inntil endelig, går det fra Sør-California helt opp til Nord-California til der Stanford ligger i Palo Alto. Så ganske kult. Og la oss ta dette ett skritt videre. Det tilsynelatende ville ta deg 82 millisekunder å sende en melding til Dan hvis du var i California i stedet for New York. La oss gjøre noe som sporveier, en forsøke å www.cnn.co.jp for Japanske versjonen av CNNs nettside. Og nå er vi fortsatt i Boston det virker i øyeblikket. Et par servere seks og åtte svarer ikke fordi de er å være litt privat. Men til slutt, det synes å være noe interessant skjer mellom, la oss si, steg syv og ni. Hva er trolig mellom syv og ni, og sikkert mellom sju og trinn 17? Det er et stort hopp i mengden av tiden det er å ta for data å gå fra ett av disse humle, en av disse rutere til en annen. Så oddsen er, et sted i her, det er nok, spesielt akkurat her, er det sannsynligvis en svært stor vannmasse som har noen trans Pacific eller trans Atlantic kabel som faktisk krever enda mer tid for data til komme seg fra ett punkt til et annet. Men igjen, tenk timer det ville ta fly til Japan. Her, i rundt 200 millisekunder, boom, er meldingen faktisk det. Så du kan spille rundt med dette på apparatet eller i Windows eller Mac OS med litt forskjellige kommandoer. Noen ganger vil du få disse stjernene, som i rader seks og åtte, noe som betyr bare rutere er ikke konfigurert å gi deg et svar for privatliv skyld. Men generelt, denne teknikken ville faktisk fungerer. Så det viser seg også det er andre saftig informasjon lurking i verktøy at du tar for gitt hver dag. Så for eksempel, hvis du mottar en e-post, ærlig som noen av dere kan ha nylig, av tvilsom opprinnelse, hvis du har aldri sett på Gmail-grensesnitt før, enten det er for college-grensesnitt eller personlig, du kan se din innboksen ser ut som dette. Og faktisk, dette er en e-post Jeg sendte, malan@harvard.edu, til jharvard@cs50.harvard.edu denne morgenen bare slik at jeg kunne ta en skjermdump. Men det viser seg, alt denne gangen i Gmail, det er den lille trekanten mot høyre der ved siden av Harvard crest at hvis du klikker, kan du klikke Show Original. Og hvis du gjør det, vil du faktisk se en gjeng med veldig esoteriske informasjon som tidsstempler, og IP adresser og domenenavn. Men du vil se, kort sagt, overskrifter som hele denne tiden har blitt truffet i hver e-post du sender og mottar. Og det er disse overskriftene som folk kan bruke, dataingeniør eller på annen måte, å faktisk slutte med viss sannsynlighet der og fra hvem en e-post faktisk kom. Faktisk vil vi snakke i senere uker om hvordan e-post seg selv kan genereres programma som er en veldig god ting for et nettsted som ønsker å sende e-post til brukere. Men vi får se, også, bare hvor trivielt det er å forfalske e-poster fra noen til noen andre, med mindre du faktisk vet hvordan å verifisere overskrifter. Og selv det er en tapende proposisjoner i disse dager. Så med det sagt, la oss gå ett lag opp. Vi startet med IP som adresser pakker for oss, gir dem unike adresser. TCP, som, kort sagt, garanterer levering eller minst øker sannsynligheten derav ved legge ting som segmenter, 1 eller 4, 2 av 4, 3 til 4, og 4 av 4. Og nå, la oss lag på toppen av at en annen protokoll. Alle disse tingene er protokoller, data konvensjoner som dikterer hvordan to datamaskinene snakke med hverandre. HTTP, til slutt i dag, er Hypertext Transfer Protocol. Og dette er protokollen at nettlesere bruke når du snakker til webservere. Så når du trekker opp en nettleser som Chrome eller IE, eller Firefox eller Safari, eller hva, og du skriver inn noe som facebook.com og trykk enter, ikke bare gjør datamaskinen først sette facebook.com inn i hva? En IP-adresse. Deretter converts-- det da sender en melding til den IP-adressen ordtak, gi meg dagens hjemmeside eller gi meg innloggingsskjermen på Facebook. Eller hvis du allerede er logget inn, gi meg standardvisningen av min tidslinje. Så det er hva HTTP sier. Og mer folkemunne, hvis jeg er en web- server, og du are-- hva heter, igjen? PUBLIKUM: Margot. DAVID MALAN: Margot er en web server, og jeg er en nettleser, og jeg ønsker bare å hente min tidslinje fra Margot, margot.com, Jeg vil si, hallo, jeg er David. PUBLIKUM: Hei, jeg er Margot. DAVID MALAN: Og du vil da svare med ytterligere informasjon til meg. Så vi har denne dumme menneske konvensjon for instance-- takk. --of risting hverandres hender. Og datamaskiner har den samme ideen der en klient, som en nettleser, spør en server for å gjøre noe på hans eller hennes vegne. Og så her er et bilde, for eksempel. Til venstre er en datamaskin laptop, desktop, uansett, eller til og med en telefon. Og til høyre er en svært datert visning av en server. De vanligvis ser mindre og mer sexy i disse dager. Men poenget er ganske enkelt at det er noen form for kommunikasjon mellom klient og server. Og kunder i den forstand av noen i en restaurant og servitør eller servitør, samme ideen med datamaskiner. Klienter og servere, en spør etter informasjon, en reagerer med informasjon. Nå, hvordan det informasjon kommer tilbake? Vel, tenk på dette. Få er liksom standard måte-- og det er en super enkel sikt. --that bare dikterer hvordan en nettleser får informasjon fra en server. Med andre ord, i stedet for bare tabbe-ily strekker min hånd til Margot, hvis jeg virkelig var en nettleser, jeg ville ting innsiden av en konvolutt, som jeg gjorde med Rob bilde før, en tekstmelding som bokstavelig talt sier noe sånt som dette, get / http / 1.1hostwww.google.com eller margot.com eller hva serverens navn skulle skje for å være. Og så, dot dot dot, noen andre ting. Men bokstavelig talt, på innsiden av en konvolutt ville være ganske enkel tekstlig Meldingen sånn. Som ved mottak, Margot ville åpne opp, lese innholdet, og reagere deretter. Nå er det litt ikke-åpenbare sammen med dette eksemplet. Men få / hva er skråstreken trolig refererer til, bare basert på ditt kjennskap surfer på nettet i dagliglivet? Hva er skråstreken? PUBLIKUM: [uhørlig]. DAVID MALAN: En flukt sekvens. Ikke en dårlig idé, men generelt utgangssekvenser gå den andre veien. Det ville være en backslash vanligvis. Men ikke en dårlig tanke. Yeah? En peker. Også god tanke, men enda enklere enn det. Hjemmekatalogen. Roten av en harddisk, så å si. De fleste av oss ikke skriver dette. Men teknisk sett, hvis du ønsket å være super skikkelig i disse dager, du vil gå til noe som http://www.facebook.com/. Nå sa jeg de fleste av oss ville ikke ikke oppgi skråstreken. Og ærlig talt, de fleste nettlesere, Chrome inkludert, ikke engang bry viser oss skråstreken i disse dager bare fordi de liker å være enkel og konsis. Men skråstreken betyr bare gå til www.facebook.com og få slash, roten av harddisken, standard nettstedet på facebook.com. Ved hjelp av hvilken protokoll? Vel, bruker versjon 1.1 av denne tingen kalt HTTP. Serveren, eller Margot-- og forresten, gjør Har du noe imot at jeg bruker dere i disse? OK. Så vi er bra nå. Så Margot respons nå med en konvolutt av hennes egne, innsiden av som er en tilsvarende tekstmelding. Den første linjen som er, Jepp, jeg snakker HTTP versjon 1.1. 200 er statuskoden som nettopp betyr alt er OK. Jeg har siden du leter etter. I mellomtiden, Content-Type: text / html, dette er Margot halv uforståelige måte å si: hva du har bedt om, er en web-side. Og det er typen, så å speak-- nesten som en variabel måte, men dette er mye høyere nivå nå. Datatypen er tekst men spesielt HTML. Språket vil vi snart se. Og så er det noen andre ting. Så andre ting er bokstavelig talt hva Facebook svarer med. Så la oss se dette, også. La meg gå videre og åpne opp Chrome på min laptop som du kan gjøre på egen egen datamaskin også. Og jeg kommer til å gå videre og åpne opp www.facebook.com. Enter. Og jeg får denne kjent skjermen her. Men nå, jeg kommer til å gjøre noe annet. Jeg kommer til å gå videre og gå til Vis, Developer. Og gå til Developer Verktøy, som du bør har i Chrome på datamaskinen, minst innenfor apparatet. Jeg kommer til å rulle dette ting her oppe, og du er kommer til å se en hel haug av kryptiske teksten her. Det viser seg at det Margot satt inni av at konvolutten som svar til meg er et språk som heter HTML, Hypertext Markup Language. Det er ikke et programmerings språk fordi du ikke kan, det ikke har looper, og forhold, og funksjoner, og sånt. Det er et kodespråk. Etter at den har spesiell syntaks kalt tags og attributter som forteller en nettleser hva som skal vises på skjermen og hvordan du viser det. Skal være sentrert? Skulle det være dristig-faced? Rød, grønn, blå? Det er et kodespråk. I den, forteller en nettleser hva som skal vises på skjermen. Så dette er, bokstavelig talt, alt av HTML og mer at Facebook-server spytter ut og at Chrome og IE, og Firefox har blitt designet av deres respektive forfatterne å forstå. Og faktisk, det er en litt messier enn det. Hvis du i stedet å gå til Vis, Utvikler, View Source, dette er faktisk hva Facebook er ut å sette. Sorter på null for fem for stil, ikke sant, hvis vi antyde at dette sannsynligvis ikke er den beste. Men ærlig talt, de kan komme unna med det fordi hvis du serverer opp milliarder av nettsider per dag, du virkelig ønsker ikke å kaste bort tid, og bytes, og penger til slutt i å overføre ting som ny linje tegn og mellomrom, og faner fordi du tilbringer for båndbredde unødvendig med din ISP. Så ja, dette er ment å bli minified på denne måten. Men hva Chrome gjør for oss er, er det å ta denne HTML, som helt ser ut som rotete og uforståelig til menneske, og det er bare å formatere det. Det er ganske skriver det slik at Vi kan bryte våre sinn rundt det litt lettere. Men mer interessant er dette. Hvis jeg nå klikke i Chrome, elementer, men ikke nettverk, Jeg kommer til å se litt logging skjerm som er kommer til å vise meg alt av HTTP-forespørsler som faktisk kommer tilbake og tilbake mellom meg og Facebook eller meg og Margot hvis jeg gjør mer enn én forespørsel. Så jeg kommer til å gå videre og klikk reload ikonet opp her i Chrome. Og nå, en hel haug med ting fløy forbi nederst. Jeg kommer til å rulle tilbake til toppen. Og nå, merker dette, aller første be nettleseren min gjorde var å www.facebook.com. Det er ved hjelp av Hent mekanisme som bare betyr det taler tekstlig språk at vi så et eksempel på et øyeblikk siden. Og dessuten, det viser seg at responsen at Facebook ga meg 200 OK, noe som betyr at jeg funnet websiden i spørsmålet. Hvis jeg klikker på denne raden, kan jeg faktisk se disse overskrifter litt mer tydelig. Disse vil være mer fornuftig før lenge. Men legg merke til at nettleseren min sender en hel masse informasjon som vert, og metode, og cookies. Vi vil komme tilbake til dem før lenge. Og du vil til slutt forstå hva en cookie faktisk er og hvordan du snart skal sende dem. Og du kan se hva Facebook sender tilbake, inkludert innholdet type tekst HTML, gjeldende dato tid, sin personvern politikk, eller mangel på sådan, og så, til slutt, en rekke cookies som blir satt på datamaskinen også. Men vi skal erte dem fra hverandre før lenge. Men kort sagt, hver gang du besøkt en nettside, som nå i mange år, du har vært å sende meldinger til den jeg sendte i en konvolutt til Margot og Dan. Og du har fått tilbake svar som dette fra Facebook. Men dessuten, gjett hva som blir utlevert til Facebook, og Google, og alle andre hver gang du besøker en nettside? Hva er på utsiden av hvert konvolutt datamaskinen har vært å sende? Din IP-adresse, ikke sant? Kanskje ikke ditt navn per se, men din IP-adresse. Og bare, la oss koble prikker senere, hvis du bruker tjenester som web, eller BitTorrent, og livet, og du har registrert en datamaskin på et sted som Harvard, noen sted vet at John Harvards IP håndterer dette, dot dette, dot dette, dot dette. Og ja, logger kan han holdt både på en campus som dette, på en Comcast nettverk, på Verizon, eller ærlig, på NSA som vi nylig har lært, som logger stort sett alt som du gjør på internett. Og vi vil komme tilbake til dette fremtiden klassen på konsekvensene av disse design beslutninger og sikkerhet. Men sannheten er, at du virkelig har ikke så mye privatliv. Hver gang du har vært på besøk hvor som helst på nettet, er at du viser hånden din og avslørende minst din IP-adresse. Så skummelt notat til side, hva kan vi gjøre for å legge ting som katter i en web-side? Så vi har en haug med svar som kan komme tilbake fra serveren. Og vi vil ikke se alle disse i dag. Men 200 er god. Og er du sannsynligvis ikke sett alle disse som et menneske før. Men du har sikkert sett i det minste en av disse. Hvilken av disse kan se kjent ut? PUBLIKUM: 404 DAVID MALAN: So 404. Finner ikke filen. Og ja, du kommer til å se dette programmatisk selv. 404 betyr bare filen du har bedt om, slash eller kutte noe, rett og slett ikke eksisterer. Og en web-server typisk svarer med 404 som et resultat I mellomtiden vil vi snart se at innholdet i den meldingen er dette språket kjent som HTML. Og dette er en super enkelt bit med HTML som ikke gjør noe annet enn vise hello world på skjermen. Faktisk, ser du på toppen av dette noe som kalles en dokumenttype erklæring som bare sier hei, verden. Denne filen inneholder HTML. Og så, neste bit av HTML at du kommer til å skrive, den har en åpen hylle, og deretter ordet HTML, deretter en lukket brakett, og deretter åpen hodet, og nær braketten. Så kort sagt, la oss faktisk gjøre dette mer mekanisk. La meg gå inn i min apparatet, men du kan gjøre dette hvor som helst at du har en tekst editor til. Jeg kommer til å gå videre og lagre en fil som heter hello.html. Jeg kommer til å sette den på skrivebordet mitt til holde ting super enkle akkurat nå. Og jeg kommer til å gjøre akkurat det jeg nettopp så. Så doc typen HTML, åpen brakett HTML. Og nå, varsel, jeg kommer til å gjøre det motsatte preemptively. Og ved motsatt, mener jeg den samme koden, så å si, men den starter med en skråstrek. Og så, over her, Jeg kommer til å si, hode, fordi det viser seg at alle web side har en såkalt hode som er ting som går i tittelen bar, på toppen av siden. I tittelen er bare kommer til å bli hei her. Og nå, jeg kommer til å ha en kropp på denne nettsiden. Så hver nettside har både et hode opp toppen og en kropp som er tøff nok av siden. Og her, jeg bare kommer til å si noe sånt hello world. Og jeg kommer til å lagre denne filen. Hvis jeg nå minimere gedit, se, det er en liten fil på skrivebordet mitt kalt hello.html. Nå, det er ikke på serveren ennå, per se, faktisk, det er bare på min egen personlige desktop her. Men hvis jeg åpner opp Chrome og traff kontroll O- er det katten i spørsmålet. --og jeg går til skrivebordet mitt. Og jeg åpner opp hello.html, der, i Faktisk er min super enkel web-side. Hovedteksten på siden min og denne hvite vindu her er kroppen med hello world. Og tittelen i hodet siden er i kategorien der. Og vi kommer til å se snart at det er super enkel å åpne opp andre sider i tillegg. For eksempel, jeg kommer til å gå inn i noen av fordelingskode for denne uken, kilde sju, og jeg kommer å åpne seg ikke JPEG som denne fyren er her. Men jeg kommer til å åpne opp image.html, som til slutt ser ut som dette. Men la meg nå åpner dette opp i gedit, og gå inn i Dropbox kilde syv, og image.html. Mesteparten av dette er bare kommentarer som vi vil snart se. Men hvis jeg ønsker å sette Grumpy Cat innsiden av denne web-siden, det er nok å sette en annen åpen brakett, og deretter nøkkelordet bilde eller img for korte, og deretter alternativ tekst for tilgjengelighets grunner hvis noen har en skjerm leser eller noe sånt. Kilde som er, hva er navnet på filen, cat.jpeg. Og så, fordi dette tag er litt spesiell, vi sette skråstrek, som vi får se, innsiden av koden. Men sluttresultatet er en web- side som ser ut som dette. Så kort sagt, hva vi kommer til å være gjør nå over tid er å bruke nettet og lage websider til i siste instans være containere ikke bare for dumme ting som bilder og lenker, og tabeller, og punktlister og lignende, men også for å gi oss selv et grafisk brukergrensesnitt, et GUI, ikke ulikt det vi gjorde vi Breakout. Men innenfor dette miljøet, er vi kommer til å begynne å bruke språk som PHP, og Javascript, databasen språk kalt SQL, en klient-side skriptspråk kalt Javascript for å faktisk lage alle de mer dynamiske grensesnitt, men i en mye mer kjent sammenheng. Men før det, la oss konkludere i dag med en titt, som lovet, om hva som egentlig skjer under panseret med internett seg selv. Fastsette for dag at internett kan bli brukt til å overføre ting som nettsider via HTTP mye som jeg ristet Margot hånd tidligere. Men det er så mange andre tjenester som bruker TCP og IP som vi tar for gitt at arbeidet som vi får se her i denne filmen som vil ta oss til slutt i dag. [VIDEO PLAYBACK] -For Første gang i historie, mennesker og maskiner er å jobbe sammen, å realisere en drøm. En samlende kraft som vet ingen geografiske grenser. Uten hensyn til rase, tro eller farge. En ny æra der kommunikasjon virkelig bringer folk sammen. Dette er The Dawn of the Net. Vil du vite hvordan det fungerer? Klikk her for å starte Reisen inn i nettet. Nå, nøyaktig hva som skjedde Når du klikker på denne linken? Du startet en strøm av informasjon. Denne informasjonen reiser ned inn i din personlige mail rommet når Mr. IP-pakker det, etiketter det, og sender det på sin måte. Hver pakke er begrenset størrelse. Postrommet må bestemme hvordan du vil dele informasjon og hvordan du kan pakke det. Nå må pakken en etikett som inneholder viktig informasjon, som avsenders adresse, mottakers adresse, og hvilken type pakke det er. Fordi denne pakken går ut på internett, det blir også en adresse for proxy-serveren, som har en spesiell funksjon som vi skal se senere. Pakken er nå lansert på ditt lokale nettverk eller LAN. Dette nettverket er brukt til å koble alle lokale datamaskiner, rutere skrivere, et cetera for informasjonsutveksling innenfor den fysiske veggene av bygningen. LAN er en ganske ukontrollert plasser og, dessverre, ulykker kan skje. Motorveien fra LAN er pakket med alle typer informasjon. Dette er IP-pakker, Novell pakker, Apple Talk pakker. De kommer mot trafikk som vanlig. Den lokale ruteren leser adresse og, om nødvendig, løfter pakken på et annet nettverk. Ah, ruteren. Et symbol på kontroll i en tilsynelatende uorganisert verden. Der er han, en systematisk, uncaring, metodisk, konservativ, og noen ganger ikke helt opp til hastighet. Men minst, er han nøyaktig for det meste. Som pakkene forlater ruter, de gjør sin vei inn i bedriftens intranett og leder for ruteren bryteren. Litt mer effektiv enn ruteren, ruteren bryteren spiller rask og løs med IP-pakker, deftly ruting dem underveis. En digital Pinball Wizard hvis du vil. -Her Vi går. Her kommer en annen. Og det er en annen. Sjekk dette, mamma. Her er går. Uff da. Rundt baksiden. Hei. Der inne. Der inne. Over til venstre. Over til høyre. Over til venstre. Over til høyre. Du fikk den. Her går det. Han skyter. Han scorer. Det kommer. Hei, vent. Hei, se opp. Her kommer en annen. Oh, here we go. -Som Pakker ankommer bestemmelsesstedet, er de plukket opp av nettverksgrensesnitt, klar til å bli sendt til det neste nivå, i dette tilfellet proxyen. Proxy brukes av mange selskaper som liksom en middelaldrende mann for å minske belastningen på sin internettforbindelse og av sikkerhetsmessige grunner også. Som du kan se, de pakker alle er av forskjellige størrelser, avhengig av deres innhold. Proxyen åpnes pakken og ser for web-adresse eller URL. Avhengig av hvorvidt adressen er akseptabel, pakken sendes på internett. Det er imidlertid noen adresser som ikke gjør det møte med godkjenning av proxy, det vil si, bedrifts- eller retningslinjer for forvaltningen. Disse er summarisk behandlet. Vi vil ikke ha noe av det. For de som gjør det, det er på veien igjen. Neste opp, brannmuren. Bedriftens brannmur tjener to formål. Det hindrer noen heller ekle ting på internett fra å komme inn i intranett. Og det kan også hindre sensitiv selskapsinformasjon blir sendt ut på internett. Når gjennom brannmuren, en ruter plukker opp pakken og plasserer det på en mye smalere vei eller båndbredde, som vi sier. Selvfølgelig er ikke raden bred nok til å ta dem alle. Nå kan du lurer på, hva skjer med alle disse pakkene noe som ikke gjør det underveis. Vel, når Mr. IP ikke mottar en bekreftelse at en pakke har vært mottatt i rett tid, han bare sender en erstatning pakke. Vi er nå klare til å gå inn i verden på internett, en edderkopp nett av sammenkoblede nettverk som spenner hele kloden. Her, rutere og svitsjer etablere koblinger mellom nettverk. Nå er et helt netto annet miljø enn du finner i beskyttende veggene i lokalnettet. Her ute er det Wild West, god plass, mange muligheter, masse ting å utforske, og steder å gå. Takket være svært lite kontroll og regulering, nye ideer finne fruktbar jord å presse innhyllningskurven til deres muligheter. Men på grunn av denne frihets, visse farer også ligge på lur. Du vet aldri når du møte den fryktede ping of death, en spesiell versjon av et normalt forespørsel ping som noen idiot trodde opp rote opp intetanende verter. Banen våre pakker tar kanskje via satellitt, telefonlinjer, trådløs, eller enda transoceanic kabel. De trenger ikke alltid ta den raskeste eller korteste rute mulig, men de vil komme dit, til slutt. Kanskje det er derfor det er noen ganger heter den verdensomspennende vente. Men når alt er arbeider jevnt, du kunne omgå kloden fem ganger ved slipp av en lue, bokstavelig talt, og alle for kostnaden for en lokalsamtale, eller mindre. Nær slutten av våre reisemål, Vi finner en annen brannmur. Avhengig av din perspektiv som en datapakke, brannmuren kan være en bastion av sikkerhet eller fryktede motstander. Det hele avhenger av hvilken side du er på, og hva dine intensjoner er. Brannmuren er konstruert for å slippe inn bare disse pakkene som oppfyller kriteriene. Denne brannmuren er i drift på port 80 og 25. Alle forsøk på å gå inn gjennom andre portene er stengt for virksomheten. Port 25 brukes for postpakker. Mens Port 80 er inngangen for pakker fra internett til nettet server. Innenfor brannmuren pakker er vist mer grundig. Noen pakker gjøre det lett gjennom tollen, mens andre ser bare litt tvilsom. Nå brannmuren offiser er ikke lettlurte, for eksempel når dette ping Dødspakke tries å skjule seg selv som en normal ping pakke. -Flytt Sammen. Det er OK. Ikke noe problem. Ha en fin dag. La meg ut herfra. Bye. -For Disse pakkene heldig nok til å gjøre det så langt, reisen er nesten over. Det er bare en linje opp på grensesnittet å bli tatt opp i webserveren. I dag kan en webserver kjøres på mange ting, fra en stormaskin, til et webkamera, til datamaskinen på skrivebordet. Hvorfor ikke kjøleskapet? Med riktig sett opp, kan du finne ut hvis du har makings for kylling Cacciatore eller hvis du har å gå på shopping. Husk, dette er The Dawn of the Net. Nesten alt er mulig. En etter en, pakkene er mottatt, åpnet, og pakket. Informasjonen de inneholder, som er din forespørsel om informasjon, sendes videre til web server applikasjon. Selve pakken blir resirkulert. Klar til å bli brukt igjen og fylt med du ønsker informasjon, adressert, og sende ut på vei tilbake til deg. Tilbake forbi brannmurer, rutere, og videre gjennom til internett. Tilbake gjennom bedriftens brannmur. Og på din grensesnitt. Klar til å levere din nettleser med den informasjonen du har bedt om. Det er denne filmen. Fornøyd med sin innsats og å stole på en bedre verden, våre trofaste datapakker ri av et trettitalls inn i solnedgangen på en annen dag, vel vitende fullt de har tjent sine herrer godt. Nå er ikke det en lykkelig slutt. [END VIDEO PLAYBACK] DAVID MALAN: Det var det for CS50. Vi vil se deg neste uke. [MUSIC - Katy Perry, "dark horse"]