[Muzikos grojimo] David J. Malan: Taigi aš tiesiog norėjau nuraminti, kad. Norėčiau echo, ką Scaz sakė apie institucinę atmintį. CS50 gyvuoja jau apie 20 metų Harvardo. O realybė yra iš Į žemyn senjorams, ten kasmet yra perdraudimas kad pirmakursių, kad sophomores, ir jauniai, ir Taip pat senjorai atsižvelgiant CS50, kad jūs galų gale daro gerai. Realybė yra tai, studentai ne nepavyks CS50. Iš tiesų, tais retais atvejais kur mes jau Es arba FS, tai tikrai buvo, nes lengvinančias aplinkybes, ar tai medicinos ar asmens. DS yra neįtikėtinai neįprasta taip pat. Ir galiu pasakyti, patogiai, nors mes paprastai neatskleidžia statistiką, tačiau, atsižvelgiant, kad nėra institucinė atmintis čia kokia, iš studentų CS50 dauguma galų gale gauti intervale pažymius. Didelė riekė baigtis baigiant B diapazone taip pat. Taigi, nors jums gali būti lygu jūsų protas trise su 60%, ir todėl Ds, arba CS, ar panašiai, tai tikrai nėra liniją su tikrove. Tiesą sakant, mes turime omenyje būtent tai, ko mes pasakyti, kad kadencijos pradžioje kad tiek daug studentų CS50, tiek Kembridže ir čia New Haven, niekada ėmėsi CS kursą anksčiau. Ir kas iš tiesų galiausiai svarbu kur jūs galų gale 12 savaitės santykinis sau nulinis savaitę. Dabar mes turime daug takelius kurso kaip jums know-- mažiau patogūs, daugiau patogus, kažkur tarp. Ir iš tiesų, kai jūs gaunate statistiniai duomenys apie šios savaitės viktorinos, Nenusiminkite, jei, ypač jei manote, kad esate aplink vidurkį arba žemiau vidurkio arba medianos, ypač, nes mes nebūtinai imtis visų tų demografija į viduryje semestro su klasifikavimo statistikos. Kitaip tariant, žinome statistiškai kiekvienais metais kad studentai, kurie yra mažiau patogūs, padaryti šiek tiek blogiau viktorinoje. Ir studentai, kurie yra patogesnis padaryti šiek tiek geriau viktorinoje. Bet už tą pažadą mokymo programas ir taip pat per pirmą savaitę paskaitų, mes visa tai atsižvelgti. Iš tiesų, metų pabaigoje, ką mes galų gale padaryti yra normalizuoti visus balus visoje skyriai, tiek Kembridže o dabar čia New Haven, o tai reiškia, atsižvelgiant į dėl įvairialypio stiliai labai skirtingi grubumas, skirtingas Rūšiuoti asmenybių, kad asmuo Struktūra turi čia ir Kembridže taip, kad jūs esate, esant trūkumas, net jei jūs tiesiog atsitikti turėjo TF arba TA kas buvo šiek tiek sunkiau jums savo proto. Du, mes atsižvelgti į komfortą lygio ir faktinio fonas arba trūksta dalį, priimdama viktorina balų atsižvelgti. Taigi tie du yra įskaičiuotos į. Ir tuo dienos pabaigoje, nes jis visada kad studentas baigėsi mažiau Nežiūriu skyriuje kai jis ar ji tikrai priklausė į-tarp, arba atvirkščiai, viskas yra taip neįtikėtinai individualizuota. Iš tiesų, jūs gausite Sapīcis mumis termino pabaigos, kai mes esame vėlu Pateikdami savo pažymius, nes su Scaz, Jasonas ir Andy, ir aš, ir komanda bus padaryta Kembridže yra tiesiog turime šimtus laiškų ir atgal atgal su visa šimtai kursai Tas, čia ir Kembridžo, prašydama ką jie galvoja apie visus savo studentams grindžiamas rangus projekto. Ir viskas ten po yra neįtikėtinai individualizuota. Taigi tiek, kiek mes gauname žinoti biurų valandas, skyriuose, ir daugiau, visi, kad per yra atsižvelgiama. Taigi nors mes linkę naudoti šį penkerių balų skalėje, prašome nuimti sau prielaida, kad trijų iš tiesų yra 60%. Tai reiškė, kad bus geras. Ir mokymo padėjėjai yra mokamas laikotarpio pradžioje bandyti išlaikyti balai į dviese ir trise, ir Fours svyruoja taip, kad mes iš tikrųjų turi vietos augti. Ir mes iš tikrųjų turi kriterijumi, pagal kurį mes galime suteikti jums naudinga Atsiliepimai, kaip jūs darote ir kaip jūs pažangą. Taigi prašome imtis, kad į širdį. Ar yra kokių nors klausimų Aš galiu padėti spręsti ar susirūpinimą Aš galiu padėti nuraminti? Arba žada galiu bandyti išlaikyti? Nėra? GERAI. Gerai. Taigi su, kad minėtas, tai yra CS50. Tai savaitės pradžia šešių čia New Haven. Pradėkime su trumpu tamsos ir šviesos nustatyti šiandienos turinį etapą. [Vaizdo įrašų atkūrimas] [Muzikos grojimo] -Jis Atvyko su pranešimu. Su protokolu visiems savo. Jis atėjo į cool ugniasienes pasaulyje negailestinga planeta maršrutizatoriai, ir pavojus gerokai blogiau kad mirtis. Jis greitai, jis yra stiprus, jis TCP / IP. Ir jis gavo savo adresą. Warriors neto. [PABAIGA PLAYBACK] David J. Malan: Visos dešinę. Tai CS50. Tai šešių savaičių pradžia. Ir tai yra mūsų išvaizdą pradžia ne interneto ir interneto programavimo. Ir, ko gero dauguma intriguojančiai, Šiandien sukanka mums perėjimą iš mūsų komandų eilutės pasaulis C prie interneto remiantis Pasaulio PHP ir HTML, ir CSS, ir SQL ir Javascript, ir dar daugiau, kad yra ant horizonto. Bet pirmiausia, jis atėjo į mūsų dėmesio vaikščioti visoje miesteliu, kad yra tam tikras vonios kambarys čia Nauja Haven vadinamas Harvardo kambarį, kuris yra šiek tiek pilkai čia. Bet iš tiesų, kažkas nuėjo į kartą ir išlaidos, graviūros Harvardo kambaryje šiame kambaryje čia. Ačiū jums už tai. Aš negaliu pasakyti, mes turime analoginės Kembridže dar, bet manau, kad mes turime mažai projektą sau dabar, kai mes einame atgal. Taigi ačiū už tai. Taigi greitai atsigręžti į kur mes baigėte praėjusią savaitę ir kur jūs ketinate tai ateina savaitę su problemomis nustatyti penki. Taigi problema nustatyti penki, jūs būsite ginčijo įgyvendinti rašybą. Ir tai padaryti, jūs būsite įteikė gana didelis tekstą file su kaip 140.000 angliškų žodžių. Ir jums bus užginčytos nuspręsti dėl duomenų struktūros, su kuria jūs norite įkelti visus tuos žodžius į atmintį ir į RAM, ir tada įgyvendinti keletą funkcijų, vienas iš kurių bus patikrinti. Pagal kurią kai išlaikė argumentą, žodis, jūsų veikimo patikrinimas tiesiog teks pasakyti true arba false, tai yra žodis žodyne. Bet jūs ketinate turėti tam tikrą dizainas laisvė ir iššūkiai kai kalbama įgyvendinti tai. Paprastais įgyvendinimą, jūs tikrai galėtų įgyvendinti į rašybą pagrindinės žodynas su kokia duomenų struktūra? Jums tiesiog reikia laikyti visumą krūva styginiams atminties? Kas GO atsakyti nuo galbūt dvi savaitės? Auditorija: masyvo. David J. Malan: Galite naudoti masyvą. Ir tai dar ne viskas taip blogai. Bet jūs nebūtinai žinoti iš anksto kaip didelis masyvas jūs ketinate reikia, jei jūs neturite žinoti failą nebūtinai iš anksto. Taigi, jūs ketinate turi naudoti šiek tiek gudrybė kaip malloc, kaip mes pradėjo naudoti. Arba galėtume spręsti kad naudojant susiję kas kita duomenų struktūra, kad tai buvo tarsi ribinio didinimo nuo masyvo? Auditorija: Susijęs sąrašas. David J. Malan: kaip susijęs sąrašas, kuriame mes kažkiek dinamiškumą. Bet yra šiek tiek daugiau išlaidų. Mes turime patarimų išlaikyti. Ir jūs dar koduojamos tai iki, bet ten tikrai būti šiek tiek daugiau sudėtingumo ne tik naudojant skliaustus ir šokinėja aplink masyvą. Bet masyvą bėga laikas, jei esate ieškant žodžio, gali būti prisijunkite n. Bet vėl, tai gali būti šiek tiek ne trivialus sukurti, kad masyvas nėra žinant dydį iš anksto. Susietas sąrašas, nors, jei jums tiesiog laikyti eilučių krūva susietoje sąrašą Koks jūsų viršutinė riba nuo bėgančio laiko bus ieškoti už ar patikrinti žodį į tą sąrašą? Auditorija: N. David J. Malan: Taip, didelis O N arba tiesinė, nes blogiausiu atveju, žodis yra kaip Z žodį visi pabaigoje būdas. Ir dėl to, susietą sąrašą nes tų strėlių pagal nutylėjimą, į vieną susietą sąrašą, tik eiti iš vienos krypties į kitą, Jūs negalite šokinėti. Jūs turite sekti juos visus. Taigi mes pasiūlėme į praėjusios savaitės pabaigoje, penkių savaitę, kad yra geresnių būdų. Ir iš tiesų, Gralis tikrai būti pastovus laikas pagal kurią kai norite ieškoti žodį, galite gauti trumpąją atsakymo nepriklausomai nuo to, kiek žodžių yra jau Jūsų žodyną. Tai menininko perdavimų ką galima pavadinti maišos lentelę. Ir maišos lentelė rūšies gražus amalgama yra array-- sudarytas vertikaliai čia tik because-- ir tada susiję list-- atkreipti horizontaliai čia. Ir maišos lentelė gali būti įgyvendinamos kekių būdais. Tai ištrauka iš vadovėlio atsitinka naudoti šių žmonių gimimo datas kaip priemonių, kuriomis ji manimi sprendžiant kur įdėti kažkieno vardą. Taigi tai yra žodynas jei bus pavadinimų. Ir tam, kad paspartinti išleidimą pavadinimai į šios duomenų struktūros, jie žiūri, matyt, šie žmonės aisiais gimimo datas, susijusių su per mėnesį. Taigi, tai nuo 1 iki 31. Ir pamiršti apie vasario ir kampe atvejai, kaip kad. Ir jei jūsų gimtadienis yra sausio 1, arba vasario 1, arba gruodžio 1, jūs ketinate galų gale pats pirmas grandinės iki viršaus. Jei jūsų gimimo data kaip mėnesio 25 dieną jūs ketinate baigti ne kibirą skaičiaus 25. Ir jei ten jau kažkas ten į vieną iš šių vietų, kas pradėdami daryti su jais susiję sąrašai yra susiuvimo juos kartu taip, kad jūs galite turėti savavališkai žmonių skaičius, arba nieko, toje vietoje. Taigi jūs turite natūra iš mišinio pastovus laikas maišymo. Ir maišos kažkas reiškia imtis, kaip įvesties kaip asmuo, arba jo vardu, arba jo gimimo data, ir tada nuspręsti dėl kai kurių produkcija remiantis, kad, kaip žiūri į savo gimtadienis ir išvedė vieną per 31 dieną. Taigi jums gali tekti linijinio tiek laiko, bet iš tikrųjų, ir kaip iš problemai nustatyti penki, mes nesiruošia būti darbo P nustatyti penki tiek daug apie asimptotinėje veikia laikas, kaip teorinės lėtumas su kuria algoritmas gali paleisti. Mes ketiname rūpi faktinis sekundžių skaičius ir faktinį dydį, atminties, faktinis skaičius baitų atminties Jūs naudojate. Taigi atvirai, turintys vieną milžinišką grandinė kaip milijono žmonių yra pretty damn lėtai, jei jūs ieškote už A dydžio mln sąrašo pavadinimą. Bet kas, jei padalinti šį sąrašą į 31 dalių? Ieškoma 1/31 skaičių Super ilgas sąrašas, iš tikrųjų, tikrai bus greičiau. Asimptotiškai, tai tas pats dalykas. Jūs esate tik dalijant pastoviu santykiu. Ir prisiminti, kad mes mesti tuos dalykus toli. Bet iš tikrųjų, tai vyksta būti 31 kartų greičiau. Ir tai, ką mes ketiname pradėti sverto P nustatyti penki. Taigi P nustatyti penki pernelyg pat siūlo, kad, jūsų nuomone, šiek tiek sudėtingesnės duomenų struktūra vadinama TRIE. Ir Trie yra tik medis kaip duomenų struktūra. Bet vietoj to, mažai apskritimai ar stačiakampiai kaip mes išlaikyti piešimo mazgams, ji iš tikrųjų turi visą masyvus, jo mazgų. Ir nors tai yra tiek abstraktus čia pažvelgti, Zamyla į P nustatytą pėsčiomis per padės jums per išsamiau apie tai. Tai yra duomenų struktūra kad gana gudriai gali turėti kiekvienas mazgas Būdamas masyvas dydžio 26, nuo a iki z arba nulis per 25 metų. O jei norite įterpti asmens pavadinimą į šios duomenų struktūros arba rasti jam ar jai, ką jūs darote, jei pavadinimas yra kaip Maksvelo, M-A-X-W-E-L-L, pirmą kartą pažvelgti į M. ir tada peršokti į atitinkamą M Vieta pirmoje masyvo. Tada peršokti į, pirmasis vietą į kitą masyvą, Žemiau rodykles. Tada X, tai W, tada E, tada L, tada L, tada gal kai speciali pabaiga pobūdis, kai Sentinel kad sako žodis sustoja čia. Ir kas malonu apie this-- ir reikia nepamiršti, kad vaizdas čia Atkreipkite dėmesį, kaip kraštus kiekvienas masyvas yra išjungtas. Tai tiesiog, nes šis dalykas būtų būti masyvi ir žiaurios ieškoti bent ekrane. Taigi, tai excerpted. Kas malonu apie tai požiūris kad jei ten milijonas pavadinimai jau Šiame duomenų struktūros, kiek žingsnių ji mane įterpti Maxwell? M-A-X-W-E-L-L-- kaip septynių ish žingsniai įterpti arba ieškoti Maxwell. Tarkime, ten trln pavadinimai šioje duomenų struktūros. Kiek žingsnių tai užtruks man surasti Maxwell? M-A-X-- dar septyni. Ir jame slypi Vadinamasis pastovus laikas. Jei mes manome, kad žodžiai yra tikrai apriboti 20 simbolių, arba 46 simbolių, arba kai pagrįstai mažas sveikasis skaičius, tada tai efektyviai konstanta. Ir taip intarpas ir ieškoti Trie yra super greitai. Žinoma, mes niekada gauti ką nors nemokamai. Ir nors jums tikriausiai ne nėrė į P nustatyti penki dar, kokia kaina mes tikriausiai moka gauti, kad didesnį veiksmingumą laiką protinga? Auditorija: Atmintis. David J. Malan: Atmintis, tiesa? Aš turiu galvoje, mes neišdarinėtos visą vaizdą čia. Tai ištrauka iš vadovėlio nebuvo sudarytas visi matricos. Yra didžiulis atminties ir tik null patarimų, kurie nėra naudojami. Taigi, tai kompromiso. Ir tai bus palikta jumis P nustatyti penki nuspręsti, į kurią pusę norite eiti. Dabar šis maišymo idėja, kaip žemę, iš tikrųjų yra itin paplitę. Taigi maišos vertės priemones, gana Paprasčiau tariant, imtis ko nors kaip pirkimo ir gamina išvestį. Taigi maišos funkcija yra tik algoritmas. Ir apskritai, maišos funkcijos tikslas gyvenime yra imtis ko nors kaip pirkimo ir gaminti numerį kaip produkcija, kaip ir numeris vienas per 31 ar A iki Z, nulis per 25. Taigi ji mano, sudėtingą produkciją ir traukiasi jį žemyn į kažką tai šiek tiek daugiau naudinga ir lengvai valdomas. Ir taip it turns out in labai populiarus funkcija kad saugumo pasaulyje ir žmogaus pasaulyje buvo naudojant ilgus metus yra vadinamas SHA1. Tai gana išgalvotas matematinis formulė, kuri daro iš esmės tai. Jūs imtis tikrai didelis riekė nuliai ir ones-- kad galėtų būti megabajta ilgas, Gigabyte long-- ir jis traukiasi jį žemyn tik keletą bitai, keli gabaliukai, taip, kad jūs turite kaip skaičių vienas per 31 arba A iki Z. Bet iš tikrųjų, tai šiek tiek didesnis nei tik per Z. Deja, mes apie smaigalys, ką kažkas žaismingai vadinamas SHAppening kuriuo pasaulis yra apie pabaigoje tikriausiai kelis mėnesius laikas, nes mokslininkai, tik šią savaitę, paskelbė ataskaitą, kad, priešingai kas saugumo tyrėjai galėjo pagalvoti, tam tikrą laiką, tiesiog išleidžiama apie, tai, ką jis buvo, Manau, kad tai buvo $ 175,000-- Daug pinigų, bet ne ilgiau kaip nepasiekiamoje ypač blogi blogi vaikinai, arba ypač blogai countries-- $ 175000 gali pirkti jums nuomojamas serveris daug vietos debesyje. Ir mes grįžti į Procesas ilgas debesis. Bet tai tiesiog reiškia, išsinuomoti serverį vietos ant, kaip "Microsoft" serverių, arba Google ar Amazon, arba kaip, kur Jūs galite mokėti minutę naudoti kažkieno kompiuterius. Ir it turns out, jei galite mokėti kažkas skolintis savo kompiuterius ir paleisti kodą, kurį parašiau ant jo ir naudoti gana išgalvotas matematika, galite iš esmės figūra , kaip kažkieno maišos funkcija darbo, ir atsižvelgiant į jos produkcija, perkonstruoti, kas jo indėlis yra. Ir šiandienos tikslais, pakanka pasakyti, tai yra blogai. Kadangi SHA1 ir maišos funkcijų kaip ji yra super dažniausiai naudojama saugumo programas, šifruotų jungtys internete, banko operacijos, korinio šifravimo jūsų mobiliuosius telefonus ir pan. Ir taip kiekvieną kartą kas nors randa kelią į atvirkštinę inžinierius vieną iš šių technologijų arba nutraukti ją, blogi dalykai gali atsitikti. Dabar pasaulis jau žinojo tai. Tai buvo galima numatyti. O pasaulis jau nuo persikėlė iš SHA1 į SHA256, kuri yra tik išgalvotas būdas sakydamas: jie naudoja didesnius bitai. Ir iš tiesų, net CS50 savo paties svetainė atnaujino pernai to-- ne tai, kad mes susiduriame visa tai daug grėsmių bandant gauti ne PDF ir whatnot-- bet CS50 tinklapyje naudoja didesnę maišos funkciją, Tai reiškia, kad mes būsime saugūs. Taigi visi jūsų PDF bus saugus, bet ne nebūtinai jūsų pinigai arba nieko ypač privati ​​ar asmens naudoti. Sp patikrinti, kad URL, jei norite kaip tam tikrų papildomų detalių. Taigi problema nustatyti penki yra Iš tiesų, dėl horizonto. Viktorina viena tai ateina trečiadienį. Bet ar pasinaudoti biure valandų, tiek vakarą ir rytoj. Ir taip pat pasinaudoti darbo valandomis, jei esate prieinama, tiesa po to. Darbuotojai ir aš klijuoti aplink ir padaryti daugiau atsitiktinis Q & A Be vakarą. Ir leiskite man primygtinai dėmesį čia, nes Tiems iš mūsų, čia Nauji Haven-- todėl visiškai už Scaz s pastabų jaučiau, aš tikiu, tarsi į kalną kova tiek. Ir reputacija, jei jums neišmoko jau ar girdėjote iš kai Harvardo draugais, žinau čia yra keletas nauja institucinė atmintis. P nustatyti penki rūšies rūšies linkęs būti iš CS50 sunkiausia, arba sunkiausia dauguma studentų. Bet ką tai reiškia, kad mes beveik tuo šio kalno viršuje. Ir aš tikrai reiškia tai. Tai labiausiai sudėtinga, tačiau jis taip pat labiausiai apsimokėtų tuo, kad, skirtingai nei dauguma kas antrą įvadinė kompiuterių mokslas Žinoma JAV, kad mes žinome, dauguma studentų nesibaigia intro Žinoma, jau įgyvendino dalykų, pavyzdžiui, medžių, ir bando, ir maišos lentelės, ir panašiai. Ir todėl aš tikiuosi, kad ir Tikimės, kad jūs esate turi milžinišką jausmą pasitenkinimo net jei savaitę ar dvi, per kurią Jūs gaunate tai pasitenkinimo jaučiasi šiek tiek panašaus į tai. Bet leiskite patikinti, mes tik keturis P rinkiniai kairę. Taigi tarsi tos viršuje akyse. Iš kitos pusės jo, pasitiki mumis, tai tik kalvos ir debesys. Ir mes pasakysime, šuniukai yra iš kitos pusės. Taigi jums tereikia pakabinti ten šiek tiek ilgiau. Aš turiu galvoje, iš tiesų, kaip mes pradėti perėjimą į interneto programavimo pasaulyje, Jūs pamatysite, kad viskas become-- tai žavinga tikrųjų. Gerai, mes rašyti šį URL vėliau. Rasite per, kad mes pasiekti tarsi plynaukštėje kur viskas yra iš tikrųjų vis dar sudėtinga ir sudėtingas iki dizainas, bet jūs nesate ketina jaustis kaip mes nuolat vyksta iki šio kalno. Taigi šiek tiek komfortą, kad. Taigi be tolesnio ceremonija, pradėkime kad šis rinkos perėjimą į į pasaulio semestrą interneto, ir tikrai pasaulis su kuria visi iš mūsų yra labiau žinomos. Mes turime interneto įrenginius mūsų kišenės, mūsų stalų, mūsų kuprinės ir pan. Kaip veikia visą šį darbą? Ir kaip mes galime pradėti rašyti kodas, kuris ne itin paslaptinga o kai mirksi teksto eilutę kad savo draugais ar šeima nė kada nors norės bendrauti su, bet kažkas, galite įdėti savo telefonus, ar savo interneto naršyklių, arba bet kokius įtaisus, kurių kurioje jie sąveikauja. Taigi čia yra kažkieno namuose. Ir viduje šio namo yra pora nešiojamieji kompiuteriai, senų mokyklos darbalaukyje pora Kompiuteriai, kažkas vadinamas kelvedžio ar šakotuvo centru, ir tada kai kurie iš rūšies Kabelinis modemas arba DSL modemas. Ir tada ten internete, paprastai parengtas kaip debesis ten danguje. Taigi ši nuotrauka, nors šiek tiek tarsi data, tikrai fiksuoja, ką daugelis iš tikriausiai turite savo namuose, ar efektyviai, ką jūs visi savo bendrabučio kambariai arba butai, arba panašiai. Taigi, kas iš tikrųjų vyksta, kai bandote naudotis internetu šiandien? Taigi kiekvienas kompiuteris dėl internetas, it turns out, turi turėti unikalų adresą, panašiai kaip mes, realaus pasaulio poreikį pašto adresą, kaip 51 Prospect Gatvė, Niu Heivenas, Konektikutas, arba 33 Oksfordo gatvė, Kembridžas, Masačusetsas. Taigi, tai kompiuteriai internete need a būdas unikaliai spręsti patys. , Kuris yra toks, kad, kai vienas kompiuteris nori kalbėti į kitą, jis gali siųsti žinutę ir informuoti gavėją, kuriam ji turėtų siųsti atsakymą atgal. Taigi jis tiesiog daro rūšiuoti intuityvus jausmas galbūt kad viskas turėti adresas kažkoks. Bet kaip jūs gaunate adresą? Na, jei jūs gaunate čia Campus, ar jums eiti namo ir jūs įjungiate savo nešiojamas ar stalinis kompiuteris, ir arba prijunkite jį arba prisijungti prie "Wi-Fi", paaiškėja, kad ten specialus serveris daugelyje tinklų vadinamas DHCP serverio. Tikrai ne klausimas ką tai reiškia, bet tai Dynamic Host Configuration protokolas, kuris yra tik išgalvotas būdas pasakyti, tai yra kompiuteris, kuris arba Jeilio turi, arba Harvardo turi arba Apklausa turi arba Verizon, ar jūsų įmonė turi, kurio tikslas gyvenime, kai jis girdi kažkas naujai pridėtų prie tinklo, yra čia pasakyti, naudoti šį adresą. Taigi mes, žmonės neturi sunku kodą į mūsų kompiuterius ką mūsų unikalus adresas. Mes tiesiog įjunkite jį, atidarykite Dangtis, ir kažkaip šis serveris vietinio tinklo tiesiog man sako, kad mano adresas yra 51 Prospektas Gatvė, arba 33 Oxford Street, ar panašiai. Dabar jis nesiruošia būti taip daugiakalbė, kaip kad. Greičiau tai, ką aš ruošiuosi gauti yra skaitmeninis adresas vadinamas IP adresą. IP reiškia interneto protokolas. Ir šansai yra iki šio laiko savo gyvenime, Jūs tikriausiai girdėjote arba matė žodį IP, arba apskritai išmesti aplink galbūt. Bet iš tiesų, tai gana tiesiai į priekį dalykas. IP adresas yra tiesiog punktyras dešimtainis skaičius, tai reiškia, kad kažkas taškas kažkas dot dot kažką kažką. Ir kiekvienas iš šių septyniasdešimties atsitinka būti tarp 0 ir 255 numeris. Taigi remiantis penkiais plius savaites CS50, jei Šie skaičiai kiekviename diapazone nuo 0 iki 255, kiek bitų yra kiekvienas tų skaičių ženklų? Auditorija: aštuonių. David J. Malan: tai turiu būti aštuoni. Taigi iš viso, kiek bitai yra IP adresas? Auditorija: 32. David J. Malan: Taigi 32. 8 plius 8 plius 8 plius 8 yra 32. Kiek iš viso IP adresai gali buti pasaulyje? Auditorija: 4 mlrd. David J. Malan: Taigi maždaug keturių mlrd nes tai 2 32 galia. Rūšiuoti Ir jei jūs negalite iš Grok, kad jūsų protas, tiesiog žinau, kad 32 bitų reikšmės gali būti toks pat didelis kaip 4 mlrd jei visa tai teigiamas vertybes. Taigi tai reiškia, kad ten 4 mlrd galimi IP adresai pasaulyje. Ir juokinga istorija, mes natūra bėga iš jų. Ir iš tikrųjų tai didžiulė problema, kad pasaulis taip pat buvo ši problema ateina, bet nebūtinai atsakė į tai greičiausiu būdu. Ir iš tiesų, kai jūs baigė CS50 ir pradėjo atkreipiant dėmesį į technologijų pasaulyje, jums pamatyti tai labai dažnai Teminė. Pavyzdžiui, jei mes einame tikrai senosios mokyklos šiandien, Y2K. Tai buvo tikrai ne staigmena. Kaip visi žinojo, už 1000 metų, kad ši was-- daugiau nei tūkstantis years-- kad kad galiausiai buvo nutiks. Ir dar, mes į tai atsakyti labai ne paskutinę minutę. Ir tai nepasikartotų. Taigi, šiandien mes kalbame apie IP versija 4 d. Bet žinau, kad pasaulis pagaliau gauti aplink atnaujinate kažkas vadinamas IPv6 kuriame vietoj 32-bit adresai, uses-- kas nori imtis atspėti, kiek bitų? Auditorija: 64? David J. Malan: Geras spėjimas, bet ne. Mes pagaliau bando gauti į priekį kreivė. Auditorija: 128. David J. Malan: 128, kuris yra freaking didžiulis skaičius IP adresų, nes tai kaip visada 2 kartus po 2, times 2, daug kartų Nedideliais iki nuo 4 mlrd. Taigi, jei įdomu. Pasirodo out-- ir aš tiesiog googled tai Norėdami rasti šią out-- Yale kompiuterių, čia Jeilio, linkę pradėti su tai numbers-- 130,132 taškų kažkas, ir 128,36 dot kažką. Bet ten tikrai išimtys visur Priklausomai nuo to, departamento ir Statybos ir miesteliu esate. Harvardo paprastai turi 140,247 ar 128,103. Ir apskritai tai nenaudinga informacija, bet tai ką jūs pastebėsite dabar. Paleidus išnyra aplink nustatymus savo kompiuteriuose, galite pradėti pastebėti šie rūšių modelius prieš ilgas. Bet kai esate namuose ir turėti "Apple" oro uoste, arba Linksys prietaisas, arba D-Link, ar kokia ji yra Jūsų tėvai ar broliai ir seserys įrengtas savo namuose, taip pat Ką jūs tikriausiai yra tai, kas vadinama privati ​​IP adresas. Ir tai buvo iš tikrųjų gražus, laikinas sprendimas tekančio problemos trumpas IP adresai. Ir tai, ką jūs galite padaryti su namų tinklų, typically-- ir atvirai, net Jeilio ir Harvardo pradeda tai padaryti skirtingose ​​areas-- yra jums gali suteikti visa krūva kompiuteriai vienas IP adresas taip ilgai, kaip jūs įtraukėte specialus įtaisas priešais juos, kažkas vadinamas maršrutizatorius, arba jis gali būti vadinamas proxy arba bet kita ko, skaičius. Tačiau tam tikras prietaisas, turi, kad vienas IP adresas. Ir tada atsilieka Įrenginys, pastato viduje, per namą ar butą, gali būti bet kurį iš kompiuterių skaičius, kurie visi turėti IP adresą, kad pradėti su viena iš šių skaitmenų čia. Ir tol, kol tame kompiuteryje žino kaip konvertuoti visuomenė adresas privatus adresas viskas galima rūšiuoti darbo, kaip tikėtasi. Bet tai Converse, kad jei Jūs esate namie, ir jūs turite broliai ir seserys, ir abu esate apsilankymą šiek tiek svetainę, kad svetainė nėra žinoti, jei ji jums ar jūsų broliai ir seserys apsilankę interneto svetainėje, nes atrodo, kad tas pats asmuo, nes visus savo duomenis išgyvena tą maršrutizatorių arba kad centrinis taškas. Bet pakankamai šių žemesnio lygio detales. Leiskite pažvelgti, kaip IP adresai išvaizdą kartais sugalvoti galbūt žiniasklaidoje ir kaip mes dabar galime pradėti sugadinti, Atvirai kalbant, net daugiau rodo jums. Jei galėtume pritemdyti žibintai kelias sekundes. [Vaizdo įrašų atkūrimas] -Jis Yra 32 bitų dėl IPP 4 adresą. -IP ES internet-- -Private Tinklas Tamia privatus tinklas. Ji tokia nuostabi. -Come Ant Charlie. David J. Malan: Tai veidrodis IP adresas. Ji leidžia mums žiūrėti kuris ji daro realiu laiku. [PABAIGA PLAYBACK] David J. Malan: Gerai. Taigi keletas problemų su šiuo klausimu. Taigi vienas, ką mes ieškome ne čia ekrane yra kodas parašytas kalba vadinamas Tikslas-C kuris yra tipo įpėdinis C kalba, kad mes darome. Tai visiškai nieko daryti su programavimu. Iš tikrųjų, kaip geriausiai galiu pasakyti, tai yra piešimo programa kad kažkas atsisiųsti iš Interneto kažkaip susijęs spalvotieji pieštukai. Galbūt mažiau baisiausia yra tai, kad Šis IP adresas, galioja, ar negalioja? Auditorija: negalioja. David J. Malan: netinkamas, nes 275 yra, žinoma, ne tarp 0 ir 255. Tai taip pat yra turbūt Gerai nors, nes Jūs nenorite krūva kvailų žmonių kuris yra tarsi sustoja TV savo TiVos ir tada apsilankymą IP pamatyti jei ten tikrai kažkas ten. Taigi, kad viena yra šiek tiek mažiau baisiausia. Bet suprantu, kad taip pat yra rūšiuoti visi aplink mus. Taigi žinoma, nė vienas iš mūsų kada nors tikrai įrašykite skaičių adresus į mūsų naršyklių. Būtų rūšies blogas dalykas jei "Google", apsilankyti "Google", Jums teko eiti į 123.46.57.89. Ir visas pasaulis turėjo tiesiog prisiminti, kad. Ir tiesą sakant, mes natūra nuo iki matė šį klausimą. Atgal į dieną, kai žmonės neturi turi mobiliuosius telefonus ir adresatų sąrašus, o įmonės iš tikrųjų still-- tikrųjų, Manau, bendrovės vis dar turi 800 numeriai ir like-- bet jūs paprastai pamatyti skaičių reklamuojami kaip 1-800-rinkti, C-O-L-L-E-C-T. Kadangi niekas negali prisiminti, pamačius skelbimą ant autobuso arba Billboard, ką kažkas numeris yra tačiau jie greičiausiai gali, su aukštuoju tikimybė, nepamirškite žodį. Taigi mes priėmėme tą patį rūšies sistemos pasaulyje iš interneto, pagal kurį ten Domain Name System, kad mes, žmonės gali įrašykite google.com, facebook.com, yale.edu, harvard.edu, ir tegul Kompiuteriai skaičius , kas atitinkamu laikotarpiu adresas yra už tam tikrą pavadinimą. Ir kaip jums tai padaryti į realaus pasaulio yra tai, kad 10 $ per metus, gal $ 50 per metus, galite įsigyti domeną pavadinimas arba tikrai išsinuomoti domeno vardą. Ir tada kas mokate išsinuomoti tą domeno vardą, pasakykite jiems, kas pasaulyje žino, ką jūsų IP adresas yra. Ir mes neisiu į jų INFORMACIJA, tačiau daugelis iš jūsų galbūt norėsite galutinei projektai, iš tikrųjų užsiregistruoti už savo web hosting Įmonės, nei nemokamai arba už kelis dolerius per mėnesį. Kai kurie iš jūsų galbūt norėsite pirkti, už keletą dolerių, savo domeno pavadinimą, tiesiog for fun arba pradėti savo verslą arba asmeninis svetainę arba panašiai. Ir suprasti, kad visi to galiausiai skliautais jums pasakojantį pasauliui ką jūsų serverio IP adresas yra. Ir tada šie DNS Serveriai tikrųjų rūpintis informavimo apie likusį pasaulį. Taigi, visi DNS serveris turi Trumpai tariant, viduje iš jos atminties yra tarsi ekvivalentas Google skaičiuoklės arba Excel bent dvi kolonos, iš kurių vienas turi vardus, kaip harvard.edu ir yale.edu ir google.com. Ir kita stulpelyje pateikiama atitinkantį IP adresą arba IP adresai. Ir mes iš tikrųjų galite pamatyti tai. Taigi mano Mac-- ir jūs galite Tai padaryti "Windows" kompiuterius kaip well-- jei aš atverti terminalo langą čia gana panašu į CD50 IDE vieną, Dauguma kompiuterių turi komandą, pavadintą Nslookup, vardų serverio ieškoti. Ir jei aš tipo kažką kaip yale.edu ir paspauskite Enter, kas Turėčiau pamatyti, jei mano tinklas bendradarbiauja su jis padarė kelių bandymų prieš klasę began-- pabandykime google.com. Žinoma, dabar nieko manimi dirbti. Tai puiku. Gerai, stovėti vieną akimirką. Nslookup google.com. Na, pažiūrėkime, jei Tikrasis internet-- Nr. Štai kas atsitiko. O mano Dieve, viskas gerai. Wi-Fi "sugedo. Ei, nori žinoti, ką mano IP adresas yra? Gerai. YaleSecure. Tai kaip pašalinti triktis dalykų kaip kompiuteris mokslininkas. Mes savo ruožtu Wi-Fi išjungtas. GERAI. Ir iš tikrųjų, Scaz, jūs mind prisijungti mus į saugią vieną? Priešingu atveju daugiau bandymų are-- Gerai, ačiū Jūs Yale-- ar ketinate nutraukti. Noriu eiti į YaleSecure. Oi, o gal mes bus OK. Gal mes grįžome. Ir tai, kaip, kaip kompiuteris mokslininkas nustatyti kompiuterį. [Plojimai] Gerai. Taigi, kur aš buvau per šį taip vadinamas terminalo langą, ir jei aš nslookup yale.edu, ten mes einame. Taigi aš grįšiu pirmas IP adresas DNS serveris, kad mano nešiojamas naudoja. Taigi, be DHCP serverio, kad mes kalbėjome apie prieš akimirką pasakoja mano nešiojamas, ką mano IP adresas adresas, kad DHCP serveris Taip pat man sako, ką DNS serveris naudoti. Priešingu atveju būčiau rankiniu būdu įrašykite tai. Bet tai dar ne viskas, kad įdomu. Kas man rūpi, kad tai yra IP adresas Jeilio tinklalapyje matyt. Taigi iš tiesų, pabandykime tai. Leiskite man eiti į naršyklę ir eikite http: // ir tada, kad IP adresą, ir paspauskite "Enter". Ir pažiūrėkime. Tai kaip kitaip galite apsilankyti Yale interneto svetainėse. Dabar tai dar ne viskas, kad įsimintina. Kaip, iš anksto frosh tikriausiai nesiruošia prisiminti šį konkretų adresą jei pasakė, aplankyti ten po apsilankymo. Tačiau atrodo, į darbą. Ir taip DNS tikrai tik leidžia mums turi daug daugiau žmonių draugiškus adresus. Jie nebūtinai tiesiog duoti vieną atsakymą. Iš tiesų, kai esate tikrai didelis technologijų kompanija, jūs tikriausiai norite turi daug serverių. Ir net tai klaidinantis. Taigi Jeilio tikriausiai nėra turiu tik vieną serverį. "Google" turbūt neturi tik 10 arba tiek interneto serverių. "Google" ypač tikriausiai turi tūkstančius interneto serverių visame pasaulyje, kurie gali reaguoti į prašymus iš žmonių kaip mūsų. Bet jie taip pat naudoja technologiją, pavadintą apkrovos balansavimo, kuris ilga istorija trumpa, turi vos keletą prietaisų pasaulyje skleisti apkrova per daugiau serverių. Taigi, tai tipo kaip voratinklyje, jei Jums bus išsiųsdamas prašymus. Bet dabar, visi tai Įdomu šiandien yra tai, kad domeno vardo kaip google.com net gali turėti kelis IP adresus, pavyzdžiui, kad. Bet kaip visi mūsų duomenų tikrųjų gauti ir atgal tada galų gale? Na, it turns out, kad ten jie dalykų vadinamas maršrutizatoriai internete. Ir kas yra kelvedis į kiek, kad jūs jau žinote? Ir aš naudojamas žodis pora kartų, jei namuose kontekste, bet paprastais terminais, Ką maršrutizatorius daryti? Duok man tik spėti remiantis jo pavadinimo? Auditorija: Taigi kelių ar kelias? David J. Malan: Taigi tai kelių ar kelias. Taigi, kai maršrutas yra kelių arba kelias, absoliučiai. Ir maršrutizatorius, todėl įrenginys, kuris iš tikrųjų maršrutai informacija, būtų perkelti duomenis tarp A ir B taškų Ir taip fact-- ir tai gal kai jums Google vaizdavimas maršrutizatoriai į pasaulį, visi jūs gaunate yra sūrio rinkodaros diagramos. Ir todėl tai tarsi pats atstovas vieną galėčiau rasti kad atrodė šiek tiek įdomu. Kiekviena iš šių taškų ar Akys vilties visame pasaulyje atstovauja maršrutizatorių. Ir kiekvienas iš jų turi liniją tarp kitu maršrutizatorių. Nes iš tiesų, ten Yra tūkstančiai, tikriausiai Milijonai maršrutizatoriai aplink pasaulis, kai kurie iš jų yra mūsų namuose ir mūsų miesteliai, bet iš daug kurie priklauso didelėms įmonėms ir yra tarpusavyje sujungtos taip, kad, jei aš norite siųsti tam tikrus duomenis iš čia Jeilio grįžti namo į Kembridžą, Jeilio tikriausiai neturi vieną kabelį, žinoma, vyksta tiesiogiai Harvardo. Ir Jeilio neturi vieno kabelio vyksta MIT, arba Stanfordo, arba Berkeley, ar "Google", arba bet priemiesčiuose skaičius. Atvirkščiai, Jeilio ir Harvardo ir visi kiti internete turi vieną ar daugiau maršrutizatoriai prijungtas prie jo, gal dėl kampusie periferijoje. Taigi, kad kai mano duomenys nori palikti Yale universitete, jis eina į tą artimiausią maršrutizatorius, kaip pavaizduota pagal vieną iš šių taškais. Ir tada, kad maršrutizatorius skaičiai, ar siųsti jį šiuo būdu, arba tokiu būdu, arba tokiu būdu, arba šis būdas pagrįstas ant kito savo atmintyje stalo, kitas Excel failas arba "Google" skaičiuoklės, kad vienoje skiltyje sako, jei jūsų IP adresas prasideda su numeris vienas, eiti šiuo keliu. Jei jūsų IP adresas prasideda numeris du, eiti, kad taip. Ir todėl jūs galite ją padalyti Skaitmeninio turėti maršrutizatorius siunčia duomenis kas kokiu būdu. Ir galime rūšies pamatyti tai taip pat. Vykime į priekį į šį terminalą langas vėl, ir leiskite man eiti į priekį ir atsekti maršrutą į, tarkim, www.mit.edu, kuris yra pora šimtų mylių. Tai buvo tikrai velniškai greitai. Taigi, kas atsitiko? Taigi vos septynių žingsnių ir vos keturių milisekundžių, Aš pasiunčiau duomenis per internetą Iš čia Jeilio MIT. Kiekviena iš šių eilučių, galite galbūt atspėti dabar parodo, ką? Auditorija: Maršrutizatorius. David J. Malan: Maršrutizatorius. Taigi iš tiesų, atrodo, kad ten apie septynis ar taip maršrutizatoriai, ar šešis maršrutizatoriai tarp manęs fiziškai Yale teisės mokyklos čia ir MIT svetainė ten. Ir ką mes galime rankioti iš tai kaip follows-- ir leiskite man išvalyti jį. Aš ruošiuosi pakartotas jį su komandą linija argumentas -Q 1 tiesiog pasakyti, tiesiog duoti man vieną užklausą. Pagal nutylėjimą, Trace Route daro trys. Ir štai kodėl mes matėme kekių skaičių. Noriu pamatyti mažiau numerius tik išlaikyti išėjimo siurbliu. Ir pažiūrėkime, kas vyksta. Taigi dėl kokios nors priežasties, kažkas Jeilio minties būtų juokinga jį vadiname savo Numatytasis maršrutizatorius arubacentral, kuris yra VLAN ar virtualus LAN, virtualus vietinio Tinklo 30-- todėl jūs tikriausiai bent 29 others-- router.net.yale.internal. Ir .internal čia yra rūšies klastotė aukščiausio lygio domenas skirtas būti naudojamas tik miesteliu. Ir pastebėti atitinkamą IP adresą tos maršrutizatorius, kur ji yra čia miesteliu, yra 172.28.204.129. Ir jis paėmė 36 milisekundžių eiti iš čia į ten. Juokingi istorija. Mes grįžti į tą, kuris tik akimirkai. Bet dabar antra router-- į kuri arubacentral matyt turi tam tikrą fizinę natūra jungtis dauguma likely-- žmonės nesivargino pavadinti ją. Jeilio žmonės nesivargino pavadinimų ji, nes jis viduje jūsų tinklo atrodo. Ir taip jis tiesiog turi IP adresą. Bet tada trečioji maršrutizatorius čia Yale tinkle tai tikriausiai šiek tiek Kuo toliau dar vadinamas cen10g kokia tai asr.net.yale.internal. Ir ji taip pat turi IP adresą. Dabar kodėl šie skaičiai rūšies svyruoja? 2.9, 1.4, 36? Maršrutizatoriai gauti užimtas. Ir jie gauna perpildyta ir paremti. Yra tūkstančiai žmonių apie tai Su bendrabučiu naudojant internetą dabar. Yra šimtai žmonių šiame Kambarių naudojant internetą dabar. Ir taip, kas vyksta yra tai, kad maršrutizatoriai gali gauti perpildyta. Ir taip tie laikai galėtų svyruos truputį. Štai kodėl jie nebūtinai padidinti tiesmukai. Bet viskas susitvarko rūšies įdomus Ketvirtas žingsnis. Matyt tarp Jeilio ir Ketvirtas žingsnis yra dar vienas hop'as. Ir kur yra maršrutizatorius keturių žingsnis tikriausiai? Auditorija: [nesigirdi] David J. Malan: JFK galbūt, gal oro uoste. Bet dėl ​​kokios nors priežasties, sistemų administratoriai, taigi Geeks, kad paleisti serveriai metų pavadino maršrutizatoriai po artimiausio oro uosto kodą. Taigi JFK tikriausiai reiškia, tai tik kažkur Niujorke, gal Manhetene arba vienas iš miestelių. nyc2 reiškia, matyt, dar Maršrutizatorius, kad kažkur Niujorke. Aš ne visai žino, kur eilutę šešių čia, maršrutizatorius numeris šeši. quest.net didelį IPT, interneto paslaugų teikėjas, kuri teikia interneto ryšį didelių vietose, pavyzdžiui, Jeilio ir kiti. Ir tai paskutinis, tai atrodo, kad MIT nėra net turėti savo svetainę Kembridže nebūtinai, o jie jau perkamos jų interneto svetainėje, arba bent jau fizinės serveriai, prie kompanijos "Akamai. Ir Akamai tikrųjų yra teisinga žemyn kelio nuo MIT Kembridže paaiškėja. Bet per suprantame, kad net minties jūs ketinate www.mit.edu, mes tikrai galėjo būti išsiųstas bet kurioje pasaulio vietoje. Ir pažiūrėkime kažkur kitur pasaulyje. Leiskite man eiti į priekį ir išvalyti Šis ekranas ir vietoj atsekti maršrutą, tik vieną kartą, todėl užklausti vienas, į www.cnn.co.jp, Japonijos puslapis CNN, naujienos svetainę. Ir jei aš paspauskite Enter dabar pažiūrėkime, kas vyksta. Mes vėl pradedant arubacentral. Mes tada vyksta į bevardis maršrutizatorius, keli. Taigi jis paėmė 12 apynių gauti į Japoniją šiuo metu. Ir pažiūrėkime, ką mes galime rankioti. Taigi pats hop, pats-hop'as. Šiek tiek kitokia. Tai vienas įdomus. Taigi spėju čia stamford1 yra Keletas miestų toli Connecticut, taip pat. Šie šeši eilės maršrutizatoriai septyni neturite pavadinimus. Bet tai kokios nuostabios. Taigi, kas, atrodo, tarp maršrutizatoriai septyniose ir pakopos aštuonių? Ir kodėl jūs sakote, kiek? Taip? Auditorija: vandenynas. David J. Malan: Tikriausiai vandenynas. Mes žinome, kad tai tiesa kaip, intuityviai, tiesa? Tačiau mes galime patvirtinti, kiek natūra rūšiuoti iš empiriškai kodėl? Kas pasikeite nuo eilutės septyni aštuoni? Jis paėmė daug daugiau laiko eiti į kokia tai bevardis maršrutizatorius septyni yra, tikriausiai kažkur kontinentinės JAV, aštuonių žingsnis, kuris yra tikriausiai kur nors Japonija remiantis domeno vardo Jp ten. Ir taip tie papildomi šimtą kažkas milisekundžių arba 90 ar taip milisekundžių yra mūsų duomenų rezultatas vyksta per gana didelio vandens telkinio. Dabar smalsiai atrodo, kad gal kad kabelis eina visoje JAV. Jei mes iš tikrųjų vyksta per West Coast patekti į Japoniją, tai tipo ilgas kelias jei mes einame į kitą pusę. Taigi, tai nėra visiškai aišku, kas vyksta fiziškai. Tačiau tai, kad kiekvienas Papildoma hop'as tiesų paėmė žymiai ilgiau nei kas kitas, tai gana geras patvirtinimas, kad CNN Japonijos interneto serveris yra turbūt tikrai Japonijoje. Ir tai tikrai toliau atokiau nei MIT buvo. Ir tai verta paminėti, taip pat, jūsų duomenys yra nebūtinai ketina keliauti trumpiausią atstumą. Iš tiesų, jei jūs pažaisti su Trace Route namuose tiesiog skinti atsitiktinis tinklapis, jums gali rasti, kad tik siųsti elektroninį laišką arba apsilankyti svetainėje tai čia New Haven, Kartais jūsų duomenims gali būti pirmas imtis lankstą, eiti į DC, ir tada grįžti į viršų. Ir tai tik dėl to, Dinaminiai maršruto sprendimai kad šie kompiuteriai yra priėmimo. Dabar tiesiog for fun, gamybos komanda neapdailintais kraštais vieną iš šių vaizdo įrašų mus tiesiog būti šiek tiek daugiau glausta. Bet mums greitai jausmą here-- ir mes galime palikti šviesas on-- , kad tik kiek kabelių yra faktiškai tvarkantį visi mūsų duomenų. [Vaizdo įrašų atkūrimas] [Muzikos grojimo] [PABAIGA PLAYBACK] David J. Malan: Visi networking video turi atvėsti skambančia muzika, matyt. Taigi, kad gauti tik jausmas, kiek turi vyksta po gaubtu. Bet tegul pažvelgti į šiek tiek žemesnio lygio dabar ne, kokie duomenys yra iš tikrųjų važiuojantiems tas linijas, ir net ketina laidų kaip šiuo kambaryje. Taigi paaiškėja, kai jūs prašote interneto puslapis, arba išsiųsti elektroninį paštą, arba gauti žiniatinklio puslapį arba e-mail, arba Gchat pranešimą, arba "Facebook" žinutė, ar panašiai, kad yra ne tik vienas didelis riekė bitai teka laidų per oro arba elektroniniu būdu laidais. Atvirkščiai, šis prašymas arba atsakas yra paprastai chunked į atskirus gabalus. Taigi, kitaip tariant, kai jūs turite prašyti, kad iš kito kompiuterio, ar jums grįžti atsakymą iš kito computer-- kaip tarkime, pavyzdžiui, jei unfamiliar-- kaip per daug žmonių Atrodo, kad šie days-- jei susipažinę su this-- tai ne fellow-- šitas. Taigi manau, tai yra žinia, kad Noriu siųsti kažkam nugaros. Kas yra labai Atgal norėtų gauti Rick Astley vaizdą šiandien? Gerai, kas yra jūsų vardas? Auditorija: Cole. David J. Malan: Kas tai? Auditorija: Cole. David J. Malan: Holt? H-O? Auditorija: C-O-L-E. David J. Malan: C-O-L-E, Cole. Atsiprašau. C-O-L-E. Gerai. Taigi, jei aš noriu siųsti Cole šį įsivaizduoju čia, žinote, tai rūšies paveikslą, tiesa? Tai gali būti keletas kilobaitų, keletas megabaitų, ypač jei tai didelės raiškos. Ir aš nemanau, tikrai norite sustabdyti visi kiti iš naudojantis internetu tik, o aš siunčiu tai tikrai didelis, aukštos kokybės vaizdas Rick Astley visoje iš kambario. Norėčiau savo duomenis ir toliau feed tinklą ir "Wi-Fi taip pat. Ir taip ji daro sense-- ir tai yra atlygintinos elektroniniu būdu, ne tiek realiame pasaulyje. Tiesą sakant, tai teks daug reikšmės, jei jūs imtis savo garso išvesties. Taigi, jei aš ašara tai panašiai šiame kėlinyje čia tai dabar gali keliauti Interneto efektyviau, nes jis mažesnis gabalas. Taigi su mažesne tikimybe tai vyksta Susidurti su kažkieno eismo internete. Ir taip, ko iš tiesų nėra kompiuteris kai norite siųsti žinutę Cole tai gabaliukus iki žinutę panašaus į mažesni gabalai, fragmentai, taip sakant. Ir tada jis iškelia juos į vidų, kas mes vadiname rūšiuoti virtualių vokus. Taigi turiu keturis popierius Vokai čia. Ir aš iš anksto suskaičiavo juos, vienas, du, trys, ir keturi. Ir ką aš ruošiuosi daryti priekio tai, kaip normalus siuntimų, yra aš ruošiuosi įdėti Cole vardui. Ir tada viršuje, aš ketina pateikti savo vardui, David, taip, kad pirmas toks paketinių Aš siunčiant ten internete atrodo šiek tiek kažką panašaus Tai svarbiausius savybės iš kurių yra, kad ji turi spręsti, iš adreso, ir taip pat skaičius, taip, kad tikiuosi pakankamai informacijos apie Cole rekonstruoti šį pranešimą. Taigi leiskite man padaryti tą patį Čia čia tas pats, ir tas pats čia, raštu savo vardą Lauke juos visus. Ir tada eikime į priekį ir įdėti šias nuotraukas viduje. Taigi čia yra vienas paketas kad yra pasirengęs vykti. Štai dar vienas paketas kad yra pasirengęs vykti. Čia yra trečiasis paketas kad yra pasirengęs vykti. Ir čia yra ketvirtasis paketas, kad yra pasirengęs vykti. Ir dabar kas įdomu apie kaip tikrovėje darbų internete yra tai, kad nors aš turiu keturi paketai, kurie visi yra skirtos tam pačiam Vieta, jie nebūtinai ketina neigia tą patį maršrutą. Ir todėl, nors galėčiau perduoti juos paketai nuo iki artimiausios maršrutizatorius tarkim, jei norėtumėte siųsti juos kiekvieną kokiu būdu, pažiūrėkime kas iš tikrųjų vyksta, į tikslą kuris yra gauti juos galiausiai Cole. Ir iš tiesų, jie jau nėra nebūtinai atsižvelgiant į tą pačią pusę. Ir tai gerai. Tai yra šiek tiek nepatogu ir Oprah stilius šiandien. O dabar leiskite man sąmoningai imtis, kad vieną atgal. Ir dabar Cole, jei norite surinkite jį kaip geriausiai galite. Žinoma, mes visi galime atspėti, ką išvada čia bus. Jūs ketinate turėti 3/4 Rick Astley vos akimirką. O kas nors yra implikacija, kad? Jūs norite pabandyti surengti jį? Mes turime vieną kamerą nurodė ne jums, jei norite kelti su Rick Astley čia. Čia mes eiti. Gražus. Bet jūs, atrodo, kad trūksta iš Rick Astley fragmentas. Taigi, tai Pasirodo, kad internete paprastai lemia ne tik TL, bet iš tikrųjų mes girdėjome ne labai pradžioje paskaitą toje video-- ir jūs tikriausiai matė tai akronimas daugiau often-- kas tikrai yra protokolas jūs linkę išgirsti apie? Auditorija: TCP / IP. David J. Malan: TCP / IP, kuri yra tik kombinacija iš dviejų protokolų, vienas vadinamas IP. Kuris vėl yra tik rinkinys konvencijų, per kurią mes spręsti Kiekvienas kompiuteris internete. Ir tada TCP, kuris tarnauja kitam tikslui. TCP yra protokolas, kuris jus paprastai naudoti kartu su TL, kad tarp kitų dalykų, garantijos pristatymas. Iš tiesų, TCP yra protokolas, kuris būtų pastebėti, kad vienas iš pakelių matyt negavau Cole, nes jis, atrodo, būti trūksta skaičių keturi iš keturių. Ir taip kas TCP protokolas daro, tai sako, Cole, hey Cole, jei jūs gaunate tik trys iš keturių paketų, pasakykite man, kuris iš jūsų trūksta, iš esmės, ir tada mano gyvenimo tikslas turėtų būti persiųsti, kad. Ir todėl, jei aš per, The siuntėjas, naudoja TCP, Tada turėčiau sukurti naują packet-- tai ne raukšlėtas vienas here-- retransliuoti tik šį kūrinį tai, kad galiausiai Cole pilnas suvenyras, jei nieko daugiau. Bet taip, kad galiausiai iš tikrųjų duomenys gauna į savo teisingą vietą. Bet deja, raštu Cole vardą ant priekinio nepakanka, per se. Ir tikrai, aš ne rašyti Cole vardas, bet tikriausiai jo IP adresas ant voko. Ir aš ne rašyti Dovydą. Norėčiau parašyti savo IP adresą ant voko taip, kad kompiuteriai gali iš tikrųjų bendrauti pirmyn ir atgal. Tačiau paaiškėja, kad kompiuteriai gali padaryti būdas daugiau nei aptarnauti iki Nuotraukos Rick Astley. Jie taip pat gali persiųsti ir gauti elektroninius laiškus, pokalbių pranešimus. Jie gali daryti tokius dalykus kaip failų perdavimo, ir bet kuri iš kitų įrankių skaičius Ar naudojatės internetu, serveriai gali padaryti šių dienų. Ir tik todėl, kad bendrovės, ar mokyklos, ar asmuo, nori turėti serverį, ir pašto serveris, o pokalbių serveris, nereiškia, kad jums reikia tris kompiuterius. Jūs galite turėti tik vieną kompiuteryje, kuriame veikia daug paslaugų, taip sakant. Ir todėl, kai Cole gauna kaip kad žinutė, kaip ar jo kompiuteris žinoti, ar rodo, kad paveikslėlį savo naršyklėje, arba Gchat arba "Facebook" Messenger ", arba bet kokios kitos priemonės, skaičių? Taigi, pasirodo, taip pat, kad kaip vokas yra papildomas gabalas Informacijos žinomas kaip prievado numerį. Ir prievado numeris yra tik skaičius iš tiesų, bet jis vienareikšmiškai identifikuoja ne kompiuteris, tačiau paslauga. Ir ten kekių iš jų. Taigi, tai Pasirodo, kad pasaulyje, žmonėms jau nusprendė dėl keletas tokių konvencijų, kurių kai kurie yra šie. Taigi ten kažkas vadinamas File Transfer Protocol. Tai gana data. Tai visiškai nesaugus. Daug žmonių vis dar jį naudoti. Ir ji naudoja prievado numerį 21. Kitaip tariant, jei siųsti failą per FTP, voko turėtų ne tik siuntėjo ir gavėjo IP adresas, ji taip pat turi numeris 21 taip, kad gaunančioji kompiuteris žino oh, tai yra failas, o ne siųsti arba čate pranešimas. 25 yra SMTP. Kaip daugelis iš jūsų kada nors naudojamas SMTP? Negerai. Beveik visi turite. Jeigu jūs kada nors naudoti elektroninį paštą, jūs naudojote SMTP, Simple Mail Transfer Protocol, kuri yra tik išgalvotas būdas pasakyti, tai yra kompiuterio arba paslaugos tipas kuris siunčia savo elektroninio pašto išvykstamąjį. Ir jei jūs kada nors matė akronimai kaip Pop, arba IMAP, ir ten keli kiti, tas yra skirtas priimti pašto, paprastai. Tai tiesiog reiškia, kad jis kitoks tarnyba. Tai programinė įranga, kad kažkas rašė, kad siunčia ar klausosi dėl konkretaus uosto skaičių taip kad jis neturi suklaidinti laiškus su kitu duomenų tipą. Dabar internete yra HTTP, kuris yra numeris 80, o taip pat 443. Ir iš tikrųjų, nors Mes, žmonės, laimei, neturi tai padaryti, Bet koks laikas jums aplankyti panašus svetainė http://www.yale.edu, naršyklė yra tiesiog yra natūra naudinga tuo, kad ji darant prielaidą, kad norite skaitinį portą 80. Mes jau žinome, kad DNS gali išsiaiškinti, kas IP adresas yra www.yale.edu. Bet kompiuteris yra tik ketina daryti išvadą, kad jus noriu portą 80, nes jūs naudojate "Chrome" arba IE, arba kai kitos naršyklės. Bet aš galėtų techniškai padaryti dvitaškis 80. Ir tada aš galiu aiškiai pasakyti, mano naršyklė, siųsti paketą arba daugiau Informacijos www.yale.edu Prašančioji šiandienos pagrindinį puslapį. Tačiau konkrečiau, adresas ji Yale TL uoste 80 taip, kad aš iš tikrųjų gauti atgal Yale "žiniatinklio serverį. Dabar ji iš karto dingsta nes naršyklių tik nuspręsti, kad mes ne reikia klaidinti žmones turėdami dar daugiau Arcane informacija, pavyzdžiui, storosios žarnos 80. Ir tiesą sakant, Naršyklės kaip Chrome net ne parodyti jums http nebėra, arba storosios žarnos, arba Slash velniop, arba gale velniop, tam tikra prasme, nes jie bando kad viskas paprasčiau vartotojams. Be kita prasme, tai tiesiog rūšies iš vartotojo patirtį thing-- tegul atsikratyti kai netvarkos. Bet tai slepiasi kai Šios pagrindinės detalės. Ir iš tiesų, nė vienas iš mūsų tikriausiai niekada įrašykite http nebėra. Jūs tiesiog įveskite kažką kaip www.harvard.edu. Ir vėl, "Chrome" daro išvadą kad norite HTTP. Tačiau yra ir kitų protokolai kad mes tikrai galėtų būti naudoti. Taigi atsižvelgiant į visa tai, jei jūs dabar rūšiuoti nuo įdėti vadinamosios inžinerijos skrybėlę, kaip daryti dalykus, vadinami ugniasienės veikia? Taigi jūs tikriausiai apskritai susipažinęs su užkarda, ne tiek daug, fiziniame prasme. Taigi atgal per dieną, ir vis dar iki šios dienos, jei jūs turite kaip striptizo centrų, skirtų atvejis, kad turite parduotuvių daug, paprastai į tarp sienos atskiras parduotuves ar parduotuvės yra ugniasienes ta prasme, kad jie turi specialų izoliacija taip, kad, jei gaisras pertraukos vienoje parduotuvėje, ji nebūtinai išplito į parduotuvę šalia durų. Kompiuteris pasaulis taip pat turi ugniasienes kad daryti kažką kitą. Ką bolidas daryti? Taip? Auditorija: Iš esmės Jie nukirto ryšį jei jie susiduria su kažką kaip, pavyzdžiui, jie turi skaičių id ataskaitose. Ir jei kas nors atsitiks, Jie nukirto ryšį. Pavyzdžiui, jei šiuo kenkėjiškas [Nesigirdi] kompiuteris, or-- David J. Malan: Gerai gerai. Taip, ir iš tikrųjų esate net vyksta šiek tiek toliau aprašant kažką, kad gali būti vadinama įsilaužimo aptikimo sistema, arba IDS trumpam, kuriuo Jums iš tikrųjų turi apibrėžtus taisykles. Ir jei jūs pradėsite matyti įtartinas elgesys, galite pabandyti padaryti galą į jį. Ir užkarda, tiesą sakant, tuo tinklų lygį, net dumber ir paprasčiau nei, kad paprastai. Ir ten įvairių tipų ugniasienių pasaulyje. Bet tie, kurie veikia lygis mes kalbame today-- IP ir TCP-- dirbti dar daugiau grynai. Pavyzdžiui, jei jums buvo Jeilio sistema administratoriai, ar Harvardo sistema administratoriai, ar kai didelis Brolis tam tikru įmonės, ir jūs norėjo neleisti visus savo studentai ar visi jūsų darbuotojai nuo ketina facebook.com, Viskas, ką jums reikia padaryti, yra įsitikinti, kad visi jų tinklo srautą, visų pirma, eina per specialų prietaisą. Leiskite ją vadina užkarda. Ir tai gerai, nes jūs galite padaryti savo maršrutizatorių tas pats kaip jei užkarda jūs įtraukėte tos pačios rūšies programinės įrangos tą pačią mašiną. Taigi, jei visi jūsų studentams ar darbuotojai eismo išgyvena tai centrinę užkardą, kaip būtų mums blokuoti žmones nuo minties į facebook.com, pavyzdžiui? Kokia būtų sistema administratorius turi daryti? Kas nors kitas? Pabandykime eiti aplink. Auditorija: [nesigirdi] David J. Malan: Pasakykite, kad dar kartą? Auditorija: Reikia tik gauti pasivijo sistemos viduje. Taigi tiesiog įdėti "Facebook" į 127.0.0-- David J. Malan: O, įdomu. Taigi jūs iš tikrųjų galite tada nulaužti jūsų DNS sistemą. Tai iš tiesų yra būdas jums gali tai padaryti pagal kurį bet kuri kartą Jeilio studentas išsitraukia iki www.facebook.com visi mes čia šiandien miesteliu naudojate Yale DNS serverį, nes Yale DHCP serveris davė mums šiuo adresu. Taigi, taip, galite rūšies pertrauka dalykų arba nutraukti susitarimą tiesiog pasakyti, taip, facebook.com adresas yra suklastotas, yra 1.2.3.4, kuris yra faktiškai nėra teisėtas. O gal tai 278. kokia buvo TV rodo prieš momentas taip, kad nė vienas iš mūsų iš tikrųjų galite aplankyti facebook.com. Taigi tarkime, Jeilio padarė. Tarkime, Jeilio norėjo išlaikyti Jūs iš facebook.com. Ir todėl jie pakeitė DNS nustatymus duoti jums netikrą IP Adresas facebook.com. Kaip jūs reaguojate? Techniškai not-- oh, dabar kiekvienas nori dalyvauti. Gerai, taip. Auditorija: Jūs tiesiog įveskite į Tikrasis IP adresą "Facebook". David J. Malan: Gerai, gerai. Taigi, mes galime tiesiog įveskite į Tikrasis IP adresą "Facebook", panašiai kaip aš su Jeilio tinklalapyje. Ir jei "Facebook" serveris yra sukonfigūruotas remti, kad ji turėtų iš tikrųjų dirbti. Tai nedidelis skausmas kaklas, nes dabar mes prisiminti kai atsitiktinai 32 bitų vertės, bet gali dirbti. Ką dar galima padaryti? Taip. Auditorija: Jūs galite pakeisti tie parametrai [nesigirdi]. David J. Malan: Taip, galima net pakeisti savo DNS nustatymus. Taigi, iš tikrųjų tai yra iš tikrųjų gana naudinga, tiesą sakant, jei esate oro uoste, arba jei esate kavinėje, ar kažką, kad turi keistokas internetą tokia procedūra kartais DNS serveris tiesiog nustoja veikti. Taigi, net aš kartais padaryti tai, o ne kenksminga, aš norite naudoti "Facebook" tikslais, tačiau tikrai nes man atrodo, kad turėti tinklą ryšys, bet nieko dirba. Ir taip vienas iš pirmųjų, dalykų aš try-- ir jūs galite tai padaryti Windows too-- bet mano Mac, jei aš einu į tinklą. Ir aš galiu pasirinkti savo "Wi-Fi" ryšį. Ir aš einu į išplėstinę. Ir aš einu į DNS. Tai yra trys IP adresų, Yale yra duoti man tris DNS serverius. Tada tikslas man pabandyti bet vienas iš šių išspręsti adresus. Bet galiu nepaisyti tai daro pliusas. Ir nors nori pasiūlyti DNS serverį? Auditorija: 8.8.8.8? David J. Malan: O, jūs nuostabios. Taip, 8.8.8.8. Taigi "Google", laiminti savo širdį, nusipirkau IP adresą 8.8.8.8, nes jis rūšies išvaizda GS tikriausiai, ir tai lengva prisiminti. Bet iš tiesų, dabar aš jau sukonfigūruotas Mano kompiuteris naudoti Google DNS serverį. Taigi dabar, jei aš einu į yale.edu, jis vis dar ketina dirbti. Bet aš ne naudoti Yale DNS serveriai nebėra. Ir jei aš einu į facebook.com, visi tie atrodo langų ketinate eiti per Google. Taigi, viena vertus, aš gudriai apėjo vietinės sistemos administratoriai tiesiog suprasti, kaip tinklų darbus. Bet aš mokėti kainą. Nieko nėra nemokamai. Ką aš tiesiog atsisakė? Ką aš tiesiog atsisakė? Visi jūsų protingi žmonės, kurie buvo naudojant 8.8.8.8, nes jis kietas ar sprendžia problemas, Ką Jūs darote visą šį laiką? Auditorija: Traveling toliau? David J. Malan: Gal keliaujant toliau, nes "Google" tikriausiai ne visai taip Uždaryti nes gatve serveryje. Tačiau daugiau worrisomely. Taip? Auditorija: Taigi dabar "Google" žino, kur jūs einate. David J. Malan: "Google" žino, pažodžiui Kiekviena svetainė, kurioje lankotės, nes esate tiesiogine prasme kuriame prašome, ei Google galite išversti yale.edu už mane? Arba ei "Google", galite išversti tai kitoje svetainėje adresas mane į IP adresą. Ir taip they're-- Aš neturiu idėja, ką jūs kalbate apie. Ir taip jie žino viską apie jus. Taigi suprantate, kad tai yra nemokama paslauga su jų požiūriu tikslu taip pat. Bet tai tikrai gali jums iš įpareigoti. Dabar tik spręsti vienas kitas klausimas, kuris dažnai ateina tarp studentų, visų pirma keliaujant tarptautiniu kai kuriose šalyse, pavyzdžiui, Kinija, ten, kur iš tiesų yra Didžioji Kinijos ugniasienė, kuriuo Vyriausybė ten blokai gana iš eismo bitų skirtingais lygiais. Jūs neturite tiesiog blokas eismo lygiu mes kalbame čia, DNS ar kitaip, galite blokuoti jį kitais lygiais. Ir iš tikrųjų, tik būti aišku, užkarda gali veikti dar tiesiog ne tik Atsižvelgdama sistemos administratoriai keisti DNS nustatymus. Ugniasienė yra vienas tarp prietaiso JAV ir kitos pasaulio šalys, galima tiesiog blokuoti bet siunčiama su prašymus IP adresą "Facebook" apie 80 porto arba IP adresas harvard.edu, arba IP adresas nieko. Taigi užkarda gali pažvelgti į savo vokai IP adresus ir net uosto numeriai, o jei Jeilio norėjo, jis gali tiesiog sustoti mus visus iš net naudojant FTP nebėra, kuris būtų tikriausiai bus geras dalykas, nes jį iš tiesų yra nesaugus protokolas. Jeilio netgi gali sustabdyti mus nuo apsilankymą internete visumą tiesiog blokuoja visą uosto eismas numeris 80 taip pat. Taigi, kad gali būti dar vienas būdas. Ir ten net mėgėjas būdų, kaip gerai. Bet kai jūs keliaujate užsienyje, pavyzdžiui, arba jei esate interneto kavinė, arba jei esate visur, kur ten stabdymų ar grasinimai, ką jūs galite padaryti? Na, jei jūs einate gatve "Starbucks" ar jums keliauti į oro uostą, paprastai galite tiesiog apynių "Wi-Fi", pasirenkant kaip, JFK "Wi-Fi iš LaGuardia" Wi-Fi, arba Logan Airport Wi-Fi ", ir ką ne. Ir tai ne užšifruotas, tiesa? Nėra Spynos piktograma. Ir jūs tikriausiai ne paskatino už vardą ir slaptažodį. Jūs esate tik paskatino su kai kvailas formos pasakyti, kaip aš sutinku naudoti šią tik 30 minučių, ar kažkas panašaus. Tačiau nėra šifravimo tarp Jūs ir "Starbucks" Wi-Fi "prieigos taškas, ką su ant sienos antenos. Nėra šifravimo tarp jūsų ir į oro uostą Wi-Fi signalus. Ir taip techniškai, kad šliaužiantis žmogus sėdi keletą sėdynes žemyn nuo jūsų į Starbucks arba oro uosto gali būti, su tinkama programine įranga, žiūrėti visus Jūsų belaidis eismo dėl jo ar jos nešiojamojo kompiuterio. Tai nereiškia, kad sunku įdėti nešiojamą kompiuterį į tai, kas vadinamas pasileidusios režimas, kuris, kaip rodo pavadinimas, reiškia, kad jūs esate rūšies laisvas taisyklių. Ir tai tik klauso ne tik eismui skirtas jai, bet ir visi kiti eismo zonoje. Ir šia logika, ji gali matyti visi informacijos paketus gaunate. Ir jei tuos paketus nėra užkoduoti, jums kelia sau gresia jūsų laiškų, ar jūsų pranešimus, ar dar ką nors gauti veikiami. Taigi, net jei nesate užsienyje bet jūs tik Starbucks, ar esate kai atsitiktinai asmens "Wi-Fi, kuris nėra šifruojami, VPT yra geras dalykas. VPT yra virtualus privatus tinklas. Ir tai technologija kuri leidžia jums turėti saugiame, užšifruotas connection-- mėgėjas nei Cezaris ar Vigenere-- tarp savo kompiuterį, arba Jūsų telefonas arba darbalaukyje ir serverio kitur, pavyzdžiui, ant Yale miesteliu serveris. Ir jei jūs keliaujate abroad-- ir iš tiesų, jums rasti šią viešbučiuose Visą laiką. Ir ypač, kaip trokštantis kompiuterių mokslininkai kur jus vaikinai gali, kaip Geeks, nori naudoti kitus nei 80 uostus, ir išskyrus 443-- uostai ir Iš tiesų dėl problemos nustatyti šeši, mes ketiname žaisti su daug TCP portus tiesiog choice-- daug viešbučių ir parduotuvių, ir tinklais tiesiog blokuoti, kad daiktų rūšis nes jie šiek tiek naiviai, arba nemokšiškai, tiesiog manau, kad nė vienas turi tuos kitus uostus. Ir taip naudojant VPN gali jums apeiti tuos apribojimus rūšių, nes tai, ką daro, yra VPN Jis leidžia jums Starbucks, arba oro uosto arba bet kurioje pasaulio vietoje į encryptedly prisijungti prie yale.edu, tam tikru serveriu čia miesteliu, ir tada tunelis, taip sakant, visus savo srautą iš kur esate per Yale, kuriame taškas Tada jis eina į savo galutinę paskirties vietą. Bet šifravimo, jūs išvengti bet kuris iš šių rūšių filtrų arba skyrimo, kad kai vietinis tinklas įvedė. Ir plius, turite daug labiau patikimas gynybos prieš Creepy žmonių aplink jus, kurie gali bando įsiklausyti į savo srautą. Vis dar gali būti Creepy žmonės čia namo Jeilio žiūri savo srautą kaip jis išeina iš VPN, bet ne mažiau kaip jūs stumti grėsmę toliau. Ir tai čia irgi kompromiso. Dabar, žinoma, jei esate Kinija ar net kavinėje, ir jūs tunelį visi Jūsų eismas per Yale, kokia kaina mes mokėti gal? Auditorija: Greitis. David J. Malan: greitis, tiesa? Yra turite būti šiek tiek matematikos arba kai fanciness dalyvauja į faktinį šifravimas. Gali būti tūkstančiai mylių atstumo ar tūkstančiais mylių kabelių tarp jūsų ir Yale. Ir tai tikrai blogai, jei esate Kinijoje, pavyzdžiui, ir jūs norite aplankyti svetainė Kinijoje. Ir, kad jūsų duomenys ketina JAV, ir tada atgal į Kiniją tiesiog, nes jūs šifravimo jis per šį tunelį. Tačiau ji sprendžia techninės ir dirbti problemas panašūs. Bet viskas suvesta Šie labai paprastas idėjas. Ir Harvardo, tiems, smalsus, turi vienas čia taip pat, bent vpn.harvard.edu, kuri veikia kaip Yale. Taigi visa tai sakė, kodėl yra visas šis tinklas yra naudinga? Ir ką mes galime pradėti daryti su juo? Na, padarykime tai dabar labiau realus. Tai yra akronimas su kuriais daugelis iš mūsų tikriausiai Super familiar-- HTTP-- kuris reiškia hiper teksto perdavimo protokolą. Ir tai tik reiškia, kad tai kalba, protokolas kad interneto naršyklių ir Web serverio kalbėti. Į HTTP P yra iš tiesų protokole. Ir protokolas yra tik konvencijų rinkinys. Mes matėme IP-- interneto protocol-- TCP-- perdavimo kontrolė protocol-- ir HTTP. Bet kas tai yra kvaila dalykas protokolą? Tai tiesiog konvencijų rinkinys. Taigi, jei aš tarsi nusileisti čia, ir aš noriu pasveikinti Jus. Sakyčiau Sveiki, mano vardas yra Dovydas. Auditorija: Luis. David J. Malan Luis. Mes turime šį kvailą žmogų Konvencija purtant rankas čia. Bet tai protokolas, tiesa? Aš pratęstas ranką. Luis pratęstas ranką. Mes tai padarėme. Ir tada baigtas, padaryta. Ir tai lygiai tas pats dvasia kompiuterio protokolą kur, kaip HTTP, kas atsitinka, yra tai. Jei esate kompiuteryje liko čia, ir ten yra keletas interneto serveris yra dešinėje. Ir kairėje kompiuteris nori prašyti informacijos iš šio serverio. Tai tipo dvikryptė operacija. Kairėje naršyklė prašo tam tikrą tinklalapį. Dešinėje serveris reaguoja su tam tikru interneto puslapyje. Ir mes pamatysime, kokia forma tie imtis tik akimirką. Ir paaiškėja, kad tie computers-- kad naršyklės ir serverio arba kliento ir serverio, taip sakant. Panašiai kaip restoranas, kur Klientas klausia kažko, o serveris yra pareikšti jam ar jai something-- gauti yra natūra rezoliucinės žodį. Drąsiai viduje voko, kad mano naršyklė siunčia iš čia į web serveris yra žodis gauti. Kaip aš noriu gauti šiandienos naujienas. Noriu, kad mano "Facebook" naujienų, ar man nori gauti tam tikrą puslapį iš serverio. Tiksliau, tai, kas yra vyksta viduje tos voką. Taigi aš, su Cole esmės išsiuntė Cole atsakymą. Jei galite įsivaizduoti, kad Cole tikrųjų norėjau Rick Astley nuotrauką jis galėjo man atsiuntė prašymą panaši dvasia tai. Viduje jo voką man, kur Aš dabar groja Google vaidmenį, Būtų prašymą, kad pažodžiui sako, gauti, ir tada pirmyn slash-- ir jūs tikriausiai matė Persiųsti nerijos į adresų anksčiau. Tai tiesiog reiškia, duok man default puslapis, numatytasis Rick Astley nuotrauka šiuo atveju. Ir beje, Cole kalba kalbą HTTP versija 1.1 arba protokolas 1.1. Ir it turns out ten senesnė versija 1.0. Bet Kompiuteriai linkę naudoti 1.1. Antroje eilutėje yra naudingas dalykas, kad grįš galbūt prieš ilgas. Bet tai tik specifikacija man gavėjas, kad dalykas, kurį noriu yra www.google.com. Nes tai labai įmanoma, šių dienų dešimtys, šimtai svetainių, kurių skirtingų domenų vardus visiems gyvena tame pačiame serveryje. Jis nesiruošia būti tiesa tiek daug "Google" atveju. Tačiau mažesnio įmonės atveju, gali visiškai būti. Taigi Cole tiesiog rūšies išleidimą į voką, Beje, kai šis pasiekia Jūsų IP adresas uoste 80, tiesiog įsitikinkite, kad žinote, Noriu www.google.com, o ne kai kitų atsitiktinių svetainė tame pačiame serveryje. Kas man tada reaguoti į Cole su, ne dienos pabaigoje yra nuotrauka. Bet ant to paveikslėlio viduje voko iš tikrųjų kai tekstas, kur aš sakau, gerai. Aš kalbu HTTP 1.1 versija taip pat. 200. Kuris yra būsena kodas, dauguma iš mūsų tikriausiai niekada nemačiau, nes tai reiškia, Gerai. Ir tai yra gerai, nes jame reiškia, kad aš esu reaguoti sėkmingai kad Cole prašymu. Ką numeriai turi tikriausiai matyti internete, kad nėra gerai? Auditorija: 404. David J. Malan: 404-- failas nerastas. Taigi iš tiesų, bet kuriuo metu galite mačiau vienas iš tų erzinančių failo nėra rasti klaidų, nes interneto puslapis yra miręs, arba todėl, kad jūs padarėte klaidą URL, kad tik reiškia, kad tiek voko, kad jūsų kompiuteris gauta iš serverio esančius žinutę HTTP 1.1, 404-- nerastas. Kad byla arba kad prašymas jūs padarėte nerastas. Be to, viduje voko paprastai tai yra linija, turinio tipas. Kartais tai HTML, kažkas, ką mes netrukus pamatysite. Kartais tai JPEG. Kartais tai GIF. Kartais tai filmas rinkmena, garso failą, bet daug dalykų. Taigi viduje voko yra tik mažai užuomina, ką gaunu. Yra kiti būsena kodai, kai kurie kurių mes ištirti P nustatyti šeši, ir jūs aptikote P septynis ir / ar aštuonis. Tačiau kai kurie čia, kaip ir 404 matėme. Draudžiama, 403, reiškia, pavyzdžiui, leidimus klysta, kaip jums ne natūra sukonfigūruotas teisingai. 301 ir 302, mes retai pamatyti vizualiai. Bet jie reiškia nukreipti. Bet kuriuo metu jūs nuėjo į vieną URL ir jūs buvote stebuklingai išsiuntė kažkur kitur, tai nes naršyklė išsiųstas atgal vokas, kuriame yra numeris 301 arba 302, ir URL, kad jis nori Jūsų naršyklė eiti vietoj. 500 yra siaubinga. Pamatysite jį prieš ilgas, tikriausiai P nustatyti šeši arba P nustatyti septyni. Ir tai paprastai reiškia, ten kai savo kodą klaidą, nes iš tiesų mes rašyti kodas, kuris reaguoja į interneto prašymus. Ir jūs ką tik gavo kai klaida logikos ar sintaksę, o serveris negali apdoroti. Taigi pažiūrėkime, kaip mes dabar gali paskatinti ir suprasti šiuos prašymus, kaip nurodyta toliau. Jei aš einu į, tarkim, google.com. Leiskite man eiti į www.google.com. Ir demonstravimo labui, tegul pamatyti, man reikia eiti į nustatymus. Aš ruošiuosi eiti į paieškos nustatymų. Ir "Google" turi vis erzina funkcijų, tačiau naudingų funkcijų. Taigi "Google" turi šią akimirką kaip dalykas rezultatai, kur jūs Pradėkite įvedinėti, ir automatiškai dalykų pradėti rodyti. Ir tai viskas gerai ir techniškai naudinga, ir mes suprantame, prieš ilgas, kaip tai veikia. Bet dabar, aš tekinimo nuo greitų rezultatų, nes aš noriu, kad mano naršyklė Rūšiuoti Darbo senosios mokyklos taip kad aš galiu pamatyti, kas vyksta. Taigi dabar aš vėl čia. Ir aš noriu ieškoti katėms. Ir pastebėsite Matau keletą pasiūlymų, keletas labai gerybinis pasiūlymai laimei. Ir dabar, jei aš paspauskite Enter pažiūrėkime, kas vyksta. Taigi yra keletas katės. Ir viršuje hitu yra Vikipedijoje. Tačiau šiandien mes rūpinamės technologija čia. Taigi adresas, kurį aš buvo išsiųstas šis čia. Ir ten kai Daiktai aš nelabai suprantu. Taigi, aš ruošiuosi eiti į priekį, nes I rūšies žinoti, kaip veikia "Google", ir aš ruošiuosi Alembikować tai URL į savo paprasčiausia forma. Ir dabar aš ruošiuosi Enter dar kartą. Ir ji vis dar veikia. Turiu rezultatų Viskas apie kates puslapį. Tačiau pastebėti, kad mano URL paprastumas. Pasirodo, tai kaip daug interneto darbus. Internete yra tik visa krūva kompiuteriai programinei įrangai, kad imtis įvestį. Tai ne gauti eilutė stiliaus įvestį. Tai ne komandinės eilutės argumentai, kaip mes įpratę. Jie priima indėlį, šie interneto serverių, būdu URL gana dažnai. Ir kiekvieną kartą, jūs ieškoti kažko, bet kuriuo metu jūs prisijungęs prie "Facebook", bet kuriuo metu jūs padaryti nieko interaktyvus su interneto puslapis, ką darote veiksmingai pateikti formą, todėl į speak-- teksto laukelius, žymės langelius, mažai apskritimai ir Papuošalą, kad siųsti informacija iš jūsų serveryje. Ir paaiškėja, kad interneto serveris žino ieškoti tuo URL ir išanalizuoti ją, kaip žiūrėti į jį charakterio pagal pobūdį ieškote ko nors Įdomu po klaustuku. Kadangi po klaustuku, it turns out, ketina ateiti iš pagrindinių verčių porų krūva. Aš turiu galvoje klavišas = vertę. Ir tada, jei yra multiple-- gal ženklui, kai kurie kiti klavišas = vertė, Ženklas, klavišas = vertė. Taigi mes rūšies matyti šią idėją prieš kur nors turi vertę. Tai tiesiog naujas formatas čia. Ir aš tiesiog žinau, pagal susitarimą, "Google" naudoja q užklausai. Ir tada, jei aš noriu ieškoti šunų, aš gali rankiniu būdu ieškoti šunims tai patinka. Ir tada aš matyt gauti kai kurie paieškos rezultatai įtraukiant šunys. Taigi, atrodo, kad bus įdomu. Ir iš tiesų, kas vyksta po kapotu tai. Leiskite tai padaryti. Tai a-- pažiūrėkime. Leiskite man eiti atgal per čia tik akimirką. Pamatysime, kad ten kita būdų, kaip pateikti informaciją. Taigi, jei aš prisijungti prie "Facebook", arba "Gmail", arba bet kuri kita populiari svetainė, atrodo rūšies blogai, jei ką aš įvedėte į paieškos laukelį baigiasi mano URL savo naršyklėje adreso juostą. Kodėl? Kodėl tai, kad šiek tiek jaudina? Taip? Auditorija: Įveskite slaptažodį. David J. Malan: Taip. Taigi ką daryti, jei ką aš įvedėte mano slaptažodis? I rūšies nenorite taip akivaizdžiai matomas mano naršyklės adreso juostą. Vienas iš jų, nes mano erzina kambarioku linkęs žiūrėti per petį, ir jis ar ji dabar galima pamatyti, nors ji buvo kulkos, kai aš rašyti jį, mažai ratą. Dabar atėjo mano adreso juostą. Be to, kas tiesa apie tai, kas jūs linkę įrašykite į adreso juostą. Auditorija: [nesigirdi] David J. Malan: Kas tai? Auditorija: ji pasireiškia išsiųsti. David J. Malan: ji pasireiškia išsiųsti. Taip pat, jis bus prisimenamas. Nes kitą kartą įvedate dalykų ten, dažnai ji autocompletes ir prisimena, ką jūs įvedėte anksčiau. Ir taip ten tai tikra istorija kad jūsų broliai ir seserys, ar jūsų kambarioku, ar kas gali vaikščioti iki gana daug pamatyti kiekvieną svetainę lankėtės, nes tai prisijungti toje adreso juostą. Be to, tarkime, kad norite įkelti nuotrauką į "Facebook". Kaip pasaulyje tu ketina įdėti į URL nuotrauką? Na it turns out, galite tai padaryti kai taip, bet tai tikrai ne akivaizdus. Ir taip ten tas kitas būdas išsiųsti informaciją voko, ne per GET, bet per kažką vadinama paštu. Ir teoriškai ji atrodo beveik tas pats. Vietoj žodis GET, mes sakome, paštu, ir tada tos pačios rūšies formatu. Pavyzdžiui, tai yra iš ekrano ką tai gali atrodyti, jei bandau medienos ruoša į "Facebook", kuri siunčia mane į failą vadinamas login.php, kuris yra faktiškai dar iki šios dienos taip pavadintas. Tai to paties pavadinimo Pažymėti davė jai prieš daugelį metų. Tai yra programa, parašė PHP per kurį vartotojai gali prisijungti prie svetainės. Bet jūs turite siųsti Kai kurios papildomos įvesties. Ir užuot tai vyksta po to, kai failo vardas, kaip tai padarė anksčiau su cats-- Q = cats-- jis gali eiti mažesnis prašymu giliau viduje, jei voke bus kur niekas negali matyti, ir kur ji nesibaigia iki į vartotojo naršyklės juostoje, ir todėl Neprisimenu, kad žmonės galėtų landžioti aplink. Ir todėl čia mano elektroninio pašto adresą ir Mano netikras slaptažodį tikrųjų eiti. Ir jei "Facebook", naudojant ne HTTP, HTTPS, bet, tai visi bus šifruojami, plakta, Ala Cezaris ar Vigenere, bet daugiau įmantriai taip, kad nė vienas iš tikrųjų gali pamatyti šį prašymą. Ir taip iš tiesų, bet kuriuo metu turite URL, kuris prasideda https, tai tiesiog reiškia, kad jis manimi šifruojamas. Bet dienos pabaigoje, kas iš tikrųjų viduje šių vokų? Tai buvo super žemas lygis. Ir, laimei, mes ne ketina būtinai turi eiti taip žemo lygio kiekvieną kartą pradėti rašyti įdomų programinę įrangą. Mes galime pradėti imtis savaitę nuo vienos idėjos per penkis, daroma prielaida, kad dabar ši infrastruktūra, kad leidžia mums parašyti programinę įrangą kuri veikia internete, ir jis ketina leidžia mums tai kitą savaitę pradėti žiūri kažką vadinama HTML. Tai yra daiktų, kad yra dar giliau viduje voko, bet tai stuff mes ketina pradėti rašyti. Ir tai stuff daugiau Įdomu tai, kad mes ketina rašyti programas, kurios pradeda generuoti automatiškai kad mūsų tinklapis yra nėra sunku koduojami, bet imtis įvestį ir išvestį gaminti. Tai galbūt paprasčiausias interneto puslapyje galite padaryti pasaulyje. Aš iš tiesų gali atverti kažkas kvailas kaip TextEdit mano Mac, kuris tiesiog suteikia man paprastas tekstinis langas, kaip šis. PC vartotojai turi Notepad.ext, kuris yra labai panašus į spirito. Ir aš galiu tiesiog įveskite iš this-- DOCTYPE HTML, kuri atrodo šiek tiek paslaptingas. Bet mes grįžti prie to. HTML, su jais keistai Kampiniai gembės ir slešų kurio viduje dabar aš ruošiuosi pasakyti čia ateina mano tinklalapio galvą. Viduje, kad aš tiesiog žinau, ir jūs netrukus sužinoti,, kad aš galiu įdėti mano tinklalapio pavadinimas. Ir tada žemiau vadovas tinklalapio yra ketina eiti į vadinamąjį organas tinklalapį. Ir aš tiesiog wcięć tik kaip ir C rūšies laikyti viskas gražiai skaitoma stilistiškai. Ir dabar aš ruošiuosi Išsaugoti kaip file ant mano darbastalio, vadinamas hello.html. Ir aš ruošiuosi pasakyti, taip, naudoti HTML. Nekeiskite jį Txt, net nors visa tai yra tekstinis failas, tik kaip C programą parašyta su teksto redaktoriumi. Nors ne CS50 IDE ne momentas, tiesiog čia mano Mac. Ir jei aš dabar eiti į mano darbastalio, pamatysite hello.html. Jei aš dukart spustelėkite šį, jis atvers "Chrome". Ir nors šį failą atsitinka gyventi ant mano darbastalio, tai turbūt paprasčiausias interneto puslapis galėčiau padaryti. Atkreipkite dėmesį, kad pavadinimas skirtukas kelią iki viršaus yra hello world. Iš tinklalapio kūnas Iš tiesų hello world. Ir viskas, ką aš padariau gauti tai taškas yra įgyvendinti, arba rašyti naują kalbą, vadinamą HTML. Tai ne programavimas kalba kaip C Yra nesiruošia būti sąlygos, ir kilpos, ir funkcijos. Tai kalbą, per kurį Tokiu atveju jums tiesiog pasakyti priėmimą Programa, ką norite daryti. Tai reiškia, hey naršyklę, čia ateina HTML puslapis. Ei naršyklė, čia ateina mano puslapyje galva. Ei naršyklė, čia ateina mano puslapyje kūno. Ei naršyklė, tai jį organizme. Štai jį HTML puslapyje. Ir su šiais paprastais apibrėžimai vieni, mes netrukus pamatysite, kad vieną, galime atstovauti tai kaip medį. Bet daugiau apie tai vėliau. Taigi tai bus visi sujungti į Naujausi mūsų duomenų struktūros. Du, mes pristatyti šį kvailas pokštas. Tai yra tikrasis tatuiruotė, kad šis vaikinas turėjo ant kaklo. Tai tikriausiai juokinga pirmą savaitę arba du, ir po to, gal ne tiek daug. Tačiau HTML, ir net interneto puslapis Aš ką tik padarė, super protas numbingly disappointing-- tiesiog pasakyti labas pasaulį juodos tekstas baltame fone. Žinoma, mes galime padaryti daug geriau. Ir mes tai padaryti, įvedant kita kalba vadinama CSS. Tai taip pat nėra programavimo language-- nėra kilpos, ir sąlygos, arba kilpų, bet tikrai, tik sintaksės, kuria mes galime pasakyti, kad šis tekstas didelis. Padaryti šį tekstą mažas. Teisė suderinti jį. Kairysis jį suderinti. Padaryti rožinė. Padaryti violetinė. Padaryti mėlyna. Ar atlikti kokį nors skaičių kiti vizualiniai efektai. Ir taip mes pamatyti, kaip pradėti stylizing tinklalapius, kad jie atrodo taip arčiau, ką norime. Ir galiausiai, mes iš tiesų sugriovė galbūt daug TV ir kino jums. Aš maniau, mes norime baigti čia su mūsų galutinis sekundžių dėl galutinio klipo, kuris rodo jums kaip įsilaužimo internete darbus. Jei galėtume pritemdyti šviesos vieną galutinį laiką. [Vaizdo įrašų atkūrimas] -Jokiu būdu. Gaunu nulaužė. -Okorsky? -No-- Ne, tai pagrindinis. Jie jau sudegė per NCIS viešojo ugniasienė. -Well, Izoliuoti mazgas ir sąvartynas juos ant kitos pusės maršrutizatorių. -Aš bandau. Jis juda per greitai. -OH, Tai nėra gerai. Jie, naudodami mūsų ryšį [Nesigirdi] Ši duomenų bazė. Sever ją. -Aš Negaliu. Tai vieta ataka. Jis arba ji yra tik vyksta po mano mašina. -Tai Neįmanoma. Yra DOD lygis mano šifravimo. Tai būtų mėnesių get-- -hey, Kas tai yra? Žaidimų? -Ne Tonis, mes vis nulaužė. -Jei Jie gauti Abby kompiuteryje, visa NCIS tinklas yra šalia. -Aš Negaliu sustabdyti. Ar ką nors McGee. -I've Niekada kodą, kaip šis. -OH. -Kur IT eiti? Abby? -Aš Nieko nedarė. Maniau, kad jums padarė. -Ne. -Aš padariau. [PABAIGA PLAYBACK] David J. Malan: geriausias dalis yra du žmonės spausdinamosios ant tuo pačiu metu, klaviatūra. Taigi, kad jį CS50. Mes klijuoti aplink darbo valandomis. Ir mes pamatysime jums kitą kartą. [Muzikos grojimo - "Seinfeld tema"] Tai CS50. Aš nenoriu būti piratu. SPEAKER 2: Yarr Davidas. Tai puikus Doublet jums dėvėti. Partijos luff toje stovai.