[Musiikkia] DAVID J. MALAN: Olen siis vain halusi tyynnyttää kohteeseen. Haluan toistaa, mitä Scaz sanoi institutionaalinen muisti. CS50 on ollut noin noin 20 vuotta Harvardissa. Ja todellisuus on, mistä seniorit alas, on vuosittain varmuus että Fuksit, sophomores, ja juniorit ja myös eläkeläiset ottaen CS50, että voit päätyä hyvin. Todellisuus on, opiskelijat ei katkea CS50. Itse asiassa harvoissa tapauksissa jossa meillä on ollut Es tai Fs, se on todella ollut, koska lieventäviä asianhaaroja, onko se lääkärin tai henkilökohtaisen. Ds ovat uskomattoman harvinaista samoin. Ja voin sanoa mukavasti, vaikka me tyypillisesti eivät paljasta tilastot, mutta kun otetaan huomioon, että ei ole institutionaalinen muisti täällä mitään, Suurin osa opiskelijoista CS50 ei lopulta saada alue laadut. Merkittävä murikka päätyä päätyy B alueella liikaa. Joten vaikka saatat olla rinnastetaan mielessäsi kolmosta 60% ja siksi Ds, tai Cs, tai vastaava, se ei todellakaan linja kanssa todellisuuteen. Itse asiassa, me tarkoitamme mitä me sanoa alussa termi että niin monet opiskelijat CS50, sekä Cambridge ja täällä New Haven, eivät ole koskaan CS kurssi ennen. Ja mitä todellakin lopulta merkitystä on, jos päädyt viikolla 12 suhteessa itse viikolla nolla. Nyt meillä on useita seuraa aikana kun know-- vähemmän mukava, lisää mukava, välimaastoon. Ja todellakin, kun saat tilastoja tämän viikon tietokilpailu, älä lannistu jos, varsinkin jos sinusta tuntuu, että olet noin keskiarvon tai keskimääräistä pienempiä tai mediaani, varsinkin kun emme välttämättä ottaa kaikki väestötiedot huomioon Syyslukukauden kanssa luokittelu tilastoihin. Toisin sanoen, me tiedämme tilastollisesti vuosittain että opiskelijat, jotka ovat vähemmän mukavat, tehdä vähän huonompi tietokilpailu. Ja opiskelijat, jotka ovat mukavia tehdä vähän paremmin tietokilpailu. Mutta kohti että lupaus oppimäärä ja myös ensimmäisellä viikolla luentoja, otamme kaikki sen huomioon. Todellakin, vuoden lopussa, mitä me lopulta tekevät on normalisoitumassa kaikki tulokset poikki kohdat, sekä Cambridge ja nyt täällä New Haven, mikä tarkoittaa, että otetaan huomioon erilaisia ​​tyylejä, erilaisia kovuudessa, toisenlainen persoonallisuuksia että yksittäiset TA on täällä ja Cambridge niin että et ole haitta vaikka vain sattuvat ollut TF tai TA joka on ollut hieman kovempi teitä mielessäsi. Kaksi, otamme huomioon mukavuus tasolla ja todellinen tausta, tai puute sen, kun otetaan tietokilpailu tulokset huomioon. Joten nämä kaksi ovat huomioon. Ja lopussa päivä, koska se on aina tapaus että opiskelija päätyi vähemmän mukava jakso kun hän todella kuului in-välillä tai päinvastoin, kaikki on niin uskomattoman yksilöllisiä. Todellakin, saat vihainen meille osoitteessa toimikauden loppuun mennessä, kun olemme myöhässä lähetät laadut koska kanssa Scaz, ja Jason ja Andy ja minä, ja joukkue on tehnyt Cambridge on kirjaimellisesti on satoja sähköposteja takaisin ja esiin kaikki satoja kursseja TAS, täällä ja Cambridge, pyytäen heitä mitä he ajattelevat kaikkien niiden opiskelijoiden perustuvat luonnoksen laadut. Ja kaikki siellä jälkeen on uskomattoman yksilöllinen. Joten siinä määrin me tutustua sinuun virassa tuntia, kohdat, ja enemmän, kaikki sekin otetaan huomioon. Joten vaikka meillä on tapana käyttää tätä viittä pisteen asteikolla, ota, irrottautua siitä olettamuksesta, että kolme on todellakin 60%. Se on tarkoitus olla hyvä. Ja opetus avustajat veloitetaan aikavälin alku yrittää pitää tulokset vuonna kaksittain, ja kolmosta, ja nelosta vaihtelevat niin, että me oikeastaan ​​tilaa kasvaa. Ja meillä on todellakin mittapuu, joka voimme antaa sinulle hyödyllistä palautetta siitä, miten teet ja miten olet etenee. Joten älä ota että sydämen. Onko kysyttävää voin auttaa osoitteen tai huolenaiheita voin auttaa lievittää? Tai lupaa voin yrittää pitää? Ei? OK. Selvä. Niin, että sanoi, tämä on CS50. Tämä on alku viikko kuusi täällä New Haven. Aloitetaan lyhyesti himmennys valot asettaa vaiheessa nykypäivän sisällöstä. [VIDEOTOISTOSTA] [Musiikkia] -Hän Mukana viestin. Jossa protokolla kaikki hänen oma. Hän tuli maailmaan viileä palomuurit, piittaamaton reitittimet, ja vaaroja paljon pahempi että kuolema. Hän on nopea, hän on vahva, hän on TCP / IP. Ja hänellä on osoitteesi. Warriors netto. [Lopeta toisto] DAVID J. MALAN: Selvä. Tämä on CS50. Tämä on alku viikolla kuusi. Ja tämä on alku meidän ilmeen klo internet ja web-ohjelmointi. Ja ehkä kaikkein jännittävän, tänään merkitsee siirtymistä meille meidän komentoriviltä maailmaan C web pohjainen maailma PHP, ja HTML, ja CSS, ja SQL, ja JavaScript, ja niin paljon enemmän, että on näköpiirissä. Mutta ensin, se on tullut seikkoja kävely eri kampuksella että on tietty kylpyhuone täällä New Haven kutsutaan Harvardin huone, joka on hieman harmaana täällä. Mutta todellakin, joku meni aika ja kustannuksella etsaus Harvard huoneessa Tämän tässä huoneessa. Kiitos siitä. En voi sanoa meillä analoginen Cambridge vielä, mutta mielestäni meillä on pieni projekti itsellemme nyt kun menemme takaisin. Joten kiitos siitä. Joten nopea muistella mihin jäimme viime viikolla ja minne olet menossa tulevana viikko ongelmia asetettu viisi. Joten ongelma asettaa viisi, voit olla haastoi toteuttamaan oikoluku. Ja tehdä niin, sinun on ojensi aika iso teksti tiedosto kuten 140000 Englanti sanat. Ja sinun haastetaan päättää on tietorakenne, jonka kanssa haluat ladata kaikki nämä sanat muistiin, ja RAM, ja sitten toteuttaa muutamia toimintoja, joista yksi tulee olemaan tarkistaa. Jolloin kun kulunut argumentti, sana, teidän toiminto tarkistaa yksinkertaisesti joutuu sanoa totta vai tarua, tämä on sana sanakirjassa. Mutta olet menossa on joitakin suunnittelu harkintavaltaa ja haasteet kun se tulee sen täytäntöön panemiseksi. Vuonna yksinkertaisin täytäntöönpanoa, voisit varmasti toteuttaa oikoluku vuonna taustalla sanakirjassa kanssa, millaisia ​​tietoja rakenne? Sinun tarvitsee vain tallentaa koko nippu jousille muistia? Mikä on liikkeellä vastata viikosta kaksi kenties? Yleisö: Array. DAVID J. MALAN: Voit käyttää erilaisia. Ja se ei ole ollenkaan huonosti. Mutta et välttämättä tiedä etukäteen, kuinka suuri array olet menossa on, jos et tietää tiedosto välttämättä etukäteen. Joten olet menossa on Käytä hieman kikkailu kuten malloc, kuten aloimme käyttää. Tai voisimme puuttua että huoli käyttämällä mitä muut tiedot rakenne, joka on ollut eräänlainen marginaalinen lisälaite on array? Yleisö: linkitetty lista. DAVID J. MALAN: Like linkitetty lista, jossa saamme dynaamisuutta. Mutta siellä on hieman kustannuksella. Meillä on viitteitä ylläpitää. Ja et ole vielä koodattu tämä ylös, mutta siellä on varmasti olla hieman monimutkaisempaa kuin vain käyttämällä hakasulkeet ja loikkii array. Mutta array käyntiaika, jos etsit sanaa, voidaan log n. Mutta jälleen kerran, se saattaa olla vähän ei-triviaali rakentaa että array ei tietäen koko etukäteen. Linkitetty lista kuitenkin, jos vain tallentaa nippu jouset vuonna linkitetty lista, Mikä sinun yläraja käynnissä aika tulee etsiä varten tai tarkistaa sanan tähän luetteloon? Yleisö: n. DAVID J. MALAN: Joo, iso O n tai lineaarinen koska pahimmassa tapauksessa, sana on kuin Z sana aina lopussa. Ja koska linkitetty lista, koska ne nuolet oletuksena, vuonna yksittäin linkitetty lista, vain mennä yhdestä suunnasta toiseen, et voi hypätä noin. Sinun täytyy seurata niitä kaikkia. Joten ehdotimme lopussa viime viikolla, viikko viisi, että on olemassa parempia tapoja. Ja itse asiassa, pyhä Graal olisi todella vakio aika jolloin kun haluat etsiä sana, te saada instant vastauksen riippumatta kuinka monta sanaa on jo oman sanakirjan. Tämä on taiteilijan luovuttamista mitä voisi kutsua hajautustaulua. Ja hash table on sellainen mukava amalgaami array-- piirretään pystysuoraan täällä, vain because-- ja sitten liittyy list-- piirtää vaakasuoraan täällä. Ja tiiviste voi olla täytäntöön rypäleterttuja tavoin. Tämä ote oppikirja tapahtuu käyttää näiden ihmisten syntymäajat kuten keinot, joilla se päättää mihin jonkun nimi. Joten tämä on sanakirja jos te nimiä. Ja nopeuttaakseen laskemisesta nimet tähän tietorakenne, he katsovat, ilmeisesti, näiden ihmisten syntymäajat suhteen kuukaudessa. Joten se on 1-31. Ja unohtaa helmikuu ja kulma tapauksissa niin. Ja jos syntymäpäivä on tammikuun 1 tai 1. helmikuuta tai 1. joulukuuta aiot päätyä ensimmäinen ketju ylös. Jos syntymäaika on kuten 25. kuukauden, aiot päätyä klo kauhan numero 25. Ja jos siellä on jo joku siellä kaikissa niissä paikoissa, mitä alat tehdä nämä liittyvät luettelot on ompelemalla ne yhteen jotta voit olla mielivaltainen joukko ihmisiä, tai jotain, kyseisessä paikassa. Joten sinulla on sellainen yhdistelmä vakio aikaa hajautus. Ja hash jotain merkitsee ottaa syötteenä kuin henkilö, tai hänen nimensä, tai hänen syntymästään päivämäärä, ja sitten päättää joitakin ulostulo perustuu tähän, kuten katsomalla heidän syntymäpäivä ja lähtönä yksi kautta 31. Joten niin saatat olla vähän lineaarisen ajan, mutta todellisuudessa, ja kuten tapauksessa ongelma asettaa viisi, emme aio olla työskentelevät P asettaa viisi niin paljon asymptoottinen käynnissä aika, kuten teoreettinen hitaus jolla algoritmin voi ajaa. Aiomme välitä todellinen määrä sekuntia ja todellinen määrä muistia, todellinen määrä tavua muistia käytät. Joten rehellisesti, jossa on yksi valtava ketjun kuin miljoona ihmistä on pirun hidas Jos etsit Nimen luettelon koon miljoonaa. Mutta mitä jos jaat että lista ylös 31 osaan? Haetaan 1/31 kyseisen erittäin pitkä lista, todellisuudessa, on varmasti olemaan nopeampi. Asymptoottisesti, se on sama asia. Olet vain jakamalla vakiokertoimella. Ja muistuttaa, että me heittää nämä asiat pois. Mutta todellisuudessa, se on menossa olla 31 kertaa nopeampi. Ja sitähän me aiomme alkaa vaikutusvaltaansa P asettaa viisi. Joten P asettaa viisi liian myös ehdottaa, että pidätte hieman kehittyneempiä datarakenne kutsutaan trie. Ja triestä on vain puu kuten tietojen rakenne. Mutta sen sijaan, vähän ympyröitä tai suorakulmioita kun pidämme piirustus keskuksille, se todella on koko paneelit sen solmuja. Ja vaikka tämä on bittinen abstrakti täällä katsomaan, Zamyla P joukko kävellä kautta käydään läpi tarkemmin tästä. Tämä on tietorakenne että melko taitavasti ehkä kukin solmu on array koon 26, A-Z tai nolla kautta 25. Ja kun haluat lisätä henkilön nimetä tähän tietorakenne tai löytää häntä, mitä teet, jos nimi on kuin Maxwell, M--X-W-E-L-L, ensin katsoa M. Ja sitten hypätä vastaavaksi M Sijainti ensimmäisessä jono. Sitten hyppää, ensimmäinen paikalla seuraava array, seuraava nuolia. Niin X, sitten W, niin E, niin L, sitten L, ja sitten ehkä joitakin erityisiä loppuun merkki, jotkut Sentinel joka sanoo sanan pysähtyy täällä. Ja mikä on mukavaa noin this-- ja pitää mielessä, että kuva täällä, huomaa, miten reunat jokainen array leikataan pois. Se on vain, koska tämä asia olisi massiivinen ja hirvittäviä katsomaan klo ruudulla. Joten se on lainattu. Mikä on mukavaa noin tämä lähestymistapa on että jos on miljoona nimet jo tässä tietorakenne, kuinka monta askelta se vie minut lisätä Maxwell? M--X-W-E-L-L-- kuin seitsemän-ish toimiin lisätä tai etsiä Maxwell. Oletetaan siellä biljoonaa nimet tässä tietorakenne. Kuinka monta askelta kestää minua etsimään Maxwell? M--X-- edelleen seitsemän. Ja siinä piilee niin kutsuttu vakio ajan. Jos oletamme, että sanat ovat varmasti joka rajoittuu 20 merkkiä, tai 46 merkkiä, tai jotkut kohtuullisen pieni kokonaisluku, niin se on tehokkaasti vakio. Ja niin paikoilleen ja etsivät trie on huippunopea. Tietenkin, emme koskaan saada mitään ilmaiseksi. Ja vaikka luultavasti eivät ole sukeltanut P asettaa viisi vielä, mihin hintaan me luultavasti maksamme saat että tehokkuutta aika viisas? Yleisö: Muisti. DAVID J. MALAN: Memory, eikö? Tarkoitan, olemme ole laadittu koko kuva täällä. Tämä ote oppikirja ei ole laatinut kaikkia taulukot. Siellä on valtava määrä muistia ja vain null viitteitä, joita ei käytetä. Joten se on kaupan pois. Ja se tulee jättää sinulle P asettaa viisi päättää mihin suuntaan haluat mennä. Nyt tämä ajatus hajautuksessa kuten syrjään, on itse asiassa erittäin yleistä. Niin hash arvo tarkoittaa, melko yksinkertaisesti, ottaa jotain syötteenä ja tuottaa tuotos. Joten hash funktio on vain algoritmi. Ja yleensä, hash toimintoja varten elämässä on ottaa jotain syötteenä ja tuottaa useita tuotokseksi, kuten numero yksi läpi 31 tai A-Z, nolla kautta 25. Joten se vie monimutkainen tuotos ja kutistuu sen alas jotain että on hieman enemmän hyödyllisiä ja hallittavissa. Ja niin se kääntyy pois erittäin suosittu toiminto että turvallisuus maailma ja ihmisen maailman käyttänyt vuosia kutsutaan SHA1. Tämä on aika hieno matemaattinen kaava, joka ei olennaisesti että. Otat todella iso murikka nollia ja ones-- että voisi olla megatavun pitkä, gigatavu long-- ja se kutistuu sen alas vain muutama bittiä, muutama bittiä, niin että sinulla on useita kuten yksi kautta 31, tai Z. Mutta todellisuudessa, se on vähän isompi kuin vain kautta Z. Valitettavasti olemme partaalla mitä joku leikkisästi kutsutaan SHAppening jolloin maailma on aikeissa päättyvät todennäköisesti muutaman kuukauden aikaa, koska tutkijat, juuri viime viikolla, julkaisi raportin, joka vastoin mitä tietoturva-asiantuntijat ovat ajatelleet jonkin aikaa, vain hieman menoja noin, mitä se oli, Minusta se oli $ 175,000-- paljon rahaa, mutta ei ulottumattomissa erityisen huono roistoja, tai erityisen huono countries-- $ 175,000 voisi ostaa sinulle paljon vuokra-palvelimen tilaa pilvi. Ja me palaamme pilvi ennen pitkää. Mutta se vain tarkoittaa vuokrata palvelimen tilaa kuten Microsoftin palvelimia, tai Googlen tai Amazon, tai kuten missä voit maksaa minuutti käyttää jonkun toisen tietokoneita. Ja se osoittautuu, jos voit maksaa joku muu lainata heidän tietokoneensa ja suorittaa koodia että olet kirjoittanut sitä ja käyttää melko fancy matematiikka, voit lähinnä kuva miten jonkun hash-funktio on työ, ja koska sen teho, purkaa mikä sen panos on. Ja nykypäivän tarkoituksiin, on riittävää todeta, tämä on huono. Koska SHA1 ja hash toimintoja kuten se on erittäin yleisesti käytetyt turvallisuussovelluksissa, Salattujen yhteyksien verkossa, pankissa, solu salaus sinun matkapuhelimet ja vastaavat. Ja niin tahansa joku löytää tapa kääntää insinööri yksi näistä teknologioista tai rikkoa sitä, huonoja asioita voi tapahtua. Nyt maailma jo tiesi tämän. Tämä oli ennakoitavissa. Ja maailma on sittemmin muutti SHA1 ja SHA256, joka on vain hieno tapa sanoen että he käyttävät suurempia bittiä. Ja itse asiassa jopa CS50 oma sivusto päivitetty viime vuonna to-- ei että me kohdata kaikki tämä paljon uhkia yrittää saada at PDF ja whatnot-- mutta CS50 sivustolla käyttää isompi hajautusfunktio, mikä tarkoittaa, että me olemme turvassa. Joten kaikki PDF on turvallinen, mutta ei välttämättä rahaa tai mitään erityisesti yksityinen tai henkilökohtainen käyttää. Sp tarkista, että URL-osoite, jos haluat kuten jotkut lisätietoja. Joten ongelma asettaa viisi on todellakin horisontissa. Tietokilpailu yksi on tulevana keskiviikkona. Mutta älä hyödyntää toimisto tuntia, molemmat tänään ja huomenna. Ja myös hyödyntää virka, jos olet käytettävissä, heti tämän. Henkilökunta ja minä kiinni ympäri ja tehdä rento Q & lisäksi tänä iltana. Ja haluan voimakkaasti huomata tässä, sillä ne meistä täällä New Haven-- joten se on täysin kohti Scaz n huomautuksia tuntui, olen varma, kuten hieman vaivalloinen. Ja maine, jos eivät ole oppineet jo tai kuulleet joidenkin ystävien Harvardin, tietää tässä on joitakin uusia institutionaalinen muisti. P asettaa viisi sellaista tavallaan yleensä vaikeinta CS50, tai haastavin useimmille opiskelijoille. Mutta mitä se tarkoittaa, että olemme melkein huipulla tämän kukkulalla. Ja minä todella tarkoitan tätä. Se on kaikkein haastava, mutta se on myös palkitsevinta että toisin kuin useimmat kaikki muut johdanto tietojenkäsittelytiede kurssi Yhdysvalloissa että tiedämme, useimmat opiskelijat eivät loppuun intro Tietenkin oli jo toteutettu asioita, kuten puita, ja yrittää, ja hash taulukoita, ja vastaavat. Ja niin Toivon, ja toivomme, että olet on valtava tunne tyytyväisyys jopa jos viikon tai kaksi, jonka kautta saat että tyytyväisyys ei tuntuu vähän kuin tämä. Mutta haluan vakuuttaa, me vain neljä P sarjaa jäljellä. Niin sellainen, että alkuun on näköpiirissä. Toisaalta se, luottavat meihin, se on vain mäkiä ja pilviä. Ja sanokaamme, pennut ovat toisella puolella. Joten sinun tarvitsee vain ripustaa siellä hieman kauemmin. Tarkoitan, todellakin kuin alamme siirtyminen maailmaan Web-ohjelmointi, huomaat, että asiat become-- tämä on ihana todella. OK, me lähettää tämän URL myöhemmin. Löydät myös, että olemme saavuttaa eräänlainen tasanne jossa kaikki on todellakin yhä hienostunut ja haasteelliseksi suunnittelu, mutta et ole menossa tuntuu olemme alati nousevat tätä mäkeä. Joten kestää jonkin mukavuutta että. Joten pitemmittä puheitta, aloitetaan jotta markkinoiden siirtyminen on lukukauden maailmaan Web, ja todella maailma jolla kaikki meistä ovat tuttuja. Meillä Internet-päätelaitteille meidän taskuihin, meidän työpöydät, meidän reput ja vastaavat. Miten tämä kaikki toimii? Ja miten voimme alkaa kirjoittaa koodi, joka ei ole Super mystistä ja joissakin vilkkuvan tekstin nopea että mikään ystävien tai perheen ikinä halua vuorovaikutuksessa kanssa, mutta jotain voi laittaa omassa puhelimessaan, tai niiden selaimet, tai millä tahansa laitteita jossa ne ovat vuorovaikutuksessa. Joten tässä on jonkun kotiin. Ja sisällä tämä koti on pari kannettavat tietokoneet, pari vanhaa koulun työpöydän tietokoneet, jota kutsutaan reititin tai keskitin keskellä, ja sitten jonkinlainen kaapeli- tai DSL-modeemiin. Ja sitten on internet, yleensä piirretty pilvi siellä taivaalla. Joten tämä kuva, vaikka pieni eräänlainen päivätty, varmasti kaappaa mitä useimmat sinulla todennäköisesti on omassa kodeissa, tai tehokkaasti mitä teillä kaikilla on teidän asuntolan huoneissa, tai asuntoja, tai vastaava. Joten mitä todella tapahtuu, kun yrität käyttää Internetissä tänään? Joten jokainen tietokone Internet, se kääntyy pois, on oltava oma osoite, aivan kuten me todellisessa maailmassa tarvetta postiosoite, kuten 51 Prospect Street, New Haven, Connecticut, tai 33 Oxford Street, Cambridge, Massachusetts. Niin tietokoneet Internetissä tarvitset tapa ainutlaatuisen puuttua itse. Tämä on niin, että kun yksi tietokone haluaa puhua toiselle, se voi lähettää viestin ja ilmoittavat tästä vastaanottajalle, jolle se pitäisi lähettää vastauksen takaisin. Niin se vain tekee eräänlainen intuitiivinen tunne ehkä että kaikki on osoite jonkinlaisia. Mutta miten saat osoitteen? No, jos saat täällä kampuksella, tai voit mennä kotiin ja kun käynnistät kannettavan tai pöytätietokoneen, ja joko kytke se tai yhteyden Wi-Fi, käy ilmi, että on olemassa erityinen palvelin useimmissa verkoissa kutsutaan DHCP-palvelin. Ei ole väliä mitä tämä tarkoittaa, mutta se on Dynamic Host Configuration protokolla, joka on vain hieno tapa sanoa, tämä on tietokone että joko Yale on, tai Harvardin on, tai Comcast on, tai Verizon on, tai yrityksesi on, jonka tarkoitus elämässä, kun se kuulee joku hiljattain lisätty verkkoon, eli täällä, Käytä tätä osoitetta. Joten me ihmiset ei tarvitse kova koodi tietokoneita mitä ainutlaatuinen osoite on. Me vain kääntää sen, avaa kansi, ja jotenkin tämä palvelin lähiverkossa vain kertoo minulle, että osoitteeni on 51 Prospect Street, tai 33 Oxford Street, tms. Nyt se ei aio niin monisanainen kuin. Pikemminkin mitä aion saada on numeerinen osoite kutsutaan IP-osoite. IP eli Internet Protocol. Ja kertoimet ovat tällä kertaa elämässäsi, olet luultavasti kuullut tai nähnyt sanan IP, tai yleensä heitetään se ympäri ehkä. Mutta itse asiassa, se on melko suoraan eteenpäin asia. IP-osoite on vain pistein eroteltu numero, mikä tarkoittaa että se on jotain piste jotain piste jotain piste jotain. Ja jokainen näistä somethings tapahtuu olla numero välillä 0 ja 255. Joten perustuu viiden plus viikon CS50, jos nämä luvut kukin alue 0-255, kuinka monta bittiä on kukin Näiden määrä merkkejä? Yleisö: Kahdeksan. DAVID J. MALAN: Sen täytyy olla kahdeksan. Joten yhteensä, kuinka monta bitit on IP-osoite? Yleisö: 32. DAVID J. MALAN: Niin 32. 8 + 8 + 8 + 8 on 32. Kuinka monta yhteensä IP-osoitteita voiko olla maailmassa? Yleisö: 4000000000. DAVID J. MALAN: So noin neljä miljardia koska se on 2 32 teho. Ja jos et voi tavallaan grok että mielessäsi, juuri tietää, että 32-bittisiä arvoja voi olla yhtä suuri kuin 4000000000 jos se on kaikki positiivisia arvoja. Niin se tarkoittaa, on olemassa 4000000000 mahdollinen IP-osoitteet maailmassa. Ja hauska tarina, olemme laji loppumassa niistä. Ja itse asiassa se on valtava ongelma, että maailma näki myös tätä ongelmaa tulossa, mutta ei välttämättä ole vastannut se nopeimmin mahdollisella tavalla. Ja todellakin, kun olet päättynyt CS50 ja alkoi kiinnittäen huomiota tech maailma, luultavasti katso tämä on hyvin yleisesti temaattinen. Jos esimerkiksi menemme todella old school nykyään, Y2K. Se ei ollut oikeastaan ​​yllätys. Kuten kaikki tiesivät varten 1000 vuotta, että was-- yli tuhat years-- joka että lopulta tulee tapahtumaan. Ja vielä, me vastannut sen hyvin paljon viime hetkellä. Ja että tapahtuu uudelleen. Joten tänään me puhumme IP-version 4. Mutta tiedämme, että maailma on vihdoin noin päivittämistä jotain kutsutaan IPv6, joka sijaan 32-bittinen osoitteet, uses-- kukaan haluavat ottaa arvata, kuinka monta bittiä? Yleisö: 64? DAVID J. MALAN: Hyvä arvaus, mutta ei. Olemme vihdoin yrittää päästä eteenpäin käyrä. Yleisö: 128. David J. MALAN: 128, joka on luonnonoikku valtava määrä IP-osoitteiden, koska se on kuin kertaa 2 kertaa 2, kertaa 2, paljon kertaa kaksittain ylös 4000000000. Joten jos utelias. Se kääntyy out-- ja minä vain googled tämä löytää tämän out-- Yale tietokoneet, täällä Yalen, yleensä aloittaa nämä numbers-- 130,132 piste jotain, ja 128,36 piste jotain. Mutta on varmasti poikkeuksia kautta linjan riippuen siitä, mitä osastolla ja rakennus ja kampuksen olet. Harvardin on yleensä 140,247 tai 128,103. Ja yleensä tämä on hyödytöntä tietoa, mutta se on jotain saatat huomata nyt. Kun aloitat tönäisi ympäri asetukset tietokoneiden, saatat alkaa huomata nämä erilaisia ​​kuvioita ennen pitkää. Mutta kun olet kotona ja on Applen AirPort tai Linksys laite, tai D-Link, tai mikä se on vanhemmillesi tai sisaruksia asennettu talosi, hyvin mitä olet todennäköisesti on mitä kutsutaan yksityinen IP-osoite. Ja nämä olivat itse asiassa mukava, väliaikainen ratkaisu ongelmaan käynnissä lyhyt IP-osoitteisiin. Ja mitä voit tehdä kotiverkoissa, typically-- ja rehellisesti, jopa Yale ja Harvardin alkavat tehdä tämän eri areas-- on sinua voi antaa koko joukko tietokoneita yksi IP-osoite niin kauan kuin laitat erityinen laite niiden edessä, jotain kutsutaan reititin, tai sitä voidaan kutsua välityspalvelimen tai useita muita asioita. Mutta tietty laite, joka on että yksi IP-osoite. Ja sitten takana laite, rakennuksen sisällä, sisällä talossa tai asunnossa, voi olla mikä tahansa määrä tietokoneita, jotka kaikki on IP-osoite, joka alkaa yksi näistä numeroa täällä. Ja niin kauan kuin tietokone osaa muuntaa julkinen osoite yksityisen osoitteen, kaikki voi lajitella työtä odotetusti. Mutta päinvastainen, on, että jos olet kotona ja sinulla on sisarus, ja molemmat olette vierailevat joitakin verkkosivuilla, että sivusto ei tiedä, jos se olet sinä tai sisarus vierailevat sivustolla, koska näytätte olevan samaa henkilö koska kaikki tiedot eletään että reititin tai että keskipiste. Mutta tarpeeksi seuraavilla alemman tason tiedot. Katsotaanpa katsomaan miten IP-osoitteita joskus keksiä ehkä tiedotusvälineissä ja miten voimme nyt alkaa pilata, rehellisesti, jopa enemmän näyttää sinulle. Jos voisimme himmentää valot muutaman sekunnin. [VIDEOTOISTOSTA] -Se On 32-bittinen IPP 4 osoite. -IP ES internet-- Ja yksityisen verkon, Tamia yksityisen verkon. Hän on niin uskomaton. -Come Charlie. DAVID J. MALAN: Se peili IP-osoite. Hän saimme katsella joka hän tekee reaaliajassa. [Lopeta toisto] DAVID J. MALAN: OK. Joten muutamia ongelmia tämän. Joten, mitä me etsimme klo täällä ruudulla on koodi kirjoitettu kieli kutsutaan Objective-C, joka on tavallaan jatkoa C-kielellä, että teemme. Tämä ei ole mitään tekemistä ohjelmointi. Itse asiassa, koska paras voin kertoa, tämä on piirto-ohjelma että joku ladata Internet jotenkin liittyy värikyniä. Ehkä vähemmän törkeä on, että Tässä IP-osoite, pätevä tai virheellinen? Yleisö: Virheellinen. DAVID J. MALAN: virheellinen, koska 275 on, tietenkin, ei välillä 0 ja 255. Sekin on luultavasti ok kuitenkin, koska et halua joukko hulluja ihmisiä jotka ovat kuin pysähtyen tv niiden TiVos ja sitten vierailulla IP nähdä jos on todella jotain siellä. Niin, että yksi on hieman vähemmän törkeä. Mutta ymmärtää, että liian on eräänlainen kaikkialla ympärillämme. Niin tietenkin, kukaan meistä koskaan todella tyyppi numeerinen osoitteita meidän selaimissa. Olisi sellainen huono asia jos Google, käydä Google, sinun piti mennä 123.46.57.89. Ja koko maailma oli vain muistaa, että. Ja rehellisesti, olemme laji on nähnyt tämän asian ennen. Back in päivä, jolloin ihmiset eivät ovat matkapuhelimet ja yhteystietoja, ja yritykset todella still-- todella, Luulen yrityksillä on edelleen 800 numeroita ja like-- mutta yleensä nähdä numeroita mainostetaan kuten 1-800-COLLECT, C-O-L-L-E-C-T. Koska kukaan ei voi oikeastaan ​​muista, nähdessään mainos bussissa tai mainostaulu, mitä joku numero on, mutta ne voivat todennäköisesti korkeammat todennäköisyys, muistaa sana. Joten hyväksyimme sama Tällainen järjestelmä maailmassa Internetin jolloin siellä verkkotunnus järjestelmä niin, että me ihmiset voivat Kirjoita google.com, facebook.com, yale.edu, harvard.edu, ja anna tietokoneet kuva mitä vastaavan IP osoite on etunimi. Ja miten teet tämän Todellinen maailma on, että $ 10 vuodessa, ehkä 50 $ vuodessa, voit ostaa verkkotunnuksen nimi tai oikeastaan ​​vuokrata verkkotunnus. Ja sitten joku maksat vuokrata että verkkotunnus, kerrot heille kuka maailmassa tietää, mitä IP-osoite on. Ja me ei mennä näitä tiedot, mutta monet teistä kannattaa, lopullista hankkeita, todella rekisteröityä oman web hosting yritys, joko ilmaiseksi tai muutaman dollarin kuukaudessa. Jotkut kannattaa ostaa, sillä muutaman dollarin, oma verkkotunnus, huvin tai aloittaa liiketoimintaa tai henkilökohtaisen sivuston tai vastaavaa. Ja ymmärtää, että kaikki ja joka lopulta pohjimmiltaan kerrot maailmalle mitä IP-osoite on. Ja sitten nämä DNS palvelimet todella huolehtia tiedottaa muun maailman. Joten kaikki DNS-palvelimen on, lyhyesti sanottuna, sisällä sen muisti on kuin vastaa Google-taulukko tai Excel vähintään kaksi saraketta, joista yksi on nimiä, kuten harvard.edu, ja yale.edu, ja google.com. Ja muut sarake on vastaava IP-osoite tai IP- osoitteet. Ja voimme todella nähdä tämän. Joten minun Mac-- ja voit tehdä tämän Windows-tietokoneissa kuten well-- jos minä avata terminaali-ikkuna täällä, aivan kuten yksi CD50 IDE, Useimmissa tietokoneissa on komento nimeltään nslookup, nimipalvelin etsiä. Ja jos kirjoitan jotain kuten yale.edu ja paina Enter, mitä Haluan nähdä, jos verkko toimii kuin se teki useita testejä ennen luokan began-- Kokeillaan google.com. Tietenkin nyt mitään toimii. Sepä hienoa. Selvä, valmiina hetkeäkään. nslookup google.com. No, katsotaanpa jos Varsinainen internet-- ei. Se mitä tapahtui. Voi luoja, kaikki hyvin. Wi-Fi hajosi. Hei, haluamme tietää, mitä minun IP-osoite on? Selvä. YaleSecure. Näin voit vianmääritys asioita kuin tietojenkäsittelytieteessä. Me puolestaan ​​Wi-Fi pois. OK. Ja todella, Scaz, älä viitsi kirjautumalla meille suojattuun yksi? Muuten lisää testejä are-- OK, kiitos te Yale-- tai on noin murtaa. Haluan mennä YaleSecure. Niin, ja ehkä me olla OK. Ehkä olemme takaisin. Ja siitä, kun tietokone tiedemies korjata tietokoneen. [APPLAUSE] Selvä. Joten missä olin tässä ns pääteikkunaa ja jos en nslookup yale.edu, siellä mennään. Niin saan takaisin ensimmäinen IP-osoite DNS-palvelin, joka minun laptop käyttää. Joten lisäksi DHCP-palvelin, puhuimme hetki sitten kertoo my laptop, mitä minun IP osoite on, että DHCP-palvelin myös kertoo minulle, mitä DNS-palvelimen käyttää. Muuten olisin käsin kirjoittaa tätä. Mutta ei siinä kaikki, kiinnostava. Mitä Välitän vain, että tämä on IP-osoite Yalen verkkosivuilla ilmeisesti. Joten itse asiassa yritetään tätä. Päästä minut ylös selain ja siirry http: //, ja sitten että IP-osoite, ja paina Enter. Ja anna meidän nähdä. Näin muuten voit käy Yalen verkkosivuilla. Nyt se ei ole kaikki, että ikimuistoinen. Kuten, pre-Frosh luultavasti eivät tule muistaa tässä osoite jos kertonut käydä siellä käytyäni. Mutta se ei näytä toimivan. Ja niin DNS oikeastaan ​​vain antaa meille mahdollisuuden on paljon enemmän ihmisen ystävällinen osoitteita. Mutta ne eivät välttämättä vain tuottaa yhden vastauksen. Itse asiassa, kun olet todella iso teknologian yritys, haluat luultavasti on paljon palvelimia. Ja vaikka tämä on harhaanjohtava. Joten Yale luultavasti ei on vain yksi web-palvelin. Google todennäköisesti ei ole vain 10 tai niin web-palvelimia. Google erityisesti luultavasti on tuhansia web-palvelimia ympäri maailmaa, jotka voivat vastata pyyntöihin ihmisiä kuin me. Mutta he myös käyttävät tekniikkaa kutsutaan kuormituksen tasapainotus, joka pitkän tarinan lyhyesti, on vain muutamia laitteita maailmassa Tasainen useammassa palvelimia. Joten se on ikään kuin hämähäkinverkko jos voit lähettämistä pyyntöjä. Mutta nyt kaikki se kiinnostavaa tänään on, että verkkotunnus kuten google.com edes voi on useita IP-osoitteita niin. Mutta miten meidän kaikkien tiedot tosiasiallisesti saada edestakaisin sitten lopulta? No, käy ilmi, että on olemassa näitä asioita kutsutaan reitittimet internetissä. Ja mikä on reititin määrin, että tiedät jo? Ja olen käyttänyt sanaa pari kertaa yhteydessä kotiin, mutta yksinkertaisesti, Mitä reititin tekee? Anna minulle vain arvaus perustuu sen nimi? Yleisö: Niin tie tai polku? DAVID J. MALAN: Niin se tie tai polku. Joten reitti on tie tai polku, ehdottomasti. Ja reititin, niin laite, joka todella reitit tiedot, olisi siirtää tietoja välillä A ja B Ja niin fact-- ja tämä on ehkä kun te Google kuvauksia reitittimet maailmanmarkkinoilla, kaikki saat ovat cheesy markkinointi kaavioita. Ja niin tämä on tavallaan kaikkein edustaja yksi voisin löytää joka näytti lievästi mielenkiintoinen. Kukin näistä pisteitä tai kimmeltää toivoa ympäri maailmaa edustaa reititintä. Ja jokainen niistä on viiva välillä joitakin muita reitittimen. Koska todellakin, siellä tuhansia, luultavasti miljoonia reitittimet ympärillä maailma, joista jotkut ovat kodeissa ja meidän kampuksilla, mutta paljon joka omistaa suuryritykset ja on liitetty toisiinsa siten, että jos en haluat lähettää joitakin tietoja täältä Yalen takaisin kotiin Cambridge, Yale luultavasti ei ole yhdellä kaapelilla, varmasti, menemällä suoraan Harvardiin. Ja Yale ei ole yhden kaapelin menossa MIT, tai Stanfordin, tai Berkeley, tai Google, tai useita kohteita. Pikemminkin, Yale ja Harvard, ja kaikki muut Internetissä ei olla yksi tai useampi reitittimet yhteydessä siihen, ehkä kehällä kampuksella. Niin että kun tietoni haluaa jättää Yalen kampuksella, se menee että lähimpään reitittimeen, kuten on esitetty yksi näistä pisteitä. Ja sitten, että reititin luvut, onko lähettää sen tällä tavalla, tai tällä tavalla, tai tällä tavalla, tai tällä tavalla perustuu toista taulukko muistiinsa, toinen Excel-tiedosto tai Google taulukkolaskenta että yhdessä sarakkeessa sanoo, jos IP-osoite alkaa kanssa numero yksi, mennä tällä tavalla. Jos IP-osoite alkaa numero kaksi, mene näin. Ja niin voit rikkoa sen alas numeerisesti olla reititin lähettää tiedot joka suuntaan. Ja voimme sellaista nähdä tämän hyvin. Mennään eteenpäin tähän terminaaliin ikkunaa uudelleen, ja anna minun mennä eteenpäin ja jäljittää reitin, sanotaanko, www.mit.edu, joka on parin sadan kilometrin päässä. Se oli todella pirun nopeasti. Mitä juuri tapahtui? Joten vain seitsemän vaihetta, ja vain neljä millisekuntia, Lähetin tiedot Internetissä täältä Yalen MIT. Kukin näistä riviä, voit ehkä arvata nyt edustaa mitä? Yleisö: reititin. DAVID J. MALAN: reititin. Joten todellakin, se näyttää siellä noin seitsemän tai niin reitittimet, tai kuusi reitittimet välillä minut fyysisesti Yale lain koulun täällä ja MIT: n verkkosivuilla tuolla. Ja mitä voimme poimia tästä on kuten follows-- ja haluan puhdistaa sen. Aion uusintana se komennolla argumentti on -q 1 vain sanoa, anna minulle yksi kysely. Oletuksena, jäljittää reittiä ei kolme. Ja siksi näimme rypäleterttuja numeroita. Haluan nähdä vähemmän numeroita vain pitää tuotannon puhtaampaa. Ja katsotaan mitä tapahtuu. Niin jostain syystä, joku Yalen ajatus se olisi hauska kutsua sitä oletusreititin arubacentral, joka on VLAN tai virtuaalinen LAN, virtuaalinen lähiverkon verkko 30-- joten sinun todennäköisesti on ainakin 29 others-- router.net.yale.internal. Ja .internal tässä eräänlainen fake aluetunnus tarkoitettu käytettäväksi vain kampuksella. Ja huomaa vastaavan IP-osoitteen Kyseisen reititin, missä se on täällä kampuksella, on 172.28.204.129. Ja se kesti 36 millisekuntia mennä täältä sinne. Hauska tarina. Palaamme tähän vain hetken. Mutta nyt toinen router-- on joka arubacentral ilmeisesti on jonkinlainen fyysinen yhteys useimmat likely-- ihmisillä ei haitannut sen nimestä. Yale ihmiset eivät vaivautuneet nimeäminen koska se on sisällä verkon näyttää. Ja niin se vain on IP-osoite. Mutta sitten kolmas reititin täällä Yale verkkoon se on todennäköisesti hieman kauempana vielä kutsutaan cen10g riippumatta joka on asr.net.yale.internal. Ja sekin on IP-osoite. Nyt Miksi nämä numerot Tällainen vaihteleva? 2.9, 1.4, 36? Reitittimet hommiin. Ja he saavat ruuhkainen ja varmuuskopioidaan. On tuhansia ihmisiä tällä kampuksella käyttäen Internetissä juuri nyt. On sata ihmistä tässä huone käyttäen Internetissä juuri nyt. Ja niin mitä tapahtuu on, että reitittimet saattaa saada ruuhkainen. Ja niin ne ajat pitää vaihdella hieman. Joten siksi ne eivät välttämättä kasvaa suoraviivaisesti. Mutta asiat saavat sellaista mielenkiintoinen vaiheessa neljä. Ilmeisesti välillä Yale ja vaihe neljä on toinen hop. Ja jossa on reititin vaiheessa neljä luultavasti? Yleisö: [äänetön] DAVID J. MALAN: JFK ehkä, ehkä lentokentällä. Mutta jostain syystä, järjestelmänvalvojat, joten nörttejä, jotka toimivat palvelimet vuotta on nimetty reitittimet jälkeen lähimmälle lentokentälle koodi. Joten JFK luultavasti tarkoittaa se on vain jonnekin New Yorkissa, ehkä Manhattanilla tai yksi boroughs. nyc2 tarkoittaa, oletettavasti, toinen reititin, joka on jossain New Yorkissa. En oikein tiedä, missä rivi kuusi on täällä, reititin numero kuusi. quest.net iso ISP, Internet palveluntarjoaja, joka tarjoaa Internet-yhteyden iso paikoissa kuten Yale ja muut. Ja sitten tämä viimeinen, se näyttää että MIT ei edes on oma verkkosivu Cambridge välttämättä, vaan he ovat ulkoistettu niiden verkkosivuilla, tai ainakin fyysisiä palvelimia, yritys nimeltä Akamai. Ja Akamai todella on alas tie MIT Cambridge se kääntyy pois. Mutta ymmärtää myös, että edes ajatellut aiot www.mit.edu, voisimme todella lähettää kaikkialla maailmassa. Ja katsotaanpa jonnekin muualla maailmassa. Anna minun mennä eteenpäin ja poista tämä näyttö ja sen sijaan jäljittää reittiä, vain kerran, joten kyselyn kerrallaan, www.cnn.co.jp, japanilainen kotisivu CNN, uutissivusto. Ja jos osuin Anna nyt, Katsotaan mitä tapahtuu. Olemme jälleen alkaen arubacentral. Me sitten menossa nimetön reititin, muutama. Joten kesti 12 humalanhankintaa päästä Japaniin tällä kertaa. Ja katsotaan, mitä voimme poimia. Niin sama hop, sama hop. Hieman eri nyt. Tämä yksi on mielenkiintoinen. Niin olen arvaamaan täällä, stamford1 on harvoista kaupungeista pois Connecticutissa myös. Nämä reitittimet rivillä kuusi ja seitsemän ei ole nimiä. Mutta tämä on tavallaan mahtavaa. Joten mikä näyttää olevan välillä reitittimet vaiheessa seitsemän ja kahdeksan? Ja Miksi sanot niin paljon? Joo? Yleisö: Ocean. DAVID J. MALAN: Luultavasti meressä. Tiedämme, että on totta kuten, intuitiivisesti, eikö? Mutta voimme vahvistaa niin paljon sellaista on eräänlainen empiirisesti miksi? Mikä on muuttunut välillä riviä seitsemän ja kahdeksan? Se vei paljon enemmän aikaa mennä mitä tämä nimetön reititin seitsemän on, luultavasti jossain Yhdysvaltojen mannermaan, vaiheeseen kahdeksan, joka on luultavasti jossain Japanissa perustuvat verkkotunnusta .jp siellä. Ja niin näitä ylimääräisiä sata jotain millisekuntia tai 90 tai niin millisekuntia on Tämän vuoksi meidän tietojen menossa yli melko runsaasti vettä. Nyt kumma, näyttää siltä, ​​että ehkä että kaapeli menee koko Yhdysvalloissa. Jos me todella menee yli West Coast päästä Japaniin, se on eräänlainen pitkälle jos me mennä toiseen suuntaan. Joten se ei ole täysin selvää, mitä tapahtuu fyysisesti. Mutta se, että jokainen lisää hop todellakin kesti huomattavasti kauemmin kuin joka toinen, se on melko hyvä vahvistus, että CNN: n Japanin web-palvelin on luultavasti todellakin Japanissa. Ja se on varmasti kauempana pois kuin MIT on ollut. Ja on syytä huomata myös, tietosi ei välttämättä aikovat matkustaa lyhimmän. Itse asiassa, jos pelaat noin jäljitetyllä reitti kotona vain poiminta satunnainen sivustot, voit voisi todeta, että vain lähettää sähköpostia tai vierailla verkkosivuilla se on täällä New Haven, joskus tietosi saattaa ensin ajaa kiertotietä, mene alas DC, ja sitten tulla takaisin ylös. Ja tämä on vain koska dynaaminen reititys päätökset että nämä tietokoneet tekevät. Nyt vain huvin, tuotanto joukkue lohkottu Yhden videon meille vain olla hieman suppeampi. Mutta antaa meille nopeasti mielessä here-- ja voimme jättää valot on-- siitä, kuinka paljon kaapelointi on tosiasiallisesti suorittaa kaikki meidän tietoja. [VIDEOTOISTOSTA] [Musiikkia] [Lopeta toisto] DAVID J. MALAN: Kaikki verkostoituminen videot on viileä kuulostava musiikki ilmeisesti. Niin, että saat vain tunnetta kuinka paljon on jatkunut alla huppu. Mutta katsokaamme hieman alemmalla tasolla nyt mitä tietoja on oikeastaan liikkumisesta ne linjat, ja jopa menee langattomasti Huoneeseen näin. Joten se kääntyy pois, kun pyydät web-sivun, tai lähettää sähköpostia, tai vastaanottaa web-sivun tai sähköpostiviestin, tai Gchat viestin, tai Facebook viesti, tai vastaava, joka ei ole vain yksi iso kimpale bittien virtaa langattomasti ilmassa tai sähköisesti lanka. Pikemminkin, että pyynnön tai vaste on yleensä chunked ylös erillisiin kappaletta. Eli toisin sanoen, kun on pyytää tekemään toiseen tietokoneeseen, tai saat takaisin vastauksen toisesta computer-- kuten olettaa, esimerkiksi, jos unfamiliar-- liian monta ihmistä näyttävät olevan näiden days-- jos tunne this-- ei tämä fellow-- tämä kaveri. Joten kai tämä on viesti, joka Haluan lähettää joku takaisin. Joka aivan takaisin haluaisi saada kuva Rick Astley tänään? OK, mikä on nimesi? Yleisö: Cole. DAVID J. MALAN: Mikä se on? Yleisö: Cole. DAVID J. MALAN: Holt? H-O? Yleisö: C-O-L-E. DAVID J. MALAN: C-O-L-E, Cole. Anteeksi. C-O-L-E. Selvä. Joten jos haluan lähettää Cole tähän kuva täällä, te tiedätte tämän on eräänlainen iso kuva, eikö? Tämä voisi olla muutama kilotavua, muutamia megatavuja, varsinkin jos se on korkea resoluutio. Ja en todellakaan halua lopettaa kaikki muutkin käyttämästä internetin vain kun lähetän tämän todella iso, korkea kuvanlaatu Rick Astley koko huoneeseen. Haluaisin tietosi jatkaa kulkevat verkon ja Wi-Fi- yhtä hyvin. Ja niin se tekee sense-- ja tämä on kerrytettävissä sähköisesti, ei niin paljon todellisessa maailmassa. Oikeastaan ​​tämä on menossa on useita merkityksiä jos otat minun ääni pois. Jos siis repiä tämän puolet näin täällä, tämä nyt voi matkustaa Internet tehokkaammin, koska se on pienempi pala. Joten pienempi todennäköisyys menee törmäävät jonkun toisen liikenne internetissä. Ja niin mitä tietokone todellakin tekee kun haluat lähettää viestin Cole on se paloina jopa tällaisen viestin osaksi pienemmiksi paloiksi, fragmentit niin sanoakseni. Ja sitten se asettaa ne sisällä mitä soitamme tavallaan virtuaalisen kirjekuoria. Joten minulla on neljä paperia kirjekuoria täällä. Ja olen pre-numeroitu niitä, yksi, kaksi, kolme ja neljä. Ja mitä aion tehdä edessä Tämän, aivan kuten normaali postitus, on Aion laittaa Colen nimi siellä. Ja sitten huipulla, olen aikoo laittaa nimeni siihen, David, niin että ensimmäinen tällainen paketti Lähetän siellä Internetissä näyttää vähän jotain Tämän keskeisiä ominaisuuksia joista ovat, että se on käsitellä, osoitteesta, ja myös useita, joten että toivottavasti on riittävästi tietoa Cole rekonstruoida tämän viestin. Joten anna minun tehdä sama täällä, sama täällä, ja sama täällä, kirjallisesti nimensä Kenttään ne kaikki. Ja sitten mennään eteenpäin ja laittaa nämä kuvat sisällä. Joten tässä on yksi paketti että on valmis menemään. Tässä on toinen paketti että on valmis menemään. Tässä on kolmas paketti että on valmis menemään. Ja tässä on neljäsosa paketti, joka on valmis menemään. Ja nyt, mitä kiinnostavaa miten Internet todellisuudessa töitä on se, että vaikka minulla neljä pakettia, jotka kaikki on tarkoitettu samaa sijainti, ne eivät ole välttämättä menossa kulkea samaa reittiä. Ja niin vaikka voisin ojentaa nämä paketteja lähimpään reitittimeen sanokaamme, jos haluat lähettää niitä joka suuntaan, katsotaanpa mitä todella tapahtuu, tavoite joka on saada heidät lopulta Cole. Ja todellakin, ne jo ole väistämättä ottaen samaan suuntaan. Ja se käy hyvin. Tämä on hieman hankala ja Oprah tyyli tänään. Ja nyt haluan tarkoituksellisesti menevät vielä takaisin. Ja nyt Cole, jos haluat koota sitä parhaanne. Tietenkin voimme kaikki arvata mitä johtopäätös täällä tulee olemaan. Olet menossa on 3/4 Rick Astley vain hetken. Ja mikä kuitenkin on seuraus, että? Haluatko yrittää pitää sen? Meillä on yksi kamera osoitti jos haluat poseerata Rick Astley täällä. Siellä mennään. Ihana. Mutta tunnut puuttuvan fragmentti Rick Astley. Joten käy ilmi, että internet- on perustuvat yleensä ole vain IP, mutta itse asiassa kuulimme hyvin alussa luento että video-- ja olet luultavasti nähnyt tämän lyhenne lisää often-- mitä todella on protokolla sinulla on tapana kuulla? Yleisö: TCP / IP. DAVID J. MALAN: TCP / IP, joka on vain yhdistelmä Kahden pöytäkirjat, yksi nimeltään IP. Joka taas on vain joukko yleissopimuksia jonka kautta me käsitellä kaikkia tietokone internetissä. Ja sitten TCP, joka palvelee toinen tarkoitus. TCP on protokolla, joka sinua tyypillisesti käyttävät yhdessä IP, että muun asioita, takaukset toimitus. Itse asiassa, TCP on protokolla, huomaisi, että yksi pakettien ilmeisesti ei saanut Cole, koska hän näyttää puuttuvan numero neljä neljästä. Ja niin mitä TCP, protokolla tekee, on se kertoo Cole, hei Cole, jos saat vain kolme neljästä paketteja, kerro kumpi puuttuvat lähinnä, ja sitten minun elämän tarkoitus olisi lähettämään uudelleen, että. Ja niin jos minäkin, lähettäjä, käytetään TCP, En pitäisi luoda uusi packet-- ei tämä ryppyinen yksi here-- uudelleenlähettää vain tämä pala se, niin että lopulta Cole on täydellinen matkamuisto, jos ei muuta. Mutta niin että lopulta tiedot tosiasiallisesti saa sen oikeaan määränpäähän. Mutta valitettavasti, kirjoittaminen Cole nimi edessä ei ole riittävä, sinänsä. Ja todella, en kirjoita Colen nimi, mutta luultavasti hänen IP-osoite kirjekuoreen. Enkä kirjoittaa David. Olin kirjoittaa minun IP-osoite kirjekuoren niin että tietokoneet voivat todella kommunikoida edestakaisin. Mutta käy ilmi, että tietokoneet voi tehdä paljon enemmän kuin tarjoilla kuvia Rick Astley. He voivat myös lähettää ja vastaanottaa sähköposteja, chat-viestejä. He voivat tehdä asioita, kuten tiedostojen siirrot, ja useita muita työkaluja käytät internetissä, palvelimet voivat tehdä näinä päivinä. Ja vain siksi yhtiö, tai koulu, tai henkilö haluaa olla web-palvelimen, ja sähköpostipalvelimen, ja chat-palvelimeen, ei tarkoita, että kolme tietokonetta. Voit olla vain yksi tietokone käynnissä useita palveluja, niin sanoakseni. Ja niin kun Cole saa viesti niin, miten ei hänen tietokone tiedä onko osoittavat, että kuva hänen selain, tai Gchat, tai Facebook Messenger, tai useita muita työkaluja? Joten se kääntyy pois myös, että kuten kirjekuori on ylimääräistä pala Tietojen tunnetaan portin numero. Ja portin numero on vain numero todellakin, mutta se yksilöi ei tietokone, mutta palvelu. Ja siellä on rypäleterttuja näistä. Joten käy ilmi, että maailmassa, ihmiset ovat päättäneet muutamia tällaisia yleissopimukset, joista osa on näistä. Joten siellä on jotain kutsutaan File Transfer Protocol. Se on aika päivätty. Se on täysin epävarma. Monet ihmiset silti käyttää sitä. Ja se käyttää porttia numero 21. Toisin sanoen, jos lähettämällä tiedosto FTP, kirjekuori olisi paitsi lähettäjän ja vastaanottajan IP-osoite, se olisi myös numero 21 niin että vastaanottava tietokone tietää Oh, tämä on tiedosto, ei sähköpostia tai chat-viestin. 25 on SMTP. Kuinka moni teistä on koskaan käyttänyt SMTP? Väärässä. Lähes kaikki teistä. Jos olet koskaan käyttänyt sähköpostia, olet käyttänyt SMTP, Simple Mail Transfer Protocol, joka on vain hieno tapa sanoa, tämä on sen tyyppinen tietokone tai palvelun joka lähettää sähköpostin lähtevän. Ja jos olet koskaan nähnyt lyhenteitä kuten POP tai IMAP, ja siellä on muutamia muita, ne ovat vastaanottamiseksi sähköposti, tyypillisesti. Se vain tarkoittaa että se on eri palveluntarjoajien. Se on ohjelmisto, että joku kirjoitti, että lähettää tai kuuntelee tiettyyn portin numero niin että se ei sekoita sähköpostit joidenkin muiden tietojen tyyppi. Nyt Web on HTTP, joka on numero 80, ja myös portti 443. Ja itse asiassa, vaikka Me ihmiset onneksi ei tarvitse tehdä tätä, tahansa käyt verkkosivuilla kuten http://www.yale.edu, selain on vain olla sellainen hyödyllistä, että se on olettaen että haluat numeerista portti 80. Tiedämme jo, että DNS voi selvittää mitä IP-osoite on www.yale.edu. Mutta tietokone on vain menossa päätellä että olet haluavat portti 80, koska käytät Kromi, tai IE, tai jokin muu selain. Mutta voisin teknisesti tehdä paksusuolen 80. Ja sitten voin nimenomaan kertoa selaimessa, lähettää paketin tai enemmän Tietojen www.yale.edu pyytävän tänään kotisivun. Mutta erityisesti, osoite se Yalen IP satamassa 80 niin että olen itse saada takaisin Yalen web-palvelin. Nyt se välittömästi katoaa koska selaimet vain päättää, että emme täytyy sekoittaa ihmisille ottaa vielä mystistä tietoja, kuten paksusuolen 80. Ja rehellisesti, selaimet kuten Chrome ei edes näyttää HTTP enää, tai paksusuolen, tai slash slash tai kenoviivaa, jossain mielessä, koska he yrittävät tehdä asioita yksinkertaisempi käyttäjille. Toisessa mielessä, se on vain eräänlainen käyttäjän kokemus thing-- Mennään eroon joistakin sotkua. Mutta se piileskelee joitakin Näiden taustalla tiedot. Ja itse asiassa, kukaan meistä luultavasti koskaan kirjoita http enää. Sinä vain kirjoittaa jotain kuten www.harvard.edu. Ja vielä, Chrome päättelee että haluat HTTP. Mutta on muitakin protokollia että voisimme varmasti käyttäen. Joten annetaan kaikki tämä, jos nyt lajitella ja laittaa ns engineering hattu, miten asiat kutsutaan palomuurit toimivat? Joten olet todennäköisesti yleensä tuntee palomuurin, ei niinkään fyysisesti. Joten takaisin seuraavana päivänä, ja vielä tänäkin päivänä, jos sinulla kuten nauhat ostoskeskuksia varten Esimerkiksi, että on paljon kauppoja, yleensä seinät välillä yksittäisten kauppojen tai kaupoissa ovat palomuurit siinä mielessä, että niillä on erityinen ääneneristys niin että jos tulipalo puhkeaa yhdessä osoitteessa, se ei välttämättä levitä kauppa vieressä. Tietokone maailmassa on myös palomuureja että tehdä jotain erilaista. Mitä tulipallo tekee? Joo? Yleisö: Periaatteessa he katkaisivat yhteyden jos he kohtaavat jotain kuten, esimerkiksi, heillä on useita id lausuntoja. Ja jos jotain tapahtuu, ne leikataan yhteyden. Kuten jos tämä hyökkäyksiä [Äänetön] tietokoneen, or-- DAVID J. MALAN: OK hyvä. Joo, ja itse asiassa olet jopa menee vähän kauemmaksi kuvauksessa jotain, joka voi olla kutsutaan tunkeutumisen havainnointi-järjestelmä, tai IDS lyhyitä, jolloin voit todella on vahvistamisessa. Ja jos et alkaa nähdä epäilyttäviä käyttäytyminen, yrität lopettaa se. Ja palomuuri, rehellisesti, klo verkostoituminen tasolla, on jopa dumber ja yksinkertaisempi kuin yleensä. Ja siellä on eri tyyppisiä palomuurit maailmassa. Mutta ne, jotka toimivat tasolla puhumme today-- IP ja TCP-- työskennellä entistä enemmän suoraviivaisesti. Esimerkiksi, jos olit Yale järjestelmä ylläpitäjät, tai Harvardin järjestelmä ylläpitäjät, tai jotkut Big Veli jossain yritys, ja halusi estää kaikki opiskelijat tai kaikki työntekijät menemästä facebook.com, kaikki mitä on tehtävä on varmistaa, että kaikki niiden verkkoliikenteen, ensinnäkin, kulkee erityinen laite. Kutsutaan sitä palomuuri. Ja se on hienoa, koska voit tehdä reitittimen sama asia kuin palomuurin jos laitat samanlaista ohjelmistojen samassa koneessa. Joten jos kaikki opiskelijat tai työntekijöiden liikenne on menossa läpi tämän Keski palomuuri, miten voisimme estää ihmisiä menemästä että facebook.com, esimerkiksi? Mitä järjestelmä ylläpitäjä on tehtävä? Kukaan muu? Yritetään mennä ympäri. Yleisö: [äänetön] DAVID J. MALAN: Sano se uudestaan? Yleisö: Se pitäisi vain saada kiinni järjestelmän sisällä. Joten vain laittaa Facebook osaksi 127.0.0-- DAVID J. MALAN: Oh, mielenkiintoinen. Joten voit itse sitten hakata DNS järjestelmä. Tämä on todellakin tapa voit tehdä tämän jolloin tahansa Yale opiskelija vetää ylös www.facebook.com, kaikki meistä tänään kampuksella käyttävät Yale DNS-palvelimen, koska Yalen DHCP-palvelin antoi meille että osoite. Niin joo, voisit eräänlainen rikkoa asioita tai tauko yleissopimus mukaan vain sanomalla, joo, facebook.com osoite on väärennös, on 1.2.3.4, joka on ei oikeastaan ​​laillinen. Tai ehkä se on 278. mikä oli TV hetki sitten niin, että kukaan meistä voi itse käydä facebook.com. Joten kai Yale teki sen. Oletetaan Yale halusi pitää sinut pois facebook.com. Ja siksi he muuttanut DNS-asetukset antaa sinulle väärä IP Osoite facebook.com. Miten vastata? Teknisesti not-- OH, nyt jokainen haluaa osallistua. OK, joo. Yleisö: Sinä vain kirjoittaa todellinen IP-osoite Facebook. DAVID J. MALAN: OK, hyvä. Jotta voisimme vain kirjoittaa todellinen IP-osoite Facebook, aivan kuten tein Yalen verkkosivuilla. Ja jos Facebook palvelin on määritetty tukea, että se pitäisi todellakin toimia. Se on pieni kipu kaula, koska nyt meillä täytyy muistaa joitakin satunnaisia 32-bittinen arvo, mutta se voisi toimia. Mitä muuta voisit tehdä? Joo. Yleisö: Voit muuttaa nämä asetukset [kuultavissa]. DAVID J. MALAN: Joo, voisit jopa muuttaa DNS-asetukset. Joten itse asiassa tämä on todella melko hyödyllinen, rehellisesti, jos olet lentokentällä, tai jos olet kahvilassa, tai jotain, joka on hilseilevä internet jolloin joskus DNS-palvelin vain lakkaa toimimasta. Joten vaikka olen joskus tehdä tätä, ei ilkeä, minä haluavat käyttää Facebook tarkoituksiin, mutta oikeastaan koska olen ilmeisesti on verkosto yhteys, mutta mikään ei toimi. Ja niin yksi ensimmäisistä minä try-- ja teitä voi tehdä tämän Windows too-- mutta Macin, jos menen Network. Ja valitsen Wi-Fi-yhteys. Ja menen Lisäasetukset. Ja menen DNS. Nämä ovat kolme IP-osoitteet, että Yale antaa minulle kolme DNS-palvelimia. Tarkoitus sitten on minulle yrittää mitään yksi näistä ratkaista osoitteisiin. Mutta voin ohittaa nämä tekemällä plus. Ja kukaan halua ehdottaa DNS-palvelimen? Yleisö: 8.8.8.8? DAVID J. MALAN: Ai, olet uskomaton. Kyllä, 8.8.8.8. Joten Google, siunata heidän sydämensä, osti IP-osoite 8.8.8.8, koska se tavallaan näyttää G luultavasti, ja se on helppo muistaa. Mutta tosiaan, nyt olen määrittänyt minun tietokone käyttää Googlen DNS-palvelimen. Joten nyt jos menen yale.edu, se on silti menossa töihin. Mutta en käytä Yalen DNS-palvelimet enää. Ja jos menen facebook.com, kaikki nämä näyttävät UPS eivät mene läpi Google. Joten toisaalta, olen taitavasti kierretty paikalliseen järjestelmään ylläpitäjät vain ymmärtää, miten verkostoituminen toimii. Mutta olen maksaa hinta. Mikään ei ole ilmaista. Mitä olen juuri luopunut? Mitä olen juuri luopunut? Kaikki te älykkäitä ihmisiä, joilla on käyttänyt 8.8.8.8, koska se on viileä tai ratkaisee ongelmia, mitä on olet tehnyt koko tämän ajan? Yleisö: Matkalla kauemmas? DAVID J. MALAN: Ehkä matkustaa kauemmas, koska Googlen todennäköisesti ole aivan niin lähellä palvelin kadulla. Mutta enemmän huolestuttavan. Joo? Yleisö: Joten nyt Google tietää missä olet menossa. DAVID J. MALAN: Google tietää kirjaimellisesti jokainen sivusto olet vierailulla, koska olet kirjaimellisesti pyytäen heitä, hei Google, Voitko kääntää yale.edu minulle? Tai hei Google, voit kääntää tämä toinen sivuston osoite minulle IP-osoitteeksi. Ja niin they're-- minulla ei ole aavistustakaan, mitä puhut. Ja niin he tietävät kaiken sinusta. Niin ymmärtää, että tämä on ilmainen palvelu joiden tarkoituksena heidän näkökulmastaan yhtä hyvin. Mutta se voi varmasti saada sinut ulos sitoa. Nyt vain käsitellä yksi muu asia, joka usein tulee esille opiskelijoiden keskuudessa, erityisesti kun matkustat ulkomaille tietyissä maissa, kuten Kiina, jossa on todellakin on Kiinan suuri palomuuri jolloin hallitus siellä lohkot melko vähän liikennettä eri tasoilla. Sinun ei tarvitse vain lohko liikenteen tasolla me puhumme täällä, DNS tai muuten, voit estää sen muilla tasoilla. Ja itse asiassa, vain oltava selkeitä, palomuuri voi toimia jopa enemmän yksinkertaisesti kuin vain ottaa järjestelmänvalvojat muuttaa DNS-asetukset. Palomuuri, laitteiden väliin meille ja muualla maailmassa, voisi vain peitä lähtevän pyyntöjä IP-osoitteen Facebook porttia 80, tai IP-osoite harvard.edu, tai IP-osoite mitään. Niin palomuuri voi tutustumaan kirjekuoret "IP-osoitteet ja jopa portti numeroita, ja jos Yale halusi, se voi vain lopettaa kaikki meistä alkaen jopa FTP enää, mikä todennäköisesti hyvä asia, koska se on todellakin turvaton protokollaa. Yale voisi jopa estää meitä vierailevat koko rainan vain estämällä kaikki sataman liikenteen määrä 80 samoin. Jotta voisi olla toinen tapa. Ja siellä on jopa harrastaja tavoilla. Mutta kun olet matkoilla ulkomailla esimerkiksi, tai jos olet nettikahvilassa, tai jos olet kaikkialla missä on tukoksia tai uhkia, mitä voit tehdä? No, jos menet kadulla Starbucks tai matkustat lentokentällä, yleensä voit vain hypätä on Wi-Fi valitsemalla kuten, JFK Wi-Fi LaGuardia Wi-Fi, tai Logan Airport Wi-Fi, tai mitä ei. Ja se ei ole salattu, eikö? Ei ole riippulukko kuvaketta. Ja olet luultavasti ei pyydetä käyttäjätunnusta ja salasanaa. Olet juuri pyydetään joidenkin tyhmä muodossa sanoa kuin, suostun käyttämään tätä vain 30 minuuttia, tai jotain sellaista. Mutta ei ole salausta välillä sinä ja Starbucks Wi-Fi-yhteys kohta, asioita antennit seinälle. Ei ole salausta sinun ja lentoaseman Wi-Fi signaaleja. Ja niin teknisesti, että kammottava henkilö istuu muutama istuin alas sinulta Starbucks tai lentokentällä voisi olla, kanssa sopivan ohjelmiston, katsomassa kaikki langattoman liikenne hänen laptop. Se ei ole vaikea laittaa kannettavan tietokoneen mitä kutsutaan siveetön tilassa, joka kuten nimestä voi päätellä, tarkoittaa olet eräänlainen löysä sääntöjä. Ja se vain kuuntelee paitsi liikenteen tarkoitti sitä, mutta myös kaikkien muidenkin liikenne kuuluvuusalueella. Ja että logiikka, se voi nähdä kaikki tietopaketit joudut vastaanottamaan. Ja jos ne paketit ei ole salattu, sinua laittavat itse vaarassa sähköposteja tai viestejä, tai jotain muuta saada alttiina. Joten vaikka et ole ulkomailla mutta olet vain Starbucks, tai olet joitakin satunnaisia ​​henkilön Wi-Fi, joka ei ole salattu, VPN on hyvä asia. VPN on virtual private network. Ja se on tekniikka jonka avulla voit olla salattu, salattu connection-- harrastaja kuin Caesar tai Vigenere-- välillä kannettavan tietokoneen, tai puhelimen, tai työpöydällä, ja palvelin muualla, kuten palvelin Yalen kampuksella. Ja jos olet matkoilla abroad-- ja itse asiassa, löydät tämän hotellit koko ajan. Ja varsinkin kun pyrkivä tietotekniikan tutkijoita jossa te ehkä, kuten nörttejä, haluat käyttää portteja muita kuin 80, ja satamat muut kuin 443-- ja todellisuudessa on ongelma asettaa kuusi, aiomme pelata useita TCP-portit vain choice-- paljon hotelleja ja kauppoja, ja verkot vain estää tuollaista koska ne hieman sinisilmäisesti, tai tietämättään, ajatelkaa että kenenkään ei tarvitse niitä muihin satamiin. Ja niin käyttämällä VPN voitte kiertää tuollaiset rajoitukset, koska mitä VPN tekee on sen avulla voit Starbucks, tai lentoaseman, tai missä päin maailmaa tahansa yhteyden encryptedly ja yale.edu, Joidenkin palvelimelle täällä kampuksella, ja sitten tunneli, niin sanoakseni, kaikki liikenne missä olet läpi Yale, jossa vaiheessa se sitten menee sen lopulliseen määräpaikkaan. Mutta salaamalla sitä, te välttää tällaisia suodattimien tai käyttöönoton, joka jotkut paikalliset verkko on määrännyt. Ja plus, sinulla on paljon vakaampi puolustus vastaan ​​kammottava ihmiset ympärilläsi jotka ehkä yrittää salakuunnella liikennettä. Mutta ehkä edelleen kammottava ihmiset täällä takaisin kotiin Yalen katsomassa liikennettä koska se tulee ulos VPN, mutta ainakin olet ajanut uhka kauempana. Ja se on täälläkin, kauppa pois. Nyt tietenkin, jos olet Kiinassa tai jopa kahvilassa, ja olet tunnelointi kaikki liikennettä kautta Yale, mihin hintaan maksamme kenties? Yleisö: Nopeus. DAVID J. MALAN: Nopeus, eikö? Siellä täytyy olla joitakin matematiikka tai jokin fanciness mukana todellinen salauksen. Tähän voi olla tuhansia mailia etäisyyden tai tuhansia kilometrejä kaapeleita sinun ja Yale. Ja se on todella huono, jos olet Kiinassa, esimerkiksi, ja haluat käydä verkkosivuilla Kiinassa. Ja niin tietosi on menossa USA, ja sitten takaisin Kiinaan vain koska olet salaamalla se läpi tunnelin. Mutta se ratkaisee tekniset ja työn ongelmia keskuudessa. Mutta se pohjimmiltaan kyse näitä hyvin yksinkertaisia ​​ideoita. Ja Harvardin, niille utelias, on yksi tässäkin kello vpn.harvard.edu, joka toimii aivan kuten Yalen. Joten kaikki tämä sanoi, miksi on tämä koko verkon hyötyä? Ja mitä voimme alkaa tehdä sen kanssa? No, jotta tämä nyt todellisempaa. Tämä on lyhenne jolla useimmat meistä ovat todennäköisesti erittäin familiar-- HTTP-- joka tarkoittaa hyper Text Transfer protokollaa. Ja tämä tarkoittaa vain tämä on kieli, protokolla että selaimet ja web-palvelin puhua. P HTTP on todellakin protokolla. Ja protokolla on vain joukko sopimuksia. Olemme nähneet IP-- Internet protocol-- TCP-- siirrin protocol-- ja HTTP. Mutta mikä on tämän typerän asia protokolla? Se on vain joukko sopimuksia. Jos siis tavallaan tullut alas täällä, ja haluan tervehtiä sinua. Sanoisin Hei, nimeni on David. Yleisö: Luis. DAVID J. MALAN: Luis. Meillä on tämän typerän ihmisen yleissopimus kättelee täällä. Mutta se on protokolla, eikö? Olen laajennettu käteni. Luis ojensi kätensä. Teimme tämän. Ja sitten valmis, valmis. Ja se on täsmälleen sama hengen tietokoneen protokolla jossa kuten HTTP, mitä tapahtuu on tämä. Jos olet tietokoneen vasemmalle täällä, ja siellä on joitakin web palvelin on oikealla. Ja tietokone vasemmalla haluaa pyytää tietoja kyseiselle palvelimelle. Se on tavallaan kaksisuuntainen toiminta. Selain vasemmalla pyytää joidenkin web-sivun. Palvelin oikealla vastaa joidenkin web-sivun. Ja näemme missä muodossa ne ottaa vain hetken. Ja käy ilmi, että ne computers-- että selain ja palvelin, tai asiakkaan ja palvelin, niin sanoakseni. Aivan kuten ravintola, jossa asiakas kysyy jotain, ja palvelin tuo hänelle something-- saada on sellainen tärkeä sana. Kirjaimellisesti sisällä kirjekuori, joka selaimeni lähettää täältä web palvelin on sana get. Kuten Haluan saada päivän uutiset. Haluan saada minun Facebook uutissyöte, tai I haluavat saada jonkin sivun palvelimelta. Erityisesti tämä on mitä meneillään sisällä että kirjekuoren. Niin minä, jossa Cole, olennaisesti lähetti Cole vastauksen. Jos kuvittelet, että Cole todella halusi kuvan Rick Astley, hän voisi lähettänyt minulle pyynnön hengeltään samanlaisia ​​tähän. Sisällä hänen kirjekuoressa minulle, missä Olen nyt roolista Google, olisi pyyntö, joka kirjaimellisesti sanoo, saada, ja sitten eteenpäin slash-- ja olet luultavasti nähnyt eteenpäin viiltää URL ennen. Se vain tarkoittaa antaa minulle oletuksena sivu, oletuksena Rick Astley kuva tässä tapauksessa. Ja muuten, Cole puhuu kieltä HTTP-versiota 1.1 tai protokolla 1.1. Ja se osoittautuu siellä vanhempi versio 1.0. Mutta tietokoneet pyrkivät käyttämään 1.1. Toinen rivi on hyödyllinen asia, että palaamme ehkä ennen pitkää. Mutta se on vain erittely minulle, vastaanottaja, että asia, jonka haluan on www.google.com. Koska se on hyvin mahdollista näinä päivinä kymmeniä, satoja verkkosivuja eri verkkotunnuksia kaikkia elää samalla palvelimella. Se ei tule olemaan totta niin paljon Googlen tapauksessa. Mutta pienempi yrityksen tapauksessa voisi ehdottomasti olla. Joten Cole on juuri sellainen ottamalla kirjekuoressa, Muuten, kun tämä saavuttaa IP-osoitteen portissa 80, vain olla varma, että tiedät Haluan www.google.com, ei jokin muu satunnainen verkkosivuilla samalla palvelimella. Mitä minä sitten vastata Cole kanssa, lopussa päivä, on kuva. Mutta huipulla että kuva sisällä kirjekuoren on todella tekstiä, jossa sanon, OK. Puhun HTTP-versiota 1.1 myös. 200. Joka on tilakoodi, joka useimmat meistä ovat luultavasti koskaan nähnyt, koska se tarkoittaa OK. Ja tämä on hyvä, koska se tarkoittaa vastaukseni onnistuneesti Cole pyyntöön. Mitä numerot ovat luultavasti nähnyt Webissä, jotka eivät ole kunnossa? Yleisö: 404. DAVID J. MALAN: 404-- Tiedostoa ei löydy. Niin tosiaan, milloin olet nähnyt yksi niistä harmittaa tiedostoa ei löytyi virheitä, koska web-sivu on kuollut, tai koska olet väärin kirjoitettu URL, joka tarkoittaa vain että pieni kirjekuori, että tietokone sai palvelimelta sisälsi viestin HTTP- 1.1, 404-- ei löytynyt. Tämä tiedosto tai että pyyntö teit ei löytynyt. Lisäksi sisällä kirjekuoren tyypillisesti tämä linja, sisällön tyyppi. Joskus se on HTML, me pian nähdä. Joskus se on JPEG. Joskus se on GIF. Joskus se on elokuva tiedosto, äänitiedosto, minkä tahansa määrän asioita. Joten sisällä kirjekuoren on vain pikku vihje siitä, mitä saan. Ei muita tilakoodeja myös, jotkut joista me tutkia P asetettu kuusi, ja voit sattumalta P asettaa seitsemän ja / tai kahdeksan. Mutta jotkut täällä, kuten 404 olemme nähneet. Kielletty, 403 keinoja, kuten käyttöoikeudet ovat väärässä, kuten et ole sellainen määritetty oikein. 301 ja 302, me harvoin nähdä visuaalisesti. Mutta ne tarkoittavat ohjata. Aina olet mennyt yhden URL ja olet ollut maagisesti lähetetty jonnekin muualle, se on koska selain on lähettänyt takaisin kirjekuori sisälsi numero 301 tai 302, ja URL että se haluaa selaimen mennä sijaan. 500 on kamala. Näet sen ennen pitkää, luultavasti P asetettu kuusi tai P asettaa seitsemän. Ja se tarkoittaa yleensä on joitakin bug koodissa, koska todellakin tulemme kirjallisesti koodi, joka vastaa web pyyntöihin. Ja olet juuri saanut joitakin virhe logiikka tai syntaksin, ja palvelin ei voi käsitellä sitä. Joten, miten voimme nyt hyödyntää ja ymmärtää näitä pyyntöjä seuraavasti. Jos menen, sanokaamme, google.com. Anna minun mennä www.google.com. Ja esittelyä tähden, katsotaanpa katso, minun täytyy mennä Asetukset täällä. Aion mennä Search Settings. Ja Google on yhä ärsyttävää ominaisuudet, mutta hyödyllisiä ominaisuuksia. Joten Google on tämä asia, kuten instant Results aloitat kirjoittamisen, ja automaattisesti asiat alkavat näkyä. Ja se on kaikki hyvin ja teknisesti hyödyllinen, ja me ymmärrämme ennen pitkää, miten tämä toimii. Mutta nyt, olen kääntämällä pois tulokset heti, koska haluan selaimen tällaista työtä vanhan koulun niin että näen mitä tapahtuu. Joten nyt olen takaisin täällä. Ja haluan etsiä kissoille. Ja huomaa Näen joitakin ehdotuksia, joitakin erittäin hyvänlaatuinen ehdotuksia onneksi. Ja nyt jos osuin Enter, Katsotaan mitä tapahtuu. Joten joitakin kissoja. Ja alkuun osuma on Wikipedia. Mutta tänään me välitämme teknologia täällä. Joten URL johon olen lähetetty on täällä. Ja siellä on joitakin juttuja I eivät todellakaan ymmärrä. Joten aion mennä eteenpäin, koska Olen sellainen tietää, miten Google toimii, ja aion polttaa tämän URL Yksinkertaisimmillaan. Ja nyt aion paina Enter uudelleen. Ja se toimii edelleen. Minulla on sivu tulosten Tietoa kissoista. Mutta huomaa yksinkertaisuus minun URL. On käynyt ilmi, näin paljon web toimii. Internet on vain koko nippu tietokoneet käynnissä ohjelmisto, joka ottaa tulo. Se saa merkkijonon tyyli tulo. Se ei ole komentoriviltä perustelut kuin olemme tottuneet. He ottavat panos, nämä web-palvelimia, Poiketen URL melko usein. Ja milloin olet etsinyt jotain, tahansa olet kirjautunut Facebook, milloin olet tehnyt mitään interaktiivinen Web-sivun, mitä olet tekemässä tehokkaasti esittää muodossa, joten että speak-- tekstilaatikoita, valintaruudut, pikku piireissä, ja vaikka mitä, jotka lähettävät tietoja sinusta palvelimelle. Ja käy ilmi, että raina palvelin tietää katsoa, ​​että URL ja jäsentää sitä, kuin katsoa sitä merkki merkiltä etsi mitään mielenkiintoinen jälkeen kysymysmerkki. Koska sen jälkeen kysymysmerkki, se kääntyy pois, on tulossa joukko keskeisiä arvo-pareja. Tarkoitan avain = arvo. Ja sitten jos on multiple-- ehkä et-merkki, jokin muu avain = arvo, et-merkki, avain = arvo. Joten olemme tavallaan nähnyt tätä ajatusta ennen jossa jotain on arvo. Se on vain uusi muoto täällä. Ja minä vain tiedä, sopimuksen mukaan, Google käyttää q haulla. Ja sitten jos haluan etsiä koirille, I manuaalisesti etsiä koirille niin. Ja sitten olen ilmeisesti saada jotkut hakutulokset mukana koiria. Niin että näyttää olevan mielenkiintoinen. Ja todellakin, mitä tapahtuu alla huppu on tämä. Anna minun tehdä tämä. Tämä on a-- katsotaanpa. Anna minun mennä takaisin yli täällä vain hetken. Saa nähdä, että on olemassa muita tapoja toimittaa tietoja. Joten jos olen kirjautumalla Facebookiin, tai Gmail, tai muu suosittu verkkosivusto, se tuntuu sellainen huono, jos mitä olen kirjoittanut hakukenttään päätyy minun URL, minun selaimen osoiteriville. Miksi? Miksi että lievästi huolestuttavaa? Joo? Yleisö: Kirjoita salasana. DAVID J. MALAN: Joo. Joten mitä jos, mitä olen kirjoitettu on salasanani? Olen sellainen halua sitä niin selvästi näkyvissä selaimen osoiteriville. Yksi, koska minun ärsyttävää kämppäkaveri taipumus katsoa olkapääni yli, ja hän voi nyt nähdä, vaikka se oli luoteja kun olen kirjoittamalla sen, pikku piireissä. Nyt se on minun osoiteriville. Lisäksi mikä on totta juttuja sinulla on tapana kirjoittaa osoiteriville. Yleisö: [äänetön] DAVID J. MALAN: Mikä tämä on? Yleisö: Se saa lähetetty. DAVID J. MALAN: Se saa lähetetty. Ja myös, se saa muistetaan. Koska seuraavan kerran kirjoitat asioita siellä, usein se autocompletes ja se muistaa mitä olet kirjoittanut ennen. Ja niin on tämä todellinen historia että sisarus, tai kämppäkaveri, tai kuka voi kävellä läpi melko paljon nähdä jokainen sivusto kävit koska se on kirjautunut sisään, että osoiteriville. Lisäksi oletetaan, että haluat ladata kuvan Facebookiin. Miten ihmeessä olet aikoo laittaa valokuvan URL? No se kääntyy pois voit tehdä sen joissain tavalla, mutta se on varmasti ei-ilmeinen. Ja niin on tämä muita tapa lähettämällä tiedot kirjekuoressa, ei kautta GET, mutta kautta jotain kutsutaan POST. Ja teoriassa, se näyttää melko sama. Sen sijaan sanan GET, sanomme POST, ja sitten samanlaista muotoa. Esimerkiksi, tämä on kuvakaappaus mitä se saattaa näyttää, jos yritän hakkuut osaksi Facebook, joka lähettää minulle tiedostoon nimeltään login.php, joka on itse asiassa vielä tänäkin päivänä nimetty sellaisiksi. Se on sama tiedostonimi Mark antoi se monta vuotta sitten. Se on ohjelma hän kirjoitti PHP kautta josta käyttäjät voivat kirjautua verkkosivuilla. Mutta sinun täytyy lähettää jotkut lisäpanostusta. Ja sen sijaan se menee jälkeen tiedoston nimi kuin ennen kanssa cats-- q = cats-- se voi mennä pienempi pyynnön, syvemmälle kirjekuoren jos tulee jossa kukaan ei voi nähdä sitä, ja jos se ei päädy käyttäjän selaimen baarissa, ja siksi muista ihmisille nuuskia ympäri. Ja joten tässä sähköpostiosoitteeni ja minun fake salasana itse mennä. Ja jos Facebook käyttää ei HTTP, mutta HTTPS, tämä kaikki on salattu, munakokkelia, ala Caesar tai Vigenere, mutta lisää fancily jotta kukaan voi todella nähdä tämän pyynnön. Ja niin tosiaan, aina, kun on URL alkaa HTTPS, se vain tarkoittaa sitä salattu. Mutta loppujen lopuksi, mikä on itse sisällä näistä kirjekuoria? Tämä oli super alhainen. Ja onneksi, emme ole menossa välttämättä mennä niin alhaiselle tasolle joka kerta kirjoittamaan mielenkiintoinen ohjelmisto. Voimme alkaa ottaa ajatuksia viikko yksi läpi viisi, olettaa, että on nyt tämän infrastruktuurin että antaa meidän kirjoittaa ohjelmisto joka toimii verkossa, ja se tulee antaa meille tulevalla viikolla aloittaa katsot jotain kutsutaan HTML. Tämä on kamaa, joka on jopa syvemmälle kirjekuoren, mutta se on tavaraa olemme aikoo aloittaa kirjoittamisen. Ja se on tavaraa enemmän Mielenkiintoista, olemme menossa ohjelmien kirjoittamiseen alkaa tuottaa automaattisesti niin että meidän sivustoja ei ole koodattu, mutta ottaa panos ja tuottaa tuotos. Tämä on ehkä yksinkertaisin web sivulla voit tehdä maailmassa. Voin todellakin avata jotain typerää kuten TeXturi Macin, joka vain antaa minulle yksinkertainen teksti-ikkunan näin. PC-käyttäjät ovat Notepad.ext, joka on hyvin samankaltainen hengessä. Ja voin kirjaimellisesti kirjoittaa out this-- DOCTYPE HTML, joka näyttää hieman arvoituksellinen. Mutta me palaamme siihen. HTML, näitä outoja kulma suluissa ja viiltää, jonka sisällä nyt aion sanoa tässä tulee esimies sivun. Sisältä että, minä vain tietää, ja voit pian tietää, että voin laittaa otsikko Web-sivun. Ja sitten alle johtaja web-sivu on menossa ns elin sivun. Ja olen vain sisennys vain kuten C eräänlainen pitää asiat hienosti luettavissa tyylillisesti. Ja nyt aion tallentaa tämän tiedosto työpöydälle, nimeltään hello.html. Ja aion kertoa sen kyllä, käyttää HTML. Älä muuta sitä .txt, jopa vaikka kaikki tämä on tekstitiedosto, kuten C-ohjelma kirjoitettu tekstieditorilla. Vaikka ei CS50 IDE at hetki, juuri täällä Macin. Ja jos minä nyt mennä työpöydälle, näet hello.html. Jos minä kaksoisnapsauttamalla tätä, se avaa Chrome. Ja vaikka tämä tiedosto sattuu elää työpöydälle, että on ehkä yksinkertaisin verkkosivu voisin tehdä. Huomaa, että otsikko välilehti tapa ylös on Hello world. Elin web-sivun on todellakin Hello World. Ja kaikki Olen tehnyt saada tähän pisteeseen on toteuttaa, tai on kirjoittaa uusi kieli, nimeltään HTML. Se ei ole ohjelma- kieli kuten C. Ei ei tule olemaan ehtoja, ja silmukat, ja toimintoja. Se on kuvauskieli, jossa Jos vain kertoa vastaanottavan ohjelma mitä haluat tehdä. Tämä tarkoittaa hei selain, tässä tulee HTML-sivun. Hei selain, tässä tulee esimies sivu. Hei selain, tässä tulee ruumiin sivuni. Hei selain, se on siinä kehon. Se on se HTML-sivun. Ja näitä yksinkertaisia ​​määritelmiä yksin, me pian nähdä, että yksi, Voimme edustaa tätä puu. Mutta siitä lisää myöhemmin. Joten tämä kaikki Yhteenliittämisvelvollisuudet Tuoreimmassa tietorakenteita. Kaksi, me esitellä tämän typerän vitsi. Tämä on todellinen tatuointi, joka tämä kaveri oli hänen kaulaansa. Se on luultavasti hauskaa ensimmäisen viikon tai kaksi, ja tämän jälkeen, ehkä ei niin paljon. Mutta HTML, ja jopa web- sivu olen juuri tehnyt, Super mieli tyrmistyttävällä disappointing-- vain sanoa hei maailma musta teksti valkoisella pohjalla. Voimme varmasti tehdä paljon paremmin. Ja me teemme niin ottamalla käyttöön toinen kieli nimeltään CSS. Tämäkin ei ohjelmointia language-- ole silmukoita, ja olosuhteet, tai silmukoita, mutta oikeastaan ​​vain syntaksia joka voimme sanoa, että tämä teksti iso. Tee tämä teksti pieni. Oikea kohdista se. Vasemmalle kohdista se. Tee se pinkki. Tee se violetti. Tee se sininen. Tai tehdä mitään määrä muita visuaalisia tehosteita. Ja niin näemme, miten aloittaa stylizing verkkosivut niin että ne näyttävät tavalla lähempänä mitä me haluamme. Ja lopuksi, olemme todellakin pilalla ehkä paljon TV ja elokuva sinulle. Ajattelin olimme lopu meidän lopullinen sekuntia lopullisesta leike, joka näyttää miten hakkerointi Internetissä toimii. Jos voisimme himmentää valot viimeistä kertaa. [VIDEOTOISTOSTA] -Ei onnistu. Saan hakata. -Okorsky? -No-- Ei, tämä on suuri. He ovat jo poltettu kautta NCIS julkisen palomuuri. -No, Eristää solmu ja kaatopaikka ne toisella puolella reitittimen. -Yritän. Se liikkuu liian nopeasti. -OH, Tämä ei ole hyvä. He käyttävät yhteytemme [Äänetön] tietokantaan. Katkaista se. -En Voi. Se on pisteen hyökkäyksen. Hän on vain menossa jälkeen koneeni. -Se ei ole mahdollista. On DOD tasolla minun salaus. Se kestää kuukausia get-- Hei, mikä tuo on? Videopeli? -Ei Tony, emme saa hakata. -jos He saavat Abbyn tietokone, koko NCIS verkko on seuraava. -En Voi pysäyttää häntä. Tee jotain McGee. -I've Koskaan nähnyt koodia näin. -Oi. Missä on se mennä? Abby? -En Ole tehnyt mitään. Luulin teit. -Ei. -Minä tein. [Lopeta toisto] DAVID J. MALAN: Parhaat osa on kaksi ihmistä kirjoittamalla näppäimistöllä samanaikaisesti. Niin se on siinä CS50. Me kiinni noin virka. Ja Nähdään ensi kerralla. [Musiikki soi - "SEINFELD Theme"] Tämä on CS50. En halua olla merirosvo. SPEAKER 2: Yarr David. Se on hieno kaksinkertainen sinua olla yllään. Paljon Luff kyseisessä pullistaa.