DAVID MALAN: Baiklah. Ini adalah CS50. Dan ini adalah permulaan minggu tujuh. Jadi hari ini, mungkin bersyukur, kita mula peralihan kami daripada tahap yang lebih rendah dunia pengaturcaraan C ke tahap yang lebih tinggi dunia pemrograman web. Dan dengan itu, kita akan melihat dengan pada tepat bagaimana internet bekerja, apa mesin dan Internets ini bahawa anda telah menggunakan selama bertahun-tahun sekarang benar-benar melakukan di bawah hood ke arah pemahaman yang lebih baik tentang bagaimana ia semua bekerja, dan bagaimana anda boleh membuatnya bekerja untuk anda. Ke arah itu, mengapa kita tidak mengambil melihat pertama pada klip dari rancangan TV disebut Numb3rs, yang akan membuat kita mulai untuk persis bagaimana internet berfungsi. [VIDEO MAIN SEMULA] -Ini Alamat IPP4 32-bit. -IP. Itu internet. Rangkaian-swasta. Ia adalah rangkaian persendirian Amita ini. Oh, dia begitu menakjubkan. -Oh, Charlie. -Ini Alamat IP cermin. Dia membiarkan kita menonton apa yang beliau buat dalam masa nyata. [AKHIR VIDEO MAIN SEMULA] DAVID MALAN: Jadi ada keseluruhan banyak yang salah dengan itu rancangan TV. Jadi mari kita mengusik selain tepat salah satu perkara yang pertama itu dan lihat jika kita tidak boleh membungkus fikiran kita di sekitarnya. Jadi bingkai terakhir filem itu, menunjukkan bahawa adalah salah satu ini di sini, yang seolah-olah mencadangkan bahawa ini adalah apa yang sesetengah hacker menggunakan untuk masuk ke dalam beberapa sistem. Tapi tidak ada. Jika anda mengezum masuk pada ini kod sumber, yang adalah bahasa yang dipanggil Objektif C dalam yang aplikasi iPhone, aplikasi iPad, dan Mac Aplikasi OS ditulis, Anda akan melihat bahawa ini adalah untuk beberapa jenis program gambar yang mempunyai krayon sebagai variabel. Jadi tambahan, anda mungkin perasan alamat ini di sini. Sekarang, ini adalah sebagai salah. Dan ini mungkin sengaja dipilih menjadi alamat yang tidak sah sehingga sebenarnya tidak membawa suatu tempat jika penonton TV sebenarnya berminat melihatnya. Tetapi jumlah ini di sini, sesuatu dot sesuatu dot dot sesuatu sesuatu adalah apa yang umumnya dikenali sebagai alamat IP. Dan itu sebenarnya yang baik Segue dengan topik ini lebih umumnya, yang dikenali sebagai IP, protokol internet. Jadi anda mungkin pernah sekurang-kurangnya mendengar ungkapan ini sebelum ini. Tetapi apa yang IP, atau internet protokol yang anda fahami pada hari ini? Kemungkinannya, jika kita meminta mengangkat tangan, kebanyakan kamu mungkin telah berkata perkataan IP alamat sebelumnya. Jadi apa yang anda maksudkan? PENONTON: [didengar]? DAVID MALAN: Apa itu? PENONTON: [didengar]? DAVID MALAN: Sekali lagi. PENONTON: Alamat komputer. DAVID MALAN: The alamat komputer. Jadi itulah yang benar. Ia ternyata bahawa setiap komputer di internet, dan hari ini, setiap telefon anda di poket dan tablet dalam beg galas anda, mempunyai alamat IP, internet alamat protokol, yang adalah alamat unik yang mengenal pasti itu di seluruh internet. Sekarang, itu sedikit putih berbohong kerana dunia sebenarnya kehabisan alamat IP. Oleh itu, kita telah mula menggunakan alamat IP persendirian. Tapi lebih pada suatu seketika. Tetapi anda boleh berfikir dari alamat IP sebagai seperti perkhidmatan jalan pos alamat. Kami telah menggunakan contoh Maxwell Dworkin, bangunan CS itu, sebelum- 33 Oxford Street Cambridge, Besar-besaran, 02138, Amerika Syarikat. Itulah alamat yang unik di dunia. Begitu juga melakukan komputer mempunyai alamat yang unik. Mereka hanya kebetulan kelihatan sedikit berbeda- sebilangan dot beberapa titik sebilangan dot nombor. Dan tidak ada yang benar-benar tahu apa julat sah nombor adalah untuk masing-masing hash? Yeah. PENONTON: 0 hingga 255? DAVID MALAN: Tepat sekali. 0 hingga 255. Dan walaupun anda tidak tahu itu, kini menarik kesimpulan, berapa banyak bit yang digunakan untuk mewakili setiap nombor-nombor itu? Lapan nampaknya kerana tertinggi yang anda boleh mengira adalah 255, itu nilai 8-bit. Jadi secara total, alamat IP adalah 32-bit. Penghantaran sangat cepat ke kesimpulan matematik, berapa banyak alamat IP mungkin yang ada di dunia, maka? Jadi itulah 8 campur 8 campur 8 ditambah 8, sehingga 32 bit. Dan kita selalu mengatakan bahawa 2 ke 32 adalah kira-kira? OK. Saya akan medan yang satu ini. Empat bilion. Dan kita bercakap tentang itu dalam seminggu sifar apabila kita bercakap tentang buku-buku telefon dengan nombor gila halaman. Tetapi semacam itu adalah bahawa terdapat jumlah terbatas alamat IP. Dan meskipun empat bilion mungkin kelihatan seperti banyak, kita manusia telah mengambil beberapa daripada mereka untuk semua server kami dan alat-alat dan lain-lain. Jadi ini sebenarnya menjadi masalah. Sekarang, ada cenderung menjadi skim belakang yang mempunyai apa IP. Sebagai contoh, ramai di antara komputer di Harvard mempunyai alamat unik yang mula dengan salah satu daripada kedua-dua nilai. MIT, sama, mempunyai awalan. Dan banyak syarikat dan universiti mempunyai awalan mereka sendiri yang unik. Kemudian kebanyakan dari kita untuk rumah kami sambungan internet dan sebagainya, kita berkongsi beberapa awalan yang Comcast atau seseorang seperti yang berlaku untuk memiliki. Dan ini adalah hanya untuk mengatakan bahawa jika anda melihat kebanyakan komputer di kampus, mereka mungkin akan mempunyai IP alamat yang kelihatan seperti ini. Sekarang, anda mungkin juga kadang-kadang melihat alamat IP ia bermula seperti ini. Bahkan, jika ada di antara kalian membesar akses internet di rumah, dan kau pernah cukup teknikal ingin tahu untuk melihat- tetapan komputer anda sendiri, Anda mungkin bukan melihat alamat yang kelihatan seperti ini, yang bermula dengan 10, atau 172.6, atau 192,168, atau beberapa varian itu. Dan itu bermakna dunia diketepikan sejumlah besar nombor untuk menjadi pribadi, yang bermaksud Anda boleh menggunakannya di rumah anda, Anda juga boleh menggunakannya pada Anda kampus dan dalam syarikat anda, tetapi anda tidak boleh menggunakannya di internet pada umumnya. Dan sebagainya ini swasta IP telah solusi ke arah memastikan bahawa sekurang-kurangnya sehingga sejauh seluruh dunia yang bersangkutan, kita tidak menggunakan banyak alamat IP. Tetapi sekurang-kurangnya, kita boleh, kita sendiri kampus, mempunyai cukup banyak seperti banyak IP seperti yang kita inginkan. Tapi siapa yang peduli? Apa kaitan semua ini kepada penggunaan sebenar internet? Baik, mari kita lihat mungkin gambar yang mudah di sini. Biar saya melalui kedua ini di atas skrin. Dan memaafkan tulisan tangan saya di sini. Tetapi jika kita menganggap diri kita sebagai menjadi komputer riba ini kecil di sini di suatu tempat di kampus, hari ini ia mempunyai Wi-Fi. Tetapi di masa lampau dan jika anda mencari penyesuai yang betul, ia boleh mempunyai kabel ethernet yang sama akan membiarkan anda menyambung kepada beberapa jenis peranti. Dan anda boleh memanggil ini mana-mana beberapa perkara. Tetapi saya akan pergi ke depan dan panggilan ini, buat masa ini, bagaimana pula pusat akses? Jadi, ini adalah komputer riba saya. Ini adalah AP saya, atau pusat akses, dan ini adalah beberapa peranti tanpa wayar, tidak seperti orang-orang yang Harvard memiliki seluruh langit-langit dan dinding di sekitar kampus yang mempunyai lampu berkelip dan bahawa adalah apa yang komputer riba anda digunakan untuk berbicara secara wayarles ke seluruh rangkaian. Jadi entah bagaimana komputer riba ini sedang bercakap dengan perkara di dinding, di dewan makan, atau di tempat lain. Sekarang, sementara itu, yang pusat akses adalah berhubung dengan sesuatu yang lain di kampus. Dan itu mungkin sesuatu dikenali sebagai suis. Dan mereka kelihatan jauh lebih menarik daripada hanya ini gambar rajah kotak. Tetapi entah bagaimana, perkara itu disambungkan ke suis. Dan pada gilirannya, entah bagaimana suis yang disambungkan kepada peranti itu mungkin satu sedikit lebih besar, yang dipanggil router. Dan kemudian, sementara itu, Harvard disambungkan kepada seluruh internet yang kami akan menarik sebagai awan ini di sini, melalui beberapa jumlah kabel atau teknologi tanpa wayar. Jadi ada banyak langkah-langkah antara saya dan seluruh dunia. Dan memang, walaupun dalam gambar ini di sini, ada beberapa pelayan lain atau perkhidmatan yang terlibat. Dan saya hanya akan menarik ini agak abstrak hanya agar kita mempunyai singkatan di hadapan kita. Satu dipanggil DHCP. Dan lebih satu sama lain, sedikit menarik untuk hari ini, disebut DNS. Jadi ini adalah server yang entah bagaimana diakses oleh komputer saya juga. Jadi sekarang, mari kita mengusik selain sedikit jargon. Jadi pusat akses ini hanya peranti wayarles ini sering dengan antena yang benar-benar membolehkan anda berbicara dengan tanpa kabel. Di rumah, anda mungkin memanggil ini router rumah. Ia mungkin dilakukan dengan Linksys, atau Apple, atau D-Link, atau mana-mana beberapa syarikat. Itu, pada gilirannya, disambungkan dengan suis dari beberapa macam. Atau kembali ke rumah, apakah Wi-Fi anda peranti mungkin berhubung dengan, bukan? Kerana anda mungkin tidak memiliki semua peralatan ini. Yeah. Modem kabel atau DSL modem ke rumah yang Anda dapatkan dari Verizon, atau Comcast, atau salah satu syarikat penerbangan. Jadi memikirkan semua kerumitan ini menyokong universiti atau benar-benar perniagaan seperti Comcast. Dan benar-benar, hal-hal yang ada di rumah anda mungkin di sisi pagar ditambah mungkin salah satu rumah ini route-- satu ini adalah modem kabel atau DSL modem mereka mungkin memberikan. Jadi suis hanyalah sebuah peranti dengan sejumlah besar bicu data di dalamnya. Malah, jika anda masih ingat bahawa berita laporan kami bermain di skrin besar beberapa minggu yang lalu di mana kita bercakap tentang shell shock, dan betapa buruk ini? Dan ada di antaranya gambar kabel, dan jack, dan perkara-perkara yang kelihatan teknikal? Mereka hanya suis bisu yang hanya internet menghubungkan komputer dengan memasang kabel ke dalam mereka. Jadi itu sahaja suis adalah. Kini, alat-alat ini mendapatkan sedikit lebih menarik. DHCP. Jika anda telah mencucuk di sekitar anda komputer di rumah atau bahkan di kampus, Anda mungkin telah melihat singkatan ini. Apakah ada yang tahu apa yang pelayan DHCP adalah? Dinamik tuan rumah konfigurasi protokol? Bukan jenis perkara yang anda benar-benar perlu untuk menulis. DHCP. sesiapa sama sekali? Baik. Jadi mari kita putar balik cerita. Jika cerita di sini di tangan adalah didasarkan pada saya mempunyai alamat unik di dunia, alamat IP, di manakah yang datang dari? Pada masa lampau, ketika anda telah mendapat ke kampus, Anda benar-benar harus bertanya kepada seseorang di Harvard, apa yang harus alamat IP saya menjadi. Dan anda akan secara manual jenis ke dalam komputer anda. Tetapi baru-baru ini, teknologi ada yang membolehkan anda untuk secara dinamik, DHCP, mendapatkan alamat IP hanya apabila Anda pasang ke kampus tanpa wayar atau dengan kawat. Jadi pelayan DHCP hanyalah pelayan yang memberikan komputer anda IP yang unik alamat, agak rawak atau melalui algoritma beberapa. Tetapi jika anda berfikir kembali beberapa minggu atau beberapa tahun, sewaktu mendaftar komputer anda di kampus, anda katakan Harvard, memberi kuasa saya untuk memberikan saya alamat IP. Sekarang DNS mulai mendapatkan sedikit lebih menarik. Domain name system. Apakah ada yang ingin mengambil menusuk apa perkara ini di sini? Itu salah satu atau lebih pelayan yang melaksanakan tugas yang cukup sederhana yang jenis penting. Yeah. PENONTON: Menerjemahkan URL [terdengar]. DAVID MALAN: Ya. Ia diterjemahkan URL ke IP alamat dan begitu juga sebaliknya. Perhatikan, selepas semua, yang apabila anda pergi di laman web, anda menaip sesuatu seperti facebook.com, atau google.com, atau harvard.edu, Anda pasti tidak pernah ditaip kemungkinan besar alamat IP nombor. Dan anda boleh memikirkan alasan mengapa. Kembali pada hari, walaupun sekarang sampai batas tertentu, apabila anda membuat telefon memanggil dengan sebuah syarikat, mereka benar-benar berusaha keras untuk membeli sendiri nombor 800 yang benar-benar mempunyai perkataan di dalamnya, seperti 1-800-collect atau sesuatu itu berkesan seperti itu agar orang tidak perlu ingat apa yang C-O-L-L-E-C-T sebenarnya mengembang untuk. Oleh itu, kita telah melihat ini heuristik di masa lalu. Dan sesungguhnya, itulah yang alamat IP dan apa yang kita akan memanggil nama host atau memenuhi syarat nama domain lakukan untuk kita. Ia membolehkan kami untuk pelayan alamat dengan kata-kata bukan angka. Jadi bagaimana kita sebenarnya melihat penukaran ini. Saya akan pergi ke depan dan membuka program. Saya hanya akan pergi ke depan dan membuka tetingkap terminal. Dan saya akan pergi ke depan dan menunjukkan kepada anda apa server DNS tidak. Sebagai contoh, jika saya mahu melihat apa alamat IP adalah dari Facebook, Saya boleh menaip pada terminal meminta seperti this-- dan anda boleh melakukan ini walaupun bahagian dalam perkakas anda. Dan itu lookup facebook.com. Dan saya melihat banyak hal. Sambutan pertama adalah DNS server-- Harvard bahawa gambar yang telah saya disediakan di sana. -yang ini memberitahu saya bahawa IP Facebook alamat nampaknya ini. Jadi, saya pergi ke depan dan copy 173.252.120.16. Dan biarkan aku membuka Chrome pada Mac saya. Dan membiarkan aku pergi ke http: // dan tampal bahawa alamat IP dalam dan tekan Enter. Dan memang, saya mendapati diri saya di Facebook. Jadi entah bagaimana penukaran itu, sesungguhnya terjadi. Dan jika saya melakukan ini lagi, mari kita melakukan nslookup, www.google.com. Aku kembali sejumlah besar jawapan. Dan memang, ada cara yang berbeza bahawa syarikat-syarikat melaksanakan hal ini. Kadang-kadang, mereka memberitahu dunia mereka mempunyai satu alamat IP. Tetapi itu satu alamat IP akan diselesaikan atau dipetakan kepada beberapa server. Atau dalam kes Google, mereka memberitahu dunia, kami mempunyai sejumlah besar alamat IP. Komputer riba anda adalah dialu-alukan untuk bercakap menghubungi mana-mana salah satu server tersebut. Jadi semua yang telah terjadi di bawah tenda. Apabila anda menaip dalam www.google.com Masukkan ke dalam pelayar anda, pelayar anda, dan pada gilirannya operasi, Mac OS, atau Windows, atau Ubuntu Linux, meminta pelayan DNS yang berdekatan, apa yang alamat sebenar server ini. Oleh kerana peranti yang terakhir dalam gambar ini, router, adalah salah satu yang tujuannya dalam hidup adalah untuk maklumat laluan, laluan paket boleh dikatakan, sampul surat maklumat digital mengandungi sifar dan orang-orang dari penghantar ke destinasi, dari asal ke penerima. Dan kerana itu suatu hal laluan router. Lalu mengapa ini semua terutamanya yang berkaitan? Baik, mari kita lihat bagaimana ini mungkin digunakan. Katakan saya ada di sini gambar Rob Boden. Jadi kira yang saya mahu hantar gambar ini dari Rob Boden Dan ke dalam di belakang dari dewan kuliah. Jadi saya komputer seperti komputer riba saya, dan Dan adalah komputer lain di internet. Dan saya ingin mengirim paket maklumat dari saya untuk dia. Yang menimbulkan pertanyaan, bagaimana cara sebenarnya laluan paket ini kepadanya. Nah, dalam hal manusia, saya akan berkata, hey, anda boleh lulus ini kepada Dan? Dan kemudian, sekumpulan anda mungkin akan menyebarkannya kembali -balik bolak-balik sehingga akhirnya berpindah kepada Dan. Tapi itu tidak tepat sedikit. Komputer mungkin perlu menjadi sedikit lebih teratur. Jadi mungkin, Dan mempunyai alamat IP. Jadi apa yang sebenarnya yang perlu saya lakukan adalah saya harus mengambil, misalnya, sampul surat yang kosong seperti ini. Dan saya tidak tahu apa yang Alamat IP dan adalah. Jadi, saya hanya akan umum sebagai IP Dan. Dan saya akan meletakkan ini di untuk medan sampul surat saya. Dan sementara itu, saya mempunyai alamat IP. Tidak kira hari ini apa yang ada. Jadi, saya hanya akan mengatakan saya IP di sudut belakang sana. Kemudian, saya akan pergi ke depan dan meletakkan gambar ini di dalam sampul surat ini. Dan kemudian, masing-masing, mungkin, router di internet, telah dikonfigurasikan oleh manusia secara am atau kadang-kadang oleh algoritma automatik untuk mengetahui bahawa jika alamat IP Dan itu bermula dengan 1, ia harus pergi ke arah sana. Jika alamat IP Dan dimulai dengan 2, ia perlu pergi ke arah sana. Mungkin 3 pergi cara itu. Mungkin 4 berjalan seperti itu. Dan yang sedikit terlalu. Sederhana tapi itu idea umum. Setiap satu daripada routers-- ini dan mungkin ada ada sebanyak 30 antara aku dan Dan. --have beberapa jenis hamparan di dalam ingatan mereka, jadual pangkalan data, yang hanya berkata, Alamat IP yang kelihatan seperti ini, berjalan dengan cara ini. Alamat IP yang kelihatan seperti ini, pergi jalan itu. Dan itulah bagaimana ia membuat keputusan yang cukup mudah. Tetapi ternyata bahawa router ini melakukan sesuatu yang lebih dari itu, yang berpotensi. Mereka membolehkan komputer untuk penghantaran jaminan, sekurang-kurangnya dengan kebarangkalian tinggi. Jadi, anda juga pernah mendengar, walaupun anda tidak pernah cukup peduli atau bertanya-tanya apa itu, anda mungkin telah mendengar sesuatu dengan singkatan ini. Mari kita kembali ke sini untuk hanya masa dan menarik ini. TCP, protokol kawalan penghantaran. Satu lagi cara teknikal hanya menggambarkan teknologi lain yang digunakan di internet. Jadi IP, protokol internet digunakan untuk menangani. Ia beberapa standard bahawa dunia datang dengan mengatakan bahawa, anda meletakkan satu alamat IP di sini untuk Dan, dan satu alamat IP di sini untuk diri sendiri, dan kemudian anda meletakkan beberapa maklumat dalam sampul surat. Tetapi TCP adalah teknologi yang lain, digunakan bersama-sama dengan IP. Dan sesungguhnya, jika anda sudah pernah dilihat akronim ini sebelumnya, Anda mungkin telah melihat TCP mengurangkan IP yang baru sahaja ertinya orang cenderung menggunakan mereka bersama-sama. Nah, TCP adalah jenis sejuk kerana ia membolehkan Anda untuk meningkatkan kebarangkalian bahawa data yang sebenarnya akan mendapatkan dari saya kepada Dan. Malah, internet adalah tempat yang gila. Tidak ada jaminan bahawa jika saya menghantar data dengan cara ini bahawa ia akan pergi bahawa cara kali di sekitar. Ia mungkin pergi dengan cara itu atau cara itu. Jarak terdekat antara dua mata tidak semestinya lurus atau garis yang sama. Selain itu, ada di antara kamu orang mungkin melakukan kesalahan atau mendapatkan terharu dengan terlalu banyak sampul surat yang datang dengan cara anda. Jadi, anda hanya akan menyerah dan literal drop sebahagian dari orang- sampul surat di atas lantai. Dan dengan cara yang sama boleh menjadi data turun di internet dengan router. Jadi untuk mengurangkan kemungkinan ini, saya akan untuk mengambil keselamatan kecilku gunting di sini dan memotong Rob ke dalam, katakan, empat keping, empat segmen. Dan sekarang, saya akan pergi ke depan dan meletakkan satu keping lebih maklumat pada sampul surat ini. Saya akan mengatakan sesuatu seperti, 1 daripada 4. Jadi sekarang, sampul surat terakhir saya, di kurangnya yang pertama, kelihatan seperti ini. Saya akan pergi ke depan dan meletakkan satu ini di sini. Dan demi masa, saya akan label yang lain identik sebagai 2 dari 4, 3 dari 4, 4 4. Sekali lagi, dengan alamat IP Dan dalam depannya dan dengan alamat IP saya di belakang sebelah kiri, tetapi saya tidak boleh menghantar mereka dahulu. Sebab ternyata bahawa di internet, pelayan boleh melakukan beberapa perkara. Sebenarnya, kita semua mungkin menggunakan web cukup sedikit, web di seluruh dunia, http: // apa sahaja. Tetapi ada lain-lain perkhidmatan di internet. Apa adalah beberapa perkhidmatan lain, Urut dari pengguna, perkhidmatan mesra pengguna yang muncul di pikiran selain program web jenis browser? PENONTON: E-mel. DAVID MALAN: E-mel. OK. Baik. Apa satu lagi? PENONTON: Bual. DAVID MALAN: Jadi berbual, sama ada itu Skype, atau Gchat, atau sesuatu seperti itu. PENONTON: Penyimpanan. DAVID MALAN: Jadi beberapa jenis perkhidmatan simpanan, tentu saja. Sesuatu seperti Dropbox, atau kotak, atau sejenisnya. Jadi ada yang berbeza perkhidmatan di internet. Dan ternyata bahawa Dan, jika dia memang komputer, tidak harus berdedikasi kepada satu perkara dalam hidup. Dia benar-benar dapat melakukan beberapa hal. Dan demi sesungguhnya, ia boleh menjadi pelayan e-mel. Ia boleh menjadi pelayan web. Ia boleh menjadi pelayan chat. Tetapi itu seolah-olah mencadangkan Dan yang perlu tahu terlebih dahulu apakah kandungan mesej-mesej ini. Adakah ini satu laman web sebabnya aku mengutus dia? Adakah e-mel saya menghantar dia? Adakah sekelip mesej sebabnya aku mengutus dia? Oleh itu, kita perlu satu bagian lebih dari maklumat pada sampul surat ini supaya Dan, apabila dia menerima sampul surat ini, tahu apa program yang digunakan untuk memaparkannya. Adakah pelayar? Adakah ia di Google? Adakah ia Skype? Atau adakah ia Outlook atau beberapa program lain sama sekali? Oleh itu, dengan TCP datang hanya konvensyen manusia. Dunia memutuskan beberapa tahun lalu untuk mengaitkan bilangan bulat yang unik dengan perkhidmatan yang paling popular. Seseorang dipanggil Protokol Pemindahan Fail, FTP, walaupun ia sedikit bertarikh sekarang. Tetapi pengecam yang unik adalah 21. SMTP untuk e-mel keluar, yang unik pengecam ialah 25 hanya kerana. DNS, perkara yang kita bicarakan sebelumnya, menggunakan nombor 53 untuk permintaan nya. Seperti apakah IP alamat google.com? Dan sekarang, semakin banyak anda mungkin ada di suatu tempat pada satu masa nanti melihat bilangan 80 dan mungkin 443. Mereka adalah unik pengenal untuk HTTP, yang merupakan bahasa kita tidak lama lagi akan melihat digunakan untuk lalu lintas web antara pelayar dan pelayan. Dan 443 adalah untuk versi aman daripadanya. Jadi satu detail yang terakhir saya akan diletakkan di atas sampul surat saya adalah bahawa saya tidak akan menghantar ini hanya untuk IP Dan. Saya akan menghantar untuk mengatakan, : 80, jika apa yang saya cuba untuk menghantar dia adalah halaman web, halaman web yang mengandungi gambar Rob Boden ini. Jadi saya akan melakukan perkara yang sama perkara ini pada sampul surat yang lain. Kemudian pada akhirnya, saya akan turun ini mati dengan router yang paling hampir, mengakui bahawa yang router mungkin tidak semestinya mengambil jalan yang sama setiap kali. Malah, saya mungkin mempunyai paket pertama akan cara ini. Paket kedua mungkin pergi ke arah sana. Ketiga packet-- mulai routing. --might pergi ke sini. Dan dalam theory-- tidak dapat menyimpannya. Secara teori, keempat-empat paket ini harus akhirnya laluan perjalanan mereka, namun cekap atau tidak cekap, sepanjang jalan ke belakang. Pada saat itu, Dan, apabila penerimaan, dapat berkumpul kembali mereka berdasarkan on-- yang anehnya, kita semua tahu apa hasil di sini akan menjadi. Dan akan mendapatkan gambaran tentang Rob. Tetapi mari kita lihat bagaimana ini bekerja keluar. Nah, sebaliknya, Dan akan mendapatkan bagian dari gambar Rob. Sangat baik. Semua orang yang mengambil bahagian hari ini. Baik. Jadi sebagai Dan mula menerima ini paket, mari kita bertanya satu soalan. Bagaimana jika salah seorang dari kamu menjadi malas, kelebihan beban, berniat jahat, atau hanya bertenaga mati, dan satu atau lebih daripada pakej tidak sampai ke Dan? Bagaimana Dan akan tahu dia tidak menerima salah satu segmen daripada empat Saya menghantar dia? Hanya secara intuitif, apa yang boleh kita lakukan? Ya? PENONTON: [didengar]. DAVID MALAN: Tepat sekali. Oleh kerana saya telah mencatat mereka unik, dan Bagaimana saya telah ditentukan segmen terdapat banyak seharusnya, ia boleh membuat kesimpulan itu yang, jika ada, dari segmen dia benar-benar hilang. Dan apa TCP memberitahu komputer untuk lakukan, jika komputer, seperti Mac OS, dan Windows dan Linux sokongan dan memahami TCP, yang mereka lakukan, Dokumentasi TCP dasarnya mengatakan bahawa Dan perlu menghantar saya mesej kembali mengatakan, hei, David, Saya tidak ada jumlah paket 1 dari 4, atau 3 dari 4, yang mana ia adalah. Dan kemudian, tugas saya adalah untuk mengambil lagi gambar Rob, yang kita ada tambahan dari hari ini untuk masa lain jika anda ingin mengambil satu dengan anda, dan kemudian saya boleh menghantar semula segmen yang Rob sepanjang jalan ke belakang. Jadi sebagai sederhana sebagai mekanisme ini adalah, bahawa adalah apa yang berlaku di hampir bila-bila masa anda melakukan sesuatu di internet, terutamanya untuk ini yang paling popular perkhidmatan. Ada protokol lain, teknologi lain selain TCP yang bekerja sedikit berbeza. Tetapi begitu banyak perkhidmatan yang kami biasanya menggunakan sebenarnya bergantung kepada protokol ini. Jadi Dan, adakah anda mendapatkan gambar penuh di sana? Ya. Kami telah disusun kembali Rob di belakang. Matur nuwun banyak kepada router. Katakan, saya benar-benar mahu melihat router antara saya dan MIT, sama seperti kalian adalah router antara saya dan Dan. Baik, daripada nslookup untuk nama pelayan lookup, Saya bukannya boleh menaip laluan jejak, yang sebenarnya akan melakukan apa yang dikatakannya. Dan saya akan lakukan dan mod tenang dengan dash 1. Ini adalah argumen baris arahan yang hanya mengatakan, cuba ini sekali dan tidak beberapa kali. Dan sekarang, saya akan menaip www.mit.edu. Sekarang, output adalah cukup cepat dan samar. Tetapi apa yang menarik mengenai ini adalah bahawa setiap daripada baris ini pada dasarnya merupakan pelajar di ruangan ini jika anda berada di jalan yang antara saya dan MIT. Apa yang anda lihat di sini, pertama, adalah nama domain yang saya menaip dalam, atau domain yang memenuhi syarat nama kerana ia benar dipanggil. Dan ini nampaknya adalah Alamat IP www.mit.edu. Komputer saya membuat kesimpulan bahawa bagi saya. Ini di sini adalah janji bahawa kita hanya akan cuba untuk mencapai MIT dalam tempoh 30 hop. Ada yang lebih baik tidak lebih dari 30 pelajar antara saya dan Dan. Dan sekarang, masing-masing daripada baris ini mewakili harfiah router antara aku dan Dan, benar-benar salah satu dari kalian. Dan jadi yang satu ini tidak kelihatan untuk mempunyai nama, nama domain. Ia hanya mempunyai IP. Dan ia hanya mengambil 0,662 milisaat untuk mendapatkan dari saya ke router pertama. Yang berikutnya tidak yang jauh lebih jauh. Ia hanya mengambil satu milisaat untuk sampai ke sana. Dan sekarang, bersyukur, hal-hal mendapatkan sedikit lebih mesra pengguna dengan nama-nama yang samar tapi sedikit lebih jitu. Ini nampaknya adalah router dalam teras rangkaian Harvard ditempatkan, hanya kerana orang mengatakan kepada kita ini, di Pusat Sains, SC. Dan GW hanyalah notasi singkat untuk pintu masuk yang merupakan sinonim untuk router. Jadi ini adalah beberapa sistem cara superskrip pentadbir penamaan salah satu server di Pusat Sains. Sementara itu, pelayan yang nampaknya dihubungkan oleh beberapa jenis kabel yang lain router yang digelar pintu masuk sempadan yang dash sesuatu, apa pun angka-angka bererti. Dan kemudian, nampaknya, Harvard mempunyai sambungan itu milisaat lain pergi ke sesuatu disebut persimpangan utara yang merupakan titik mengintip umum antara tempat-tempat yang besar seperti Harvard di mana banyak kabel masuk dan membolehkan saling hubungan antara entiti yang berbeza. Langkah enam, malangnya, tidak mempunyai nama yang sah. Dan langkah tujuh mulai menarik. Saya tidak tahu apa yang kebanyakan maksudkan. Tetapi NY tidak melompat keluar pada saya. Dan apa yang kemungkinan timbul? Ia bukan juga teknikal. Hanya New York. Jadi sesungguhnya, apa yang manusia biasa konvensyen tidak dijamin tetapi konvensyen umum adalah untuk nama router oleh alam bandar atau lapangan terbang kod yang mereka paling dekat dengan. Jadi dengan beberapa kemungkinan, ini bilangan router tujuh mungkin, memang, di New York. Dan ini seolah-olah menyokong bahawa andaian kerana ia adalah enam milisaat, bukan hanya satu atau lebih untuk sesuatu di sini di kampus. Tetapi sekarang mengambil kira, betul-betul di Megabus atau entah apa lagi, ia mungkin mengambil masa empat, lima, enam jam manusia untuk mendapatkan dari sini ke New York. Untuk mendapatkan sekeping data, mengambil masa hanya enam milisaat untuk mendapatkan paket dari saya kepada Dan jika ia adalah semua jalan di New York. Kemudian akhirnya, ini nampaknya adalah nama domain sebenarnya untuk www.mit.edu. Mereka telah nampaknya outsourcing pelayan web mereka kepada sebuah syarikat bernama Akamai yang bermaksud beberapa syarikat lain menjalankan server mereka. Dan sebab itulah kita lihat benda pelik di sana. Nah, mari kita buat ini sekali lagi. Mari kita pergi ke depan dan melakukan jejak laluan kepada rakan kami Profesor Nick Parlante di Stanford yang mempunyai server yang disebut nifty.stanfor.edu. Enter. Dan sekarang, kita akan melihat mungkin jalan yang lebih panjang yang melalui beberapa lagi bandar-bandar. Jadi di sini ini tanpa nama Server Harvard di sini. Kita berada di teras Harvard, pintu masuk sempadan dari Harvard, persimpangan utara, di mana pun ini. Dan kini, ia mendapat sedikit lebih menarik. Saya meneka router yang nombor lapan adalah di kota apa? PENONTON: [interposing SUARA] DAVID MALAN: Chicago mungkin, berdasarkan dalam hal ini, berdasarkan perkara ini di sini. Dan sekarang kita mempunyai Salt Lake City mungkin, mungkin Los Angeles di sini, dan kemudian LAX, ya, ini mungkin LA bagian bawahnya. Hingga akhirnya, ia pergi dari selatan California semua jalan sampai ke utara California ke tempat Stanford di Palo Alto. Jadi cukup sejuk. Dan mari kita mengambil langkah ini satu lagi. Ia nampaknya akan membawa anda 82 milisaat untuk menghantar mesej kepada Dan jika anda di California dan bukannya New York. Mari kita buat sesuatu seperti laluan jejak, satu cuba www.cnn.co.jp untuk Versi Jepun laman web CNN. Dan sekarang, kami masih dalam Boston ia seolah-olah pada masa ini. Beberapa pelayan enam dan lapan yang tidak bertindak balas kerana mereka menjadi sedikit swasta. Tetapi akhirnya, terdapat seolah-olah sesuatu yang menarik berlaku di antara, katakanlah, langkah tujuh dan sembilan. Apa yang mungkin antara tujuh dan sembilan, dan sudah tentu antara tujuh dan 17 langkah? Ada sebuah lompatan besar dalam jumlah masa itu mengambil data untuk pergi dari satu hop ini, salah satu router kepada yang lain. Jadi kemungkinan besar, di suatu tempat di di sini, mungkin ada, terutamanya di sini, mungkin ada tubuh yang sangat besar air yang mempunyai beberapa trans Pasifik atau trans Kabel Atlantik yang benar-benar memerlukan bahkan lebih banyak masa untuk data yang mendapatkan dari satu titik ke titik lain. Tetapi sekali lagi, bayangkan jam ia akan mengambil masa fly ke Jepun. Di sini, di sekitar 200 milisaat, ledakan, mesej anda benar-benar ada. Jadi, anda boleh bermain-main dengan ini perkakas atau dalam Windows atau Mac OS dengan perintah yang sedikit berbeza. Kadang-kadang, anda akan mendapat bintang-bintang ini, seperti dalam baris enam dan lapan, yang hanya bermakna router dikonfigurasi tidak untuk memberikan jawapan demi privasi ini. Tetapi secara umumnya, teknik ini akan, pada kenyataannya, bekerja. Jadi ternyata juga ada yang lain maklumat berair bersembunyi di alat bahawa anda mengambil untuk diberikan setiap hari. Jadi misalnya, jika anda menerima e-mel, terus terang sebagai sebahagian dari kamu mungkin baru saja, dari dipersoalkan asal-usul, jika anda belum pernah melihat antara muka Gmail sebelum ini, sama ada ia untuk antara muka kolej atau satu peribadi anda, Anda mungkin akan melihat anda inbox kelihatan seperti ini. Dan sebenarnya, ini adalah e-mel Saya dihantar, malan@harvard.edu, untuk jharvard@cs50.harvard.edu pagi ini hanya supaya saya dapat mengambil tangkapan skrin. Tetapi ternyata, semua kali ini di Gmail, ada yang segitiga kecil ke arah kanan atas ada sebelah puncak Harvard bahawa jika anda klik, anda boleh Klik Show Original. Dan jika anda melakukan itu, anda benar-benar akan melihat sekumpulan maklumat yang sangat esoterik seperti cap waktu, dan IP alamat, dan nama-nama domain. Tetapi anda akan melihat, singkatnya, header yang kita yang selama ini telah melanda di setiap e-mel yang anda hantar dan terima. Dan itu tajuk ini bahawa orang boleh menggunakan, ahli sains komputer atau selainnya, untuk benar-benar membuat kesimpulan dengan beberapa kemungkinan di mana dan daripada siapa emel benar-benar datang. Malah, kita akan bercakap dalam minggu kemudian tentang bagaimana e-mel itu sendiri dapat dihasilkan pemrograman yang adalah satu perkara yang sangat baik untuk laman web yang ingin mengirim e-mel kepada pengguna. Tetapi kita akan melihat juga, betapa remeh itu adalah untuk menempa e-mel daripada seseorang kepada orang lain, melainkan jika anda benar-benar tahu cara untuk mengesahkan header. Dan yang kalah yang cadangan hari ini. Maka dengan itu berkata, mari kita pergi satu lapisan atas. Kami bermula dengan IP yang alamat paket untuk kita, memberikan mereka alamat yang unik. TCP, yang, dalam jangka pendek, menjamin pengiriman atau sekurang-kurangnya meningkatkan kebarangkalian itu oleh menambahkan hal-hal seperti segmen, 1 atau 4, 2 dari 4, 3 dari 4, dan 4 dari 4. Dan sekarang, mari kita lapisan di atas itu protokol lain. Semua perkara-perkara ini adalah protokol, konvensyen komputer yang menentukan bagaimana dua komputer bercakap dengan satu sama lain. HTTP, akhirnya hari ini, adalah protokol pemindahan hypertext. Dan ini adalah protokol bahawa pelayar web digunakan apabila bercakap kepada pelayan web. Oleh itu, apabila anda menarik browser seperti Chrome, atau IE, atau Firefox atau Safari, atau apa sahaja, dan anda menaip sesuatu seperti facebook.com dan tekan Enter, bukan sahaja tidak komputer anda terlebih dahulu menerjemahkan facebook.com menjadi apa? Alamat IP. Kemudian converts-- itu kemudian mengirimkan mesej ke alamat IP pepatah, memberi saya laman utama hari ini atau memberi saya skrin log masuk Facebook. Atau jika anda sudah log masuk, memberi saya paparan lalai dari garis masa saya. Jadi itulah yang HTTP berkata. Dan yang lebih bahasa sehari-hari, jika saya web pelayan dan anda are-- siapa namamu, lagi? PENONTON: Margot. DAVID MALAN: Margot adalah web pelayan, dan saya pelayar web, dan saya hanya ingin mengambil saya garis masa dari Margot, margot.com, Saya akan berkata, hello, saya Daud. PENONTON: Hi, saya Margot. DAVID MALAN: Dan anda kemudian akan bertindak balas dengan maklumat tambahan kepada saya. Jadi kita mempunyai manusia bodoh ini konvensyen untuk instance-- matur nuwun. --Dengan berjabat tangan masing-masing. Dan komputer mempunyai idea yang sama di mana klien, seperti pelayar, meminta pelayan untuk melakukan sesuatu atas nama masing-masing. Dan jadi inilah gambar, misalnya. Di sebelah kiri adalah sebuah komputer riba komputer, desktop, apa pun, atau bahkan telefon. Dan di sebelah kanan adalah sangat memandangkan pelayan tanggal. Mereka biasanya kelihatan lebih kecil dan lebih seksi hari ini. Tapi yang penting adalah bahawa ada beberapa jenis komunikasi antara pelanggan dan pelayan. Dan pelanggan dalam erti kata seseorang di sebuah restoran dan pelayan atau pelayan, Idea yang sama dengan komputer. Pelanggan dan server, satu meminta maklumat, satu bertindak balas dengan maklumat. Sekarang, bagaimana yang maklumat kembali? Nah, pertimbangkan ini. Dapatkan adalah semacam lalai way-- dan ia adalah satu istilah yang super mudah. -yang hanya menentukan bagaimana pelayar mendapat maklumat daripada server. Dalam erti kata lain, bukan hanya menyia-nyiakan-ily mengulurkan tangan saya untuk Margot, jika saya benar-benar berada di browser, saya akan barang-barang di dalam sampul surat, seperti yang saya lakukan dengan gambar Rob sebelumnya, mesej teks yang secara harfiah kata sesuatu seperti ini, mendapatkan / http / 1.1hostwww.google.com atau margot.com atau apa sahaja yang nama pelayan mungkin berada. Dan kemudian, dot dot dot, ada hal-hal lain. Tetapi benar-benar, di dalam dari sampul surat akan menjadi tekstual agak mudah mesej seperti itu. Yang setelah menerima, Margot akan membuka, membaca kandungan, dan bertindak balas dengan sewajarnya. Sekarang, ia sedikit non-jelas dengan contoh ini. Tapi mendapatkan /, apakah slash mungkin merujuk kepada, hanya berdasarkan pada keakraban anda dengan menyemak imbas web dalam kehidupan sehari-hari? Apa slash? PENONTON: [didengar]. DAVID MALAN: Sekuensi keluar. Bukan idea yang buruk tetapi secara umumnya escape sequence pergi dengan cara yang lain. Itu akan menjadi garis miring terbalik biasanya. Tetapi bukan pikiran yang buruk. Ya? Sebuah pointer. Juga pemikiran yang baik tetapi lebih mudah daripada itu. Direktori home. Akar dari cakera keras, jadi untuk bercakap. Kebanyakan daripada kita tidak menaip ini. Tetapi dari segi teknikal, jika anda mahu menjadi super betul hari ini, Anda akan pergi ke sesuatu seperti http://www.facebook.com/. Sekarang, saya berkata kebanyakan daripada kita tidak akan mengganggu menaip slash. Dan terus terang, yang paling browser, termasuk Chrome, tidak repot-repot menunjukkan kami slash hari ini hanya kerana mereka suka sederhana dan ringkas. Tetapi slash hanya berarti pergi ke www.facebook.com dan mendapatkan slash, akar dari cakera keras, Halaman lalai dalam facebook.com. Menggunakan protokol apa? Nah, dengan menggunakan versi 1.1 Hal ini dikenali sebagai HTTP. Pelayan, atau Margot-- dan dengan cara itu, melakukan Anda keberatan bahwa saya menggunakan anda dalam ini? OK. Jadi kita baik sekarang. Jadi tanggapan Margot sekarang dengan sampul surat dari beliau sendiri, yang di dalamnya adalah mesej teks yang sama. Baris pertama yang, ya, saya bercakap HTTP versi 1.1. 200 adalah kod status yang hanya berarti semua sudah OK. Saya mempunyai halaman yang anda cari. Sementara itu, Content-Type: text / html, ini adalah cara separuh misterius Margot berkata, apa yang anda minta adalah halaman web. Dan ia jenis, sehingga untuk speak-- hampir seperti perasaan yang berubah-ubah, tetapi ini adalah tingkat yang lebih tinggi sekarang. Jenis datanya adalah teks namun secara khusus HTML. Bahasa yang kita tidak lama lagi akan melihat. Dan kemudian, ada beberapa hal-hal lain. Jadi hal-hal lain secara harfiah apa Facebook adalah menanggapi dengan. Jadi mari kita lihat ini juga. Biar saya pergi ke hadapan dan membuka Chrome pada komputer riba saya yang anda boleh lakukan pada anda komputer sendiri juga. Dan saya akan pergi ke depan dan membuka www.facebook.com. Enter. Dan saya mendapat skrin biasa ini di sini. Tetapi sekarang, saya akan melakukan sesuatu yang lain. Saya akan pergi ke depan dan klik View, Pemaju. Dan pergi kepada Pemaju Tools, yang anda perlu mempunyai dalam Chrome pada komputer anda, sekurang-kurangnya dalam alat anda. Saya akan tatal ini perkara di sini, dan anda akan melihat sejumlah besar teks samar di sini. Ternyata apa yang Margot diletakkan di dalam dari bahawa sampul surat sebagai tindak balas kepada saya adalah bahasa yang dikenali sebagai HTML, HyperText Markup Language. Ini bukan program yang bahasa kerana anda tidak boleh, ia tidak mempunyai gelung, dan syarat-syarat, dan fungsi, dan hal-hal seperti itu. Ini adalah bahasa markup. Dalam hal itu, ia mempunyai sintaks khas dipanggil tag dan sifat-sifat yang memberitahu pelayar apa yang akan ditampilkan pada skrin dan bagaimana untuk memaparkannya. Harus berpusat? Apakah harus berani berwajah? Merah, hijau, biru? Ini adalah bahasa markup. Dalam hal itu, ia memberitahu pelayar apa untuk ditunjukkan pada skrin. Jadi, ini adalah, secara harfiah, semua HTML dan banyak lagi yang pelayan Facebook adalah meludah keluar dan yang Chrome dan IE, Firefox dan mempunyai telah dirancang oleh mereka masing-masing penulis difahami. Dan sebenarnya, ia adalah satu rancu sedikit daripada itu. Jika anda, sebaliknya, pergi ke View, Pemaju, Lihat Sumber, ini sebenarnya apa yang Facebook meletakkan keluar. Semacam sifar selama lima untuk gaya, benar, jika kita membuat kesimpulan bahawa ini mungkin bukan yang terbaik. Tapi terus terang, mereka boleh pergi dengan kerana jika anda melayani sampai berbilion-bilion halaman web setiap hari, anda benar-benar tidak mahu membuang masa, dan bait, dan wang akhirnya dalam transmisi hal-hal seperti baris baru aksara, dan ruang, dan tab kerana anda menghabiskan bandwidth tidak perlu dengan ISP anda. Jadi memang, ini yang dimaksudkan yang akan minified dengan cara ini. Tetapi apa Chrome adalah melakukan bagi kami, ia mengambil Kod ini, yang benar-benar kelihatan seperti kacau-bilau dan tidak jelas bagi manusia, dan ia hanya format itu. Ini cukup mencetaknya supaya kita boleh balut fikiran kita di sekitarnya sedikit lebih mudah. Tetapi yang lebih menarik ialah ini. Jika saya sekarang klik pada Chrome, tidak unsur-unsur tetapi rangkaian, Saya akan melihat sedikit skrin pembalakan itu akan menunjukkan semua dari permintaan HTTP yang benar-benar akan kembali dan balik antara saya dan Facebook atau saya Margot dan jika saya membuat lebih daripada satu permintaan. Jadi, saya akan pergi ke depan dan klik icon tambah nilai di sini dalam Chrome. Dan kini, sejumlah besar hal terbang melewati di bahagian bawah. Saya akan tatal kembali ke bahagian paling atas. Dan kini, melihat ini, pertama meminta browser saya buat adalah untuk www.facebook.com. Ia menggunakan get mekanisme yang hanya berarti ia bercakap bahasa teks yang kita lihat satu contoh dari beberapa saat yang lalu. Dan lebih-lebih lagi, ternyata sambutan yang Facebook memberikan saya adalah 200 OK, yang bermakna saya menemukan halaman web yang berkenaan. Jika saya klik pada baris ini, saya benar-benar dapat melihat mereka header lebih sedikit dengan jelas. Ini akan lebih masuk akal tidak lama lagi. Tetapi perhatikan bahawa pelayar saya menghantar banyak maklumat seperti tuan rumah, dan kaedah, dan cookies. Kami akan kembali kepada mereka tidak lama lagi. Dan anda akhirnya akan mengerti apa cookie sebenarnya adalah dan bagaimana anda tidak lama lagi akan menghantar mereka. Dan anda boleh melihat apa yang Facebook sedang menghantar kembali, termasuk jenis kandungan teks HTML, masa tarikh semasa, privasi dasar, atau kekurangan itu, dan kemudian, akhirnya, beberapa cookies yang sedang diatur di komputer anda juga. Tapi kita akan menggoda mereka selain tidak lama lagi. Tapi pendek kata, setiap kali anda melawat laman web, sekarang selama bertahun-tahun, Anda telah menghantar mesej kepada yang saya dihantar dalam sampul surat untuk Margot dan Dan. Dan anda telah mendapat kembali tanggapan seperti ini dari Facebook. Tetapi lebih dari itu, meneka apa yang menjadi didedahkan kepada Facebook, dan Google, dan orang lain setiap kali anda melawat laman web? Apa yang ada di luar tiap-tiap menyelak sampul surat yang komputer anda telah menghantar? Alamat IP anda, bukan? Mungkin bukan nama anda per se, tetapi alamat IP anda. Dan adil, mari kita menyambung titik-titik kemudian, jika anda menggunakan perkhidmatan seperti web, atau BitTorrent, dan hidup, dan anda telah berdaftar komputer di tempat seperti Harvard, seseorang di dunia tahu bahawa John Alamat IP Harvard ini, titik ini, titik ini, titik ini. Dan memang, balak dia boleh terus baik pada kampus seperti ini, pada rangkaian Comcast, di Verizon, atau terus terang, pada NSA seperti yang kita baru-baru belajar, yang log hampir semua yang yang anda lakukan di internet. Dan kami akan kembali ke ini kelas masa depan mengenai implikasi ini keputusan reka bentuk dan keselamatan. Tetapi sebenarnya, anda benar-benar tidak mempunyai semua yang banyak privasi. Setiap kali anda sudah mengunjungi mana-mana sahaja di web, anda telah menunjukkan tangan anda dan mendedahkan sekurang-kurangnya alamat IP anda. Nota begitu menakutkan samping, apa yang boleh kita lakukan untuk menanamkan hal seperti kucing di laman web? Oleh itu, kita telah mempunyai banyak maklum balas yang mungkin akan kembali dari pelayan. Dan kita tidak akan melihat semua hari ini. Tetapi 200 adalah baik. Dan anda mungkin tidak pernah melihat semua ini sebagai manusia sebelumnya. Tetapi anda mungkin pernah melihat sekurang-kurangnya salah satu dari ini. Yang satu ini mungkin kelihatan biasa? PENONTON: 404 DAVID MALAN: Jadi 404. Fail tidak dijumpai. Dan memang, anda akan melihat pemrograman ini sendiri. 404 hanya bermakna fail yang anda minta, mengurangkan atau memotong sesuatu, hanya tidak wujud. Dan pelayan web biasanya bertindak balas dengan 404 akibatnya Sementara itu, kami tidak lama lagi akan melihat bahawa kandungan mesej yang adalah bahasa ini dikenali sebagai HTML. Dan ini adalah super coretan ringkas HTML bahawa tidak apa-apa selain daripada memaparkan hello world pada skrin. Malah, anda lihat di bahagian atas ini sesuatu yang dipanggil jenis dokumen akuan yang hanya mengatakan, hei, dunia. Fail ini mengandungi HTML. Kemudian, sedikit seterusnya HTML bahawa anda akan menulis, ia mempunyai kurungan terbuka, dan kemudian kata HTML, kemudian braket tertutup, dan kemudian kepala terbuka, dan pendakap dekat. Jadi singkatnya, mari kita sebenarnya melakukan ini lebih mekanikal. Biar saya pergi ke dalam alat saya, tetapi anda boleh melakukan ini di mana saja bahawa anda mempunyai editor teks untuk. Saya akan pergi ke depan dan menyimpan fail yang dipanggil hello.html. Aku akan meletakkannya di desktop saya untuk menjaga hal-hal super mudah sekarang. Dan saya akan melakukan apa yang saya hanya melihat. Jadi jenis doc HTML, terbuka kurungan HTML. Dan sekarang, notis, saya akan melakukan sebaliknya Terlebih Dahulu. Dan dengan yang berlawanan, maksud saya tag yang sama, boleh dikatakan, tetapi ia bermula dengan garis miring. Dan kemudian, di sini, Saya akan berkata, kepala, kerana ia ternyata bahawa setiap Laman web ini mempunyai kepala yang dipanggil yang adalah hal-hal yang masuk dalam tajuk bar, di bahagian paling atas halaman. Dalam tajuk hanya akan menjadi hello di sini. Dan sekarang, saya akan mempunyai badan ke laman web ini. Jadi setiap laman web mempunyai kedua-dua atas kepala dan badan yang yang merupakan keberanian halaman. Dan di sini, saya hanya akan mengatakan sesuatu seperti hello world. Dan saya akan menyimpan fail ini. Jika saya kini mengurangkan gedit, lihat, ada fail kecil pada desktop saya dipanggil hello.html. Sekarang, itu bukan pada pelayan lagi, per se, Memang, hanya pada desktop peribadi saya di sini. Tetapi jika saya membuka Chrome dan tekan Control O-- ada kucing yang berkenaan. --dan saya pergi ke desktop saya. Dan saya membuka hello.html, di sana, di Malah, adalah laman web super mudah saya. Mayat halaman saya dan jendela putih ini di sini ialah tubuh dengan hello world. Dan tajuk dalam kepala Laman ini dalam tab di sana. Dan kita akan melihat tidak lama lagi bahawa itu super mudah untuk membuka laman-laman lain juga. Sebagai contoh, saya akan pergi ke dalam beberapa kod pengedaran untuk minggu ini, sumber tujuh, dan saya akan untuk membuka tidak JPEG yang lelaki ini di sini. Tetapi saya akan membuka image.html, yang akhirnya kelihatan seperti ini. Tetapi saya kini membuka ini dalam gedit, dan pergi ke Dropbox sumber tujuh, dan image.html. Kebanyakan ini hanya komen seperti yang kita tidak lama lagi akan melihat. Tetapi jika saya mahu meletakkan Grumpy Cat di dalam laman web ini, ia sudah cukup untuk meletakkan satu lagi kurungan terbuka, dan kemudian imej kata kunci atau img untuk jangka pendek, dan kemudian alternatif teks untuk alasan aksesibilitas jika seseorang mempunyai skrin yang pembaca atau sesuatu seperti itu. Sumber yang, apa nama fail, cat.jpeg. Dan kemudian, kerana ini tag ini sedikit istimewa, kita meletakkan garis miring ke depan, sebagai kita akan melihat, di dalam tag. Tetapi keputusan akhir adalah web halaman yang kelihatan seperti ini. Jadi singkatnya, apa yang kita akan berada pada masa ini dari masa ke masa adalah menggunakan web dan membuat halaman web untuk akhirnya menjadi wadah tidak hanya untuk perkara-perkara bodoh seperti imej, dan pautan, dan jadual, dan bullet daftar, dan sebagainya, tetapi juga untuk memberikan diri kita sendiri antara muka pengguna grafik, GUI, tidak berbeza dengan apa yang kita lakukan kita Breakout. Tetapi dalam persekitaran ini, kami tidak akan mula menggunakan bahasa seperti PHP, dan JavaScript, pangkalan data bahasa yang disebut SQL, bahasa skrip client-side disebut JavaScript untuk benar-benar membuat semua interface yang lebih dinamik tetapi dalam banyak, konteks jauh lebih akrab. Tetapi sebelum itu, mari kita kesimpulan hari ini dengan melihat, seperti yang dijanjikan, dari apa yang sebenarnya berlaku di bawah hud dengan internet itu sendiri. Menetapkan untuk hari ini bahawa internet boleh digunakan untuk memindahkan perkara-perkara seperti halaman web melalui HTTP sama seperti saya menjabat tangan Margot sebelumnya. Tetapi ada begitu banyak yang lain perkhidmatan yang menggunakan TCP dan IP yang kita ambil untuk diberikan bahawa kerja-kerja seperti yang akan kita lihat di sini dalam filem ini yang bakal membawa kami ke akhir hari ini. [VIDEO MAIN SEMULA] -Untuk Kali pertama dalam sejarah, manusia dan mesin adalah bekerja bersama-sama, mewujudkan mimpi. Sebuah kekuatan pemersatu yang tahu tiada sempadan geografi. Tanpa mengira bangsa, fahaman, atau warna. Satu era baru di mana komunikasi benar-benar membawa orang bersama-sama. Ini adalah The Dawn of the Net. Ingin tahu bagaimana ia berfungsi? Klik di sini untuk memulakan anda perjalanan ke jaring. Sekarang, apa yang berlaku apabila anda klik pada pautan tersebut? Anda memulakan aliran maklumat. Maklumat ini bergerak ke bawah ke dalam ruang surat peribadi anda apabila Encik IP pakej itu, label itu, dan menghantarnya dalam perjalanan. Setiap paket adalah ukuran terbatas. Ruang mel mesti memutuskan bagaimana untuk membahagikan maklumat dan bagaimana mengemas itu. Sekarang, pakej perlu label yang mengandungi maklumat penting, seperti alamat pengirim, penerima alamat dan jenis paket itu. Kerana paket tertentu akan keluar ke internet, ia juga mendapat alamat untuk pelayan proksi yang mempunyai fungsi khusus seperti yang akan kita lihat nanti. Paket ini sekarang diluncurkan ke rangkaian kawasan setempat atau LAN. Rangkaian ini digunakan untuk menyambung semua komputer tempatan, router pencetak, dan lain-lain untuk pertukaran maklumat dalam fizikal dinding bangunan. LAN adalah cukup tidak terkawal tempat dan, malangnya, kemalangan boleh berlaku. Jalan raya dari LAN adalah dikemas dengan semua jenis maklumat. Ini adalah paket IP, Novell paket, paket Apple Talk. Mereka akan melawan lalu lintas seperti biasa. Router tempatan membaca alamat dan, jika perlu, mengangkat paket ke rangkaian lain. Ah, router. Simbol kawalan dalam dunia yang seolah-olah tidak teratur. Itu dia, sistematik, tidak peduli, teratur, konservatif, dan kadang-kadang tidak cukup untuk mempercepat. Tetapi sekurang-kurangnya, ia adalah tepat untuk sebahagian besar. Seperti paket meninggalkan router, mereka membuat jalan mereka ke dalam intranet korporat dan kepala untuk switch router. Sedikit lebih cekap daripada router, switch router bermain cepat dan lepas dengan paket IP, dengan cekap routing mereka di sepanjang jalan. A Pinball Wizard digital jika anda akan. -Di Sini kita pergi. Di sini datang satu lagi. Dan ia adalah satu lagi. Watch ini, mama. Di sini ialah pergi. Alamak. Di belakang. Hei. Di sana. Di sana. Lebih ke kiri. Ke kanan. Lebih ke kiri. Ke kanan. Anda mendapatkannya. Di sini ia pergi. Dia menembak. Beliau skor. Ia akan. Hey, tunggu. Hey, hati-hati. Di sini datang satu lagi. Oh, di sini kita pergi. Paket -as tiba di tujuan mereka, mereka dijemput oleh antara muka rangkaian, sedia untuk dihantar ke tahap yang seterusnya, dalam kes ini, proksi. Proksi digunakan oleh banyak syarikat sebagai semacam orang tengah untuk mengurangkan beban pada sambungan internet mereka dan atas sebab-sebab keselamatan juga. Seperti yang anda lihat, paket-paket semua pelbagai saiz, bergantung kepada kandungan mereka. Proksi terbuka paket dan mencari alamat web atau URL. Bergantung kepada sama ada alamat yang boleh diterima, paket akan dihantar ke internet. Terdapat, bagaimanapun, beberapa alamat yang tidak bertemu dengan kelulusan proksi, iaitu, garis panduan perusahaan atau pengurusan. Ini terus ditangani. Kami akan memiliki semua itu. Bagi mereka yang membuatnya, itu di jalan raya sekali lagi. Selanjutnya, firewall. Firewall korporat mempunyai dua tujuan. Ini mencegah beberapa agak hal-hal buruk di internet dari datang ke intranet. Dan ia juga boleh menghalang maklumat korporat sensitif daripada dihantar keluar ke internet. Setelah melalui firewall, router mengambil paket dan meletakkan itu ke yang lebih sempit jalan atau jalur lebar, seperti yang kita katakan. Jelas sekali, berturut-turut tidak luas cukup untuk membawa mereka semua. Sekarang, anda mungkin tertanya-tanya, apa yang yang terjadi pada semua paket yang tidak membuat ia sepanjang jalan. Nah, apabila Encik IP tidak menerima pengakuan bahawa paket telah yang diterima dalam masa yang sewajarnya, dia hanya menghantar paket pengganti. Kami kini bersedia untuk memasuki dunia internet, labah-labah web rangkaian yang saling berhubungan yang merangkumi seluruh dunia kita. Di sini, router dan switch mewujudkan hubungan antara rangkaian. Sekarang, internet adalah yang sama sekali persekitaran yang berbeza daripada apa yang anda akan menemukan dalam dinding pelindung LAN anda. Di sini, ia adalah liar Barat, banyak ruang, banyak peluang, banyak perkara-perkara yang boleh diterokai dan tempat untuk pergi. Terima kasih kepada yang sangat sedikit kawalan dan peraturan, idea-idea baru mencari tanah yang subur untuk menolak sampul kemungkinan mereka. Tetapi kerana kebebasan ini, bahaya tertentu juga mengintai. Anda tidak akan pernah tahu apabila anda memenuhi ping ditakuti kematian, versi khusus dari suatu permintaan biasa ping yang beberapa bodoh terpikir untuk mengacaukan tuan rumah yang tidak curiga. Laluan paket kami mengambil mungkin melalui satelit, talian telefon, wayarles, atau bahkan kabel melintasi samudra. Mereka tidak selalu mengambil yang paling cepat atau terpendek laluan mungkin, tetapi mereka akan sampai di sana, akhirnya. Mungkin itu sebabnya kadang-kadang disebut menunggu di seluruh dunia. Tetapi ketika semuanya bekerja dengan lancar, anda boleh memintas dunia lima kali ganda di drop dari topi, secara literal, dan semua untuk Kos panggilan tempatan atau kurang. Di akhir tujuan, kami akan mencari firewall lain. Bergantung kepada anda perspektif sebagai paket data, firewall boleh menjadi benteng yang keselamatan atau musuh yang ditakuti. Ia semua bergantung kepada pihak mana yang anda pada, dan apa niat anda. Firewall yang direka untuk membenarkan hanya paket-paket yang memenuhi kriteria. Firewall ini beroperasi di Pelabuhan 80 dan 25. Semua percubaan untuk masuk melalui lain port ditutup untuk perniagaan. Port 25 digunakan untuk paket mel. Sementara Port 80 adalah pintu masuk untuk paket dari internet ke web pelayan. Di dalam firewall, paket disaring lebih teliti. Beberapa paket membuatnya dengan mudah melalui kastam, sementara yang lain melihat hanya sedikit meragukan. Kini, pegawai firewall tidak mudah tertipu, seperti apabila ping ini daripada cuba paket kematian untuk menyamarkan diri sebagai paket ping biasa. -Move Bersama-sama. Tidak apa-apa. Ah, itu bukan apa-apa. Mempunyai hari yang baik. Biar saya keluar dari sini. Bye. -Bagi Paket beruntung cukup untuk membuat sejauh ini, perjalanan yang hampir berakhir. Ia hanya garis di atas antara muka yang akan diambil ke dalam pelayan web. Pada masa kini, pelayan web dapat berjalan di banyak hal, dari kerangka utama, untuk webcam, ke komputer yang anda miliki. Mengapa tidak peti sejuk anda? Dengan set yang betul ke atas, anda boleh mengetahui jika anda mempunyai bakat untuk menjadi untuk cacciatore ayam atau jika anda perlu pergi membeli-belah. Ingat, ini adalah The Dawn of the Net. Hampir semuanya boleh. Satu demi satu, paket-paket yang menerima, membuka, dan membongkar. Maklumat yang terkandung di dalamnya, yang adalah permintaan anda untuk maklumat, dihantar ke web aplikasi pelayan. Paket itu sendiri dikitar semula. Bersedia untuk digunakan lagi dan penuh dengan maklumat yang diperlukan anda, ditangani, dan menghantar keluar dalam perjalanan kembali kepada anda. Kembali masa lalu firewall, router, dan melalui internet. Kembali melalui firewall korporat anda. Dan ke muka anda. Siap untuk membekalkan pelayar web anda dengan maklumat yang anda minta. Itulah filem ini. Senang dengan usaha mereka dan percaya pada dunia yang lebih baik, paket data kami terpercaya naik off bahagia ke matahari terbenam yang lain hari, mengetahui sepenuhnya mereka telah melayani tuan-tuan mereka dengan baik. Sekarang, tidak adalah bahawa akhir yang bahagia. [AKHIR VIDEO MAIN SEMULA] DAVID MALAN: Itu saja untuk CS50. Kami akan melihat anda minggu depan. [MUZIK - KATY PERRY, "KUDA GELAP"]