[Přehrávání hudby] SPEAKER 1: Dobře, vítej zpět na CS50. To je konec týdne osm, a téměř Halloween. Zítra večer v úřední hodiny budou Nejděsivější ty ještě, a ne proto, Halloween. Ale v takovém případě, si uvědomit, že problém nastavit šest, kontrolu pravopisu Problém set, je proslulý být pro mnohé studenti, nejnáročnější, Určitě mezi základní problémové okruhy C, a opravdu, obecně. A Zmiňuji se o tom jen proto, že je to týden, kde mnoho lidí si zvláště zdůrazněna jen snaží dostat zatraceně pravopisu pracovat. A jedna věc, kterou bych povzbudit, abyste je to, že, jak uvidíte dnes, a v pondělí začneme hit tohoto vrcholu tento týden, kdy se věci stanou trochu známější, trochu víc přístupné, jak přechod z v prostředí příkazového řádku v C webová prostředí v PHP. A tak bych povzbudit vás, i když jste opravdu na vaše rozumem v koncích v snaží získat p pustili do práce, je-li je to opravdu místo, jste na, nebo ocitnete, snažte k moci přes něj. Protože si myslím, že budete mít dost potěšen, a docela na sebe hrdý, pokud jste opravdu konec, že ​​část Samozřejmě, část C, na tak vysoko, pokud stresující, na vědomí. Takže to není vyděsit. To je jen chtěl povzbudit, abyste se zůstat, že další hodinu, aby se získat kontrolu pravopisu práci. A pokud si uvědomit, že tato je volitelné, zcela. Ale my máme tzv. velkou tabuli který šel žít dnes ráno. Jako dnes ráno jsem byl na vrcholu velké deska, která je měřítkem toho, jak paměti RAM a kolik běží čas váš program vyžaduje pravopisu. Ale já jsem od té doby bylo vysídleno. Já jsem teď nešťastné číslo 13.. A to, co uvidíte, je zde, David Kaufman, a Lauren, a Adam a Jason, a jiní jsou nyní na vrcholu velkou tabuli. Podíváte-li se tam na pravé straně, každý z nás má opravdu dobrý implementace o velikosti nejméně - vrací počet slov ve slovníku. A v každém z těchto sloupců, budete zjistit, kolik paměti RAM Každý z našich implementace používá, kolik doba chodu to trvá vykonat zatížení versus kontrola versus velikost a vyložit, a pak, Celková doba chodu. Takže jen ujistit Elmer, a Patrick, a Linda, a všichni ostatní kdo přijde po vás, je to naprosto žádná ostuda, že k spodní velkou tabuli. Kdyby nic jiného, ​​to znamená, že jste se práci, a je to správné, ale je to ne nutně jako efektivní, prostor nebo časově, jak by to mohlo být. Takže zcela dobrovolné. Ale chtěl být mrkev druhů tak, že když pracujete na p nastavit, ty jsi tak hrdý na sebe, vy to mám pracovat, budete přispívat do velké deska, máš opravdu dobré číslo, jdete na večeři, přijdete zpět, a vaše spolubydlící je mírně jste se na velké desce. No, je to čas, na tom místě, jít zpět na rýsovacím prkně, aby se re-napadnout velkou tabuli. Pokud se podíváte na specifikace, Pokyny pro propojení s velká tabule jsou nyní zveřejňovány. Takže pár vzestupů hlavy - Jeden z nich, pre-návrh na konečné Projekt by letos v pondělí. Viz tento spec na kurz je Internetové stránky, co to znamená. Je to opravdu jen náhodný, ale pak si provokující Napsat mezi vámi a vaším TF, ale opravdu jen proto, aby se věci začaly, rozhovor začal, i když většina z vás nikdy ani písemné webové stránky před, ani nevím, co můžete, jak můžete, provádět váš konečný projekt. Jít na víře, že budete vědět, jak to udělat poměrně málo více věci na několik týdnů. Takže stačí začít tento proces za spec zkoumání možných nápadů. Také, co bychom pozvat udělat, je - máme tradici, již mnoho let nyní v kurzu, hostování to - store.cs50.net. Všechno je prodáván v pořizovací ceně. A je to opravdu jen příležitost k opotřebení CS50, pokud byste chtěli dělat že v kursu je a. Například, tam jsou takové věci jako t-košile, které jste mohli vidět děje kolem kampusu, mikiny. A pak, zveme i studenty předkládat návrhy, které mají být zvěčněn v CS50 obchod. Například, jeden z loňských oblíbené položky, které bude možná nyní rezonují s vámi, je to jeden tady. Velmi oblíbená položka. Takže pokud byste chtěli podílet na to, dáme do formuláře brzy na cs50.net/design, na které můžete nahrát Obrázek, který jste provedli v Illustrator nebo Photoshop, nebo nějaký podobný program. A pokud jste obeznámeni s těmito druhy specifikací, chceme, aby být PNG, alespoň 200 bodů na palců a méně než, že mnoho bodů, a pod 10 MB. Pro více informací, jen e-mail Samozřejmě v případě hlavy na heads@cs50.net byste chtěli podílet se na tohle. Dobře, takže dnes, nic víc C. Tak jsme začne táhnout zpět vrstvy internet, web a jak můžete skutečně začít psát software pro Tento odlišném prostředí. Tak především, pojďme se zeptat, První otázka, - dovolte mi, abych nám náš seznámit kreslení app sem. Dovolte mi položit otázku, jak se internet práce. [? STUDENT: Magie. ?] SPEAKER 1: Magie. OK. Dobrá odpověď. Takže začneme tam dnes, a uvidíme, jestli nemůžeme to trochu méně magická během hodiny. Zkusme si říct, že v v kontextu příběhu. Takže jste fanoušci jít na facebook.com, nebo reddit.com, nebo co v těchto dnech. A tak, co se skutečně děje, když zadáte něco jako facebook.com, a stiskněte klávesu Enter, v Chrome, nebo Firefox, nebo IE, Safari, nebo cokoliv prohlížeč jste vlastně dělá? Můžeme vyprávět tento příběh, možná větu po větě? Jaká je jedna z prvních věcí, které se stane, když stisknete klávesu Enter, poté, co psaní facebook.com? [? STUDENT:? Váš] počítač je požadavek HTTP. SPEAKER 1: OK. Takže počítač je - budeme nazývat - HTTP požadavku. Teď, co to znamená? No, všichni jsme pravděpodobně viděli nebo napsal, už dlouhá léta, H-T-T-P se často následuje dvojtečka, lomítko, lomítko. Takže co je to? No, HTTP je HyperText Transfer Protocol. A to je jen ozdobný způsob, jak říkat, je to jazyk, který webové prohlížeče, jako Chrome a další a webové servery, jako je facebook.com, obraťte se na jeden druhého. A je to poměrně jednoduché, anglicky orientovaný jazyk. Je to skoro jako pseudo kód. A to je způsob, jak klienta, tak budeme nazývat - prohlížeč - komunikaci se serverem. A stejně jako v restauraci, když, klient, sednout si ke stolu a pak něco objednat pryč Nabídka na server, pak je jít, aby vás něco z toho zpět, ať je to cokoliv jste požadovali. Totéž v počítačovém světě. Prohlížeč - klient - se chystá podat žádost, a pak, doufejme, že si zpátky něco ze serveru. A to je něco, na vysoké úrovni, webové stránky. Na mírně nižší úrovni, je soubor napsaný v jiném jazyk HTML s názvem - HyperText Markup Language. Ale o tom až za chvíli. Takže HyperText Transfer Protocol - HTTP - to je protokol, který prohlížečem a serverem použití. No, a co je protokol, přesně? No, můžete myslet to jako jazyk. Ale když jsem se oslovit naše publikum tady, normální věc, pro nás lidi na to je, když někoho pozdravit, Já říkám, ahoj, jmenuji se David. [? STUDENT: Ahoj,] jmenuji se Dipty?. SPEAKER 1: "Ahoj, jmenuji se Dipty, "ona odpoví. A tak jsme měli to docela svévolné interakce třesoucíma se rukama, jako je Často lidské konvence ve většině zemí. A to je protokol, ne? Trochu jsem inicioval rozšířením moji duši ruka, spíše rozpačitě, na jevišti Sanders zde. Uvědomila si, oh, jsem se dostal požádat o ruku zřejmě. A tak odpověděla na tuto žádost tím vlastně uznává ji. Uznává, ACK, je ve skutečnosti věta velmi běžné ve světě sítí, na serveru na vědomí klienta. Pak jsme trochu dokončena, že transakce, a trapnosti nad. Tak to je opravdu to, co se děje pod kapotou stejně. Nech mě to udělat trochu víc technicky pod kapotou. Chystám se jít sem do terminálu. Toto okno terminálu se stane, že na mém Mac, ale co můžete udělat stejný druh věci v CS50 Appliance. A já jsem vlastně bude používat program že nebudeme skutečně použity pro Kolik vůbec semestru. Ale je to jen Telnet. Zpět v den, Telnet je program který jste použili pro připojení ke vzdálený server, zkontrolovat e-maily nebo něco takového udělat. Pro tuto chvíli budeme používat ten starý program školy, Telnet, aby předstíral, že bude prohlížeč. A já jdu dál a proveďte následující kroky - dovolte mi, abych zvýšit svou velikost písma. A já řeknu, Telnet k Server s názvem www.facebook.com, ale specificky, Telnet na port 80. Vrátíme se k tomu. Ale teď vím, že většina služeb na internetu jsou identifikovány jednoznačně nějakým číslem. V tomto případě je to 80. Nyní většina z vás pravděpodobně Nikdy předtím zadali 80. Ale ve skutečnosti, když půjdu do prohlížeče a vytáhnout, například, http://www.facebook.com/-- to je auto-complete, to je není moje historie - v pořádku, takže teď jedeme do tlustého střeva 80 lomítkem. Takže tvrdím, že i když jste pravděpodobně nikdy napsali to dříve, dvojtečka 80 po facebook.com, doufejme, že je to stále nebude fungovat. A skutečně, to jde na facebook.com. Tak to dopadá, že 80 je implicitní. Nikdo z nás lidi měli psát, že po celá léta. Vzhledem k tomu, prohlížeče, ve výchozím nastavení, jen Předpokládejme, že číslo, které chcete použít Při vyvolání server tak, mluvit je, ve skutečnosti, 80. Vzhledem k tomu, dlouhý příběh krátký, servery umí mnohem více než jen sloužit až webových stránek. Mohou reagovat na chatu. Mohou posílat e-maily. Je tu spousta služeb, které může běžet na jednom serveru. Takže tato čísla - v tomto případě, 80 - jednoznačně identifikuje jeden z těch služby, které je HTTP, je web protokol než serveru by ve skutečnosti mohly podporovat. Ale můžu simulovat žádost nyní, textově, pomocí tohoto Old School Telnet programu. Takže budu v podstatě teď předstírat být prohlížeč a mluvit HTTP odesláním, s mé klávesnice, přesně příkazy, které Chrome jen věděli, jak poslat pro mě jako mávnutím kouzelného proutku. Takže budu pokračovat a stiskněte klávesu Enter. Všimněte si, že se snaží 31.13.69.32. 13. Co je to? Takže je to IP adresa. Nyní, i když nejste příliš obeznámeni s komplikovanosti těch, vás pravděpodobně mít obecný pocit že tyto věci existují. A IP adresa - Adresa internetového protokolu - je prostě jedinečný identifikátor počítač na internetu. To je tak trochu zjednodušující pro tuto chvíli. Ale každý počítač na internetu má unikátní IP adresu, stejně jako každý dům v, řekněme, v USA má jedinečnou poštovní adresu, něco jako 123 Main Street, v Anytown, USA. Takže něco takového. A to je také zjednodušením. Ale tyto adresy, které máme v poštovní svět a tyto adresy že máme ve světě počítačů jednoznačnou identifikaci serverů tak, aby při Odeslat zprávu pro ně více než internetu, nebo když dáte dopis, ve old school schránka - poštovní mail - služba ví, jak se dostat, že žádost, nebo že dopis, na určen příjemce. Teď můj počítač, tak nějak, má jen zjistili, že Facebook je unikátní IP je 31.13.69.32. Ve skutečnosti, že pravděpodobně změní. Facebook má pravděpodobně více IP adresy, protože absolutně mají více než jeden server. Ale to se stalo pro nás jako mávnutím kouzelného proutku. Ve skutečnosti, vnitřní tajemství název Server jsem zjevně spojen se nazývá star.c10r.facebook.com, ať je to cokoliv. Je to jen, co systém správce na Facebook se rozhodl volat tento konkrétní server, který jsem poněkud náhodně zaslána. Takže teď, pokud moje připojení nemá vypršel, jdu předstírat, že prohlížeč. Chystám se říct, dostat prostor lomítko prostor. A budu předstírat, že mluví HTTP verze 1.1, který je ten, že většina prohlížečů používá. A já jsem se chtěl zmínit zejména na server, mimochodem, chci webové stránky známo, že ve světě jako facebook.com. Enter, Enter. A teď, všimněte si, co se stalo. Server, číšník, reagovala k mé objednávky nebo vyřízení mé žádosti, s další textové zprávy. Nyní opět ve světě prohlížečů jako Chrome a Safari, ano ne vidět, jak je člověk. Microsoft a Google jen schovat tyto údaje z nás. Ale Facebook reagovala Odpověď také v jazyce HTTP. Všimněte si, že je zde kód, 302, což ve skutečnosti má zvláštní význam podle konvence. Zjištěno, takže je alespoň slibné. Ale zdá se Facebook říká, mi, mm-mm, nechcete to, co jste chtěl. Místo toho chtějí dnes speciální, který je facebook.com / unsupportedbrowser. Takže na vysoké úrovni, co dělá Facebook Zdá se, že tady děláš? Je to přesměrování mě. Takže Facebook nemá rád Skutečnost, že jsem předstírala, že je to v jiných prohlížečích. A tak je to přesměrování mi nějaké webové stránky. Jsem skutečně zvědavý, teď, co tohle vypadá. Dovolte mi přejít na které v Chrome a tak jsme může vidět, co mě chtějí vidět. Takže teď jsem vlastně poslal mě zpátky do Facebook, protože jsem si uvědomil, oh, vy máte podporovaný prohlížeč. Nejsme ani jít do ukázat tuto stránku. Tak pojďme do toho a vidět když nemůžeme opravit. Budu muset podvádět trochu. A o tom více v příštích týdnech. Ale já budu dělat jednu věc zde. A já to vysvětlím zanedlouho. Dej mi jen chvíli podvádět, a wow vás. Tak ať si to. OK. Vysvětlím ti to, co dělám za chvíli. Chystám se jít dopředu a zrušit toto připojení a zkuste to znovu. Získejte lomítko HTTP 1.1 hostitele www.facebook.com user-agent. OK. Teď jsem předstíral, že Chrome. Tak to dopadá, že pokud prohlížeč odešle požadavek na server, je to jen čest systém. Když řeknu, že jsem Chrome, Facebook převezme Jsem Chrome. A prostředky, které jsem identifikoval Sám jako Chrome je tím ukrutně dlouhý řetězec. V podstatě, všechny prohlížeče výrobců na světě mají rozhodl dobře, tato verze tohoto prohlížeč na tomto operačním systému bude mají uživatelského agenta řetězec, který vypadá jako ten šílený nepořádek tam. A Mozilla je tam historické důvody. Ale všimněte si, jak moc informací jsem úniku na facebook.com i bez přihlášení Říkám Markovi, že je to Mac, které jsem pomocí. Říkám mu, že je to Intel založené Mac se systémem Mac OS 10.8.5. Mimochodem, tato informace bude každé webové stránky, které navštívíte s Váš prohlížeč. Docela neškodné tak daleko, ale to je trochu šťavnatější. Všimněte si, že pokud si dostatečně daleko, Já používám Chrome verze 30.0.1599.101. Ale teď, všimněte si, že odpověď není tak zlé, jak to bylo předtím. Je-li Facebook vyprávění abych šel teď? To mi říká, opět na webových stránkách - to mi říká, že je to natrvalo přestěhoval. Tak kde sakra jsi Facebook jít? Jo, tak to je malý rozdíl. Nevšimnout, tady, že internetové stránky skutečně přestěhoval do protokolu HTTPS. Tak dlouhý příběh krátký, to je jeden způsob, že Facebook je prosazovat, že jsem skutečně skončit na hlídaném verze jejich webové stránky, která je pomocí šifrování - složitější než šifrování se mluvil o p sadu dvou, ale šifrování přesto. V tomto okamžiku to bude těžké pro mě strašidlo jejich web požádat pomocí aplikace Telnet. Vzhledem k tomu, když říkáte, me používat SSL - předpona HTTPS je to, co to znamená - když říkáš, abych použil kryptografie, neexistuje žádný způsob, jdu ručně šifrovat své poselství před vás všech tady a pokusit se přijít na to, jak to udělat. Je to jen tak, aby se mnohem složitější. Ale to je to, co prohlížeč dělá pro vás. Pojďme se podívat, jestli můžeme to udělat jen málo jednodušeji, a pak, s webovými stránkami to není očekával abychom byli jako bezpečné. Pojďme na, řekněme, harvard.edu na portu 80. Enter. Dobře, tak se lomítko HTTP 1.1. A co to první lomítko znamená? Jen aby bylo jasno, proč Pořád psát, že? No normálně, když zadáte adresu URL - a bohužel, prohlížeče obvykle skrýt to v těchto dnech - normálně, když jdete do harvard.edu, URL, které oficiálně se končí lomítkem. Vzhledem k tomu, jednoduché lomítko označuje jaká část pevného disku? Kořen pevného disku. My v Appliance se opravdu měli myslet na to, protože jsme vždy ve složce Johna Harvardu. Ale jeho složka je v jiné složce. A tato složka je v kořenovém adresáři Spotřebič je pevný disk, abych tak řekl, i když je to virtuální. Tak jednoduché lomítko takhle prostředky kořen na pevném disku. Je to jako zpětné lomítko tlustého C, nebo je to kořen vašeho svazku, tedy na Mac OS. Ale Chrome a další prohlížeče tyto dny, dostali uživatelsky přívětivý, a skrývají, že lomítko úplně. Ale to je vše, to znamená v mém textové zprávy - mi kořen harvard.edu 's homepage, to znamená, že Výchozí stránka sama o sobě. Tak nech mě jít napřed a stiskněte klávesu Enter. Dovolte mi připomenout, že chci hostitele www.harvard.edu, jen v případě, že je jiné webové stránky žijící na stejný fyzický server. OK. Harvard se trochu trpělivost se mnou. Tak jdeme na to znovu, rychleji. Získejte lomítko HTTP 1.1 hostitele www.harvard.edu user-agent - Hádám, že naše servery nejsou péče, jak moc o to - Enter, Enter. Páni. Oh sakra, špatný požadavek. OK. Takže to, co se tady děje - Dobrý den, harvard.edu. Proč se to dělá - zajímavé. Oh, OK. Takže to, co je teď Harvard dělá - a my jsme bude rychle otočit pryč tato cesta, protože to bude na únavné rychle - Všimněte si, že Harvard je vlastně stlačování jeho odezvu na mě, což není ideální. Protože jsem, zdá se, jako člověk, ne vědět, jak dekomprimovat kousky, které byly zaslány ke mně komprimovány. A oni jsou zobrazeny je odpad tam, protože oni jsou nuly a jedničky, ale nejsou ASCII znaků. Jsou to vzory nul a jedniček, které byly komprimovány, aby se méně místa. Takže velmi rychle, dovolte mi jestli můžu obnovit zde. Zkusme, možná, další Areál úplně. mit.edu get lomítko lomítko HTTP 1.1 hostitele www.mit.edu user-agent dvojtečka tam. Děkuji, MIT. OK. Takže tady máme webové stránky. Tak to je jazyk známý jako HTML - HyperText Markup Language. Já prostě rolování zpět v čase se dostat na velmi tip na začátek stránky. A všimněte si, jak MPO reagovalo Na moji žádost. 200 je dobrá. 200 znamená všechno je doslova OK. A to je stavový kód, který my lidé opravdu nikdy vidět, v dobrém slova smyslu. Protože to znamená, že je vše v pořádku. Všimněte si, že MIT je informoval mě, hej, server, utíkáme se nazývá Apache, který je velmi populární bezplatný open source webový server. Utíkají, zdá se, UNIX, který je operační systém jako Linux. Všimněte si, že oni zřejmě aktualizováno jejich webové stránky na 04:00, Greenwich Mean Time. Všimněte si pár dalších detailů. Jsou návratu ke mně, text / html. Tak uvidíme, co to znamená, že za chvíli. Už prý mi dal 14717 bytů v hodnotě HTML. A některé další, esoterická informace tam. Ale to je místo, kde to začíná být zajímavé. To je, jak si udělat webovou stránku. To je, jak si udělat webovou stránku, jejíž Název na kartě, ve Vašem prohlížeči, je MIT pomlčka Massachusetts Institute technologie. A skutečně, když se vrátíme k Chrome a navštívit www.mit.edu, všimněte si, že opravdu, v názvu se zde, MIT je pomlčka Massachusetts Institut tečka, tečka, tečka. A teď nevšiml, i když jsem klikněte pravým tlačítkem myši nebo ovládání na ikonu na ploše zde a přejděte na příkaz Zobrazit zdrojový kód stránky - alespoň v Chrome, ale každý prohlížeč to dělá přes některé prostředky - zde je, že stejný soubor. Stává se to být barevně odlišeny, nebo syntaxe zvýrazněny. Ale stejně jako u kódu C, které nebyl obarvené vámi, bylo obarvené podle gedit, podobně jako je Chrome, jen se to hezčí číst. Ale to je věc, která Brzy budeme psát. Tak to je konec hry. Server odpověděl, že informace, stejně jako jste odpověděli rukou pro naše handshake. Ale co jiného je třeba jít na mezi tyto kroky? No, když jsem zadat v tomto posledním případě, www.mit.edu a stiskněte klávesu Enter, jsme vím, že mluví do přístavu 80 automaticky portu jen v tom, že číslo. Ale kde se IP adresa jít? Jak se můj počítač přijít na to, co IP adresa mit.edu je? Tak to dopadá, v tomto světě, věci jsou tzv. DNS servery. A dovolte mi jít dál a čerpat rychlý obraz sem. A to si jen načrtnout, v hrubé výrazy, co se děje. Takže budeme předstírat, že je to můj laptop tady, v Sanderse. A to má Wi-Fi, takže je připojen bezdrátově k něčemu. Co to ve skutečnosti připojen k? No, někde tady, je tu něco na zdi s několika anténami. A tomu se říká přístupový bod - AP. Bezdrátový přístupový bod, bezdrátový router - Říkejte tomu, jak chcete. Ale oni celého areálu, s těmito malými anténami. Naše jsou vyrobeny společností Cisco, typicky. A tak nějak, můj počítač se mluví k tomuto bezdrátovému přístupovému bodu, někde tady v Sanders, nebo dolů, nebo venku. Mezitím, to, co má hodně fyzické dráty bude, pravděpodobně Science Center, které my budeme kreslit takhle. To není ve skutečnosti vypadat takhle. Že vlastně vypadá mnohem lépe. Takže Science Center má spoustu počítačů uvnitř toho, že jsou nějak fyzicky připojen na všechny z těchto přístupových bodů na akademické půdě. A ty fyzické počítače, budeme volání směrovače nebo brány. Router, jak již název napovídá, je to Smyslem života je cestou informace. To trvá několik bitů, z počítače, jako vstup, a postavy z místa, kde tyto bity by měly být zaslány. Takže v případě mého požadavku na mit.edu, je to vlastně docela jednoduché. Můj požadavek, který přijde z mého prohlížeče, přes Wi-Fi, k přístupovému bodu, pak přes nějaký kabel do routeru v Science Center. A nějak, router Science Center vyřeší že MIT je to tak. A budu se pohnout kupředu ty bity, jdu cestou těch bitech, po silnici, dolů Mass Ave., MIT. Ale jak se můj počítač, co IP adresa byla ještě? Tak to dopadá, že někde zde existují servery - a budu kreslit dosti abstraktně - jako DNS server - Domain Name System. To nejsou routery. Jedná se o různé typy serverů jehož smyslem života je přeložit názvy hostitelů, jako www.mit.edu, na IP adresy, stejně jako 1.2.3.4 Takže DNS servery dělat přesně to. Můžete si o nich, že mají velký databáze, nebo opravdu jako velké Excel soubor se dvěma sloupci. Jedním z nich je hostitelská jména, jeden je IP adresy. A oni jen převést jeden na jiné, v obou směrech. Nyní ve skutečnosti je to trochu mnohem složitější. Ale to, jak můj počítač, můj náhodný Mac nebo PC na stole tady, ví, Co je jedinečný identifikátor pro www.mit.edu nebo Facebook, nebo harvard.edu, když na to přijde. Ale samozřejmě, je tu celistvost Mass Ave zde. A pak se dostáváme k MIT, který tento je ve skutečnosti mnohem přesvědčivější. To bude MPO. A tak i oni mají některé servery. A nějakým způsobem zapojen, nebo bezdrátové připojení k Harvardu. A samozřejmě, můžeme jít mnohem dál po silnici, než MPO, a mluvit téměř jakýkoli počítač na světě. Ale uvidíme, jestli nemůžeme vidět. Nech mě jít zpátky do mého terminálu Okno jen na chvíli. A předpokládejme, že jsem přišel na to, Co je IP adresa pro mit.edu jako Telnet na to přišel dříve, a můj prohlížeč je jasně na to přijít pro mě. A já jdu spustit jiný program, V tomto okně terminálu, tzv. traceroute, sledování cesta odtud - doslova, tato tabulka - na www.mit.edu. Podívejme se, co se stane. Dovolte mi, abych vlastně zmenšit velikost písma. OOP. Ne, chtěl jsem tě překvapit. OK. Tak jdeme na to. Nech mě jít dopředu a spusťte tohle. A co jsem viděl před chvílí, a vidíme teď znovu, je to výstup - traceroute www.mit.edu. Všimněte si, v první linii, tento program skutečně zjistili, že MIT je IP adresa je toto číslo zde. A teď, co se děje mezi nimi a námi? Takže tento řádek tady, v jedné řadě, a to sázce, v druhé řadě, a pak, řádek tři - co si každý z nich čáry představují pravděpodobně? Místa, body, jistě. Říká se jim chmel, koncepčně. Ale fyzicky, co je to? Jsou routery. Máme jen, opravdu, jeden kus hardware zde mluvit o tak daleko. Jsou routery. Takže to, co zde - šílený název - ale to je asi strojovna, MR v Science Center. Je to brána, aka router. To je jen některé jedinečné číslo, které někdo přišel s pro něj. A to je v harvard.edu. A to je IP adresa tohoto směrovače to je opět pravděpodobně v Science Center, založený na jeho název. Druhá řada je dalším router, který nemá přezdívku zřejmě - název hostitele - Jen má adresu IP. Tak dlouhý příběh krátký, získat data z místa A do místa B, je tu víc než jen Harvard je router, router a MIT, a Google router, a router Facebook je. Je tu desítky, stovky, tisíce směrovače mezi každém bodě a jakékoliv bod B na internetu. Ale obvykle, můžete získat data z jednoho bodu do druhého méně než 30 chmele. Jinými slovy, máte pouze ručně data na 30 nebo méně takových směrovačů. A je to obvykle mnoho méně než. No, uvidíme, co se zde děje. V řádku tři, jsme narazili s názvem router Jádro Science Center brána něco nebo jiný. V řádku 4, máme Border Gateway - to jsou jen záhadné zkratky - také v harvard.edu. Zde je další hraniční brána. A pak, najednou, hej, Zdá se, že v New Yorku. Tak to dopadá - a já jsem vyvodil pouze z názvu hostitele. To by mohlo být zavádějící. Mohlo by to být po silnici. Je to těžké říct - ale může být použit jako zjevení , že nejkratší vzdálenost mezi dvěma poukazuje na internetu není nutně přímku. Pokud si myslíme, že nejkratší jako nejrychlejší cesta, nejméně přetížené cesta, to je docela možné - když nemůžeme být jisti - že data jsou cestování slušné vzdálenost mezi řádky pět a šest. Teď bohužel MIT, nebo někdo, dostal trochu self-obranný, a oni si začal ignorovat naše požadavky. Tyto směrovače byly nakonfigurovány, aby ignorovat požadavky na formu, které jsou vy, kdo jste, kdo jste. Tak uvidíme, jestli můžeme to udělat s někým spolupracovat. Takže Stanford má pěknou tradici s trochu větší otevřenost. Takže pojďme se podívat, co se děje tady. Opět platí, že docela záhadné. Ale začneme opět ve stroji pokoj v Science Centrum, v řádku jedna. Tak to je dobře. Většina serverů to odpověď, včetně Stanford. Tak jsme šli oznámení od strojovny v Science Center, některé anonymní router jinam, do jiného Science Center brána k hranici brány, a pak na něco zde - nox.org. Jedná se o severní Crossroads, velmi populární peering místo, kde mnoho na kabely, spousta ISP - poskytovatelé internetových služeb - připojit do. Zde je další bezejmenný IP zde. Tady je další takový serveru. Ale to je zajímavé. Kde je router řádek osm, asi? Takže je to asi ve Washingtonu, DC. A mohu trochu potvrdit že hypotéza této doby. Vzhledem k tomu, jak dlouho to trvalo nám jít od Science Center k tomuto routeru v řadě sedm? No, tyto milisekund měření Na pravé straně jsou zde odhady té době. K dispozici jsou tři z nich, protože program traceroute, se snaží každý router třikrát, jen tak můžete získat vizuální průměr čísel. Ale to prý trvá šest milisekund získat do řady sedm je router. Ale jak rychle to možné, zdá se, že si cestovat, pokud jste trochu mezi Boston a Washington DC? 14 milisekund je tak dlouho, jak je potřeba pro tuto rychlých zpráv, na které e-mail, na tuto žádost na webovou stránku cestovat mezi tady a Washingtonu DC. Když půjdu dál, na router číslo 10, co město jsem prý nyní? Takže, Houston. A to se potvrzuje o skok v čase. Je to opravdu pomalu dostat do Houstonu. To trvá 47 milisekund se dostat z Boston do Houstonu v tomto případě. A pokud se podíváme dále, LAX - Vypadá to, že jsme stále na Stanford druh tímto způsobem, tím, že jde přes Los Angeles. Ale já jsem dovodil z LAX. Mezi nadšenci mají tendenci používat letištní kódy pro routery jména zde. A to je docela konzistentní s tímto předpokladem. 82 milisekund. Pak jsme zřejmě jít do jiného LAX, další router LA a pak, některé bezejmenný, a nakonec, záhadný název v síti Stanfordu, nebo blízko k nim, stanford.edu, je 90 milisekund pryč, nebo 6. s hodinami letadlem. Tak to je, jak rychle se šíří údaje na internetu. A to, co jsme absolutně brát za samozřejmost v těchto dnech. Pokud máte nějaký Gchat se někdo, a zprávy jsou jen objevit, zvažte, jak rychle, že se to děje. A vizuálně, je to opravdu děje v tomto druhu kurzu. Takže mezi body jedna a 18, v tomto případě, že jsou věci, kromě routerů. Jaké jsou některé stroje na internetu které mohou blokovat komunikaci dostat přes? STUDENT: Firewally. SPEAKER 1: Tak, firewally. A máme osobní firewally, jako že vaše vlastní Mac nebo PC můžete mít doprava v nebo ven. Harvard má firewally. MPO má pravděpodobně firewally. A Stanford však, stejně jako všechny poskytovatelé internetových služeb, kteří vlastní Tyto routery mezi body A a B. Ale věděli jste někdy zamyslet, nebo péči, jak funguje brána firewall. Tak už máme základní budovu bloky, se kterými se připravit že odpověď. Pokud jste byli firewall - a předpokládejme, že jste někde mezi body A a B. Kabel přichází do tebe, a bude z vás. Takže máte technologickou schopnost aby se na všech obálek informace, které proudí mezi vy a druhá osoba. Jinými slovy, ty dostávat zprávy jsem ruční psaní, můžete myslet je jako psát krátká poznámka pro někoho, uvedení IP adresu příjemce a číslo portu příjemce, na této obálky, a pak, psát své vlastní IP adresu a vaše vlastní číslo portu v levém horním kout, jako byste dopis. Poté odešlete ji bezdrátově. A to nějak cestuje přes směrovače, přes dráty, bezdrátově, po silnici na MIT. Takže pokud jste firewall, jak se zastavit, že z děje? Co byste dělali, kdyby váš další p nastavení bylo implementovat firewall? Jak mohu zastavit všechny lidi z Harvardu někdy mluví MIT lidi znovu? [? Žák:] zvrátit dopis?. SPEAKER 1: Cože? [? STUDENT:? Reverse] dopis brzy. SPEAKER 1: Reverzní dopis - Co tím myslíš? [? STUDENT:? Pošlete] je zpět odesílateli. SPEAKER 1: Pošlete jej zpět. OK. Takže byste mohli odmítnout virtuální obálka, trochu tím, že dělá návrat do odesílatel nějak. Tak jistě, že to, co chceme dosáhnout. Ale pojďme se ponořit trochu hlouběji. Jak to mám udělat? Pokud je vstup na tento problém - pokud jsem firewall, a já jsem skutečně stojí mezi body A a B, Jsem uprostřed muž, který se dívat uvnitř této obálky, a pak se rozhodnout, zda jej poslat zpět do Harvard nebo dovolit, aby to pokračovalo, jaké je Já, firewall, budu se chtít podívat na? Myslím, že jsem to slyšel zde. [? STUDENT: Kde je] z?. SPEAKER 1: Pokud to jde. Takže pokud je zdrojová IP adresa - malé číslo se zde - je IP adresa patří na Harvard - a já si skutečně vědět, že s vysokou pravděpodobností. Většina z IP adres Harvardu začátek s 140,247 dot něco tečkou něco, nebo 128,103 bodů něco tečka něco. Harvard je vlastníkem těchto kusy IP adres. No, když vidím, že IP adresy jako odesílatel, mohu jen poslat zpět. Ve skutečnosti, internet není obtěžovat ztrácet čas odesílání bitů zpět. Je to prostě doslova zahodí vymazáním, efektivně. Takže co jiného jsem mohl podívat i když? Dejme tomu, že chci, aby lidi Harvard návštěva mit.edu, a vytáhněte webové stránky a sledovat videa na MIT, a podobně. Ale já nechci lidi na Harvardu e-mailem někoho na MIT. Jak bych mohl umožnit provoz z Harvardu MIT, prostřednictvím webu, ale zakázat něco jako e-mail? [? STUDENT:?] Číslo portu. SPEAKER 1: Číslo portu - to je pouze jiné složky, kterou máme. Máme IP adresu, kterou jsme právě pákový efekt, nebo máme číslo portu, kde je 80, jsme si řekli, jednoznačně identifikuje webového provozu. Teď bych nečekal, abyste věděli to - někteří z vás možná již víte, ze známosti - co je to za číslo, které se používá pro e-mail, obvykle? Často je to 25. 25 se vztahuje na SMTP, což je poštovní Protokol pro přenos, který může mít musel nastavit na nějakém místě, pokud jste pomocí Eudora nebo Outlook nebo něco takového. Je to jen další číslo - 25. Telnet, který jsme používali před 23 používá. FTP - protokol pro přenos souborů, pokud jste někdy slyšel, že jeden - používá 21. HTTPS, zabezpečené verze protokolu HTTP, které se vrátíme do Netrvalo dlouho a využívá 443. Takže svět má spoustu čísla, které korelují pakety - spíše, korelují služby těchto skutečných čísel. Tak to je vše, firewall dělá. Trvá to podívat dovnitř této virtuální obálka, a pak rozhodnout, ano nebo ne předat dál, na základě Na těchto složek. Teď, co mohl udělat, Harvard jasně dostat se přes tento firewall a pak? Pokud chcete mít možnost poslat zprávu MIT, ale není možné zjistit, tak ty falešný vaši IP adresu, a prostě tak či onak se fantazie dost, vím, jak psát kód v C, a napsat svůj vlastní síťový program, který změní Firma adresu. Problém je můžete naprosto odeslat údaje anonymně, ale pokud chcete získat jakékoliv odpovědi, jako viz MPO homepage, samozřejmě, to řeší musí být správné. V opačném případě můžete něco říct chceš, ty to nebude slyšet zpět od nich. Ale to jsou jen jedním z druhů útoků, které můžeme poslat. Ale to dopadá když pošleme těchto zprávy - a jdem příkladem. Ukázalo se, že když mám zprávu, že Chci poslat, není to právě poslal do jedna obálka. Pro efektivitu své, zvláště když soubory, které žádáte, nebo Odpovědi Začínáš se zvláště velkých, co TCP/IP-- Transmission Control Protocol / Internet Protocol - je to jen fantazie způsob, jak říct, co sítí software a počítače dělat - je, že něco vyřídit takhle, a oni řez to do fragmentů - řekněme čtyři fragmenty. A když jsem teď snížit toto nahoru na tu, snížit toto nahoru na tu, co my Počítač je pak dělat, je to bude trvat jeden fragment a dát ho v obálce. Dobře, a dovolte mi, abych - podívejme. Bude to mít jednu. Bude to trvat další obálku a to bude dát druhou část této zprávy zde. Dobrá. Bude to trvat třetí část, vložte ji sem. Možná příště potkáme prostě dvě části. A budeme se o čtvrtou část, a dát to sem. A co nyní, musí být zapsána na těchto obálek - které budeme předstírat, že to, za čas je saké, a které nejsou skutečně zapsat. Co je potřeba, aby se na každé bude z Tyto čtyři obálky, s mou zprávou pro někoho? [? STUDENT:] pořadí?. SPEAKER 1: Tak, aby. Musím nejen IP adresu a čísla portů, jak jsme právě mluvili, jsem nyní potřebujeme, je pořadové číslo nějakého druhu se říct, že je jeden paket, toto dvě, to je tři, to je čtyři. A to je ve skutečnosti užitečné. Vzhledem k tomu, že internet, jak se ukázalo, je vlastně docela nespolehlivý. Směrovače mohou dostat přetížené. Kabely mohou dostat ohromen - zjednodušením - ale s bity tak, že to, co směrovače musíte udělat, je jen zahazovat pakety. Jinými slovy, v případě, že internet je jen opravdu přetížené, můžete dostat tři z těchto čtyř paketů. Ale pokud máte jedinečný identifikátor pro každý z nich, budete vědět, že jste Chybí číslo paketu čtyři čtyři. Takže se můžete zeptat na toho chlapa druhý konec odeslat ho. Ale za předpokladu, že se tak nestane, podívejme se, co by se mohlo stát. Takže pokud chci odeslat zprávu - kdo přejete dostávat moji zprávu z internetu? Jak se o někom blíž dopředu. Brian je to? Dobrá. Zůstaň tam. Chystám se ho zašleme. A věc, o internet je to, že ani nemusí sledovat stejnou cestu. Tak jsem tady. Posílám zprávu, fragment jeden ze čtyř. Může být směrovač. Jen ať ostatní lidé se s tím vypořádat. Tady to je. Dáme vám to, a dáme vám to. A uvidíme, jak rychle - kolik milisekund trvá aby si tuto zprávu Briana. Každý má možnost podílet i dnes. Dobrá. Brian má jeden a dva. Pokud někdo chce být - [? STUDENT: Všichni čtyři. ?] SPEAKER 1: Má všechny čtyři. Takže nikdo se rozhodl upustit paketu. To je v pohodě. To je v pořádku. Takže Brian má nyní všechny čtyři. Chcete-li jít dopředu a namontujte ty pro nás. Já vím, jsme předstírat. Takže časům - máme čtyři. Takže OK, otevřete jeden z nich. OK. To je jedna čtvrtina moje zpráva pro vás. Nyní otevřete druhý. To může být legrační, na konci, pouze mně a Brianem. Dobře, máš dvě. Takže do té doby jsme udělali fyzicky to s nůžkami, ale vše, co trvá fragmentu tyto věci Počítač je pouze zajištění některých bity v jednom paketu, v jedné virtuální obálka, některé bity v jiné, některé v jiném, a některé v Čtvrtý, a pak nechat počítač rozhodnout, na základě těchto čísel, v jakém pořadí máte ke spojení je. A Brianův možná, pouze ten, který je vidět. Zpráva jsem poslal do mozku - kvůli Samozřejmě, je internet plný nich, je - Ano. Tak to je zpráva. A Brian můžete pověsit na teď. Tak to trvalo, samozřejmě, zatímco, jak to udělat. Ale to je to, co se skutečně děje, jako směrování dat přes publikum tímto způsobem. Ale je, opět, počet bodů, routery, firewally a další takové věci se mezi body A a B. a spíše než jen vyprávět příběh ústně, myslel jsem, že to vytáhnout video, které někteří naši přátelé, od Erikson let zpátky, vlastně dohromady, která vysvětluje jak to všechno funguje. A to je asi 10 minut nebo tak dlouho. Takže pojďme se vám teď, Válečníci sítě. [Přehrávání hudby] Vypravěč: Poprvé v historii lidé a stroje jsou pracovat společně, splnění snu - Spojující se síla, která nezná geografické hranice, a to bez ohledu na rasu, vyznání nebo barvě - nová éra, kde je komunikace skutečně spojuje lidi. To je úsvit síti. Chcete vědět, jak to funguje? Klikněte sem a začít svůj Cesta do sítě. Nyní přesně to, co se stalo, když jste klikli na tento odkaz? Zde začal tok informací. Tato informace putuje do vaší osobní podatelna, kdy pan IP balíčcích, označuje to, a odešle ji na své cestě. Každý paket je omezená ve své velikosti. Podatelna musí rozhodnout, jak rozdělit informace, a jak zabalit. Nyní je třeba balíček štítek obsahující důležité informace, jako jako adresa odesílatele, příjemce adresa, a typ paketu je. Vzhledem k tomu, tento konkrétní paket se děje ven na internet, ale také dostane adresu proxy serveru, který má speciální funkci, jak uvidíme později. Paket je nyní spuštěn na vašem místní síť nebo LAN. Tato síť se používá pro připojení všech lokální počítače, směrovače, tiskárny, a tak dále pro informaci výměna v rámci fyzikálních stěnách budovy. LAN je docela nekontrolované místo, a bohužel, nehody se může stát. Silnice na LAN je zabalen se všemi typy informací. Jedná se o IP pakety, pakety Novell, AppleTalk pakety - jdou proti provoz, jako obvykle. Místní router čte řešit a Je-li to nutné, zvedne paket na jiné sítě. Ach, router - symbol kontroly ve zdánlivě zmatený svět. ROUTER: Jejda, omlouvám se za to. Pojďme dát tohle tady, tohle tady. Tím se zařízení přesune zde. To se člověk pohybuje zde. Nemám rád tohle. Pojďme tohle. Tento jeden sem. [Neslyšitelný] Řečeno cinkat zde. Pojďme dát tohle tady. Ne, půjdu s tím. Řekněme, že ten zde. Vypravěč: Tady je - systematické, bezcitný, metodické, konzervativní, a někdy ne zcela až do rychlosti. Ale aspoň je přesný, z větší části. ROUTER: Dej to tamhleten. To je tam jeden, ten jede tam, a tohle je tam. No, další je tam. To platí zde. [Neslyšitelný] Vypravěč: Jak pakety odejít router, oni dělají jejich cestu do firemní intranet a vedoucí pro směrovač spínače. Trochu účinnější než router, router switch hraje chlebodárce s IP paketů, obratně směrování jim po cestě - digitální pinball průvodce, chcete-li. ROUTER SWITCH: Jdeme na to. Zde přichází další. A je to další. Podívej se na tohle, mami. Tady to jde. Pokřik kolem vzadu. Hej, tam, tam. Nalevo od něj. Přes doprava. Nalevo od něj. Přes doprava. Máš to. Už je to tady. Střílí skóruje. Jde to. Hej Wayne, pozor, tady přijde další. Oh, jdeme na to. Vypravěč: Jak pakety dorazí na jejich cíl, oni zvedl síťové rozhraní, připraven k poslal do další úrovně - V tomto případě, proxy. Server proxy se používá mnoho firem, druh prostředníka, aby se snížit zátěž na svých internetových připojení, a pro z bezpečnostních důvodů stejně. Jak můžete vidět, pakety jsou různých velikostí, v závislosti na jejich obsahu. Proxy otevře paket a vypadá na webovou adresu nebo adresu URL. V závislosti na tom, zda je adresa přijatelný, je odeslán paket na internet. Existují však některé adresy, které nesplňují se souhlasem proxy - to znamená, firemní či pokyny řízení. Jedná se souhrnně zabývá. Budeme mít nic z toho. Pro ty, kdo si to, je to opět na cestě. Další na řadě, firewall. Podniková brána firewall, slouží ke dvěma účelům. Zabraňuje některé dosti ošklivé věci z internetu od nabytí intranet, a to může také zabránit citlivé firemní informace z byl rozeslán na internetu. Jakmile přes firewall, router vyzvedne balíček a umístí jej na mnohem užší silnice, nebo šířku pásma, jak říkáme. Je zřejmé, že cesta není široká natolik, aby je všechny. Teď se možná divíte, co se stane pro všechny ty pakety, které nechcete, aby se podél cesty. No, když pan IP neobdrží potvrzení, že paket byl doručeny ve stanovené lhůtě, prostě odešle náhradní paket. Nyní jsme připraveni vstoupit do světa na internetu, web pavouk vzájemně propojené sítě, které pokrývají celou naši planetu. Zde, směrovače a přepínače navázat spojení mezi sítěmi. Nyní síť je zcela odlišný prostředí, než najdete v ochranné stěny ve vaší LAN. Tady, to je Divoký západ - dostatek prostoru, dostatek příležitostí, spousta věcí, které zkoumat a místa jít. Díky velmi malou kontrolu a regulace, nové nápady najít úrodnou půdy tlačit obálku svých možností. Ale kvůli této svobody, určité nebezpečí číhá také. Nikdy nevíte, kdy budete plnit obávaný ping smrti, zvláštní verze normálního požadavku ping, které nějaký idiot vymyslel zkazit nic netušící hostitelé. Cesta naše pakety se mohou prostřednictvím satelit, telefonní linky, bezdrátový, nebo dokonce trans-oceánské kabel. Nemají vždy nejrychlejší, nebo nejkratší trasy, jsou možné. Ale nakonec se tam dostat. Možná to je důvod, proč je to někdy volal po celém světě čekat. Ale když vše funguje bez problémů, můžete obejít po celém světě pětkrát více než na pokles z klobouku, a to doslova - a to vše za cenu místní hovor, nebo méně. Téměř na konci naší cesty, najdeme jinou bránu firewall. V závislosti na úhlu pohledu jako datových paketů, může být brána bašta zabezpečení, nebo obávaný protivník. To vše závisí na tom, na které straně jste a jaké jsou vaše záměry. Firewall je navržena tak, aby nechat pouze ty pakety které splňují její kritéria. Tento firewall pracuje na portech 80 a 25. Všechny pokusy o vstup přes jiné porty jsou zavřené pro podnikání. Port 25 se používá pro poštovní paketů, zatímco port 80 je vstup pro pakety z internetu na webový server. Uvnitř firewallem mají pakety jsou zkontrolovala více důkladně. Některé pakety, aby to jednoduše prostřednictvím celní, zatímco jiní hledat jen trochu pochybovačně. Brána firewall důstojník není snadno zmást, jako když to ping smrt paket snaží zamaskovat sebe jako normální ping paketu. Firewall: Další. OK. Jdi na. To je v pořádku. V pořádku. Hezký den. Buď tady. Ahoj. Vypravěč: Pro ty pakety Lucky natolik, aby to tak daleko, Cesta je téměř u konce. Je to jen lineup na rozhraní k bylo zařazeno do webového serveru. V současné době webový server může běžet na mnoha věci, ze sálového počítače, na webovou kameru, k počítači na stole. Nebo proč vaše lednička? Při správné nastavení, můžete najít , zda máte předpoklady pro kuřecí cacciatore, nebo pokud musíš jít nakupovat. Pamatujte, že toto je úsvit síti. Téměř vše je možné. Jeden po druhém, jsou přijímány pakety, otevřely a obalu. Informace, které obsahují - to znamená, že váš požadavek pro informaci - je poslán na webu aplikační server. Paket sám o sobě je recyklovaný, připraven znovu použít, a naplněný s vaším požadované informace, řešit, a vyslat na své cestě zpět k vám, zpět přes firewall, routery, a na až k internetu, zpět přes vaše firemní firewall, a na vašem rozhraní, připraven dodat vaší webový prohlížeč s informacemi jste požadoval - to znamená, že tento film. Spokojeni s jejich úsilí a důvěřovat v lepším světě, naše věrné datové pakety odjet do blažené západ slunce na další den, protože věděl, plně, oni sloužili jejich páni dobře. No není to šťastný konec? Reproduktor 1: To tedy je, jak internet funguje. Přes sedm set problém budete lépe pochopit a budete naučit trochu HTML, PHP a další. O tom více ve specifikaci že bude pokračovat v pátek. A uvidíme se v pondělí.