[Glazbom] DAVID J. Malan: Pa sam upravo htjela umiriti se. Ja bi jeka što točno Scaz rekao o institucionalne memorije. CS50 je za oko 20 godina na Harvardu. A stvarnost je, od maturanti na dolje, je godišnje uvjeravanja da su brucoša, a sophomores, a juniori i Također maturanti uzimanja CS50, da ćete završiti radiš dobro. Stvarnost je, studenti ne uspjeti CS50. U stvari, u rijetkim slučajevima gdje smo imali Es ili F, to je stvarno bilo zbog olakotne okolnosti, da li je medicinski ili osobno. DS su nevjerojatno rijetki, kao dobro. I ja mogu reći udobno, iako smo obično ne otkrivaju statistike, ali s obzirom da ne postoji institucionalna memorija ovdje uopće, većina studenata u CS50 ne završiti dobivanje rasponu ocjene. Značajan komad završiti završio u rasponu B previše. Dakle, čak i ako bi moglo biti Izjednačavanjem u vašem umu trojkama 60% i zbog toga Ds, ili Cs, ili slično, to stvarno ne postroje sa stvarnošću. Zapravo, mislimo upravo ono što smo kažu na početku mandata tako da mnogi učenici CS50, oba u Cambridgeu i ovdje u New Havenu, nikada uzeti CS tečaj prije. A što doista u konačnici važno je mjesto gdje ćete završiti u 12. tjednu u odnosu na sebe u tjednu nula. Sada imamo višestruke prati u tijeku kao što know-- manje udoban, više udoban, negdje između. I doista, kada se statistike o ovotjednom kviza, nemojte se obeshrabriti ako, osobito ako osjećate da ste oko srednje vrijednosti ili ispod prosjeka ili medijana, pogotovo jer mi ne nužno poduzeti sve one demografske u obzir sredinom semestra sa statistikama ocjenjivanja. Drugim riječima, mi znamo statistički svake godine da su studenti koji su manje udobne, učiniti nešto još gore na kvizu. I studenti koji su udobnije učiniti nešto bolje na kvizu. Ali po tom obećanja u nastavnom planu i također u prvom tjednu nastave, uzmemo sve to u obzir. Doista, na kraju godine, ono što smo završili radiš je normalizaciji sve rezultate po sekcije, kako u Cambridgeu a sad ovdje u New Havenu, što znači uzimajući u obzir razjedinjenih stilova, razjedinjenih grubost je drugačija vrsta osobnosti koje pojedinac TAS ima i ovdje u Cambridgeu tako da si nije na Nedostatak čak i ako samo dogoditi da su imali TF ili TA koji je bio malo teže za vas u svom umu. Drugo, uzmemo u obzir udobnost razina i stvarna pozadina, ili nedostatak njegov, kada uzimanje kviz rezultate u obzir. Dakle, njih dvoje su uzete u obzir. I na kraju dana, zato što je uvijek slučaj da student završio u manje udoban dijelu kada on ili ona stvarno pripadala u u-između, ili obrnuto, sve je tako nevjerojatno individualizirana. Doista, od vas će dobiti ljut na nas, na kraj mandata kada smo kasno poslali svoje ocjene, jer s Scaz, i Jason, i Andy i ja, a tim će učiniti u Cambridgeu je doslovno ima na stotine e-pošte natrag i naprijed sa svim sto od tečajeva Tas, ovdje iu Cambridge, tražeći od njih ono što oni misle o svim svojim studentima na temelju nacrta razrede. I sve tamo nakon nevjerojatno individualiziran. Dakle, u mjeri u kojoj smo dobili da znate u uredovno vrijeme, odjeljaka i više, sve to previše uzeti u obzir. Dakle, iako smo skloni koristiti ovaj pet točka razmjera, molim vas, odvojite sebe od pretpostavke da tri je doista 60%. To je značilo da je dobro. I asistenti naplaćuju se termin početka pokušati zadržati rezultate u paru i trojkama, i četvorke rasponu, tako da smo zapravo imaju prostora za rast. I mi zapravo mjerilo po kojem možemo vam dati korisne povratne informacije o tome kako radite i kako ste napreduju. Dakle, nemojte to uzeti k srcu. Ima li kakvih pitanja mogu pomoći adresu ili zabrinutost da mogu pomoći ublažiti? Ili obeća mogu pokušati zadržati? Ne? U REDU. U redu. Dakle, s tim je rekao, to je CS50. To je početak tjedna šest u New Havenu. Počnimo s kratkim zatamnjenje svjetala postaviti pozornicu za današnje sadržaja. [VIDEO PLAYBACK] [Glazbom] -On Je došao s porukom. Uz protokol sve svoje. On je došao na svijet kul firewall, stalo usmjerivači i opasnosti daleko gore da je smrt. On je brz, on je jak, on je TCP / IP. I on je dobio svoju adresu. Ratnici net. [END PLAYBACK] DAVID J. Malan: U redu. Ovo je CS50. To je početak tjedna šest. A ovo je početak naše izgled na internet i web programiranja. A, možda i većina uzbudljivo, Danas se obilježava prijelaz za nas iz naše komandne linije Svijet C na webu temelji svijet PHP i HTML, i CSS, i SQL, i JavaScript, i tako mnogo više da je na horizontu. Ali prvo, da je došao u našu pozornost u šetnju po kampusu da je sigurno kupaonica u New Haven zove Harvard sobu, koja je malo siv ovdje. Ali, istina, netko je otišao na put i rashodi za bakropis na Harvard sobi na ovoj ovdje sobi. Hvala vam za to. Ne mogu reći da imamo analoga u Cambridgeu, ali, ali mislim da imamo mali projekt za sebe sada kada smo se vratiti. Dakle, hvala vam za to. Tako brzo osvrnuti na gdje smo stali prošli tjedan i gdje idete ovaj dolazak tjedan sa problemima postaviti pet. Tako je u pet Problem postavljen, vi ćete biti izazov za provedbu i Provjera pravopisa. A za to, vi ćete biti predao prilično veliki tekst podnijeti kao 140.000 engleskih riječi. A vi ćete biti izazvani da odluči na strukturu podataka s kojima želite učitati sve te riječi u memoriju, a u RAM, a zatim provesti nekoliko funkcija, od kojih će biti provjere. Čime kada prođe argument, riječ, tvoja funkcija ček jednostavno će imati reći true ili false, to je riječ u rječniku. Ali vi ćete imati neke Dizajn diskrecija i izazovi kada je riječ o provedbi toga. U najjednostavnijem implementacije, što bi svakako provesti pravopisa u temeljni rječnik s kakvim struktura podataka? Vi samo trebate pohraniti cjelinu hrpa žice u memoriji? Što je ići odgovoriti od dva tjedna možda? PUBLIKA: Array. DAVID J. Malan: Možete koristiti niz. I to nije sve što je loše. Ali ne nužno znati unaprijed koliko je velika niza ti si idući u morati, ako ne Znaš datoteku nužno unaprijed. Dakle, ti si idući u morati koristite malo trikovima poput malloc, kao što smo počeli koristiti. Ili možemo obratiti koje se tiču ​​pomoću ono što drugi struktura podataka koje je bio svojevrsni najnižoj pojašnjenje na niz? PUBLIKA: Popis povezane. DAVID J. Malan: Poput povezan Popis, pri čemu smo dobili neku dinamiku. No, tu je malo više trošak. Imamo naputke za održavanje. I još niste kodirano ovo gore, ali tu je svakako da se malo više složenosti nego samo pomoću uglate zagrade i skakanje okolo polje. No, niz je trčanje vrijeme, Ako ste u potrazi za riječ, Možda se prijavite n. Ali opet, to bi moglo biti malo ne-trivijalan izgraditi taj niz ne znajući veličinu unaprijed. Popis povezani iako, ako vas Samo pohraniti gomilu nizova u popisu povezana, koja je tvoja gornja granica na trčanje vremena će biti u potrazi za ili provjeriti riječ u tom popisu? PUBLIKA: n. DAVID J. Malan: Da, veliki O n ili linearno, jer u najgorem slučaju, riječ je kao Z riječi skroz na kraju. I zbog popisa povezane, jer one strelice po defaultu, u popisu na pojedinačno povezani, samo ići iz jednog smjera u drugi, ne mogu skakati. Morate slijediti sve njih. Tako smo predložili krajem prošlog tjedna, tjedan pet, da postoje bolji načini. A u stvari, sveti gral stvarno bi biti stalna vrijeme pri čemu kada želite potražiti riječ, što dobili instant odgovor bez obzira koliko riječi su već u svom rječniku. To je umjetnički izvedba ono što bi mogli nazvati hash tablicu. I hash tablica vrsta lijepo amalgam je array-- nacrtana okomito Ovdje, samo because-- a zatim povezani list-- privući vodoravno ovdje. I hash tablicu može biti provodi u grozdovima načine. Ovaj izvadak iz udžbenika događa koristiti datume rođenja tih ljudi kao sredstvo kojim se to odluči gdje staviti nečije ime. Dakle, ovo je rječnik ako će imena. A kako bi se ubrzali stavljajući imena u ovom strukture podataka, gledaju, očito, ove Narodne Rođenje datira s obzirom na mjesec dana. Tako da je od 1 do 31. I zaboraviti veljače i kutak slučajevi kao što je to. A ako je vaš rođendan je Siječanj 1 ili 1 veljače ili 1. prosinca vi ćete završiti na Prvi lanac do vrha. Ako je vaš datum rođenja je kao 25. u mjesecu, ti si idući u kraj gore u kantu broj 25. A ako je već netko tamo u tim mjestima, što počnete raditi s tim povezane Popisi ih povezivanjem tako da možete imati proizvoljna broj ljudi, ili bilo što, na tom mjestu. Dakle, imate kakve mješavine konstanta vrijeme raspršivanja. I da hash nešto znači uzeti kao ulaz kao osoba, ili njegovo ili njezino ime, ili njegovog rođenja datum, a zatim odlučiti na neki izlaz na temelju toga, kao i gledajući njihove rođendan i izlaza od jedan do 31. Pa onda možda morati malo linearnog vremena, ali u stvarnosti, a kao u slučaj problema postaviti pet, nećemo biti radi u P postaviti pet toliko o asimptotske trčanje Vrijeme, kao i teoretske sporosti kojom algoritam mogao pokrenuti. Idemo stalo stvarni broj sekundi i stvarna količina memorije, stvarni broj bajtova memorije koju koristite. Pa iskreno, ima jedan veliki lanac kao milijun ljudi je prokleto sporo, ako ste u potrazi imena u popisu veličini milijuna. Ali što ako podijelite taj popis se u 31 dijelova? Pretraživanje 1/31 toga super dugi popis, u stvarnosti, svakako će biti brže. Asimptotski, to je ista stvar. Ti si jednostavno dijeljenjem konstantnim faktorom. A sjećam da smo baciti te stvari daleko. No, u stvarnosti, to se događa biti 31 puta brži. I to je ono što ćemo početi utjecati na P postaviti pet. Dakle P postaviti pet previše također Predlaže da uzmete u obzir malo sofisticiraniji struktura podataka naziva Trie. I Trie je samo stabla kao strukture podataka. No, umjesto da mali krugovi ili pravokutnici kao što smo zadržati crtanje za čvorove, to je zapravo ima cijeli nizovi za svoje čvorova. I iako je to malo apstraktno ovdje da pogledate, Zamyla u P set šetnju kroz će vas kroz detaljnije o tome. Ovo je struktura podataka da radije pametno možda svaki čvor biće niz veličine 26, a do Z ili nula preko 25 godina. A kada želite umetnuti osoba je ime na ove strukture podataka ili naći njega ili nju, što radite, ako je Ime je poput Maxwell, M-A-X-W-E-L-L, prvi put pogledate M. A onda ti skok na odgovarajući M mjestu u prvom nizu. Zatim skok na prvi mjesto u sljedećem nizu, Sljedeći strelice. Tada X, onda W, zatim E, tada L, potom L, a onda možda neke posebne kraj lik, neki Sentinel da kaže riječ ovdje prestaje. A što je lijepo o this-- i imajte na umu da je slika ovdje, primijetiti kako rubova svaki niz su odrezani. To je samo zato što je ova stvar bi biti masivan i strašnim gledati na na zaslonu. Dakle, to je excerpted. Što je lijepo o tome je pristup da, ako postoji milijun imena već u ovom strukture podataka, koliko koraka to uzmi me za umetanje Maxwell? M-A-X-W-E-L-L-- kao sedam-ish Koraci za umetanje ili tražiti Maxwell. Pretpostavimo da postoji trilijuna imena u ovoj strukturi podataka. Koliko koraka je potrebno mene tražiti Maxwell? M-A-X-- još sedam. I u njemu se nalazi Takozvani konstanta vrijeme. Ako pretpostavimo da riječi su svakako ograničen 20 znakova, ili 46 znakova, ili neki razumno mali broj, onda je učinkovito konstanta. I tako umetanje i pretraživanje Trie je super brzo. Naravno, mi nikada dobiti ništa besplatno. I iako vas vjerojatno nisu zaronio P postaviti pet gostiju, kojoj cijeni se vjerojatno plaćati dobiti taj veći put učinkovitost mudro? PUBLIKA: Memorija. DAVID J. Malan: Memorija, zar ne? Mislim, nismo izvučeni cijela slika ovdje. Ovaj izvadak iz udžbenika nije nacrtana sve polja. Postoji ogromna količina memorije i jednostavno null upućuje da se ne koriste. Tako da je trgovina off. I to ću prepustiti vama u P postaviti pet odlučiti na koji način želite ići. Sada je to ideja hashing, kao stranu, zapravo je super prevladava. Tako da hash vrijednost sredstva, sasvim Jednostavno, da se nešto kao ulaz i proizvoditi izlaz. Tako hash funkcija je samo algoritam. I općenito, svrha hash funkcije u životu je da se nešto kao ulaz i proizvesti broj kao izlaz, poput broj jedan kroz 31 ili A do Z, nula do 25 godina. Tako to traje složen izlaz a skuplja ga na nešto to je malo više korisna i rukovanje. I tako ispada u vrlo popularan funkcija da je sigurnost svijet i ljudski svijetu koristim već godinama naziva SHA1. To je prilično otmjeno matematička Formula koja se u biti to. Vi se stvarno velik komad nula i ones-- koji bi mogao biti megabajta dugo, gigabajt long-- a to smanjuje do Samo nekoliko bitova, nekoliko bitova, tako da imate veliki broj poput jedan do 31, ili A do Z. No, u stvarnosti, to je malo veći nego samo do Z. Nažalost, mi smo na vrhuncu onoga što netko zaigrano naziva SHAppening pri čemu je svijet o završiti vjerojatno nekoliko mjeseci Vrijeme jer istraživača, Samo prošlog tjedna, objavljeno izvješće koje suprotno ono sigurnosni istraživači su mislili neko vrijeme, tako jednostavno trošiti oko, što je to bilo, Mislim da je 175,000-- $ puno novaca, ali ne izvan dosega Posebno loše negativci, ili posebno loše countries-- 175.000 $ mogao kupiti puno iznajmljuje poslužitelja Prostor u oblaku. A mi ćemo se vratiti oblak prije dugo. Ali to samo znači iznajmljivanje poslužitelja prostor na poput Microsoft poslužitelja, ili Google-a, ili Amazon-a, ili kao i gdje možete platiti po minuti koristiti tuđi računala. I to ispada, ako možete platiti netko posuditi svoja računala i trčanje kôd koji ste napisali na njega i koristiti lijepa fantazija matematika, možete suštini lik kako nečija hash funkcija rade, a obzirom na izlaz, obrnuti inženjering ono što mu je ulaz. A za današnje potrebe, dovoljno je reći, to je loše. Zbog SHA1 hash funkcija i kao da su super uobičajeno koristi u sigurnosnim aplikacijama, šifrirane veze na webu, bankovne transakcije, stanični šifriranje za mobitele i slično. I tako svaki put kad netko nađe način da preokrenu inženjer jedan od tih tehnologija ili break, loše stvari mogu dogoditi. Sada je svijet već zna. To je predvidjeti. A svijet je od preselio iz SHA1 za SHA256, koji je samo fancy način rekavši da koriste veće komadiće. A u stvari, čak CS50 vlastiti Web stranica nadograditi lani to-- Ne da mi lice sve to mnogo prijetnje pokušava dobiti na PDF i whatnot-- ali CS50 web stranicu koristi veći hash funkcije, što znači da ćemo biti na sigurnom. Dakle, sve vaše PDF će biti sigurno, ali ne nužno novac ili bilo što Posebno privatni ili osobni koristiti. Sp provjeriti taj URL ako želite kao i neke dodatne pojedinosti. Tako je problem postaviti pet je doista na horizontu. Kviz jedan je ovaj dolazak srijeda. Ali ne iskoristiti ured sati, i večeras i sutra. I također iskoristiti radnog vremena, ako si dostupna, odmah nakon toga. Osoblje i ja ću ostati ovdje i raditi više casual Q & A osim večeras. I neka mi snažno napomenuti, za one od nas ovdje u New Haven-- tako da je apsolutno po Scaz-a primjedbe osjećao, siguran sam, kao malo uzbrdo borbe. I po čuvenju, ako vas nisu naučili već čuli ili iz nekih prijatelja na Harvardu, znate Ovdje su neki novi institucionalni memorije. P postaviti pet vrsta vrstom tendira biti najteže u CS50, ili najizazovnijih za većinu studenata. No, što to znači da smo gotovo na vrhu brda. I ja stvarno mislim to. To je najveći izazov, ali to je također najviše rewarding u da za razliku od većine svake druge Uvodni informatika Naravno, u SAD-u što znamo, većina studenata ne završi uvod Naravno da je već proveden stvari kao što su drveća, i napad, i hash tablice, i slično. I tako sam se nadam i Nadamo se da ste ima ogroman smisao zadovoljstva i ako je tjedan ili dva preko kojih dođete do tog zadovoljstva ne osjeća malo kao što je ovaj. No, dopustite mi uvjeriti, mi samo četiri P seta lijevo. Dakle, vrsta tog vrha je na vidiku. S druge strane to, vjerujte nam, to je samo valjanje brežuljcima i oblake. I da tako kažemo, štenci su na drugoj strani. Dakle, samo trebate objesiti tamo malo duže. Mislim, doista kao što smo početi tranziciju u svijetu web programiranja, vidjet ćete da se stvari become-- ovo je sladak zapravo. U redu, mi ćemo objaviti ovaj URL kasnije. Naći ćete također da smo dostizanje vrsta visoravni gdje je sve dapače još sofisticiraniji i izazovna strane Dizajn, ali nisi će se osjećati kao da smo stalno ide gore ovo brdo. Dakle, uzeti malo utjehu u tome. Dakle, bez dodatnih teškoća, počnimo da bi ovaj tržišni prijelaz u semestru na svijetu web, i stvarno svijet s kojima smo svi poznatiji. Imamo internet uređaja u našim džepovima, na našim stolovima, u našim ruksacima, i slično. Kako se sve ovo djelo? A kako možemo početi pisati Kod koji nije super Arcane au nekim trepćući teksta redak da nitko od vaših prijatelja ili obitelji su ikada idući u žele komunicirati sa, ali nešto možete staviti na njihovim telefonima, ili na svojim web preglednicima, ili na bilo uređajima s koji su u interakciji. Dakle, ovdje je nečiji dom. A unutar tog doma je par prijenosna računala, nekoliko staroj školi površini računala, nešto što se zove usmjerivač ili čvorište u sredini, a onda neka vrsta kabelski modem ili DSL modem. A onda tu je internet, općenito nacrtana kao oblak gore na nebu. Dakle ova slika, iako malo vrsta datiran, svakako bilježi ono što većina vjerojatno imate u svojim kućama, ili učinkovito ono što svi vi imate u svojim spavaonica sobe ili apartmana, ili slično. Dakle, ono što se zapravo događa kada pokušate koristiti internet danas? Dakle, svako računalo na Internet, ispada, treba imati jedinstvenu adresu, slično kao mi u stvarnom svijetu potrebi poštanska adresa, kao što je 51 Prospect Ulica, New Haven, Connecticut, ili 33 Oxford Street, Cambridge, Massachusetts. Dakle, to računala na internet potrebna način jedinstveno sebe rješavanje. To je tako da kada jedno računalo Želi razgovarati s drugom, može poslati poruku i obavijestiti primatelja kome to bi trebalo poslati odgovor natrag. Dakle, to samo čini svojevrsnu intuitivan osjećaj možda da sve imaju adresu neke vrste. Ali kako ste dobili adresu? Pa, ako se ovdje na kampus, ili ići kući i uključite laptop ili stolno računalo, i bilo ga priključite ili se spojiti na Wi-Fi, ispada da postoji poseban poslužitelj na većini mreža zove DHCP poslužitelj. Zapravo ne smeta što to predstavlja, ali to je dinamička konfiguracija domaćin protokol, što je samo fancy način govoreći, to je računalo koje ni Yale ima, ili Harvard ima, ili Comcast ima ili Verizon ima, ili vaša tvrtka ima, čija je svrha u životu, kad čuje netko novo dodano na mrežu, jest ovdje, koristite ovu adresu. Dakle, mi ljudi ne moraju Teško kod u našim računalima što naša jedinstvena adresa. Upravo smo ga uključili, otvorite poklopac, i nekako ovaj poslužitelj na lokalnoj mreži mi samo govori da moja adresa je 51 Prospect ulica ili 33 Oxford Street, ili slično. Sada to ne ide tako detaljne kao taj. Umjesto što ću dobiti je brojčana adresa zove IP adresa. IP znači Internet protokol. A izgledi su ovaj put u svom životu, vjerojatno čuli ili vidjeli riječ IP, ili općenito bacila oko možda. Ali, u stvari, to je prilično ravno naprijed stvar. IP adresa je samo točkasta decimalni broj, što znači da je nešto točkica nešto dot dot nešto nešto. I svaki od tih somethings događa biti broj između 0 i 255. Dakle, na temelju pet plus tjedana CS50, ako je ti brojevi svaki raspon od 0 do 255, koliko bitova je svaki tih brojeva znakova? PUBLIKA: Osam. DAVID J. Malan: To mora biti osam. Tako je u ukupno, koliko je bitova je IP adresa? PUBLIKA: 32. DAVID J. Malan: Pa 32. 8 plus 8 plus 8 plus 8 je 32. Koliko Ukupno IP adrese može postojati u svijetu? PUBLIKA: 4 milijarde. DAVID J. Malan: Pa otprilike četiri milijardi, jer to je 2 32 snage. A ako ne možeš vrsta zahvatite da je u vašem umu, samo znam da je 32-bitne vrijednosti može biti velik kao 4 milijarde ako je to sve pozitivne vrijednosti. Dakle, to znači da je 4 milijarde Mogući IP adrese u svijetu. A smiješno priča, mi smo vrsta pokrenut iz njih. A u stvari, to je veliki problem u tome svijet je također vidio ovaj problem dolazi, ali nije nužno odazvali je u većini brzom mogući način. I doista, nakon što ste završio CS50 i počeo plaćati pozornost u tech svijetu, vi ćete vidjeti da je ovo vrlo često tematski. Na primjer, ako idemo zaista stara škola danas, Y2K. To zapravo nije bio iznenađenje. Kao svi su znali za 1000 godina da je was-- više od tisuću years-- da koji je na kraju će se dogoditi. Pa ipak, odgovorili smo na njega jako puno u zadnji tren. I to se događa opet. Dakle, danas ćemo razgovarati o IP verzije 4. Ali znam da je svijet konačno dobivanje oko nadogradnju na nešto što se zove IPv6, koji umjesto 32-bitni adrese, uses-- tko žele uzeti pogodak, koliko bitova? PUBLIKA: 64? DAVID J. Malan: Dobar pogodak, ali nije. Konačno smo Pokušavamo dobili ispred krivulje. PUBLIKA: 128. DAVID J. Malan: 128, što je mušičav veliki broj IP adresa, jer to je kao vrijeme 2, 2 puta, puta 2, puno puta dvojke gore od 4 milijarde. Dakle, ako znatiželjni. Ispada out-- i samo sam googled ovo pronaći ovo out-- Yale računala, ovdje na Yaleu, imaju tendenciju da se početi s to numbers-- 130,132 točkica nešto, i 128,36 dot nešto. No, tu je svakako Iznimke preko odbora Ovisno o tome što odjela i Zgrada i kampus ste na. Harvard tendira imati 140,247 ili 128,103. I općenito je to beskorisnih informacija, ali to je nešto što bi moglo primijetiti sada. Kada početi poking okolo postavke na svojim računalima, možda ćete početi primjećivati ​​to vrste uzoraka prije dugo. Ali kada ste kod kuće i imaju Apple AirPort ili Linksys uređaj, ili D-Link, ili što god je to tvoji roditelji ili braća i sestre instaliran u svojoj kući, te što vjerojatno imate je ono što se zove privatna IP adresa. A to su bili zapravo lijepo, privremeno rješenje problemu trčanja Ukratko o IP adresama. A što možete učiniti s kućne mreže, typically-- i iskreno, čak i Yale i Harvard počinju to učiniti u različitim areas-- je vas može dati hrpu računala jedna IP adresa, tako dugo dok ste stavili posebna naprava ispred njih, nešto što se zove usmjerivač, ili to može nazvati proxy ili bilo koji broj drugih stvari. No neki uređaj koji ima tu jednu IP adresu. A onda iza toga uređaj unutar zgrada, unutar kuće ili stana, može biti bilo koji broj računala, od kojih su svi imati IP adresu da početak s jednom od tih brojki ovdje. I tako dugo dok to računalo zna kako to pretvoriti javno obraćanje privatni adresa, sve se može sortirati rada kao što se očekuje. No, razgovor o tome je da ako ti si kod kuće i imate sestru, i oboje su posjetite neku web stranicu, da web stranica ne zna je li to vas ili tvoj brat posjetite web stranicu, zato što se čini da se isti Osoba jer sve svoje podatke prolazi kroz taj ruter ili da je središnja točka. Ali dosta o tim detaljima niže razine. Uzmimo pogledati kako IP adresa Ponekad dolazi do možda u medijima i kako sada možemo početi uništiti, Iskreno, još više predstava za vas. Ako smo mogli prigušiti svjetla za nekoliko sekundi. [VIDEO PLAYBACK] -To Je 32-bitni na IPP 4 adrese. -IP ES internet-- -Private Mreža, Tamia privatna mreža. Ona je tako nevjerojatna. -COMe Na Charlie. DAVID J. Malan: To je ogledalo IP adresa. Ona ste nas gledaju što ona radi u realnom vremenu. [END PLAYBACK] DAVID J. Malan: U redu. Dakle, nekoliko problema s tim. Dakle, jedan, što mi tražimo na ovdje na zaslonu je kod napisan u jezik zove Objective-C, koja je vrsta nasljednika C jezik koji radimo. Ovo nema apsolutno ništa veze s programiranjem. Zapravo, najbolje što se može reći, ovo je program za crtanje da netko preuzeti s Internet nekako uključuje bojice. Možda manje nečuven je da to IP adresa, važeći ili nevažeći? PUBLIKA: Neispravna. DAVID J. Malan: nevaljani, jer 275 je, naravno, ne između 0 i 255. To je također vjerojatno u redu ipak, jer ne želim hrpa ludih ljudi koji su kao pauziranje TV na svojim TiVos a zatim posjetite IP vidjeti Ako postoji nešto što stvarno postoji. Tako da je jedan je malo manje nečuven. Ali shvatite da previše vrsta svuda oko nas. Pa naravno, nitko od nas nikada stvarno upisati brojčane adrese u naše preglednika. Bilo bi vrsta loša stvar ako Google, posjetiti Google, morali ste ići na 123.46.57.89. I cijeli svijet je imao samo zapamtite to. I iskreno, mi smo vrsta od vidio ovo pitanje prije. Natrag u dan kad ljudi ne imaju mobitele i popise kontakata, i tvrtke zapravo still-- zapravo, Mislim tvrtke još uvijek imaju 800 Brojevi i volimo-članovima, ali si uglavnom vidjeti broj oglašeni kao 1-800-prikupljanje, OO-L-L-E-C-T. Jer nitko ne može sjetiti, kad vidim oglas u autobusu ili jumbo plakat, što netko broj, ali oni mogu vjerojatno, s više vjerojatnost, sjetite se riječi. Tako smo usvojili isti vrsta sustava u svijetu interneta, pri čemu postoji naziv domene sustava, tako da mi ljudi mogu upišite google.com, facebook.com, yale.edu, harvard.edu, i neka računala lik što odgovarajućeg IP adresa za određenu ime. A način na koji ste to učinili u stvarnom svijetu je da je za 10 $ godišnje, možda 50 $ godišnje, možete kupiti domenu ime ili stvarno iznajmiti naziv domene. I onda tko ste plaćati iznajmiti taj naziv domene, što im reći tko u svijetu zna što vaša IP adresa. I nećemo ulaziti u to pojedinosti, ali mnogi od vas možda želite, za konačni projekti, zapravo se prijavite za vlastitu web hosting Tvrtka, bilo besplatno ili za nekoliko dolara mjesečno. Neki od vas možda želite kupiti za nekoliko dolara, svoj vlastiti naziv domene, samo za zabavu ili za početak poslovanja ili osobni stranica i slično. I shvatiti da je sve to će u konačnici svode na vas reći svijetu ono što vaš poslužitelj IP adresa. A onda su ti DNS poslužitelji zapravo brine informiranja ostatak svijeta. Dakle, sve DNS poslužitelj ima, ukratko, unutar od njegova memorija poput ekvivalent Google proračunskoj tablici ili Excel spreadsheet-ovima s najmanje dva stupca, od kojih jedna ima imena, kao harvard.edu i yale.edu i google.com. A drugi stupac ima odgovara IP adresa ili IP adrese. A mi zapravo može vidjeti. Dakle, na moj Mac-- i možete to na računalima sa sustavom Windows kao well-- ako sam otvoriti prozor terminala ovdje, baš kao i onaj u CD50 IDE, većina računala imaju naredbu zove nslookup, naziv poslužitelja pogledati. A ako upišete nešto u kao yale.edu i pritisnite Enter, ono Trebam li moja mreža surađuje kao što je učinio za više testova prije klasi began-- pokušajmo google.com. Naravno, sada se ništa ne radi. To je odlično. U redu, stand by za jedan trenutak. nslookup google.com. Pa, neka je vidjeti ako je Stvarni internet-- br. To je ono što se dogodilo. O moj Bože, u redu. Wi-Fi razbio. Hej, želim znati što je moja IP adresa? U redu. YaleSecure. Ovaj je kako možete otkloniti stvari kao računalni znanstvenik. Mi uključite Wi-Fi isključen. U REDU. I zapravo, Scaz, ti smeta nas se prijavite na sigurnom jedan? Inače više testova are-- redu, hvala što Yale-- ili oko razbiti. Želim ići na YaleSecure. Oh, i možda ćemo biti u redu. Možda smo natrag. I tako, kao što je računalo Znanstvenik popraviti računalo. [PLJESAK] U redu. Dakle, gdje sam bio u ovo tzv prozor terminala, a ako ja ne nslookup yale.edu, tamo idemo. Tako sam se vratiti prvo IP adresu DNS poslužitelj da je moj laptop koristi. Dakle, osim DHCP poslužitelja koji razgovarali smo o maloprije govorio moj laptop što je moja IP adresa, da DHCP poslužitelj Također mi kaže što DNS poslužitelj za korištenje. Inače ja bi ručno upisati ovo. Ali to nije sve što je zanimljivo. Ono što me zanima jest da je to IP adresa Yale web stranice naizgled. Dakle, u stvari, pokušajmo to. Dopustite mi da pođem u preglednik i idite na http: // i zatim tu IP adresu, i pritisnite Enter. I neka nam vidjeti. To je, kako još možete posjetite Yale-a web stranice. Sada to nije sve što je lako pamtljiva. Kao što je prethodno frosh vjerojatno ne ide zapamtiti ovu posebnu adresu ako je rekao da posjete tamo nakon posjeta. No, čini se da rade. I tako DNS zapravo samo nam omogućuje da imaju mnogo više ljudskih prijateljske adrese. Ali ne nužno Samo prinos jedan odgovor. U stvari, kada ste stvarno velik tech tvrtki, vjerojatno želite imaju puno poslužitelja. Pa čak i to je pogrešno. Dakle Yale vjerojatno ne imaju samo jednu web poslužitelja. Google vjerojatno nema samo 10-ak web poslužitelja. Google osobito vjerojatno ima tisuće web poslužitelja diljem svijeta koji se može odgovoriti na zahtjeve ljudi poput nas. Ali oni također koriste tehnologiju nazvanu balansiranje opterećenja, koja ne duljimo, ima samo nekoliko uređaja u svijetu širenje opterećenja na više poslužitelja. Dakle, to je vrsta poput paukove mreže, ako ćete otpremanje zahtjeve. Ali za sada, sve što je Zanimljivo za danas je da je ime domene poput google.com i može imati više IP adrese kao što je to. No, kako se sve naše podatke zapravo dobiti natrag i naprijed onda na kraju? Pa, ispada da je to bilo stvari zove usmjerivača na internetu. A što je usmjerivač na mjeri da znate već? I ja sam se riječ par puta u kontekstu doma, ali u jednostavnim uvjetima, Što usmjerivač učiniti? Daj mi samo jedan pogodak na temelju svoje ime? PUBLIKA: Dakle cesta ili put? DAVID J. Malan: Pa to je cesta ili put. Tako je ruta cesta ili put, apsolutno. A usmjerivač, tako da uređaj koji zapravo ruta informacije, bi premjestiti podataka između točaka A i B. I tako u fact-- i to je možda, kada google prikazi routera na svijetu, sve dobivate su cheesy marketinške sheme. I tako je to vrsta najviše Predstavnik koji sam mogao naći koji je izgledao blago zanimljivo. Svaka od ovih točaka ili treperenje nade diljem svijeta predstavlja usmjerivač. I svaka od njih ima liniju između nekog drugog routera. Jer doista, ima tisuće, vjerojatno milijuni routera oko Svijet, od kojih su neki u našim domovima i na našim kampusima, ali puno koje su u vlasništvu velikih tvrtki te su međusobno povezani, tako da ako ja želim poslati neke podatke iz ovdje na Yaleu natrag kući u Cambridge, Yale vjerojatno nema jedan kabel, svakako, ide izravno na Harvardu. I Yale nema jedan kabel ide na MIT, ili na Stanford, ili u Berkeley, ili Googlea, ili bilo koji broj odredišta. Umjesto toga, Yale i Harvard, i svi drugi na internetu nema jednog ili više usmjerivača spojen na njega, možda na periferiji kompleksa. Tako da kad je moj podaci želi napustiti Yale kampusa, to ide na to gdje ruter, kao što je prikazano s jednim od tih točaka. I onda taj router otkrije li poslati ga na ovaj način, odnosno na taj način, ili ovako ili ovako temelji na drugom stolu u svojoj memoriji, druga Excel datoteka ili Google tablicu koja u jednom stupcu kaže, ako je vaša IP adresa počinje s brojem jedan, idite na ovaj način. Ako je vaša IP adresa počinje s broj dva, ići na taj način. I tako da možete ga razbiti numerički imati usmjerivač slanja Podaci na sve strane. I možemo vrsta vidjeti kao dobro. Idemo naprijed u ovom terminalu opet prozor, i neka mi ići naprijed i pratiti put do, recimo, www.mit.edu, što je par stotina milja daleko. To je stvarno prokleto brzo. Dakle, što se dogodilo? Tako je u samo sedam koraka, i u samo četiri milisekundi, Poslao sam podatke preko interneta odavde na Yaleu na MIT-u. Svaki od ovih redaka, možete mozda da sada predstavlja što? PUBLIKA: Usmjernik. DAVID J. Malan: Usmjernik. Dakle, istina, izgleda da postoji oko sedam ili tako usmjerivači, ili šest routera u između mene fizički Yale-a pravni fakultet ovdje i web MIT tamo. A što možemo skupljati iz toga je kao follows-- i neka mi ga počistiti. Ja ću to ponoviti s naredbom crta argument -Q 1 samo reći, daj mi samo jedan upit. Po defaultu, trag put ne tri. I to je razlog zašto smo vidjeli grozdovima brojeva. Želim vidjeti manje brojeve samo da bi izlazni čistač. I da vidimo što se događa. Dakle, iz bilo kojeg razloga, netko na Yale misli bilo bi smiješno da ga zovu svoje zadani usmjerivač arubacentral, koji na VLAN ili virtualna LAN, virtualna lokalna Mreža 30-- pa vas vjerojatno imate najmanje 29 others-- router.net.yale.internal. I .internal ovdje je vrsta lažni top level domena je značilo da se koristi samo na kampusu. I obavijest odgovarajući IP adresu tog routera, gdje god je to ovdje na kampusu, je 172.28.204.129. A to je 36 milisekundi ići odavde do tamo. Smiješno priča. Mi ćemo se vratiti na to u samo trenutak. Ali sada je drugi router-- se koji arubacentral očito ima nekakav fizički Priključak najviše likely-- da ljudi ne zamaram se imenovanja. Yale ljudi ne zamaram imenovanja to zato što je unutar vaše mreže čini se. I tako to samo ima IP adresu. Ali onda treći ruter ovdje na Yale mreže to je vjerojatno malo dalje i dalje naziva cen10g god to je asr.net.yale.internal. I to također ima IP adresu. Sad zašto su ti brojevi vrsta fluktuira? 2.9, 1.4, 36? Usmjerivači dobiti zauzet. I oni dobiti začepljen i podupirač gore. Postoji tisuće ljudi o tome kampus putem interneta sada. Postoji stotinu ljudi u ovom Soba putem interneta sada. I tako ono što se događa je da usmjerivači mogu dobiti zagušen. I tako ta vremena moglo mijenjati malo. Dakle, to je razlog zašto oni ne moraju nužno povećanje se izravno. No, stvari se vrsta Zanimljivo je u četvrtom koraku. Očigledno između Yalea i Četvrti korak je još jedan hop. A gdje je ruter U četvrtom koraku vjerojatno? PUBLIKA: [nečujan] DAVID J. Malan: JFK možda, možda u zračnoj luci. No, iz bilo kojeg razloga, administratorima sustava, pa geeks koji se pokreću poslužitelja za godina zove usmjerivača Nakon najbliže zračne koda. Dakle JFK vjerojatno znači to je samo negdje u New Yorku, možda na Manhattanu ili jedan od četvrti. nyc2 označava, vjerojatno, još jedan router koji je negdje u New Yorku. Ja ne znam točno gdje je red šest je ovdje, usmjerivač broj šest. quest.net veliki ISP, internet davatelj usluga, koji pruža internet povezivost na velikim mjestima kao što su Yale i drugima. A onda je to posljednja, to izgleda kao da je MIT ni ne imaju svoje web stranice u Cambridgeu nužno, nego što ste vanjske njihov website, ili barem fizički poslužitelji, se tvrtka zove Akamai. I Akamai je zapravo desno dolje cesta s MIT-u Cambridge ispada. Ali shvatite da čak i previše mislio idete www.mit.edu, smo stvarno mogli biti poslani bilo gdje u svijetu. I da vidimo negdje drugdje u svijetu. Dopustite mi ići naprijed i jasno ovaj zaslon i umjesto pratiti put, samo jednom, tako da upita on, da www.cnn.co.jp, japanski početnu stranicu za CNN, vijesti stranici. I ako sam pogodio Upišite se sada, da vidimo što se događa. Mi smo opet početkom u arubacentral. Mi smo onda ide na bezimeni router, malo više. Dakle, to je 12 hmelj se doći u Japan ovaj put. I da vidimo što možemo skupljati. Tako isto hop, hop isto. Malo drugačiji sada. Ovaj je zanimljivo. Pa ja sam guessing ovdje, stamford1 je Nekoliko gradova daleko u Connecticutu također. Ove usmjerivači u nizu šest i sedam nemaju imena. No, to je vrsta nevjerojatna. Dakle, ono što čini se da je između usmjerivači u koraku sedam i osam? I zašto kažeš koliko? Da? PUBLIKA: Ocean. DAVID J. Malan: Vjerojatno ocean. Mi znamo da je istina kao, intuitivno, zar ne? No, možemo potvrditi kako je mnogo vrsta od vrsta empirijski zašto? Što se promijenilo između Redovi sedam i osam? To je puno više vremena za odlazak na što god to bezimeni ruter sedam je, Vjerojatno negdje u kontinentalnog dijela SAD, na korak osam, što je vjerojatno negdje u Japanu temelji se na ime domene .jp tamo. I tako oni dodatno sto nešto milisekundi ili 90 ili tako milisekundi je rezultat naših podataka ide preko prilično veliku količinu vode. Sada znatiželjno, čini se da je možda koji kabel ide preko cijelog SAD-a. Ako mi zapravo ide preko Zapad Obala doći do Japana, to je vrsta na dug put ako idemo na drugi način. Dakle, to nije posve jasno što se događa fizički. No, činjenica da je svaki Dodatni hop doista je značajno više nego svaki drugi, to je prilično dobro potvrda da CNN Japanski web poslužitelj je vjerojatno istina u Japanu. I to je sigurno dalje daleko od MIT je. I to je vrijedno napomenuti previše, vaši podaci nisu nužno će putovati najkraće udaljenosti. U stvari, ako se poigrati s tragovima trase kod kuće samo branje slučajan websiteovi, što možda da samo poslati e-mail ili posjetiti web stranicu to je ovdje u New Havenu, Ponekad vaše podatke možda prvi skrenuti, sići na DC, a zatim se vratiti gore. A to je samo zbog dinamičke odluke usmjeravanja da su ti računala odluka. Sada samo za zabavu, produkcijski tim obrubljen jedan od tih videa za nas samo se malo više kratak. No, da nam daju brzo osjećaj here-- a možemo ostaviti svjetla on-- kako bi koliko je kabliranje zapravo nosi sve naše podatke. [VIDEO PLAYBACK] [Glazbom] [END PLAYBACK] DAVID J. Malan: Svi umrežavanje video imaju kul sondiranje glazbu očito. Dakle, to je da se samo osjećaj koliko ima događa ispod haube. Ali pogledajmo nešto niža razina sada na koje podatke je zapravo poprijeko te linije, pa čak i ide bežično u sobi kao što je ovaj. Tako ispada kada zahtjev web stranice, ili pošaljite e-mail, ili primiti web stranicu ili e-mail, ili Gchat poruka ili Facebook poruka, ili slično, da se ne samo jedna Veliki komad bitova bežično teče kroz zrak ili elektroničkim na žici. Umjesto toga, da je zahtjev ili Odgovor je uglavnom chunked se u odvojene komade. Dakle, drugim riječima, kada imate zatražiti da se o nekom drugom računalu, ili ste vratiti odgovor s druge computer-- kao što pretpostavljam, na primjer, ako unfamiliar-- kao previše ljudi Čini se da su ovi days-- ako upoznati s this-- Nije li ovo fellow-- ovu momka. Dakle, pretpostavimo da je to poruka koja Želim poslati nekome na leđa. Tko je u vrlo natrag bih dobiti sliku Rick Astley danas? U redu, što je vaše ime? PUBLIKA: Cole. DAVID J. Malan: Što je to? PUBLIKA: Cole. DAVID J. Malan: Holt? H-O? PUBLIKA: OO-L-e. DAVID J. Malan: OO-L-e, Cole. Oprostite. OO-L-E. U redu. Dakle, ako želim poslati Colea ovo slika ovdje, znate je vrsta velike slike, zar ne? To može biti malo kilobajta, nekoliko megabajta, pogotovo ako je visoke rezolucije. A ja stvarno ne želim da se zaustavi svi drugi korištenje interneta Upravo dok sam poslati ovo stvarno velika, visoka kvaliteta slike Rick Astley od cijeloj sobi. Htio bih svoje podatke na dalje proći mreže i Wi-Fi kao. I tako to čini i ovaj sense-- je nadoknadivi elektronski, ne toliko u stvarnom svijetu. Zapravo, to će imati višestruke značenja ako se uzme moje audio izlaz. Dakle, ako sam suzu ovo pola kao što je ovaj ovdje, to sada može putovati internet učinkovitije, jer to je manji komad. Tako je s nižim vjerojatnost je da će sudariti s tuđe prometa na internetu. I tako ono što vaše računalo doista kada želite poslati poruku Cole je li komade do poruke kao što je ovaj u manje komade, fragmenti tako kažemo. A onda ih stavlja unutar onoga što ćemo nazvati vrsta virtualnih kuverti. Dakle, imam četiri papirnate omotnice ovdje. I ja sam ih pre-brojevima, jedan, dva, tri, četiri i. A što ću raditi na prednjoj to, baš kao normalan mailing, je ću staviti Colea ime. I onda na vrhu, ja sam će staviti moje ime tamo, David, tako da je prva takva paketa Šaljem vani na internetu izgleda malo nešto poput To je, istaknute karakteristike od kojih su da ima na adresa, od adrese, i broj, tako da koji nadamo se da je dovoljno podataka za Cole rekonstruirati ovu poruku. Pa neka mi učiniti isto i ovdje, isto ovdje, a isto ovdje, pisanje svoje ime u Polje na sve njih. A onda idemo naprijed i staviti ove slike iznutra. Dakle, ovdje je jedan paketa to je spreman ići. Ovdje je još jedna paketa to je spreman ići. Ovdje je treći paketa to je spreman ići. I ovdje je četvrta paketa koji je spreman ići. A sada ono što je zanimljivo Kako je internet u stvarnosti radova je da, iako imam četiri paketa, od kojih su svi su namijenjeni za iste mjesto, oni nisu nužno će proći isti put. I tako, iako sam mogao predati to paketa off najbliže usmjerivač recimo, ako želite poslati ih na sve strane, da vidimo što se zapravo događa, cilj koja je da bi ih u konačnici Coleu. I doista, oni već ne nužno da u istom smjeru. I to je u redu. To je malo nezgodno i Oprah stil danas. A sada mi dopustite da namjerno uzeti da je jedan natrag. A sada Cole, ako želite okupiti se najbolje što možete. Naravno, svi mi možemo pogoditi što zaključak ovdje će biti. Ti si idući u morati 3/4 Rick Astley u samo trenutak. A što da je Posljedica toga? Želite pokušati držati? Imamo jednu kameru Pokazao je na vama, ako želite pozirati s Rick Astley ovdje. Idemo tamo. Lijep. Ali čini se da nedostaje fragment Rick Astley. Tako ispada da je internet općenito vođeni ne samo IP, ali u stvari smo čuli na samom početak predavanja u tom video-- i vjerojatno ste vidjeli ovo akronim više often-- što se uistinu je protokol teže čuti? PUBLIKA: TCP / IP. DAVID J. Malan: TCP / IP, koji je samo kombinacija dva protokola, jedan se zove IP. Što opet, samo skup konvencija, preko kojeg smo rješavanje svako računalo na internetu. A onda TCP, koji služi drugoj svrsi. TCP je protokol koji vam obično koristi u sprezi s IP, koji među ostalim stvari, jamči isporuku. U stvari, TCP je protokol koji bi primijetiti da je jedan od paketa očito nisu dobili Cole, jer on čini da nedostaje broj četiri od četiri. I tako ono TCP, protokol ne, to je priča Cole, hej Cole, ako dobijete samo tri od četiri paketa, recite mi što neki Nedostaju, u biti, a onda je moja svrha u životu treba biti prenosimo to. I tako, ako ja također, Pošiljatelj, koristite TCP, Onda sam trebao stvoriti novi packet-- Nije li to jedna naborana here-- prenosimo samo ovaj komad je, tako da je u konačnici Cole ima kompletan suvenir, ako ništa drugo. No, tako da u konačnici su podaci zapravo dobiva svoje ispravnu destinaciju. No, na žalost, pisanje Colea ime na prednji nije dovoljno, sami po sebi. I doista, ne bih napisati Coleovo ime, ali vjerojatno njegova IP adresa na koverti. I ne bih napisati Davida. Ja bih napisati moju IP adresu na omotnicu tako da računala mogu zapravo komunicirati natrag i naprijed. Ali ispada da računala možete učiniti tako više nego služiti se Rick Astley slike. Oni također mogu ponovno poslati i primati e-poštu, chat poruke. Oni mogu raditi stvari kao što su prijenos datoteka, i bilo koji broj drugih alata koristite na internetu, poslužitelji mogu učiniti ovih dana. I samo zato što je tvrtka, ili škola, odnosno osoba želi imati web poslužitelj, i poslužitelja e-pošte i chat poslužitelja, ne znači da je potrebno tri računala. Možete imati samo jedno računalo trčanje više usluga, da se tako izrazim. I tako, kada je Cole dobiva poruka kao što je to, kako je ne njegovo računalo znam da li se pokazati tu sliku u svom pregledniku, ili Gchat, ili Facebook Messenger, ili bilo koji broj drugih alata? Tako ispada da su i na kao omotnica je dodatni komad informacija poznat kao broj porta. I broj luka samo broj, istina, ali to jedinstveno identificira ne računalo, ali usluga. I tu je grozdovima od njih. Tako ispada da je u svijetu, ljudi su se odlučili na malo, kao konvencije, od kojih su ovi. Dakle, postoji nešto što se zove File Transfer Protocol. To je prilično datirana. To je potpuno nesigurno. Puno ljudi još uvijek ga koristiti. I to koristi broj porta 21. Drugim riječima, ako slanje datoteka putem FTP, omotnica bi ne samo pošiljatelj i IP adresa prijemnika, to bi također imaju broj 21, tako da prijemni računalo zna oh, to je datoteka, ne e-mail ili chat poruke. 25 je SMTP. Kako mnogi od vas ikada koristiti SMTP? Pogrešno. Gotovo svi imate. Ako ste ikada koristili e-poštu, koju ste koristili SMTP, jednostavni protokol za prijenos pošte, što je samo fancy način govoreći, to je vrsta računala ili usluge koji šalje vašu e-mail izlazne. I nikada, ako ste vidjeli kratice poput POP, IMAP ili, a tu je i nekoliko drugih, oni su za primanje e, obično. To samo znači da je različite usluge. To je softver koji netko piše da šalje ili sluša na određeni broj porta tako da ne brkati e-pošte s nekom drugom vrstom podataka. Sada web je HTTP, što je Broj 80, kao i luka 443. A u stvari, iako mi ljudi sreću ne moraju to učiniti, svaki put kada posjetite website poput http://www.yale.edu, preglednik samo se vrsta pomoći u smislu da je uz pretpostavku da želite brojčane port 80. Mi već znamo da DNS mogu shvatiti što je IP adresa od www.yale.edu. Ali računalo je samo će zaključiti da ti Želite port 80, jer ste koristeći Chrome ili IE ili neki drugi preglednik. Ali ja tehnički mogao debelo crijevo 80. A onda sam izričito reći moj preglednik, poslati paket ili više informacija za www.yale.edu traži današnju početnu stranicu. Ali konkretno, adresa je na Yale-a IP na portu 80 tako da sam zapravo dobiti natrag Yale web poslužitelja. Sada je odmah nestaje jer preglednici samo odlučiti da se ne trebaju zbuniti ljude tako da još Arcane Informacije poput debelog crijeva 80. I iskreno, preglednici kao Chrome uopće ne vam pokazati HTTP više, ili debelog crijeva, ili Slash Slash, ili kosom crtom, u nekom smislu, jer oni pokušavaju kako bi stvari jednostavnije za korisnike. U drugom smislu, to je samo vrsta korisničkog iskustva stvar-- neka je riješiti neke od nereda. Ali to skriva neke od ove temeljne pojedinosti. A u stvari, nitko od nas Vjerojatno nikada upišite http više. Vi samo upišite u nešto kao www.harvard.edu. I opet, Chrome zaključuje da želite HTTP. Ali postoje i drugi protokoli da mi sigurno mogao koristiti. Dakle, s obzirom na sve to, ako vas sada neka vrsta staviti na tzv inženjering šešir, Kako se stvari nazivaju firewall raditi? Dakle, vjerojatno ste općenito upoznati sa firewall, ne toliko u fizičkom smislu. Dakle, natrag u dan, i dalje sve do danas, ako imaš kao strip centrima za instanca koja ima mnogo dućana, općenito zidovi između njih pojedinačne trgovinama ili trgovinama su firewall u smislu da imaju posebnu izolaciju tako da, ako je požar izbije u jednoj trgovini, to ne mora nužno proširio trgovine pokraj vrata. Računalo svijetu ima firewall kako napraviti nešto drugačije. Što čini vatrena kugla učiniti? Da? PUBLIKA: U osnovi oni odsječeni vezu ako oni naići nešto kao što je, na primjer, imaju broj id izjave. A ako se nešto dogodi, oni rezati vezu. Kao i ako ovaj zlonamjernog napada [Nečujan] računalo, or-- DAVID J. Malan: OK dobro. Da, i zapravo si čak ide malo dalje u opisuje nešto što bi moglo biti naziva sustav za otkrivanje upada, ili IDS za kratko, pri čemu vas zapravo pravila definirane. A ako ne počnete vidjeti sumnjivo ponašanja, te pokušati stati na kraj tome. A firewall, iskreno, na razini umrežavanja, još je gluplji i jednostavnije od toga, općenito. A tu je različite vrste vatrozida u svijetu. Ali one koje djeluju na razina govorimo today-- IP i TCP-- raditi još više straightforwardly. Na primjer, ako ste bili Yale sustav administratori ili harvardski sustav Administratori, ili neki veliki Brat u nekom poduzeću, a vi htjeli da spriječi sve svoje studenti ili sve svoje zaposlenike od odlaska na facebook.com, sve što morate učiniti se pobrinite da sve njihove mrežni promet, prije svega, prolazi kroz poseban uređaj. Nazovimo ga vatrozid. I to je u redu, jer je možete napraviti svoj router ista stvar kao firewall ako staviti istu vrstu softvera na istom stroju. Dakle, ako sve svoje studente ili zaposlenici prometa prolazi kroz ovo Središnja firewall, kako bismo blokirati ljude od odlaska na Facebook.com, na primjer? Što bi se sustav Administrator morate učiniti? Itko drugi? Pokušajmo ići okolo. PUBLIKA: [nečujan] DAVID J. Malan: opet reći? PUBLIKA: To jednostavno trebao dobiti uhvaćen unutar sustava. Pa samo stavi Facebook u 127.0.0-- DAVID J. Malan: O, zanimljivo. Dakle, možete zapravo tada hack vaš DNS sustava. To je doista način na koji možete to učiniti pri čemu svaki put Yale Student vuče do www.facebook.com, sve nas danas ovdje na kampusu koristite Yale DNS poslužitelja, jer Yale DHCP-poslužitelj nam je dao tu adresu. Tako da, što bi vrsta razbiti stvari ili break konvencije od samo govoreći, da, facebook.com Adresa je varka, je 1.2.3.4, koja je zapravo nije legitimna. Ili možda je 278. sve što je u TV emisiji A Trenutak prije, tako da nitko od nas zapravo možete posjetiti facebook.com. Dakle, pretpostavimo Yale učinio. Pretpostavimo Yale želio zadržati vi iz Facebook.com. I zato, oni promijenio DNS postavke da vam lažne IP obratiti za Facebook.com. Kako ćete odgovoriti? Tehnički, not-- oh, sada svatko želi sudjelovati. U redu, da. PUBLIKA: Vi samo upišite u Stvarni IP adresa Facebook. DAVID J. Malan: U redu, dobro. Tako bismo mogli upisati u Stvarni IP adresa Facebook, baš kao što sam učinio s Yale-a web stranice. A ako se Facebook server konfiguriran podržati da, to bi trebalo doista raditi. To je manja bol u vrat, jer sada smo imati na umu neke random 32-bitne vrijednosti, ali to bi mogao raditi. Što još možete učiniti? Da. PUBLIKA: Možete promijeniti te postavke [nečujan]. DAVID J. Malan: Da, mogao čak i promijeniti DNS postavke. Dakle, u stvari, to je zapravo prilično korisna, iskreno, Ako ste u zračnoj luci, ili ako ste u kafiću, ili nešto što ima čudan internet pri čemu se ponekad DNS poslužitelj jednostavno prestane raditi. Pa čak i sam povremeno napraviti to, ne za zlonamjerne, ja želite koristiti Facebook svrhe, ali stvarno jer mi se čini da imaju mrežu veza, ali se ništa ne radi. I tako jedan od prvih stvari koje sam try-- i vi možete to učiniti na Windows too-- ali na mom Macu, ako idem na mreži. I biram svoje Wi-Fi veze. I idem na Advanced. I idem na DNS. To su tri IP adrese koje Yale daje mi za tri DNS poslužitelja. Svrha je onda za mene to probati bilo jedan od tih riješiti adrese. Ali mogu poništiti to radiš plus. A tko želi predložiti DNS poslužitelj? PUBLIKA: 8.8.8.8? DAVID J. Malan: O, ti si nevjerojatna. Da, 8.8.8.8. Dakle Google, blagoslovi njihova srca, Kupio IP adresu 8.8.8.8, jer vrsta izgleda kao G Vjerojatno, i to je lako zapamtiti. Ali, istina, sada sam konfiguriran moj Računalo koristiti Googleov DNS poslužitelj. Pa sad, ako idem na yale.edu, to je još uvijek ide na posao. Ali ja ne koristim Yale-a DNS poslužitelji više. A ako idem na facebook.com, sve one izgledaju prozore će ići preko Googlea. Dakle, s jedne strane, imam pametno izigrane lokalni sustav Administratori samo razumijevanje kako umrežavanje djela. Ali ja plaćam cijenu. Ništa nije besplatno. Što sam upravo odustao? Što sam upravo odustao? Sve od vas pametnih ljudi koji su bio koristeći 8.8.8.8, jer to je cool ili rješava probleme, što sam ste radili sve ovo vrijeme? PUBLIKA: Putovanja dalje? DAVID J. Malan: Možda putuju dalje, jer Google je vjerojatno ne sasvim kao bliski kao poslužitelj niz ulicu. No, više worrisomely. Da? PUBLIKA: Tako sada Google zna gdje idete. DAVID J. Malan: Google zna doslovno svaka web stranica koju posjećujete, jer ste doslovno moleći ih, hej Google, može li prevesti yale.edu za mene? Ili hej Google, može li prevesti ovaj drugi website adresa za mene u IP adresu. I tako they're-- nemam Znate li što pričaš. I tako oni znaju sve o vama. Dakle shvatiti da je ovo besplatna usluga s ciljem iz njihove perspektive kao. Ali to može sigurno dobili ste iz svezati. Sada samo za rješavanje jedna pitanje koje često dolazi do među studentima, a posebno kad putujete u inozemstvo u nekim zemljama poput Kina, gdje se doista je Great Firewall of China kod kojega Vlada tamo blokira sasvim malo prometa na različitim razinama. Ne morate se baš blok promet na razini govorimo ovdje, DNS ili na drugi način, možete ga blokirati na drugim razinama. A u stvari, samo da biti jasan, firewall može raditi čak i više nego samo jednostavno što administratori sustava promjenu DNS postavke. Firewall, uređaj između SAD i ostatak svijeta, može samo blokirati bilo odlasku Zahtjevi za IP adresu za Facebook na port 80, ili IP adresa za harvard.edu, ili IP adresu bilo što. Tako firewall može pogledati tvoj kuverte "IP adrese, pa čak i luka brojevi, a ako Yale htjeli, to samo može zaustaviti sve nas od čak pomoću FTP više, koji bi vjerojatno biti dobra stvar, jer to je doista nesigurno protokol. Yale nas čak može zaustaviti posjetite cjelinu webu Samo blokirajući sve luke Promet na broju 80, kao dobro. Tako da bi moglo biti još jedan način. A tu je i ljubitelj načine kao dobro. Ali kad ste na putovanju inozemstvu, primjerice, ili ako ste u internet caffe, ili ako ste negdje gdje ima blokade ili prijetnje, što možete učiniti? Pa, ako idete ulicom do Starbucks ili putujete u zračnoj luci, općenito možete samo skoknuti na Wi-Fi odabirom kao, JFK Wi-Fi na LaGuardia Wi-Fi, ili Logan Airport Wi-Fi, ili što ne. I to nije kodiran, zar ne? Nema ikona lokota. A ti vjerojatno ne zatraži za korisničko ime i lozinku. Ti si samo zatraži s nekim glupim obliku reći kao, slažem se kako bi koristili ovu samo 30 minuta, ili nešto slično. Ali nema enkripcije između ti i Starbucks Wi-Fi pristup točka, stvari s antene na zidu. Nema šifriranje između tebe i zračne luke Wi-Fi signali. I tako tehnički, da je jezivo osoba sjedi nekoliko sjedala dolje od vas u Starbucksu ili u zračnoj luci može biti, s pravom softver, gledajući sve svoje bežične promet na svom laptopu. To nije tako teško staviti laptop u ono što je zove pomiješan modu, koji kao što ime sugerira, znači da ste vrsta labav s pravilima. I to samo sluša ne samo promet značilo za nju, ali i svi drugi Promet u dometu. I tom logikom, ona može vidjeti sve paketa informacija koju prima. A ako one pakete nisu šifrirane, te su stavljajući sebe u opasnost od Vaše e-pošte ili poruke, ili bilo što drugo uzimajući izložena. Dakle, čak i ako niste u inozemstvu ali ti si samo u Starbucks, ili ste na neki slučajan osoba je Wi-Fi koji nije kodiran, VPN je dobra stvar. VPN je virtualna privatna mreža. I to je tehnologija koja vam omogućuje da imaju sigurna, da se šifrirani connection-- ljubitelj od Cezara ili Vigenere-- između laptop, ili telefon, ili vaš desktop, i poslužitelj na drugim mjestima, kao što su poslužitelj na Yale kampusa. A ako putujete abroad-- i zapravo, vi naći u hotelima cijelo vrijeme. A pogotovo što želja računalni znanstvenici gdje ti dečki bi, kao geeks, želite koristiti osim 80 luka, a osim 443-- lukama i u stvari za problema postaviti šest, ćemo igrati s više TCP portovi samo choice-- puno hotela i trgovine i mreže Samo blokirati takve stvari jer su pomalo naivno, ili u neznanju, samo mislim da nitko ne treba one druge priključke. I tako pomoću VPN može vam zaobići one vrste ograničenja, jer ono što VPN se je to vam omogućuje u Starbucks, ili zračne luke, ili bilo gdje u svijetu povezivanje encryptedly na yale.edu, na neki server ovdje na kampusu, a onda tunel, da tako kažemo, sve svoje prometa gdje god ti si kroz Yale, u kojem trenutku to onda ide na svoje konačno odredište. Ali to šifriranje, što izbjegavajte bilo koji od ovih vrsta filtera i nametanja koje Neki lokalna mreža nametnula. I plus, imate mnogo više robustan obrane protiv grozan ljudi oko vas koji bi mogli biti težak za slušanje na svoj promet. Još uvijek mogao biti creepy ljudi ovdje natrag kući na Yaleu promatranje prometa kao da dolazi iz VPN, ali barem si gurnuo prijetnju dalje. I to je ovdje, trgovina off. Sada, naravno, ako ste u Kina ili čak u kafiću, a ti preusmjeruje sve prometa putem Yale, koju cijenu plaćamo možda? PUBLIKA: Brzina. DAVID J. Malan: Brzina, zar ne? Mora biti neki matematike ili neki fanciness uključeni u stvarnom šifriranja. Tu bi moglo biti tisuće milja udaljenosti ili tisuća milja kabela između vas i Yale. I to je jako loše, ako ste u Kini, na primjer, a želite posjetiti website u Kini. I tako vaši podaci će SAD, a onda natrag u Kinu samo zato što ste šifriranje da kroz ovaj tunel. Ali to rješava tehnički i raditi probleme podjednako. No, sve se svodi na ove vrlo jednostavne ideje. A Harvard, za one znatiželjan, ima jedan i ovdje, na vpn.harvard.edu, koji djeluje kao Yale-a. Dakle, sa svim što je rekao, zašto je cijela ova mreža korisna? A što možemo početi raditi s njim? Pa, neka je učiniti ovo sada više stvaran. To je skraćenica s kojima većina nas vjerojatno super familiar-- HTTP-- koja se zalaže za hiper prijenos teksta protokol. A to samo znači to jezik, protokol koji web preglednici i Web poslužitelj govoriti. P u HTTP je doista protokol. I protokol je samo skup konvencija. Vidjeli smo IP-- internet protocol-- TCP-- kontrola mjenjača protocol-- i HTTP. Ali što je to glupo stvar protokola? To je samo skup konvencija. Dakle, ako sam nekako doći ovdje, i želim da vas pozdravim. Ja bih pozdraviti, moje ime je David. PUBLIKA: Luis. DAVID J. Malan: Luis. Imamo ovaj glupi čovjeka konvencija rukujući se ovdje. Ali to je protokol, zar ne? Druge sam ruku. Luis ispruži ruku. Mi smo to učinili. A onda završi, učinjeno. I to je točno isto duh protokola računala gdje je kao u HTTP, što se događa je to. Ako ste računalo na ostavio ovdje, a tu je i neke web poslužitelj tamo na desnoj strani. I računalo na lijevoj želi zatražiti podatke od tog poslužitelja. To je vrsta dvosmjerno rada. Preglednik na lijevoj traži neke web stranice. Poslužitelj na desnoj odgovara s neke web stranice. A vidjet ćemo što je oblik oni uzeti u samo trenutak. I ispada da oni computers-- koji preglednik i poslužitelj ili klijent i poslužitelja, da se tako izrazim. Slično kao u restoranu gdje Klijent traži nešto, a poslužitelj donosi njega ili nju something-- dobiti je vrsta operativnog riječi. Doslovno unutar omotnice koje moj preglednik šalje odavde na webu poslužitelj je riječ dobiti. Kao želim dobiti današnju vijest. Želim dobiti moj Facebook News Feed, ili sam žele dobiti neke stranice s poslužitelja. Naime, to je ono što je događa unutar tog okvira. Tako sam, uz Cole, bitno Poslali Cole odgovor. Ako zamislite da je Cole zapravo Želio sliku Rick Astley, možda bi mi poslao zahtjev slični u duhu do ovoga. Unutar svoje omotnice za mene, gdje je Ja sam sada u ulozi Google, će biti zahtjev koji doslovno kaže, dobiti, a zatim prema naprijed slash-- i vjerojatno ste vidjeli kose crte u URL-ovima prije. To samo znači da mi dati zadani stranica, zadani Rick Astley Slika u ovom slučaju. I usput, Cole govori jezik HTTP verziju 1.1 ili 1.1 protokol. I ispada da postoji starija verzija 1.0. No, računala imaju tendenciju da koriste 1.1. U drugom redu je korisna stvar koja će se vratiti možda prije dugo. Ali to je samo specifikacija za mene, primatelj, da što želim je www.google.com. Budući da je vrlo moguće ovih dana za nekoliko desetaka, stotine web stranice s različita imena domena za sve žive na istom poslužitelju. To neće biti istina toliko u Googleovom slučaju. No, u manjoj tvrtke slučaj, apsolutno može biti. Dakle, Cole je samo vrsta stavljajući u omotnici, usput, kada je ovaj doseže Vaša IP adresa na portu 80, Samo budite sigurni da znate Želim www.google.com, ne neki drugi slučajni web stranice na istom poslužitelju. Ono što sam tada odgovoriti na Cole s, na kraju dana, je slika. No, na vrhu toj slici unutar omotnice je zapravo neki tekst, gdje sam rekao, u redu. Govorim HTTP verziju 1.1 također. 200. Koji je broj status koji većina nas vjerojatno nikada nije vidio, jer to znači da je u redu. I to je dobro, jer je to znači ja sam uspješno reagirati Coleu zahtjev. Koje brojeve koje vjerojatno vidio na webu da nisu u redu? PUBLIKA: 404. DAVID J. Malan: 404-- datoteka nije pronađena. Dakle, istina, svaki put kad sam vidio jedna od onih dosadnih datoteke ne naći pogreške, jer web stranica je mrtav, ili zato što mistyped URL, to samo znači da je mala omotnica da je vaš Računalo je primio sa servera sadržavao poruku HTTP 1.1, 404-- nije pronađen. To je datoteka ili da je zahtjev što je napravio nije pronađen. Štoviše, unutar omotnice obično je to linija, vrsta sadržaja. Ponekad je HTML, nešto ćemo uskoro vidjeti. Ponekad je to JPEG. Ponekad je to GIF. Ponekad je film datoteka, audio datoteka, bilo koji broj stvari. Dakle, unutar omotnice je samo mali savjet o tome što sam primio. Postoji druge šifre statusa previše, neki od kojih ćemo istražiti u P postavili šest, a vi ćete naletjeti P postaviti sedam i / ili osam. No, neki ovdje, kao i 404 koje smo vidjeli. Zabranjeni, 403, znači kao dozvole su u krivu, kao da nisu vrsta to ispravno konfiguriran. 301 i 302, rijetko smo vidjeli vizualno. Ali oni znače za preusmjeravanje. Svaki put kad sam otišao u jedan URL i da ste bili magično poslao negdje drugdje, to je jer preglednik je poslao natrag kuverta sadrži broj 301 ili 302, i URL koji želi Vaš preglednik ići na umjesto. 500 je strašno. Vi ćete ga vidjeti prije dugo, vjerojatno P postavili šest ili P postaviti sedam. I to obično znači postoji neki bug u kodu, jer doista ćemo biti pisanje kod koji odgovara na web zahtjeve. A vi ste upravo je dobio neke pogreška u logici ili sintaksu, i poslužitelj ne mogu to podnijeti. Tako ćemo vidjeti kako sada možemo utjecati i Razumijem te zahtjeve na sljedeći način. Ako odem u, recimo, google.com. Pusti me na www.google.com. I zbog demonstracije je, neka je vidi, moram ići na Postavke ovdje. Ja ću ići na pretrage postavke. I Google ima sve dosadne mogućnosti, ali korisnih značajki. Dakle, Google je tu stvar kao trenutak Rezultati gdje počnete tipkati, i automatski stvari početi pojavljivati. I to je sve u redu i tehnički korisno, a mi ćemo shvatiti prije dugo kako se to radi. Ali za sada, ja sam okreće off instant rezultate, jer želim svoj preglednik vrsta rada stare škole pa da mogu vidjeti što se događa. Dakle, sada sam ovdje. I želim tražiti mačke. I primijetite vidim neke prijedloge, neke vrlo benigni prijedlozi srećom. A sada, ako sam pogodio Enter, da vidimo što se događa. Dakle, postoje neke mačke. A na vrhu je hit na Wikipediji. Ali danas mi je stalo tehnologija se ovdje. Dakle URL na koji sam poslan je to ovdje. A ima nekih stvari sam stvarno ne razumijem. Tako ću ići naprijed, jer Ja vrsta znati kako Google radi, i ja ću destilirati ovo URL u svom najjednostavnijem obliku. A sada ću pritisnite Enter opet. I to još uvijek radi. Imam stranicu rezultata Sve o mačkama. Ali primijetite jednostavnost mog URL. Ispada to je kako mnogo web djela. Web je samo cjelina hrpa računala trčanje softver koji se ulaz. Nije mogao niz stil unosa. Nije naredbenog retka Argumenti kao što smo navikli. Oni se ulaz, ove web poslužitelji, putem URL-ova često. I svaki put kad ste tražili nešto, svaki put ste prijavljeni Facebook, svaki put kad ste učinio ništa interaktivni s web stranica, što radite učinkovito podnošenjem obrasca, pa da speak-- tekstualne okvire, potvrdne okvire, kružiće, i sitnica koje šalju Informacije od vas na poslužitelj. I ispada da weba poslužitelj zna gledati na taj URL i analizirati ga, kao i na to gledate karaktera po znak u potrazi za bilo što Zanimljivo, nakon upitnikom. Jer nakon upitnikom, ispada, će doći hrpa ključnih parova vrijednosti. Mislim ključnu = vrijednost. A onda, ako postoji multiple-- možda ampersand, neki drugi ključni = vrijednost, znak za struju, ključna = vrijednost. Tako smo vrsta vidjeli ovu ideju Prije nešto gdje ima vrijednost. To je samo novi format ovdje. A ja samo znam, po konvenciji, Google koristi Q za upit. A onda, ako želim tražiti pse, ja Možete ručno tražiti pse kao što je to. A onda sam očito sve neki rezultati pretraživanja uključuju pse. Dakle, čini se da je zanimljiv. I doista, što se događa ispod haube je to. Dopustite mi da to učinite. To je A- vidimo. Pusti me natrag preko ovdje samo na trenutak. Mi ćemo vidjeti da postoji drugi načini dostaviti podatke. Dakle, ako sam se prijaviti na Facebook, ili Gmail, ili bilo koje druge popularne web stranice, Čini vrsta loše ako sve što sam upisali u okvir za pretraživanje završi u mom URL, u adresnu traku moje pregledniku. Zašto? Zašto je to tako blago zabrinjavajuća? Da? PUBLIKA: Upišite lozinku. DAVID J. Malan: Da. Pa što ako ono što sam utipkao je moja lozinka? Nekako sam to ne želim tako očito vidljiva u adresnu traku moje pregledniku. Jedan od njih, jer je moje neugodno sustanarom sklon gledati preko ramena, i on ili ona sada može vidjeti, iako to je metaka kad sam ga upišete u, mali krugovi. Sada je u mojoj adresne trake. Štoviše, ono što je istina o stvari imaju tendenciju da se upišete u adresnoj traci. PUBLIKA: [nečujan] DAVID J. Malan: Što je to? PUBLIKA: Ona dobiva poslao. DAVID J. Malan: Ona dobiva poslao. I također, to dobiva sjetio. Zato sljedeći put upišete stvari tamo, često autocompletes a sjeća što ste upisali prije. I tako je to pravi povijest da vaše sestre, ili svojim sustanarom, ili tko može hodati do prilično mnogo vidjeti svaku web stranicu ste posjetili jer je prijavljeni u toj adresne trake. Štoviše, pretpostavimo da želite upload fotografija na Facebook. Kako u svijetu su ti će staviti fotografiju u URL? Pa ispada to možete učiniti u nekim način, ali to je svakako nisu očiti. I tako je taj drugi način slanje informacija u omotnicu, Ne putem GET, ali preko nešto što se zove POST. I u teoriji, to izgleda ljepušan velik dio isti. Umjesto riječ GET, POST kažemo, a zatim iste vrste formata. Na primjer, to je screenshot onoga što to bi moglo izgledati ako pokušam prijavom u Facebook, koja me šalje u datoteku zove login.php, što je zapravo još i danas se zove kao takva. To je isti naziv datoteke Marko dali to prije mnogo godina. To je program pisao u PHP putem koje korisnici mogu prijaviti na web stranici. Ali trebate poslati neke dodatne ulaz. I prije nego što ide nakon naziv datoteke kao što je učinio prije sa cats-- q = cats-- može ići niže u zahtjevu, dublje unutar omotnice ako će, gdje nitko ne može vidjeti, i gdje se ne završe u korisnikovom pregledniku traku, a time i Ne sjećam se da ljudi Snoop oko. I tako ovdje je moj e-mail adresu i moj lažni lozinku zapravo ići. A ako Facebook koristi Ne HTTP, HTTPS, ali, sve ovo će biti kodiran, kodirani, ala Cezara ili Vigenere, ali još fancily tako da nitko zapravo može vidjeti ovaj zahtjev. I tako doista, bilo koje vrijeme imate URL koji počinje s HTTPS, to samo znači da je kodiran. Ali na kraju dana, što je zapravo unutar tih kuverti? Ovo je super niska razina. I na sreću, nismo će nužno ići tako nisko razinu svaki put do započeti pisanje zanimljiv program. Možemo početi uzimati ideje tjedan jedan kroz pet, pretpostavimo da postoji Sada je to infrastruktura koja omogućuje nam pisanje softvera koja djeluje na webu, i to će nam omogućiti Ovog će tjedna početi gleda na nešto što se zove HTML. To je stvar koja je još dublje unutar omotnice, ali to je stvar smo će početi pisati. A to je stvar više Zanimljivo, mi smo će pisati programe koji počinje generiranje automatski tako da naši web stranice ne tvrdi kodirani, ali se ulaz i izlaz proizvode. Ovo je možda najjednostavniji web stranica možete učiniti u svijetu. Ja doista može otvoriti nešto glupo kao što TextEdit na moj Mac, što me samo daje jednostavan tekst prozor kao što je ovaj. PC korisnici imaju Notepad.ext, koji je vrlo sličan u duhu. I ja se doslovno upisati iz this-- DOCTYPE HTML, koji izgleda malo zagonetan. No, mi ćemo se vratiti na to. HTML, s tim čudno kutna zagrade i kose crte, unutar kojih sada ću reći ovdje dolazi glavu moje web stranice. Unutar toga, samo sam Znaš, i uskoro ćete znati, da ja mogu staviti naslov moje web stranice. A onda ispod voditelj web stranice je ići na tzv Tijelo web stranice. A ja sam samo uvlačenje jednostavno kao u C vrsta zadržati stvari lijepo čitati stilski. A sada ću spasiti ovo kao file na moj desktop, zove hello.html. A ja ću reći da, koristite HTML. Nemojte ga promijeniti Txt, čak iako je sve to je tekstualna datoteka, baš kao i program C napisano s uređivač teksta. Iako nije u CS50 IDE Na Trenutak, samo ovdje na mom Macu. I ako ja sad ići na moj radna površina, vidjet ćete hello.html. Ako sam dvaput kliknite ovaj, to će otvoriti Chrome. I premda ove datoteke dogoditi da žive na moj radna površina, da je možda najjednostavniji Web stranice sam mogao napraviti. Uočite da naslov Kartica put do vrha je Hello World. Tijelo web stranice je doista Hello World. I sve sam učinio da se U tom trenutku je provesti, ili je napisati novi jezik, zvan HTML. To nije programiranje jezik kao C Nema ne će biti uvjeti, i petlje, i funkcije. To je označni jezik, u kojem Slučaj ti samo reći primanje Program ono što želite učiniti. To znači hej preglednik, ovdje dolazi HTML stranica. Hej preglednik, ovdje dolazi glava moju stranicu. Hej preglednik, ovdje dolazi tijelo moje stranice. Hej preglednik, to je to za tijelo. To je to za HTML stranice. I s tim jednostavnim definicijama sami ćemo uskoro vidjeti da je jedan, možemo predstavljati to kao stablo. No, više o tome kasnije. Dakle, to će sve povezati na naši najnoviji strukture podataka. Drugo, mi ćemo uvesti ovu glupu šalu. To je stvarna tetovaža koje ovaj tip je imao na vratu. To je vjerojatno smiješno prvi tjedan ili dva, a nakon toga, možda ne toliko. Ali HTML, pa čak i web Stranica Upravo sam napravio, super um numbingly disappointing-- samo govoreći Pozdrav svijetu u crnoj tekst na bijeloj pozadini. Sigurno možemo učiniti mnogo bolje. I mi ćemo učiniti uvođenjem drugi jezik zove CSS. To također nije programski language-- nema petlje, uvjeti, ili petlje, ali stvarno, samo sintaksu kojom možemo reći, da ovaj tekst velika. Napravite ovaj tekst mala. Pravo poravnajte ga. Lijeva poravnajte ga. Učinite to ružičasta. Učinite to ljubičasta. Učinite to plava. Ili bilo koji broj druge vizualne efekte. I tako ćemo vidjeti kako započeti stylizing web stranice, tako da oni izgledaju na način bliže ono što želimo. I na kraju, što doista uništio možda puno TV i film za vas. Mislio sam da ćemo završiti ovdje s našim konačnim sekundi na završnom isječak koji pokazuje Kako sjeckanje na internetskim radovima. Ako smo mogli prigušiti pali zadnju put. [VIDEO PLAYBACK] -Nema šanse. Ja sam uzimajući sjeckan. -Okorsky? -No-- Ne, to je glavni. Već su spalili preko NCIS javnosti firewall. -Pa, Izolirati čvor i deponij ih na drugoj strani rutera. -Pokušavam. Ona se kreće prebrzo. Oh, to nije dobro. Oni pomoću naše veze [Nečujan] Ova baza podataka. Sever to. -Ne Mogu. To je točka napada. On ili ona je samo će nakon mog stroja. -To Nije moguće. Postoji DOD razina moje šifriranja. Bilo bi trajati mjesecima get-- -Hej, Što je to? Video igre? -Ne Tony, mi smo uzimajući sjeckan. -Ako Su dobili u Abby računalu, cijeli NCIS mreža je sljedeći. -Ja Ga ne može zaustaviti. Učinite nešto McGee. -I've Nikada nije vidio kod ovako. Oh. Gdje je to ići? Abby? -Ja Nisam ništa. Mislio sam da jesam. -Ne. -Učinio sam. [END PLAYBACK] DAVID J. Malan: Najbolji dio je dvoje ljudi upisivanjem na tipkovnici istovremeno. Dakle, to je to za CS50. Držat ćemo oko radnog vremena. I mi Vidimo se sljedeći put. [Muziciranja - "Seinfeld TEMA"] Ovo je CS50. Ne želim biti gusar. ZVUČNIK 2: Yarr David. To je u redu dvostruki što se nosi. Puno prihvaćati u tom dimu.