DAVID Malan: Baiklah. Ini adalah CS50. Dan ini adalah awal minggu ketujuh. Jadi hari ini, mungkin untungnya, kita mulai transisi kami dari tingkat yang lebih rendah dunia pemrograman C ke tingkat yang lebih tinggi dunia pemrograman web. Dan dengan itu, kita akan lihat di persis bagaimana internet bekerja, apa mesin ini dan Internets ini bahwa Anda telah menggunakan selama bertahun-tahun sekarang benar-benar melakukan di bawah kap arah pemahaman yang lebih baik tentang bagaimana semuanya bekerja, dan bagaimana Anda dapat membuatnya bekerja untuk Anda. Menjelang itu, kenapa tidak kita mengambil melihat pertama pada klip dari acara TV disebut Numb3rs, yang akan mendapatkan kita mulai untuk persis bagaimana internet bekerja. [VIDEO PLAYBACK] -Ini Alamat IPP4 32-bit. -IP. Itulah internet. Jaringan-swasta. Ini jaringan pribadi Amita ini. Oh, dia begitu menakjubkan. Oh, Charlie. -Ini Adalah alamat IP cermin. Dia membiarkan kita menonton apa dia lakukan secara real time. [END VIDEO PLAYBACK] DAVID Malan: Jadi ada keseluruhan banyak yang salah dengan itu acara TV. Jadi mari kita menggoda terpisah persis salah satu hal yang pertama dan melihat apakah kita tidak bisa membungkus pikiran kita di sekitarnya. Jadi frame terakhir dari Film itu, acara yang adalah salah satu ini di sini, yang tampaknya menunjukkan bahwa ini adalah apa yang beberapa hacker menggunakan untuk masuk ke beberapa sistem. Tapi tidak. Jika Anda memperbesar ini kode sumber, yang adalah bahasa yang disebut Objective C di yang aplikasi iPhone, aplikasi iPad, dan Mac Aplikasi OS ditulis, Anda akan melihat bahwa ini adalah untuk semacam program gambar yang memiliki krayon sebagai variabel. Jadi selain itu, Anda mungkin telah memperhatikan alamat ini di sini. Sekarang, ini adalah sebagai salah. Dan ini mungkin sengaja dipilih menjadi alamat yang tidak valid sehingga tidak benar-benar memimpin di suatu tempat jika penampil TV benar-benar kunjungan itu. Tetapi jumlah ini di sini, sesuatu dot sesuatu dot sesuatu dot sesuatu adalah apa yang umumnya dikenal sebagai alamat IP. Dan itu benar-benar baik Segue ke topik ini lebih umumnya, yang dikenal sebagai IP, protokol internet. Jadi Anda sudah mungkin setidaknya mendengar kalimat ini sebelumnya. Tapi apa IP, atau internet protokol Anda memahami hari ini? Kemungkinannya, jika kita diminta untuk angkat tangan, sebagian besar dari Anda mungkin telah mengatakan kata IP address sebelumnya. Jadi apa yang Anda maksud? AUDIENCE: [tak terdengar]? DAVID Malan: Apa itu? AUDIENCE: [tak terdengar]? DAVID Malan: Sekali lagi. AUDIENCE: Alamat komputer. DAVID Malan: The alamat komputer. Jadi itulah yang benar. Ternyata bahwa setiap komputer di internet, dan hari ini, setiap telepon di Anda saku dan tablet dalam ransel Anda, memiliki alamat IP, internet alamat protokol, yang adalah alamat unik yang mengidentifikasi itu di seluruh internet. Sekarang, itu sedikit putih berbohong karena dunia benar-benar kehabisan alamat IP. Jadi kita sudah mulai menggunakan alamat IP pribadi. Tapi lebih pada suatu saat. Tapi Anda bisa memikirkan alamat IP sebagai seperti layanan jalan pos Anda alamat. Kami sudah menggunakan contoh Maxwell Dworkin, gedung CS, sebelum- 33 Oxford Street Cambridge, Mass, 02138, USA. Itu adalah alamat unik di dunia. Demikian pula dilakukan komputer memiliki alamat yang unik. Mereka hanya terjadi pada terlihat berbeda- sedikit nomor dot nomor dot nomor dot nomor. Dan tidak ada yang benar-benar tahu apa rentang yang valid dari nomor adalah untuk masing-masing hash? Ya. AUDIENCE: 0 sampai 255? DAVID Malan: Tepat. 0 sampai 255. Dan bahkan jika Anda tidak tahu itu, kini menarik kesimpulan, berapa banyak bit yang digunakan untuk mewakili masing-masing angka ini kemudian? Delapan rupanya karena tertinggi Anda dapat mengandalkan adalah 255, itu nilai 8-bit. Jadi secara total, alamat IP adalah 32 bit. Forwarding begitu cepat ke kesimpulan matematika, berapa banyak alamat IP yang mungkin yang ada di dunia, maka? Jadi itulah 8 ditambah 8 ditambah 8 ditambah 8, jadi itu 32 bit. Dan kami selalu mengatakan bahwa 2 sampai 32 kira-kira? OK. Aku akan lapangan yang satu ini. Empat miliar. Dan kami berbicara tentang hal itu dalam minggu nol ketika kita berbicara tentang buku telepon dengan jumlah gila halaman. Tapi semacam itu adalah bahwa ada jumlah terbatas alamat IP. Dan meskipun empat miliar mungkin tampak seperti banyak, kita manusia telah mengkonsumsi beberapa dari mereka untuk semua server kami dan perangkat dan sebagainya. Jadi ini benar-benar menjadi masalah. Sekarang, ada cenderung menjadi Skema belakang yang memiliki apa IP. Misalnya, banyak dari komputer di Harvard memiliki alamat unik yang mulai dengan salah satu dari dua nilai-nilai ini. MIT, sama, memiliki awalan. Dan banyak perusahaan dan universitas memiliki awalan unik mereka sendiri. Dan kemudian sebagian besar dari kita untuk rumah kami koneksi internet dan sejenisnya, kami berbagi beberapa awalan yang Comcast atau seseorang seperti itu terjadi untuk sendiri. Dan ini hanya untuk mengatakan bahwa jika Anda melihat kebanyakan komputer di kampus, mereka mungkin akan memiliki IP alamat yang terlihat seperti ini. Sekarang, Anda mungkin juga kadang-kadang melihat alamat IP dimulai seperti ini. Bahkan, jika ada di antara kalian tumbuh dengan akses internet di rumah, dan kau pernah cukup teknis penasaran untuk melihat-lihat pengaturan komputer Anda sendiri, Anda mungkin bukan melihat alamat yang terlihat lebih seperti ini, yang dimulai dengan 10, atau 172,6, atau 192.168, atau beberapa varian daripadanya. Dan itu hanya berarti bahwa dunia disisihkan sejumlah besar nomor untuk menjadi pribadi, yang berarti Anda dapat menggunakannya di rumah Anda, Anda bahkan dapat menggunakannya pada Anda kampus dan dalam perusahaan Anda, tetapi Anda tidak dapat menggunakan mereka di internet pada umumnya. Dan ini pribadi IP telah solusi arah memastikan bahwa setidaknya begitu Sejauh seluruh dunia yang bersangkutan, kita tidak menggunakan banyak alamat IP. Tapi setidaknya, kita bisa, kita sendiri kampus, memiliki cukup banyak karena banyak IP seperti yang kita inginkan. Tapi siapa yang peduli? Apa relevansi semua ini untuk penggunaan yang sebenarnya dari internet? Nah, mari kita lihat mungkin gambar sederhana di sini. Mari saya melalui kedua ini di layar. Dan memaafkan tulisan tangan saya di sini. Tetapi jika kita menganggap diri kita sebagai menjadi laptop kecil ini di sini di suatu tempat di kampus, hari ini ia memiliki Wi-Fi. Namun dalam lampau dan jika Anda menemukan adaptor yang tepat, dapat memiliki kabel ethernet yang akan sama membiarkan Anda terhubung ke beberapa jenis perangkat. Dan Anda dapat menyebutnya banyak hal. Tapi aku akan pergi ke depan dan menyebutnya, untuk saat ini, bagaimana jalur akses? Jadi, ini adalah laptop saya. Ini adalah AP saya, atau jalur akses, dan ini adalah beberapa perangkat nirkabel, tidak berbeda dengan orang-orang yang Harvard memiliki seluruh langit-langit dan dinding di sekitar kampus yang memiliki lampu berkedip dan yang apa laptop Anda digunakan untuk berbicara secara nirkabel ke seluruh jaringan. Jadi entah bagaimana laptop ini berbicara dengan hal di dinding, di ruang makan, atau di tempat lain. Sekarang, sementara itu, titik akses terhubung ke sesuatu yang lain di kampus. Dan itu mungkin sesuatu dikenal sebagai switch. Dan mereka terlihat jauh lebih menarik dari sekedar ini diagram kotak. Tapi entah kenapa, hal itu terhubung ke sebuah switch. Dan pada gilirannya, entah bagaimana saklar yang terhubung ke perangkat yang mungkin adalah bit yang lebih besar, yang disebut router. Dan kemudian, sementara itu, Harvard terhubung ke seluruh internet yang kita akan menarik sebagai awan ini di sini, melalui beberapa jumlah kabel atau teknologi nirkabel. Jadi ada banyak langkah-langkah antara saya dan seluruh dunia. Dan memang, bahkan dalam gambar ini di sini, ada beberapa server lain atau jasa yang terlibat. Dan aku hanya akan menggambar ini agak abstrak hanya agar kita memiliki singkatan sebelum kita. Satu disebut DHCP. Dan satu lagi, sedikit lebih menarik untuk hari ini, disebut DNS. Jadi ini adalah server yang entah bagaimana diakses komputer saya juga. Jadi sekarang, mari kita menggoda selain sedikit jargon. Jadi titik akses hanya perangkat nirkabel ini sering dengan antena yang benar-benar membiarkan Anda berbicara dengan seorang nirkabel. Di rumah, Anda mungkin menyebutnya ini router rumah. Mungkin dibuat oleh Linksys, atau Apple, atau D-Link, atau sejumlah perusahaan. Itu, pada gilirannya, terhubung ke switch dari beberapa macam. Atau kembali ke rumah, apa Wi-Fi Anda perangkat mungkin terhubung ke bukan? Karena Anda mungkin tidak sudah memiliki semua peralatan ini. Ya. Modem kabel atau modem DSL kembali ke rumah yang Anda dapatkan dari Verizon, atau Comcast, atau salah satu operator. Jadi pikirkan semua kompleksitas ini sebagai penunjang universitas atau benar-benar bisnis seperti Comcast. Dan benar-benar, hal-hal yang ada di rumah Anda mungkin di sisi ini pagar ditambah mungkin salah satu rumah tersebut route-- satu di antaranya adalah modem kabel atau DSL modem mereka mungkin memberikan. Jadi switch hanya perangkat dengan sejumlah besar jack data di dalamnya. Bahkan, jika Anda ingat bahwa berita Laporan kami bermain di layar lebar beberapa minggu yang lalu di mana kita berbicara tentang shock shell, dan seberapa buruk ini? Dan ada ini foto-foto kabel, dan jack, dan hal-hal yang terlihat teknis? Mereka hanya switch bodoh yang hanya internet menghubungkan komputer dengan mencolokkan kabel ke dalamnya. Jadi itu semua switch adalah. Sekarang, perangkat ini mendapatkan sedikit lebih menarik. DHCP. Jika Anda telah menjulurkan sekitar Anda komputer di rumah atau bahkan di kampus, Anda mungkin telah melihat singkatan ini. Apakah ada yang tahu apa server DHCP? Protokol konfigurasi host dinamis? Tidak seperti hal yang Anda benar-benar perlu untuk menulis. DHCP. siapa pun sama sekali? Baik. Jadi mari kita mundur cerita. Jika cerita di sini di tangan didasarkan pada saya memiliki alamat yang unik di dunia, alamat IP, mana yang berasal dari? Dalam lampau, ketika Anda harus kampus, Anda benar-benar memiliki bertanya kepada seseorang di Harvard, apa yang harus alamat IP saya menjadi. Dan Anda akan secara manual ketik ke komputer Anda. Tapi baru-baru, teknologi ada yang memungkinkan Anda untuk secara dinamis, DHCP, mendapatkan alamat IP hanya ketika Anda steker ke kampus nirkabel atau dengan kawat. Sehingga server DHCP hanya server yang memberikan komputer Anda IP yang unik alamat, agak acak atau melalui beberapa algoritma. Tapi jika Anda berpikir kembali beberapa minggu atau beberapa tahun, saat pertama kali mendaftar komputer di kampus, anda katakan Harvard, wewenang saya untuk memberikan saya sebuah alamat IP. Sekarang dns mulai mendapatkan sedikit lebih menarik. Sistem nama domain. Apakah ada yang ingin mengambil bacokan apa hal ini di sini? Itu salah satu atau lebih server yang melakukan tugas yang cukup sederhana yang jenis penting. Ya. AUDIENCE: Menerjemahkan URL [tak terdengar]. DAVID Malan: Ya. Ini menerjemahkan URL ke IP alamat dan sebaliknya. Pertimbangkan, setelah semua, yang ketika Anda pergi pada website, Anda ketik sesuatu seperti facebook.com, atau google.com, atau harvard.edu, Anda pasti belum pernah diketik kemungkinan besar alamat IP numerik. Dan Anda bisa memikirkan alasan mengapa. Kembali pada hari, bahkan sekarang sampai batas tertentu, ketika Anda membuat telepon panggilan untuk sebuah perusahaan, mereka benar-benar berusaha keras untuk membeli sendiri nomor 800 yang benar-benar memiliki kata-kata di dalamnya, seperti 1-800-collect atau sesuatu itu mengesankan seperti itu sehingga orang tidak perlu mengingat apa C-O-L-L-E-C-T benar-benar mengembang. Jadi kita telah melihat ini heuristik di masa lalu. Dan memang, itulah yang alamat IP dan apa yang akan kita sebut nama host atau memenuhi syarat nama domain lakukan untuk kita. Hal ini memungkinkan kita untuk server address dengan kata-kata bukan angka. Jadi bagaimana kita benar-benar melihat konversi ini. Aku akan pergi ke depan dan membuka program. Aku hanya akan pergi ke depan dan membuka jendela terminal. Dan aku akan pergi ke depan dan menunjukkan apa server DNS tidak. Misalnya, jika saya ingin melihat apa alamat IP dari Facebook, Saya bisa mengetik di terminal meminta seperti this-- dan Anda dapat melakukan hal ini bahkan dalam alat Anda. Dan itulah facebook.com lookup. Dan saya melihat banyak hal. Tanggapan pertama ini adalah Harvard DNS server-- bahwa gambar yang saya sudah ditarik sana. -yang ini mengatakan bahwa IP Facebook alamat rupanya ini. Jadi biarkan aku pergi ke depan dan menyalin bahwa 173.252.120.16. Dan biarkan aku membuka Chrome pada Mac saya. Dan biarkan aku pergi ke http: // dan pasta alamat IP dan tekan Enter. Dan memang, saya menemukan diri saya di Facebook. Jadi entah bagaimana konversi itu, memang, terjadi. Dan jika saya melakukan ini lagi, mari kita melakukan nslookup, www.google.com. Aku kembali sejumlah besar tanggapan. Dan memang, ada cara yang berbeda bahwa perusahaan menerapkan ini. Kadang-kadang, mereka memberitahu dunia mereka memiliki satu alamat IP. Tapi itu satu alamat IP akan diselesaikan atau dipetakan ke beberapa server. Atau dalam kasus Google, mereka memberitahu dunia, kami memiliki sejumlah besar alamat IP. Laptop Anda dipersilahkan untuk berbicara hubungi salah satu dari server ini. Jadi semua yang telah terjadi di bawah kap mesin. Ketika Anda mengetikkan www.google.com Masukkan ke dalam browser Anda, browser Anda, dan pada gilirannya operasi, Mac OS, atau Windows, atau Linux Ubuntu, meminta server DNS terdekat, apa alamat sebenarnya dari server ini. Karena perangkat terakhir di foto ini, router, adalah salah satu yang tujuannya di hidup adalah untuk informasi rute, rute paket sehingga untuk berbicara, amplop informasi digital mengandung nol dan orang-orang dari pengirim ke tujuan, dari asal ke penerima. Dan jadi barang-rute router. Lalu mengapa ini semua sangat relevan? Nah, mari kita lihat bagaimana ini mungkin digunakan. Misalkan saya miliki di sini gambar Rob Boden. Jadi anggaplah bahwa saya ingin mengirim gambar ini dari Rob Boden Dan ke di belakang dari ruang kuliah. Jadi saya komputer seperti laptop saya, dan Dan beberapa komputer lain di internet. Dan saya ingin mengirim paket informasi dari saya kepadanya. Itu menimbulkan pertanyaan, bagaimana cara sebenarnya rute paket ini padanya. Nah, dalam istilah manusia, saya akan mengatakan, hey, dapat Anda lulus ini Dan? Dan kemudian, sekelompok Anda mungkin akan menyebarkannya kembali dan sebagainya bolak-balik sampai akhirnya membuat jalan ke Dan. Tapi itu tidak tepat kecil. Komputer mungkin perlu menjadi sedikit lebih metodis. Jadi mungkin, Dan memiliki alamat IP. Jadi apa yang benar-benar harus saya lakukan adalah saya harus mengambil, misalnya, amplop kosong seperti ini. Dan aku tidak tahu apa Alamat IP Dan adalah. Jadi aku hanya akan generalisasi sebagai IP Dan. Dan aku akan menempatkan ini dalam untuk lapangan amplop saya. Dan sementara itu, saya memiliki alamat IP. Tidak peduli hari apa itu. Jadi aku hanya akan mengatakan saya IP di sudut belakang sana. Dan kemudian, aku akan pergi ke depan dan menempatkan gambar ini di dalam amplop ini. Dan kemudian, masing-masing, mungkin, router di internet, telah dikonfigurasi oleh manusia umumnya atau kadang-kadang oleh algoritma otomatis untuk mengetahui bahwa jika alamat IP Dan itu dimulai dengan 1, harus pergi ke arah sana. Jika alamat IP Dan dimulai dengan 2, harus pergi ke arah sana. Mungkin 3 berjalan seperti itu. Mungkin 4 berjalan seperti itu. Dan itu agak terlalu. Sederhana tapi itu ide umum. Masing-masing routers-- ini dan mungkin ada ada sebanyak 30 antara aku dan Dan. --have beberapa jenis spreadsheet dalam memori mereka, tabel database, yang hanya mengatakan, Alamat IP yang terlihat seperti ini, pergi dengan cara ini. Sebuah alamat IP yang terlihat seperti ini, berjalan seperti itu. Dan itulah yang membuat keputusan yang cukup sederhana. Tapi ternyata bahwa router ini dilakukan sesuatu yang lebih dari itu, berpotensi. Mereka memungkinkan komputer untuk pengiriman jaminan, setidaknya dengan probabilitas tinggi. Jadi Anda mungkin juga telah mendengar, bahkan jika Anda belum pernah cukup peduli atau bertanya-tanya apa itu, Anda mungkin telah mendengar sesuatu dengan singkatan ini. Mari kita kembali ke sini untuk hanya sesaat dan menarik ini. TCP, protokol kontrol transmisi. Cara teknis lain hanya menggambarkan teknologi lain yang digunakan di internet. Jadi IP, protokol internet digunakan untuk menangani. Ini beberapa standar bahwa dunia datang dengan mengatakan bahwa, Anda menempatkan satu alamat IP di sini untuk Dan, dan satu alamat IP di sini untuk diri sendiri, dan kemudian Anda menaruh beberapa Informasi dalam amplop. Tapi TCP adalah teknologi lain, digunakan bersama dengan IP. Dan memang, jika Anda sudah pernah melihat akronim ini sebelumnya, Anda mungkin pernah melihat TCP slash IP yang hanya berarti orang cenderung menggunakan mereka bersama-sama. Nah, TCP adalah jenis keren karena memungkinkan Anda untuk meningkatkan probabilitas bahwa data sebenarnya akan mendapatkan dari saya kepada Dan. Bahkan, internet adalah tempat yang gila. Tidak ada jaminan bahwa jika saya mengirim data dengan cara ini bahwa itu akan pergi seperti itu lain kali di sekitar. Mungkin pergi bahwa cara atau seperti itu. Jarak terpendek antara dua poin belum tentu lurus atau garis yang sama. Selain itu, beberapa dari Anda orang bisa membuat kesalahan atau mendapatkan kewalahan dengan terlalu banyak amplop datang dengan cara Anda. Jadi Anda hanya akan menyerah dan benar-benar menjatuhkan beberapa di antaranya amplop di lantai. Dan dalam cara yang sama dapat data yang menjadi dijatuhkan di internet oleh router. Jadi untuk mengurangi peluang ini, aku akan untuk mengambil keselamatan kecilku gunting di sini dan memotong Rob ke dalam, katakanlah, empat potongan, empat segmen. Dan sekarang, aku akan pergi ke depan dan menempatkan satu bagian lebih informasi pada amplop ini. Aku akan mengatakan sesuatu seperti, 1 dari 4. Jadi sekarang, amplop terakhir saya, di Setidaknya pertama, terlihat seperti ini. Aku akan pergi ke depan dan menempatkan satu ini di sini. Dan demi waktu ini, aku akan label yang lain identik sebagai 2 dari 4, 3 dari 4, 4 dari 4. Sekali lagi, dengan alamat IP Dan dalam depannya dan dengan alamat IP saya di bagian belakang kiri, tapi aku tidak bisa mengirim mereka dulu. Karena ternyata bahwa di internet, server dapat melakukan beberapa hal. Pada kenyataannya, kita semua mungkin menggunakan web cukup sedikit, web di seluruh dunia, http: // apa pun. Tapi ada yang lain layanan di internet. Apa sajakah layanan lainnya, semacam dari pengguna, layanan yang ramah konsumen yang muncul di pikiran selain program browser web-jenis? AUDIENCE: Email. DAVID Malan: Email. OK. Baik. Apa satu lagi? AUDIENCE: Chat. DAVID Malan: Jadi chatting, apakah itu Skype, atau Gchat, atau sesuatu seperti itu. AUDIENCE: Storage. DAVID Malan: Jadi semacam layanan penyimpanan, tentu. Sesuatu seperti Dropbox, atau kotak, atau sejenisnya. Jadi ada yang berbeda layanan di internet. Dan ternyata Dan, jika dia memang komputer, tidak harus didedikasikan satu hal dalam hidup. Dia benar-benar dapat melakukan beberapa hal. Dan memang, ia bisa menjadi server email. Dia bisa menjadi server web. Dia bisa menjadi server obrolan. Tapi itu tampaknya menunjukkan bahwa Dan perlu tahu terlebih dahulu apa saja isi pesan. Ini adalah halaman web saya mengirim dia? Apakah email saya mengirim dia? Apakah itu sekejap pesan saya mengirim dia? Jadi kita perlu satu bagian lebih dari informasi pada amplop ini sehingga Dan, ketika ia menerima amplop ini, tahu program apa yang digunakan untuk menampilkannya. Apakah browser? Apakah Google? Apakah Skype? Atau itu Outlook atau beberapa program lain sama sekali? Maka, dengan TCP datang hanya sebuah konvensi manusia. Dunia memutuskan beberapa tahun lalu mengasosiasikan bilangan bulat unik dengan layanan yang paling populer. Seseorang disebut File Transfer Protocol, FTP, meskipun itu sedikit tanggal sekarang. Namun identifier unik adalah 21. SMTP untuk email keluar, yang unik identifier adalah 25 hanya karena. DNS, hal yang kita bicarakan sebelumnya, menggunakan nomor 53 untuk permintaan nya. Seperti apa adalah IP alamat google.com? Dan sekarang, yang lebih akrab Anda mungkin punya tempat di beberapa titik melihat nomor 80 dan mungkin 443. Mereka adalah unik pengidentifikasi untuk HTTP, yang merupakan bahasa kita akan segera melihat digunakan untuk lalu lintas web antara browser dan server. Dan 443 adalah untuk versi aman dari padanya. Jadi satu detail terakhir aku akan memakai amplop saya adalah bahwa aku tidak akan mengirimkan ini hanya untuk IP Dan. Aku akan mengirimkannya untuk mengatakan, : 80, jika apa yang saya sedang mencoba untuk mengirim dia adalah halaman web, halaman web yang berisi gambar Rob Boden ini. Jadi aku akan melakukan hal yang sama hal pada ini amplop lainnya. Dan kemudian akhirnya, aku akan menjatuhkan ini off dengan router terdekat, mengakui bahwa router mungkin tidak selalu mengambil jalan yang sama setiap kali. Bahkan, saya mungkin memiliki paket pertama akan cara ini. Paket kedua mungkin pergi ke arah sana. Ketiga packet-- mulai routing. --might pergi ke sini. Dan di theory-- tidak bisa menyimpannya. Secara teori, semua empat dari paket ini harus akhirnya rute jalan mereka, Namun secara efisien atau tidak efisien, semua jalan ke belakang. Pada saat itu, Dan, setelah penerimaan, dapat berkumpul kembali mereka berdasarkan on-- lucunya, kita semua tahu apa hasil di sini akan menjadi. Dan akan mendapatkan gambaran dari Rob. Tapi mari kita lihat bagaimana ini bekerja keluar. Nah, sebaliknya, Dan akan mendapatkan bagian dari gambar Rob. Sangat bagus. Semua orang yang berpartisipasi hari ini. Baik. Sehingga Dan mulai menerima ini paket, mari kita mengajukan satu pertanyaan. Bagaimana jika salah satu dari Anda akan malas, kelebihan beban, berbahaya, atau hanya bertenaga off, dan satu atau lebih dari paket tidak membuatnya ke Dan? Bagaimana Dan akan tahu dia tidak menerima salah satu segmen dari empat Aku mengirimnya? Hanya intuitif, apa yang bisa kita lakukan? Ya? AUDIENCE: [tak terdengar]. DAVID Malan: Tepat. Karena aku sudah unik mencatat mereka, dan Aku sudah ditentukan berapa banyak segmen di sana seharusnya, ia dapat menyimpulkan dari 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 dukungan dan memahami TCP, yang mereka lakukan, Dokumentasi TCP dasarnya mengatakan bahwa Dan harus mengirim saya pesan kembali mengatakan, hei, David, Aku hilang paket nomor 1 dari 4, atau 3 dari 4, mana itu. Dan kemudian, pekerjaan saya adalah untuk mengambil gambar lain dari Rob, yang kami memiliki tambahan dari untuk hari ini jika Anda ingin mengambil satu dengan Anda, dan kemudian saya bisa mengirim ulang segmen itu Rob sampai ke belakang. Jadi sederhana seperti mekanisme ini adalah, bahwa adalah apa yang terjadi hampir setiap saat Anda melakukan sesuatu di internet, terutama untuk ini paling populer layanan. Ada protokol lain, teknologi lain selain TCP yang bekerja sedikit berbeda. Tapi begitu banyak layanan kami biasanya gunakan benar-benar bergantung pada protokol ini. Jadi Dan, apakah Anda mendapatkan gambar penuh kembali ke sana? Ya. Kami tidak memasang kembali Rob di belakang. Terima kasih banyak kepada router. Misalkan, saya benar-benar ingin lihat router antara aku dan MIT, seperti kalian yang router antara aku dan Dan. Nah, daripada nslookup untuk nama server lookup, Saya malah bisa mengetik jejak rute, yang sebenarnya akan melakukan apa yang dikatakannya. Dan aku akan melakukan dan Modus tenang dengan dasbor 1. Ini adalah argumen baris perintah yang hanya mengatakan, coba ini beberapa kali sekali, bukan. Dan sekarang, aku akan mengetik www.mit.edu. Sekarang, output adalah cukup cepat dan samar. Tapi apa yang rapi tentang ini adalah bahwa setiap baris ini dasarnya merupakan mahasiswa di penonton ini jika Anda jalan antara aku dan MIT. Apa yang Anda lihat di sini, pertama, adalah nama domain yang saya ketik, atau domain yang memenuhi syarat nama seperti itu disebut dengan benar. Dan ini ternyata adalah Alamat IP dari www.mit.edu. Komputer saya tahu bahwa bagi saya. Ini di sini adalah janji bahwa kita hanya akan mencoba untuk mencapai MIT dalam 30 hop. Tidak lebih baik tidak lebih dari 30 siswa antara aku dan Dan. Dan sekarang, masing-masing baris ini mewakili harfiah router antara aku dan Dan, harfiah salah satu dari kalian. Dan yang satu ini tampaknya tidak memiliki nama, nama domain. Itu hanya memiliki IP. Dan hanya butuh 0,662 milidetik untuk mendapatkan dari saya ke router pertama. Yang berikutnya adalah tidak yang jauh lebih jauh. Hanya butuh satu milidetik untuk sampai ke sana. Dan sekarang, untungnya, hal mendapatkan sedikit lebih user-friendly dengan nama-nama yang samar tapi sedikit lebih jitu. Ini rupanya adalah sebuah router di inti dari jaringan Harvard ditempatkan, hanya karena orang telah mengatakan kepada kami ini, di Pusat Sains, SC. Dan GW hanya notasi singkat untuk Gateway yang merupakan sinonim untuk router. Jadi ini adalah beberapa sistem cara superscript administrator penamaan salah satu server di Pusat Sains. Sementara itu, server yang tampaknya dihubungkan dengan beberapa jenis kabel ke router lain yang dijuluki gateway perbatasan satu dasbor sesuatu, apa pun berarti angka-angka. Dan kemudian, tampaknya, Harvard memiliki sambungan itu milidetik lain pergi ke sesuatu disebut persimpangan utara yang merupakan titik peering umum antara tempat-tempat besar seperti Harvard di mana banyak kabel masuk dan memungkinkan interkoneksi entitas yang berbeda. Langkah enam, sayangnya, tidak memiliki nama yang valid. Dan langkah tujuh mulai menarik. Aku tidak tahu apa yang sebagian besar ini berarti. Tapi NY tidak melompat ke arahku. Dan apa yang mungkin menandakan? Ini bahkan tidak teknis. Hanya New York. Jadi memang, apa yang manusia biasa konvensi tidak dijamin tapi konvensi umum adalah untuk nama router oleh alam kota atau bandara kode yang mereka terdekat. Jadi dengan beberapa kemungkinan, ini nomor router tujuh mungkin, memang, di New York. Dan ini tampaknya menguatkan bahwa asumsi karena itu enam milidetik bukan hanya satu atau lebih untuk sesuatu di sini di kampus. Tapi sekarang memperhitungkan bahwa, tepat di Megabus atau entah apa lagi, mungkin butuh empat, lima, enam jam untuk mendapatkan manusia dari sini ke New York. Untuk mendapatkan bagian dari data, hanya butuh enam milidetik untuk mendapatkan paket dari saya ke Dan jika ia adalah semua jalan di New York. Lalu akhirnya, ini rupanya adalah nama domain sebenarnya untuk www.mit.edu. Mereka telah rupanya outsourcing server web mereka untuk sebuah perusahaan bernama Akamai yang berarti beberapa perusahaan lain menjalankan server mereka. Dan itulah sebabnya kita melihat bahwa hal yang aneh di sana. Nah, mari kita lakukan ini sekali lagi. Mari kita pergi ke depan dan melakukan jejak rute ke teman kita Profesor Nick Parlante di Stanford yang memiliki server yang disebut nifty.stanfor.edu. Enter. Dan sekarang, kita akan melihat mungkin jalan yang sedikit lebih lama yang berjalan melalui kota yang lebih sedikit. Jadi di sini ini tak bernama Server Harvard di sini. Kami berada di inti dari Harvard, gateway perbatasan Harvard, persimpangan utara, dimanapun ini. Dan sekarang, itu mendapatkan sedikit lebih menarik. Saya menduga router yang nomor delapan adalah di kota apa? AUDIENCE: [interposing SUARA] DAVID Malan: Chicago mungkin, berdasarkan ini, berdasarkan hal ini di sini. Dan sekarang kami memiliki Salt Lake City mungkin, mungkin Los Angeles di sini, dan kemudian LAX, yep, ini mungkin LA bagian bawahnya. Sampai akhirnya, ia pergi dari California selatan sepanjang jalan sampai ke California Utara ke tempat Stanford di Palo Alto. Jadi cukup keren. Dan mari kita satu langkah lebih jauh. Ini rupanya akan membawa Anda 82 milidetik untuk mengirim pesan ke Dan jika Anda di California bukan New York. Mari kita lakukan sesuatu seperti jejak rute, satu mencoba untuk www.cnn.co.jp untuk Versi Jepang dari situs CNN. Dan sekarang, kami masih Boston tampaknya saat ini. Beberapa server enam dan delapan tidak merespons karena mereka menjadi sedikit pribadi. Tapi akhirnya, tampaknya ada sesuatu yang menarik terjadi di antara, katakanlah, langkah tujuh dan sembilan. Apa mungkin antara tujuh dan sembilan, dan tentu saja antara tujuh dan langkah 17? Ada lompatan besar dalam jumlah waktu itu mengambil data untuk pergi dari satu hop ini, salah satu router yang lain. Jadi kemungkinan besar, di suatu tempat di di sini, mungkin ada, terutama di sini, mungkin ada tubuh yang sangat besar air yang memiliki beberapa trans Pasifik atau trans Kabel Atlantic yang benar-benar membutuhkan bahkan lebih banyak waktu untuk data yang mendapatkan dari satu titik ke titik lain. Tapi sekali lagi, bayangkan jam itu akan mengambil terbang ke Jepang. Di sini, di sekitar 200 milidetik, booming, pesan Anda benar-benar ada. Sehingga Anda dapat bermain-main dengan ini pada alat atau bahkan di Windows atau Mac OS dengan perintah yang sedikit berbeda. Kadang-kadang, Anda akan mendapatkan bintang-bintang ini, seperti pada baris enam dan delapan, yang hanya berarti router dikonfigurasi tidak untuk memberikan jawaban demi privasi ini. Tapi pada umumnya, teknik ini akan, pada kenyataannya, bekerja. Jadi ternyata terlalu ada lainnya Informasi berair bersembunyi di alat yang Anda ambil untuk diberikan setiap hari. Jadi misalnya, jika Anda menerima email, terus terang karena beberapa dari Anda mungkin baru saja, dipertanyakan asal-usul, jika Anda sudah pernah melihat antarmuka Gmail sebelumnya, apakah itu untuk antarmuka kuliah atau salah satu pribadi anda, Anda mungkin melihat Anda inbox tampak seperti ini. Dan pada kenyataannya, ini adalah email Aku mengirim, malan@harvard.edu, untuk jharvard@cs50.harvard.edu pagi ini hanya jadi aku bisa mengambil screenshot. Tapi ternyata, semua kali ini di Gmail, ada yang segitiga kecil menuju bagian kanan ada di sebelah puncak Harvard bahwa jika Anda klik, Anda dapat mengklik Show Original. Dan jika Anda melakukannya, Anda benar-benar akan melihat sekelompok informasi yang sangat esoteris seperti cap waktu, dan IP alamat, dan nama domain. Tapi Anda akan melihat, singkatnya, header yang selama ini memiliki terpukul dalam setiap email yang Anda kirim dan terima. Dan itu header ini bahwa orang-orang dapat gunakan, ilmuwan komputer atau sebaliknya, untuk benar-benar menyimpulkan dengan probabilitas beberapa tempat dan dari siapa email benar-benar datang. Bahkan, kita akan bicara di minggu kemudian tentang bagaimana email itu sendiri dapat dihasilkan pemrograman yang adalah hal yang sangat baik untuk sebuah situs web yang ingin mengirim email ke pengguna. Tapi kita akan lihat, juga, betapa sepele itu adalah untuk menempa email dari seseorang kepada orang lain, kecuali jika Anda benar-benar tahu bagaimana memverifikasi header. Dan bahkan yang kehilangan sebuah proposisi hari ini. Jadi dengan mengatakan bahwa, mari kita pergi satu lapisan atas. Kami mulai dengan IP yang alamat paket untuk kita, memberi mereka alamat unik. TCP, yang, singkatnya, menjamin pengiriman atau setidaknya meningkatkan probabilitas tersebut 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 dari protokol lain. Semua hal ini adalah protokol, konvensi komputer yang menentukan bagaimana dua komputer berbicara satu sama lain. HTTP, akhirnya hari ini, adalah hypertext transfer protocol. Dan ini adalah protokol bahwa web browser gunakan ketika berbicara dengan server web. Jadi, ketika Anda menarik sebuah browser seperti Chrome, atau IE, atau Firefox, atau Safari, atau apa pun, dan Anda ketik sesuatu seperti facebook.com dan tekan Enter, tidak hanya melakukan komputer anda terlebih dahulu menerjemahkan facebook.com menjadi apa? Sebuah alamat IP. Kemudian converts-- itu kemudian mengirimkan pesan ke alamat IP mengatakan, memberikan homepage hari ini atau memberikan saya layar login Facebook. Atau jika Anda sudah login, berikan saya tampilan default timeline saya. Jadi itulah yang HTTP kata. Dan lebih bahasa sehari-hari, jika saya web server dan Anda are-- siapa namamu, lagi? AUDIENCE: Margot. DAVID Malan: Margot adalah web Server, dan aku web browser, dan aku hanya ingin mengambil saya waktu dari Margot, margot.com, Aku akan mengatakan, halo, aku David. AUDIENCE: Hi, aku Margot. DAVID Malan: Dan Anda kemudian akan merespon dengan informasi tambahan kepada saya. Jadi kita memiliki manusia bodoh ini konvensi untuk instance-- terima kasih. --Dari berjabat tangan satu sama lain. Dan komputer memiliki ide yang sama di mana klien, seperti browser, meminta server untuk melakukan sesuatu atas nama nya. Dan inilah gambar, misalnya. Di sebelah kiri adalah laptop komputer, Desktop, apa pun, atau bahkan telepon. Dan di sebelah kanan adalah sangat tanggal lihat server. Mereka biasanya terlihat lebih kecil dan lebih seksi hari ini. Tapi intinya adalah hanya bahwa ada semacam komunikasi antara klien dan server. Dan klien dalam arti seseorang di sebuah restoran dan pelayan atau pelayan, ide yang sama dengan komputer. Klien dan server, satu meminta informasi, seseorang merespons dengan informasi. Sekarang, bagaimana melakukan itu Informasi datang kembali? Nah, pertimbangkan ini. Dapatkan adalah semacam default way-- dan itu istilah super sederhana. -yang hanya menentukan bagaimana browser mendapat informasi dari server. Dengan kata lain, bukan hanya menyia-nyiakan-ily mengulurkan tangan saya ke Margot, jika saya benar-benar adalah browser, saya akan hal-hal dalam amplop, seperti yang saya lakukan dengan foto Rob sebelumnya, pesan tekstual yang benar-benar mengatakan sesuatu seperti ini, get / http / 1.1hostwww.google.com atau margot.com atau apa pun Nama server mungkin akan terjadi. Dan kemudian, dot dot dot, beberapa hal lain. Tapi benar-benar, di dalam dari amplop akan menjadi tekstual cukup sederhana pesan seperti itu. Itu saat diterima, Margot akan membuka, membaca konten, dan tanggapan yang sesuai. Sekarang, itu sedikit non-jelas dengan contoh ini. Tapi mendapatkan /, apa slash mungkin maksud, hanya berdasar pada keakraban Anda dengan browsing web dalam kehidupan sehari-hari? Apa slash? AUDIENCE: [tak terdengar]. DAVID Malan: Sebuah urutan escape. Bukan ide yang buruk tetapi umumnya escape sequence pergi ke arah lain. Itu akan menjadi backslash biasanya. Tapi tidak pikiran buruk. Ya? Sebuah pointer. Juga pikiran yang baik tapi bahkan lebih sederhana dari itu. Direktori home. Akar dari hard drive, sehingga untuk berbicara. Sebagian besar dari kita tidak mengetik ini. Tapi secara teknis, jika Anda ingin menjadi super tepat hari ini, Anda akan pergi ke sesuatu seperti http://www.facebook.com/. Sekarang, saya mengatakan sebagian besar dari kita tidak akan repot-repot mengetik slash. Dan terus terang, sebagian besar browser, Chrome termasuk, bahkan tidak repot-repot menunjukkan kami slash hari ini hanya karena mereka ingin sederhana dan ringkas. Tapi slash hanya berarti pergi untuk www.facebook.com dan mendapatkan slash, akar dari hard drive, halaman default di facebook.com. Menggunakan protokol apa? Nah, dengan menggunakan versi 1.1 dari Hal ini dikenal sebagai HTTP. Server, atau Margot-- dan omong-omong, lakukan Anda keberatan bahwa saya menggunakan Anda dalam ini? OK. Jadi kita baik sekarang. Jadi Margot respon sekarang dengan amplop sendiri, yang di dalamnya adalah pesan yang sama tekstual. Baris pertama yang, yep, saya berbicara HTTP versi 1.1. 200 adalah kode status yang hanya berarti semua OK. Saya memiliki halaman yang sedang Anda cari. Sementara itu, Content-Type: text / html, ini cara semi-rahasia Margot mengatakan, apa yang Anda minta adalah halaman web. Dan itu jenis, sehingga untuk speak-- hampir seperti rasa variabel, tapi ini adalah tingkat yang lebih tinggi sekarang. Jenis datanya adalah teks namun secara khusus HTML. Bahasa yang kita akan segera melihat. Dan kemudian, ada beberapa hal lain. Jadi hal-hal lain secara harfiah apa Facebook menanggapi dengan. Jadi mari kita lihat ini juga. Biarkan aku pergi ke depan dan membuka Chrome di laptop saya yang dapat Anda lakukan pada Anda komputer sendiri juga. Dan aku akan pergi ke depan dan membuka www.facebook.com. Enter. Dan saya mendapatkan layar akrab ini di sini. Tapi sekarang, aku akan melakukan sesuatu yang lain. Aku akan pergi ke depan dan klik View, Developer. Dan pergi ke Pengembang Tools, yang Anda harus memiliki dalam Chrome di komputer Anda, setidaknya dalam alat Anda. Aku akan menggulir ini hal di sini, dan Anda akan melihat seluruh bunch teks samar di sini. Ternyata bahwa apa Margot masukkan ke dalam itu amplop dalam menanggapi saya adalah bahasa yang disebut HTML, HyperText Markup Language. Ini bukan program yang bahasa karena Anda tidak bisa, itu tidak memiliki loop, dan kondisi, dan fungsi, dan hal-hal seperti itu. Ini adalah bahasa markup. Dalam hal itu, ia memiliki sintaks khusus disebut tag dan atribut yang memberitahu browser apa yang akan ditampilkan pada layar dan bagaimana menampilkan itu. Harus berpusat? Apakah harus berani berwajah? Merah, hijau, biru? Ini adalah bahasa markup. Dalam hal itu, ia memberitahu browser apa yang harus ditampilkan di layar. Jadi ini adalah, secara harfiah, semua HTML dan lebih bahwa server Facebook adalah menyemburkan dan Chrome, dan IE, dan Firefox memiliki telah dirancang oleh mereka masing-masing penulis untuk memahami. Dan pada kenyataannya, itu adalah sedikit rancu dari itu. Jika Anda, sebagai gantinya, pergi ke View, Developer, View Source, ini sebenarnya apa Facebook out menempatkan. Semacam nol selama lima untuk gaya, benar, jika kita menyimpulkan bahwa ini mungkin bukan yang terbaik. Tapi terus terang, mereka bisa lolos dengan karena jika Anda melayani sampai miliaran halaman web per hari, Anda benar-benar tidak ingin membuang-buang waktu, dan byte, dan uang pada akhirnya dalam mentransmisikan hal-hal seperti baris baru karakter, dan spasi, dan tab karena Anda menghabiskan bandwidth tidak perlu dengan ISP Anda. Jadi memang, ini dimaksudkan untuk minified dengan cara ini. Tapi apa Chrome adalah melakukan bagi kita adalah, itu mengambil HTML ini, yang benar-benar terlihat seperti berantakan dan tidak dapat dipahami manusia, dan itu hanya format itu. Hal ini cukup mencetaknya sehingga kita bisa membungkus pikiran kita di sekitarnya sedikit lebih mudah. Tapi yang lebih menarik adalah ini. Jika saya sekarang klik di Chrome, tidak elemen tetapi jaringan, Aku akan melihat sedikit Layar logging itu akan menunjukkan semua dari permintaan HTTP yang benar-benar akan kembali dan balik antara aku dan Facebook atau me dan Margot jika saya melakukan lebih dari satu permintaan. Jadi aku akan pergi ke depan dan klik ikon ulang di sini di Chrome. Dan sekarang, sejumlah besar hal terbang melewati di bagian bawah. Aku akan gulir kembali ke bagian paling atas. Dan sekarang, perhatikan ini, pertama meminta browser saya dibuat adalah untuk www.facebook.com. Ini menggunakan get Mekanisme yang hanya berarti itu berbicara bahasa tekstual bahwa kita melihat contoh beberapa saat yang lalu. Dan selain itu, ternyata bahwa respon bahwa Facebook memberi saya adalah 200 OK, yang berarti saya menemukan halaman web yang bersangkutan. Jika saya klik pada baris ini, saya benar-benar bisa melihat orang-header sedikit lebih jelas. Ini akan lebih masuk akal sebelum lama. Tetapi perhatikan bahwa browser saya mengirimkan seluruh banyak informasi seperti tuan rumah, dan metode, dan cookie. Kami akan kembali kepada mereka sebelum lama. Dan Anda akhirnya akan mengerti apa cookie sebenarnya dan bagaimana Anda akan segera mengirim mereka. Dan Anda dapat melihat apa Facebook mengirimkan kembali, termasuk jenis konten teks HTML, saat ini waktu tanggal, privasi kebijakan, atau kekurangan itu, dan kemudian, akhirnya, sejumlah cookie yang sedang diatur pada komputer Anda juga. Tapi kita akan menggoda mereka terpisah sebelum lama. Tapi singkatnya, setiap kali Anda mengunjungi sebuah halaman web, sekarang selama bertahun-tahun, Anda telah mengirim pesan ke yang saya dikirim dalam amplop ke Margot dan Dan. Dan Anda telah mendapatkan kembali tanggapan seperti ini dari Facebook. Tapi selain itu, menebak apa yang sedang diungkapkan ke Facebook, dan Google, dan orang lain setiap kali Anda mengunjungi sebuah halaman web? Apa yang ada di luar setiap Amplop komputer Anda telah mengirim? Alamat IP Anda, kan? Mungkin bukan nama Anda per se, tetapi alamat IP Anda. Dan adil, mari kita menghubungkan titik-titik kemudian, jika Anda menggunakan layanan seperti web, atau BitTorrent, dan hidup, dan Anda telah terdaftar komputer di tempat seperti Harvard, seseorang di suatu tempat tahu bahwa John Alamat Harvard IP ini, dot ini, dot ini, dot ini. Dan memang, log dapat ia terus baik pada kampus seperti ini, pada jaringan Comcast, di Verizon, atau terus terang, di NSA seperti yang kita baru saja belajar, yang log segala sesuatu cukup banyak yang Anda lakukan di internet. Dan kami akan kembali ke ini kelas masa depan pada implikasi dari ini keputusan desain dan keamanan. Tapi kebenarannya adalah, Anda benar-benar tidak memiliki semua itu banyak privasi. Setiap kali Anda sudah mengunjungi di mana saja di web, Anda telah menunjukkan tangan Anda dan mengungkapkan setidaknya alamat IP Anda. Catatan begitu menakutkan samping, apa yang bisa kita lakukan untuk hal-hal seperti kucing menanamkan dalam halaman web? Jadi kita memiliki banyak tanggapan yang mungkin akan kembali dari server. Dan kita tidak akan melihat semua hari ini. Tapi 200 baik. Dan Anda mungkin tidak melihat semua ini sebagai manusia sebelumnya. Tapi Anda mungkin pernah melihat setidaknya salah satu dari ini. Yang satu ini mungkin tampak akrab? AUDIENCE: 404 DAVID Malan: Jadi 404. File tidak ditemukan. Dan memang, Anda akan melihat pemrograman ini sendiri. 404 hanya berarti file yang Anda minta, slash atau garis miring sesuatu, cukup tidak ada. Dan server web biasanya merespon dengan 404 sebagai hasilnya Sementara itu, kita akan segera melihat bahwa isi pesan yang adalah bahasa ini dikenal sebagai HTML. Dan ini adalah super potongan sederhana dari HTML yang tidak apa-apa selain menampilkan hello world pada layar. Memang, Anda lihat di bagian atas ini sesuatu yang disebut jenis dokumen deklarasi yang hanya mengatakan, hei, dunia. File ini berisi HTML. Dan kemudian, bit berikutnya dari HTML bahwa Anda akan menulis, ia memiliki braket terbuka, dan kemudian HTML kata, maka braket tertutup, dan kemudian kepala terbuka, dan braket dekat. Jadi singkatnya, mari kita benar-benar melakukan hal ini lebih mekanis. Biarkan aku pergi ke dalam alat saya, tetapi Anda dapat melakukan hal ini di mana saja bahwa Anda memiliki editor teks untuk. Aku akan pergi ke depan dan menyimpan file bernama hello.html. Aku akan meletakkannya di desktop saya ke menjaga hal-hal super sederhana sekarang. Dan aku akan melakukan apa saja yang saya lihat. Jadi jenis doc HTML, terbuka braket HTML. Dan sekarang, pemberitahuan, aku akan melakukan sebaliknya Terlebih Dahulu. Dan dengan sebaliknya, maksudku tag yang sama, sehingga untuk berbicara, tapi itu dimulai dengan garis miring. Dan kemudian, di sini, Aku akan mengatakan, kepala, karena ternyata bahwa setiap Halaman web memiliki kepala yang disebut yang adalah hal yang terjadi dalam judul bar, di bagian paling atas halaman. Dalam judul hanya akan menjadi Halo sini. Dan sekarang, aku akan memiliki tubuh ke halaman web ini. Jadi setiap halaman web memiliki kedua kepala bagian atas dan tubuh yang merupakan keberanian halaman. Dan di sini, aku hanya akan mengatakan sesuatu seperti hello world. Dan aku akan menyimpan file ini. Jika saya sekarang meminimalkan gedit, lihat, ada file kecil pada desktop saya disebut hello.html. Sekarang, itu bukan pada server Namun, per se, Memang, hanya pada desktop pribadi saya sendiri di sini. Tapi kalau aku membuka Chrome dan tekan Control O-- ada kucing yang bersangkutan. --dan aku pergi ke desktop saya. Dan aku membuka hello.html, di sana, di Bahkan, adalah halaman web super sederhana saya. Tubuh halaman saya dan jendela putih ini di sini adalah tubuh dengan hello world. Dan judul di kepala Halaman ini di tab sana. Dan kita akan melihat segera bahwa itu super sederhana untuk membuka halaman lain juga. Misalnya, aku akan pergi ke beberapa kode distribusi untuk minggu ini, sumber tujuh, dan aku akan untuk membuka tidak JPEG yang orang ini ada di sini. Tapi aku akan membuka image.html, yang akhirnya tampak seperti ini. Tapi biarkan aku sekarang membuka ini dalam gedit, dan pergi ke Dropbox sumber tujuh, dan image.html. Sebagian besar ini hanya komentar seperti yang kita akan segera melihat. Tetapi jika saya ingin menempatkan Grumpy Cat dalam halaman web ini, itu sudah cukup untuk menempatkan braket lain yang terbuka, dan kemudian gambar kata kunci atau img untuk jangka pendek, dan kemudian alternatif teks untuk alasan aksesibilitas jika seseorang memiliki layar reader atau sesuatu seperti itu. Sumber yang, apa nama file, cat.jpeg. Dan kemudian, karena ini tag ini sedikit istimewa, kami menempatkan garis miring, seperti kita akan melihat, dalam tag. Tapi hasil akhirnya adalah web Halaman yang terlihat seperti ini. Jadi singkatnya, apa yang kita akan menjadi dilakukan dari waktu ke waktu menggunakan web dan membuat halaman web untuk akhirnya menjadi wadah tidak hanya untuk hal-hal konyol seperti gambar, dan link, dan tabel, dan bullet, dan sejenisnya, tetapi juga untuk memberikan diri kita sendiri antarmuka pengguna grafis, GUI, tidak seperti apa yang kita lakukan kita Breakout. Tetapi dalam lingkungan ini, kami akan mulai menggunakan bahasa seperti PHP, dan JavaScript, database bahasa yang disebut SQL, sisi klien bahasa scripting disebut JavaScript untuk benar-benar membuat semua interface yang lebih dinamis namun dalam banyak konteks jauh lebih akrab. Tapi sebelum itu, mari kita menyimpulkan hari ini dengan melihat, seperti yang dijanjikan, apa yang sebenarnya terjadi bawah kap dengan internet itu sendiri. Menetapkan untuk hari ini bahwa internet dapat digunakan untuk mentransfer hal-hal seperti halaman web melalui HTTP banyak seperti saya menjabat tangan Margot sebelumnya. Tapi ada begitu banyak lainnya layanan yang menggunakan TCP dan IP yang kita ambil untuk diberikan bahwa pekerjaan seperti yang kita akan lihat di sini dalam film ini yang akan membawa kita sampai akhir hari ini. [VIDEO PLAYBACK] -Untuk Pertama kalinya dalam sejarah, orang-orang dan mesin adalah bekerja bersama-sama, mewujudkan mimpi. Sebuah kekuatan pemersatu yang tahu tidak ada batas-batas geografis. Tanpa memperhatikan ras, keyakinan, atau warna. Sebuah era baru di mana komunikasi benar-benar membawa orang bersama-sama. Ini adalah The Dawn of the Net. Ingin tahu cara kerjanya? Klik di sini untuk memulai Anda Perjalanan ke net. Sekarang, apa yang terjadi ketika Anda mengklik pada link tersebut? Anda memulai arus informasi. Informasi ini bergerak ke bawah ke ruang surat pribadi Anda ketika Mr. IP paket itu, label itu, dan mengirimkannya dalam perjalanan. Setiap paket ukuran terbatas. Ruang surat harus memutuskan bagaimana membagi informasi dan bagaimana paket itu. Sekarang, paket membutuhkan label berisi informasi penting, seperti pengirim alamat, penerima alamat, dan jenis paket itu. Karena paket khusus ini akan keluar ke internet, itu juga mendapatkan alamat untuk server proxy, yang memiliki fungsi khusus seperti yang akan kita lihat nanti. Paket ini sekarang diluncurkan ke jaringan area lokal atau LAN. Jaringan ini digunakan untuk menghubungkan semua komputer lokal, router printer, dan lain-lain untuk pertukaran informasi dalam fisik dinding bangunan. LAN adalah cukup terkendali tempat dan, sayangnya, kecelakaan bisa terjadi. Jalan raya dari LAN adalah dikemas dengan semua jenis informasi. Ini adalah paket IP, Novell paket, paket Apple Talk. Mereka akan melawan lalu lintas seperti biasa. Router lokal membaca alamat dan, jika perlu, mengangkat paket ke jaringan lain. Ah, router. Sebuah simbol kontrol dalam dunia yang tampaknya tidak teratur. Itu dia, sistematis, tidak peduli, metodis, konservatif, dan kadang-kadang tidak cukup sampai dengan kecepatan. Tapi setidaknya, ia adalah membalas untuk sebagian besar. Seperti paket meninggalkan router, mereka membuat jalan mereka ke intranet perusahaan dan kepala untuk switch router. Sedikit lebih efisien daripada router, switch router bermain cepat dan lepas dengan paket IP, cekatan routing mereka sepanjang jalan. Sebuah digital Pinball Wisaya jika Anda mau. -Di Sini kita pergi. Di sinilah satu sama lain. Dan itu lain. Lihat ini, Bu. Berikut ini adalah berjalan. Whoops. Di belakang. Hei. Di sana. Di sana. Ke kiri. Ke kanan. Ke kiri. Ke kanan. Kau benar. Di sini ia pergi. Dia menembak. Dia mencetak. Itu akan. Hei, tunggu. Hei, hati-hati. Di sinilah satu sama lain. Oh, di sini kita pergi. Paket -Seperti tiba di tujuan mereka, mereka dijemput oleh antarmuka jaringan, siap untuk dikirim ke tingkat berikutnya, dalam hal ini, proxy. Proxy digunakan oleh banyak perusahaan sebagai semacam orang tengah dalam rangka untuk mengurangi beban pada koneksi internet mereka dan untuk alasan keamanan juga. Seperti yang Anda lihat, paket semua dari berbagai ukuran, tergantung pada konten mereka. Proxy membuka paket dan mencari alamat web atau URL. Tergantung pada apakah alamat diterima, paket yang dikirim ke internet. Namun demikian, beberapa alamat yang tidak bertemu dengan persetujuan proxy, yang mengatakan, pedoman perusahaan atau manajemen. Ini sewenang ditangani. Kami akan memiliki semua itu. Bagi mereka yang membuatnya, itu di jalan lagi. Berikutnya, firewall. Firewall perusahaan melayani dua tujuan. Ini mencegah beberapa agak hal-hal buruk di internet dari datang ke intranet. Dan juga dapat mencegah informasi perusahaan yang sensitif dari yang dikirim keluar ke internet. Setelah melalui firewall, router mengambil paket dan menempatkannya ke sebuah jauh lebih sempit jalan atau bandwidth, seperti yang kita katakan. Jelas, baris tidak cukup luas untuk membawa mereka semua. Sekarang, Anda mungkin bertanya-tanya, apa terjadi pada semua paket tersebut yang tidak membuatnya sepanjang jalan. Nah, ketika Mr IP tidak menerima pengakuan bahwa paket telah diterima pada waktunya, ia hanya mengirimkan paket pengganti. Kami sekarang siap untuk memasuki dunia internet, laba-laba web dari jaringan interkoneksi yang span seluruh dunia kami. Di sini, router dan switch membangun hubungan antara jaringan. Sekarang, internet adalah yang sama sekali lingkungan yang berbeda daripada Anda akan menemukan dalam dinding pelindung dari LAN Anda. Di sini, itu adalah liar Barat, banyak ruang, banyak kesempatan, banyak hal untuk mengeksplorasi, dan tempat-tempat untuk pergi. Berkat sedikit kontrol dan regulasi, ide-ide baru menemukan tanah subur untuk mendorong amplop kemungkinan mereka. Tetapi karena kebebasan ini, bahaya tertentu juga mengintai. Anda tidak akan pernah tahu kapan Anda memenuhi ping kematian ditakuti, sebuah versi khusus dari permintaan yang normal ping yang beberapa idiot terpikir untuk mengacaukan curiga host. Jalur paket kami mengambil mungkin melalui satelit, saluran telepon, nirkabel, atau bahkan kabel melintasi samudra. Mereka tidak selalu mengambil tercepat atau rute terpendek mungkin, tetapi mereka akan sampai di sana, akhirnya. Mungkin itu sebabnya kadang-kadang disebut di seluruh dunia menunggu. Tapi ketika semuanya bekerja dengan lancar, Anda bisa menghindari dunia lima kali selama di drop dari topi, harfiah, dan semua untuk biaya panggilan lokal atau kurang. Menjelang akhir tujuan kami, kita akan menemukan firewall lain. Tergantung pada Anda perspektif sebagai paket data, firewall bisa menjadi benteng yang keamanan atau ditakuti musuh. Itu semua tergantung pada sisi mana Anda pada, dan apa niat Anda. Firewall dirancang untuk membiarkan hanya paket tersebut yang memenuhi kriteria. Firewall ini beroperasi pada Ports 80 dan 25. Semua upaya untuk masuk melalui lain port ditutup untuk bisnis. Port 25 digunakan untuk paket surat. Sementara Port 80 adalah pintu masuk untuk paket dari internet ke web Server. Di dalam firewall, paket disaring lebih teliti. Beberapa paket membuatnya dengan mudah melalui bea cukai, sementara yang lain terlihat hanya sedikit meragukan. Sekarang, petugas firewall tidak mudah tertipu, seperti ketika ping ini paket kematian mencoba untuk menyamarkan dirinya sebagai paket ping normal. -Move Bersama. Tidak apa-apa. Ah, itu bukan apa-apa. Have a nice day. Biarkan aku keluar dari sini. Bye. -Bagi Paket beruntung cukup untuk membuatnya sejauh ini, perjalanan hampir berakhir. Hanya saja garis pada antarmuka yang akan diambil ke server web. Saat ini, web server dapat berjalan pada banyak hal, dari mainframe, untuk webcam, ke komputer di meja Anda. Mengapa tidak kulkas Anda? Dengan set yang tepat up, Anda bisa mencari tahu jika Anda memiliki bakat ayam cacciatore atau jika Anda harus pergi belanja. Ingat, ini adalah The Dawn of the Net. Hampir apa pun yang mungkin. Satu per satu, paket yang diterima, dibuka, dan dibongkar. Informasi yang dikandungnya, yang adalah permintaan Anda untuk informasi, dikirim ke web server aplikasi. Paket itu sendiri didaur ulang. Siap untuk digunakan lagi dan penuh dengan informasi yang Anda minta, ditangani, dan mengirimkan dalam perjalanan kembali kepada Anda. Kembali melewati firewall, router, dan melalui internet. Kembali melalui firewall perusahaan Anda. Dan ke antarmuka Anda. Siap untuk memasok web browser Anda dengan informasi yang Anda minta. Itulah film ini. Senang dengan upaya mereka dan percaya pada dunia yang lebih baik, paket data terpercaya kami naik off bahagia ke matahari terbenam lain hari, mengetahui sepenuhnya mereka telah melayani tuannya dengan baik. Sekarang, bukankah itu akhir yang bahagia. [END VIDEO PLAYBACK] DAVID Malan: Itu saja untuk CS50. Kita akan melihat Anda minggu depan. [MUSIC - KATY PERRY, "KUDA GELAP"]