1 00:00:00,000 --> 00:00:03,395 >> [Bermain muzik] 2 00:00:03,395 --> 00:00:13,100 3 00:00:13,100 --> 00:00:15,570 >> DAVID J. MALAN: Jadi saya hanya mahu meredakan kepada. 4 00:00:15,570 --> 00:00:18,260 Saya akan echo apa Scaz berkata kira-kira memori institusi. 5 00:00:18,260 --> 00:00:20,350 CS50 telah wujud 20 tahun di Harvard. 6 00:00:20,350 --> 00:00:22,280 Dan realitinya adalah, dari senior di bawah, 7 00:00:22,280 --> 00:00:25,045 terdapat setiap tahun jaminan bahawa mahasiswa, yang sophomores, 8 00:00:25,045 --> 00:00:26,870 dan remaja dan juga senior mengambil 9 00:00:26,870 --> 00:00:30,360 CS50, bahawa anda akhirnya dalam keadaan baik. 10 00:00:30,360 --> 00:00:32,680 >> Hakikatnya, pelajar jangan gagal CS50. 11 00:00:32,680 --> 00:00:35,740 Malah, dalam keadaan yang jarang berlaku di mana kita mempunyai Es atau Fs, 12 00:00:35,740 --> 00:00:37,990 ia benar-benar telah disebabkan hal keadaan peringan, 13 00:00:37,990 --> 00:00:39,840 sama ada perubatan atau peribadi. 14 00:00:39,840 --> 00:00:41,830 Ds adalah sangat luar biasa juga. 15 00:00:41,830 --> 00:00:45,270 Dan saya boleh mengatakan dengan selesa, walaupun kita biasanya tidak mendedahkan statistik, 16 00:00:45,270 --> 00:00:48,450 tetapi memandangkan tidak ada memori institusi sini sekalipun, 17 00:00:48,450 --> 00:00:51,810 majoriti pelajar di CS50 yang berakhir mendapat A gred pelbagai. 18 00:00:51,810 --> 00:00:54,720 A sebahagian besar berakhir berakhir dalam julat B juga. 19 00:00:54,720 --> 00:00:57,490 >> Jadi, walaupun anda mungkin menyamakan dalam bertiga fikiran anda 20 00:00:57,490 --> 00:01:00,690 dengan 60% dan oleh itu Ds, atau Cs, atau sebagainya, 21 00:01:00,690 --> 00:01:02,530 ia benar-benar tidak beratur dengan realiti. 22 00:01:02,530 --> 00:01:05,238 Malah, kita maksudkan apa yang kita mengatakan pada awal tempoh 23 00:01:05,238 --> 00:01:08,380 bahawa begitu ramai pelajar di CS50, kedua-dua di Cambridge dan di sini di New Haven, 24 00:01:08,380 --> 00:01:10,220 tidak pernah mengambil kursus CS sebelum ini. 25 00:01:10,220 --> 00:01:13,090 Dan apa yang sesungguhnya akhirnya penting adalah di mana anda berakhir di minggu 12 26 00:01:13,090 --> 00:01:15,882 berbanding dengan diri anda pada minggu sifar. 27 00:01:15,882 --> 00:01:17,590 Sekarang kita mempunyai beberapa Litar dalam perjalanan 28 00:01:17,590 --> 00:01:20,548 seperti yang anda know-- kurang selesa, lebih selesa, di suatu tempat di antara. 29 00:01:20,548 --> 00:01:23,790 Dan sesungguhnya, apabila anda Statistik kuiz minggu ini, 30 00:01:23,790 --> 00:01:27,460 Jangan putus asa jika, terutamanya jika anda merasakan bahawa anda berada di sekeliling min 31 00:01:27,460 --> 00:01:30,780 atau di bawah min atau median, terutamanya kerana kita tidak semestinya 32 00:01:30,780 --> 00:01:33,560 mengambil semua demografi kira pertengahan semester 33 00:01:33,560 --> 00:01:35,000 dengan statistik penggredan. 34 00:01:35,000 --> 00:01:37,250 >> Dalam erti kata lain, kita tahu statistik setiap tahun 35 00:01:37,250 --> 00:01:39,570 bahawa pelajar-pelajar yang kurang selesa, melakukan sedikit lebih teruk pada kuiz. 36 00:01:39,570 --> 00:01:42,050 Dan pelajar yang lebih selesa melakukan sedikit lebih baik pada kuiz. 37 00:01:42,050 --> 00:01:45,430 Tetapi setiap janji dalam sukatan pelajaran dan juga pada minggu pertama kuliah, 38 00:01:45,430 --> 00:01:46,880 kita mengambil semua itu kira. 39 00:01:46,880 --> 00:01:48,900 >> Malah, pada tahun akhir, apa yang kita akhirnya melakukan 40 00:01:48,900 --> 00:01:52,154 menormalkan semua markah seluruh bahagian, kedua-dua di Cambridge 41 00:01:52,154 --> 00:01:54,570 dan kini di sini di New Haven, yang bermaksud mengambil kira 42 00:01:54,570 --> 00:01:57,310 gaya yang berbeza, berbeza yang engkau berlaku kasar terhadapnya, jenis yang berbeza 43 00:01:57,310 --> 00:02:00,722 personaliti individu itu TA ada di sini dan di Cambridge 44 00:02:00,722 --> 00:02:02,930 supaya anda tidak di kelemahan walaupun anda hanya 45 00:02:02,930 --> 00:02:06,120 terjadi telah mempunyai TF atau TA yang sudah sedikit sukar pada anda 46 00:02:06,120 --> 00:02:07,170 dalam fikiran anda. 47 00:02:07,170 --> 00:02:10,139 >> Kedua, kita mengambil keselesaan akaun tahap dan latar belakang yang sebenar, atau kurang 48 00:02:10,139 --> 00:02:13,310 itu, apabila mengambil markah kuiz kira. 49 00:02:13,310 --> 00:02:14,830 Jadi kedua-dua adalah kira. 50 00:02:14,830 --> 00:02:17,142 Dan pada akhir hari, kerana ia semestinya benar 51 00:02:17,142 --> 00:02:19,100 bahawa pelajar berakhir dalam bahagian yang kurang selesa 52 00:02:19,100 --> 00:02:24,250 apabila dia benar-benar milik dalam di-antara atau sebaliknya, 53 00:02:24,250 --> 00:02:26,230 semuanya begitu sangat individu. 54 00:02:26,230 --> 00:02:29,560 Malah, anda akan mendapat marah pada kami di akhir tempoh apabila kita lambat 55 00:02:29,560 --> 00:02:32,630 mengemukakan gred anda kerana dengan Scaz, dan Jason, dan Andy, dan saya, 56 00:02:32,630 --> 00:02:35,430 dan pasukan itu akan lakukan di Cambridge adalah benar-benar 57 00:02:35,430 --> 00:02:38,480 mempunyai beratus-ratus e-mel kembali dan sebagainya dengan semua ratus daripada kursus 58 00:02:38,480 --> 00:02:41,279 TA, di sini dan di Cambridge, meminta mereka apa 59 00:02:41,279 --> 00:02:44,070 mereka memikirkan semua pelajar mereka berdasarkan draf gred. 60 00:02:44,070 --> 00:02:46,230 Dan segala-galanya di sana selepas adalah sangat individu. 61 00:02:46,230 --> 00:02:49,230 Jadi setakat mana kita dapat tahu anda dalam waktu pejabat, bahagian, dan banyak lagi, 62 00:02:49,230 --> 00:02:51,350 semua itu terlalu diambil kira. 63 00:02:51,350 --> 00:02:55,210 >> Jadi walaupun kita cenderung untuk menggunakan ini lima skala titik, sila, tanggalkan diri 64 00:02:55,210 --> 00:02:57,492 dari andaian bahawa tiga merupakan satu 60%. 65 00:02:57,492 --> 00:02:58,450 Ia bertujuan untuk menjadi baik. 66 00:02:58,450 --> 00:03:01,360 Dan pembantu guru yang berikut dikenakan pada permulaan jangka 67 00:03:01,360 --> 00:03:04,050 cuba untuk menjaga skor dalam berdua-dua, dan bertiga, 68 00:03:04,050 --> 00:03:06,590 dan merangkak berkisar supaya kita sebenarnya mempunyai ruang untuk berkembang. 69 00:03:06,590 --> 00:03:08,610 Dan kita sebenarnya mempunyai kayu pengukur yang mana 70 00:03:08,610 --> 00:03:11,086 kami boleh memberi anda yang berguna maklum balas tentang bagaimana yang anda lakukan 71 00:03:11,086 --> 00:03:12,210 dan bagaimana anda berjalan. 72 00:03:12,210 --> 00:03:15,130 Oleh itu, sila ambil itu untuk jantung. 73 00:03:15,130 --> 00:03:20,565 >> Adakah terdapat apa-apa soalan saya boleh membantu menangani atau kebimbangan saya boleh membantu meredakan? 74 00:03:20,565 --> 00:03:23,800 Atau janji saya boleh cuba untuk menjaga? 75 00:03:23,800 --> 00:03:24,690 Tidak? 76 00:03:24,690 --> 00:03:25,330 OKAY. 77 00:03:25,330 --> 00:03:26,010 >> Baiklah. 78 00:03:26,010 --> 00:03:28,970 Maka dengan itu berkata, ini adalah CS50. 79 00:03:28,970 --> 00:03:31,670 Ini adalah permulaan minggu enam di sini di New Haven. 80 00:03:31,670 --> 00:03:33,820 Mari kita mulakan dengan ringkas dimming lampu 81 00:03:33,820 --> 00:03:37,439 untuk menetapkan peringkat untuk kandungan hari ini. 82 00:03:37,439 --> 00:03:38,105 [VIDEO MAIN SEMULA] 83 00:03:38,105 --> 00:03:44,045 [Bermain muzik] 84 00:03:44,045 --> 00:03:46,600 -Dia Datang dengan mesej. 85 00:03:46,600 --> 00:03:50,300 86 00:03:50,300 --> 00:03:52,900 Dengan protokol semua sendiri. 87 00:03:52,900 --> 00:04:06,417 88 00:04:06,417 --> 00:04:13,090 Dia datang ke dunia firewall sejuk, router peduli, dan bahaya yang jauh lebih buruk 89 00:04:13,090 --> 00:04:16,079 kematian itu. 90 00:04:16,079 --> 00:04:21,079 Dia cepat, dia kuat, dia TCP / IP. 91 00:04:21,079 --> 00:04:23,120 Dan dia mendapat alamat anda. 92 00:04:23,120 --> 00:04:25,820 93 00:04:25,820 --> 00:04:29,268 Warriors gawang. 94 00:04:29,268 --> 00:04:29,917 >> [AKHIR MAIN SEMULA] 95 00:04:29,917 --> 00:04:31,000 DAVID J. MALAN: Baiklah. 96 00:04:31,000 --> 00:04:32,030 Ini adalah CS50. 97 00:04:32,030 --> 00:04:33,820 Ini adalah permulaan minggu enam. 98 00:04:33,820 --> 00:04:37,270 Dan ini adalah permulaan rupa kami di internet dan web pengaturcaraan. 99 00:04:37,270 --> 00:04:41,220 Dan, mungkin yang paling excitingly, hari ini menandakan peralihan untuk kita 100 00:04:41,220 --> 00:04:43,780 daripada baris arahan kami dunia C ke web 101 00:04:43,780 --> 00:04:47,020 dunia berasaskan PHP dan HTML, dan CSS, dan SQL, dan JavaScript, 102 00:04:47,020 --> 00:04:49,800 dan banyak lagi yang ada di kaki langit. 103 00:04:49,800 --> 00:04:53,390 >> Tetapi pertama, ia telah datang kepada perhatian kami dalam berjalan di kampus yang terdapat 104 00:04:53,390 --> 00:04:57,914 bilik mandi yang tertentu di sini di New Haven dipanggil bilik Harvard, yang 105 00:04:57,914 --> 00:04:59,080 adalah sedikit dikelabukan di sini. 106 00:04:59,080 --> 00:05:03,830 Dan sesungguhnya seseorang pergi masa yang dan perbelanjaan punaran dalam bilik Harvard 107 00:05:03,830 --> 00:05:05,700 di sini bilik ini. 108 00:05:05,700 --> 00:05:07,790 Terima kasih untuk itu. 109 00:05:07,790 --> 00:05:11,020 Saya tidak boleh mengatakan kita mempunyai analog di Cambridge lagi, 110 00:05:11,020 --> 00:05:14,060 tetapi saya fikir kita mempunyai projek kecil untuk diri kita sendiri sekarang apabila kita kembali. 111 00:05:14,060 --> 00:05:15,890 Jadi terima kasih untuk itu. 112 00:05:15,890 --> 00:05:18,340 >> Jadi yang cepat melihat kembali di mana kita berhenti minggu lepas 113 00:05:18,340 --> 00:05:21,010 dan di mana anda akan akan datang minggu dengan masalah yang dibentuk lima. 114 00:05:21,010 --> 00:05:24,350 Jadi dalam masalah menetapkan lima, anda dicabar untuk melaksanakan spellchecker a. 115 00:05:24,350 --> 00:05:26,630 Dan untuk berbuat demikian, anda menyerahkan teks yang cukup besar 116 00:05:26,630 --> 00:05:29,160 memfailkan dengan seperti 140,000 perkataan Bahasa Inggeris. 117 00:05:29,160 --> 00:05:32,610 Dan anda akan dicabar untuk membuat keputusan pada struktur data yang anda 118 00:05:32,610 --> 00:05:35,340 mahu untuk memuatkan semua kata-kata ke dalam memori, dan ke dalam RAM, 119 00:05:35,340 --> 00:05:38,470 dan kemudian melaksanakan fungsi beberapa, salah satu yang akan menjadi semak. 120 00:05:38,470 --> 00:05:41,555 Di mana apabila diluluskan hujah, Pendek kata, daftar fungsi anda 121 00:05:41,555 --> 00:05:43,430 hanya akan mempunyai untuk mengatakan benar atau palsu, 122 00:05:43,430 --> 00:05:44,990 ini adalah satu perkataan di dalam kamus. 123 00:05:44,990 --> 00:05:47,110 >> Tetapi anda akan mempunyai beberapa budi reka bentuk dan cabaran 124 00:05:47,110 --> 00:05:48,568 ketika datang untuk melaksanakan itu. 125 00:05:48,568 --> 00:05:51,250 Dalam pelaksanaan yang paling mudah, anda boleh pasti 126 00:05:51,250 --> 00:05:53,960 melaksanakan pemeriksa ejaan dalam kamus asas 127 00:05:53,960 --> 00:05:55,380 dengan jenis struktur data? 128 00:05:55,380 --> 00:05:57,796 Anda hanya perlu untuk menyimpan keseluruhan sekumpulan tali dalam ingatan? 129 00:05:57,796 --> 00:06:00,074 Apa yang pergi untuk menjawab dari minggu dua mungkin? 130 00:06:00,074 --> 00:06:00,740 PENONTON: Array. 131 00:06:00,740 --> 00:06:01,500 DAVID J. MALAN: Anda boleh menggunakan array. 132 00:06:01,500 --> 00:06:02,750 Dan itu bukan semua yang buruk. 133 00:06:02,750 --> 00:06:05,631 Tetapi anda tidak semestinya tahu terlebih dahulu berapa besar array 134 00:06:05,631 --> 00:06:08,630 anda akan perlukan, jika anda tidak tahu fail semestinya terlebih dahulu. 135 00:06:08,630 --> 00:06:10,110 Jadi, anda akan perlu untuk menggunakan sedikit tipu muslihat 136 00:06:10,110 --> 00:06:11,970 seperti malloc, seperti yang kita mula menggunakan. 137 00:06:11,970 --> 00:06:13,977 Atau kita boleh menangani kebimbangan bahawa dengan menggunakan 138 00:06:13,977 --> 00:06:16,810 apa struktur data lain itulah menjadi semacam peningkatan marginal 139 00:06:16,810 --> 00:06:17,894 pada array? 140 00:06:17,894 --> 00:06:18,810 PENONTON: Senarai Berkaitan. 141 00:06:18,810 --> 00:06:21,270 DAVID J. MALAN: Seperti yang dikaitkan senarai, di mana kita akan mendapat beberapa dinamik. 142 00:06:21,270 --> 00:06:22,686 Tetapi ada perbelanjaan yang lebih sedikit. 143 00:06:22,686 --> 00:06:24,150 Kami mempunyai petunjuk untuk mengekalkan. 144 00:06:24,150 --> 00:06:25,890 Dan anda belum lagi dikodkan ini , tetapi pasti ada 145 00:06:25,890 --> 00:06:28,473 menjadi kerumitan yang lebih sedikit daripada hanya menggunakan tanda kurung siku 146 00:06:28,473 --> 00:06:30,080 dan melompat di sekeliling array. 147 00:06:30,080 --> 00:06:33,340 >> Tetapi kali pelbagai ini berjalan, jika anda sedang mencari satu perkataan, 148 00:06:33,340 --> 00:06:34,179 mungkin log n. 149 00:06:34,179 --> 00:06:35,970 Tetapi sekali lagi, ia mungkin sedikit bukan remeh 150 00:06:35,970 --> 00:06:38,734 untuk membina tatasusunan yang tidak mengetahui saiz terlebih dahulu. 151 00:06:38,734 --> 00:06:41,150 Senarai dikaitkan walaupun, jika anda hanya menyimpan sekumpulan tali 152 00:06:41,150 --> 00:06:43,300 dalam senarai berpaut, apa yang atas terikat anda 153 00:06:43,300 --> 00:06:46,920 pada masa berjalan akan menjadi untuk mencari untuk atau daftar kata dalam senarai itu? 154 00:06:46,920 --> 00:06:47,700 >> PENONTON: n. 155 00:06:47,700 --> 00:06:50,575 >> DAVID J. MALAN: Ya, ya besar n atau linear kerana dalam kes yang paling teruk, 156 00:06:50,575 --> 00:06:52,640 perkataan itu adalah seperti perkataan Z sepanjang jalan di akhir. 157 00:06:52,640 --> 00:06:55,350 Dan kerana senarai berpaut, kerana orang-orang anak panah secara lalai, 158 00:06:55,350 --> 00:06:58,280 dalam senarai secara tunggal berkaitan, hanya pergi dari satu arah yang lain, 159 00:06:58,280 --> 00:06:59,590 anda tidak boleh melompat-lompat. 160 00:06:59,590 --> 00:07:01,160 Anda perlu mengikuti semua daripada mereka. 161 00:07:01,160 --> 00:07:05,505 >> Oleh itu, kita dicadangkan pada akhir minggu lepas, minggu lima, bahawa ada cara yang lebih baik. 162 00:07:05,505 --> 00:07:08,727 Dan sebenarnya, kaedah berpotensi suci benar-benar akan menjadi masa yang berterusan 163 00:07:08,727 --> 00:07:10,560 di mana apabila anda mahu untuk mencari perkataan, anda 164 00:07:10,560 --> 00:07:13,370 mendapatkan jawapan segera tanpa mengira berapa banyak kata-kata sudah 165 00:07:13,370 --> 00:07:14,350 dalam kamus anda. 166 00:07:14,350 --> 00:07:17,680 >> Ini adalah rendition artis daripada apa yang anda mungkin memanggil jadual hash. 167 00:07:17,680 --> 00:07:21,900 Dan jadual hash adalah jenis yang bagus amalgam array-- yang dilukis secara menegak 168 00:07:21,900 --> 00:07:26,416 di sini, hanya because-- dan kemudian dikaitkan list-- menarik mendatar di sini. 169 00:07:26,416 --> 00:07:28,790 Dan jadual hash boleh dilaksanakan dalam tandan cara. 170 00:07:28,790 --> 00:07:34,110 Ini petikan dari buku teks berlaku untuk menggunakan tarikh lahir orang-orang ini 171 00:07:34,110 --> 00:07:38,940 sebagai cara dengan mana ia memutuskan di mana untuk meletakkan nama seseorang. 172 00:07:38,940 --> 00:07:41,230 Jadi ini adalah kamus yang jika anda akan nama. 173 00:07:41,230 --> 00:07:45,240 Dan untuk mempercepatkan meletakkan nama-nama ke dalam struktur data ini, 174 00:07:45,240 --> 00:07:49,280 mereka melihat, nampaknya, orang-orang ini lahir tarikh berkenaan dengan sebulan. 175 00:07:49,280 --> 00:07:50,570 >> Jadi ia adalah 1 hingga 31. 176 00:07:50,570 --> 00:07:52,910 Dan melupakan Februari dan kes-kes sudut seperti itu. 177 00:07:52,910 --> 00:07:57,050 Dan jika hari jadi anda adalah pada Januari 1, atau 1 Februari, atau 1 Disember, 178 00:07:57,050 --> 00:07:59,890 anda akan berakhir di rantaian sehingga atas yang pertama. 179 00:07:59,890 --> 00:08:02,150 Jika tarikh lahir anda seperti ke-25 sebulan, 180 00:08:02,150 --> 00:08:04,567 anda akan berakhir di nombor baldi 25. 181 00:08:04,567 --> 00:08:07,400 Dan jika ada pun seseorang di sana dalam mana-mana lokasi, apa 182 00:08:07,400 --> 00:08:10,470 anda mula lakukan dengan ini dikaitkan senarai adalah jahitan mereka bersama-sama 183 00:08:10,470 --> 00:08:14,320 supaya anda boleh mempunyai sewenang-wenangnya beberapa orang, atau apa-apa, 184 00:08:14,320 --> 00:08:15,580 di lokasi tersebut. 185 00:08:15,580 --> 00:08:18,400 >> Jadi, anda mempunyai sejenis campuran masa yang berterusan untuk hashing. 186 00:08:18,400 --> 00:08:21,160 Dan untuk hash sesuatu yang bermakna untuk mengambil sebagai input seperti orang yang, 187 00:08:21,160 --> 00:08:25,360 atau atau namanya, atau atau kelahirannya tarikh, dan kemudian membuat keputusan mengenai beberapa output 188 00:08:25,360 --> 00:08:29,780 berdasarkan itu, seperti melihat mereka hari jadi dan keluarkan satu melalui 31. 189 00:08:29,780 --> 00:08:31,900 >> Oleh itu, maka anda mungkin mempunyai sedikit masa linear, 190 00:08:31,900 --> 00:08:34,429 tetapi dalam realiti, dan seperti dalam kes masalah set lima, 191 00:08:34,429 --> 00:08:36,220 kita tidak akan menjadi bekerja di P menetapkan lima 192 00:08:36,220 --> 00:08:40,059 banyak mengenai asimptot berjalan masa, seperti kelambatan teori 193 00:08:40,059 --> 00:08:41,809 dengan mana algoritma mungkin berjalan. 194 00:08:41,809 --> 00:08:44,330 Kami akan mengambil berat tentang jumlah sebenar saat 195 00:08:44,330 --> 00:08:47,350 dan jumlah sebenar memori, jumlah sebenar bait memori 196 00:08:47,350 --> 00:08:48,140 anda gunakan. 197 00:08:48,140 --> 00:08:52,710 Jadi terus terang, mempunyai satu besar rantaian seperti satu juta orang 198 00:08:52,710 --> 00:08:56,710 adalah agak sialan perlahan jika anda sedang mencari nama di dalam senarai saiz juta. 199 00:08:56,710 --> 00:08:59,830 >> Tetapi bagaimana jika anda membahagikan bahawa senarai ke dalam 31 bahagian? 200 00:08:59,830 --> 00:09:04,400 Mencari 1/31 itu super senarai panjang, pada hakikatnya, 201 00:09:04,400 --> 00:09:05,741 sudah pasti akan menjadi lebih cepat. 202 00:09:05,741 --> 00:09:07,240 Berasimptot, ia adalah perkara yang sama. 203 00:09:07,240 --> 00:09:08,860 Anda hanya membahagikan dengan faktor tetap. 204 00:09:08,860 --> 00:09:10,651 Dan ingat kita yang membuang perkara-perkara yang jauh. 205 00:09:10,651 --> 00:09:13,486 Tetapi dalam realiti, ia akan menjadi 31 kali lebih cepat. 206 00:09:13,486 --> 00:09:16,110 Dan itulah yang kita akan mula memanfaatkan dalam P menetapkan lima. 207 00:09:16,110 --> 00:09:18,750 >> Jadi P menetapkan lima terlalu juga mencadangkan anda mempertimbangkan 208 00:09:18,750 --> 00:09:21,810 sedikit lebih canggih struktur data dipanggil indone a. 209 00:09:21,810 --> 00:09:24,420 Dan indone yang hanya pokok seperti struktur data. 210 00:09:24,420 --> 00:09:26,672 Tetapi daripada harus bulatan kecil atau segi empat tepat 211 00:09:26,672 --> 00:09:28,380 seperti yang kita menyimpan lukisan untuk nod, ia sebenarnya 212 00:09:28,380 --> 00:09:30,840 mempunyai keseluruhan tatasusunan untuk nod itu. 213 00:09:30,840 --> 00:09:33,430 Dan walaupun ini adalah satu sedikit abstrak sini untuk melihat, 214 00:09:33,430 --> 00:09:35,450 Zamyla untuk berjalan dan P set melalui akan berjalan anda 215 00:09:35,450 --> 00:09:37,580 melalui dengan lebih terperinci mengenai perkara ini. 216 00:09:37,580 --> 00:09:39,980 Ini adalah struktur data yang agak bijak 217 00:09:39,980 --> 00:09:44,130 mungkin mempunyai setiap nod yang array saiz 26, A hingga Z atau sifar 218 00:09:44,130 --> 00:09:45,320 melalui 25. 219 00:09:45,320 --> 00:09:49,260 Dan apabila anda mahu untuk memasukkan seseorang menamakan ke dalam struktur data ini atau mencari 220 00:09:49,260 --> 00:09:53,990 dia atau dia, apa yang kamu lakukan, jika Nama seperti Maxwell, M-A-X-W-E-L-L, 221 00:09:53,990 --> 00:09:57,900 anda mula-mula melihat M. Dan kemudian anda melompat ke M lokasi yang sepadan 222 00:09:57,900 --> 00:09:59,100 dalam array pertama. 223 00:09:59,100 --> 00:10:02,400 Anda kemudian melompat ke A, yang pertama lokasi di lokasi yang akan datang, 224 00:10:02,400 --> 00:10:03,610 mengikut anak panah. 225 00:10:03,610 --> 00:10:08,300 Kemudian X, maka W, kemudian E, maka L, maka L, dan kemudian mungkin beberapa akhir khas 226 00:10:08,300 --> 00:10:11,850 watak, beberapa sentinel yang mengatakan perkataan yang berhenti di sini. 227 00:10:11,850 --> 00:10:14,780 >> Dan apa yang baik tentang this-- dan perlu diingat bahawa gambar itu di sini, 228 00:10:14,780 --> 00:10:16,797 melihat bagaimana tepi setiap lokasi benar sudah hilang. 229 00:10:16,797 --> 00:10:19,630 Itu hanya kerana perkara ini akan menjadi besar dan ngeri melihat 230 00:10:19,630 --> 00:10:20,338 pada pada skrin. 231 00:10:20,338 --> 00:10:21,820 Jadi ia dipetik. 232 00:10:21,820 --> 00:10:25,920 Apa yang baik tentang pendekatan ini adalah bahawa jika ada satu juta nama sudah 233 00:10:25,920 --> 00:10:30,890 dalam struktur data ini, berapa banyak langkah masa yang diambil saya untuk memasukkan Maxwell? 234 00:10:30,890 --> 00:10:36,450 M-A-X-W-E-L-L-- seperti tujuh ish langkah-langkah untuk memasukkan atau mencari Maxwell. 235 00:10:36,450 --> 00:10:39,320 >> Katakan ada satu trilion nama-nama dalam struktur data ini. 236 00:10:39,320 --> 00:10:41,900 Berapa banyak langkah-langkah yang diperlukan saya mencari Maxwell? 237 00:10:41,900 --> 00:10:43,450 M-A-X-- masih tujuh. 238 00:10:43,450 --> 00:10:45,770 >> Dan di dalamnya terletak apa yang dikenali sebagai masa yang berterusan. 239 00:10:45,770 --> 00:10:47,960 Jika kita menganggap bahawa kata-kata pastinya disempadani 240 00:10:47,960 --> 00:10:52,150 sebanyak 20 aksara, atau 46 aksara, atau beberapa integer munasabah kecil, 241 00:10:52,150 --> 00:10:53,790 maka ia adalah berkesan pemalar. 242 00:10:53,790 --> 00:10:57,790 Dan sebagainya sisipan dan mencari indone adalah super cepat. 243 00:10:57,790 --> 00:10:59,540 Sudah tentu, kita tidak pernah mendapat apa-apa secara percuma. 244 00:10:59,540 --> 00:11:02,740 Dan walaupun anda mungkin belum terjun ke dalam P menetapkan lima lagi, 245 00:11:02,740 --> 00:11:06,596 apa harga kita mungkin membayar untuk mendapatkan masa kecekapan yang lebih bijak? 246 00:11:06,596 --> 00:11:07,470 >> PENONTON: Memori. 247 00:11:07,470 --> 00:11:08,390 >> DAVID J. MALAN: Memori, bukan? 248 00:11:08,390 --> 00:11:10,240 Maksud saya, kami telah tidak dilukis keseluruhan gambar di sini. 249 00:11:10,240 --> 00:11:12,823 Ini petikan daripada buku teks tidak ditarik semua tatasusunan. 250 00:11:12,823 --> 00:11:16,687 Terdapat sejumlah besar memori dan hanya petunjuk null yang tidak digunakan. 251 00:11:16,687 --> 00:11:17,520 Jadi ia adalah satu kekurangan. 252 00:11:17,520 --> 00:11:21,050 Dan ia akan diserahkan kepada anda dalam P menetapkan lima untuk membuat keputusan mengenai cara yang anda mahu pergi. 253 00:11:21,050 --> 00:11:24,460 >> Sekarang idea ini hashing, sebagai diketepikan, sebenarnya super berleluasa. 254 00:11:24,460 --> 00:11:27,980 Jadi untuk hash satu cara nilai, agak semata-mata, untuk mengambil sesuatu sebagai input 255 00:11:27,980 --> 00:11:29,220 dan menghasilkan output. 256 00:11:29,220 --> 00:11:31,270 Jadi fungsi hash hanya algoritma. 257 00:11:31,270 --> 00:11:34,990 >> Dan secara amnya, tujuan fungsi hash dalam hidup adalah untuk mengambil sesuatu sebagai input 258 00:11:34,990 --> 00:11:39,655 dan menghasilkan nombor sebagai output, seperti nombor satu hingga 31 atau A hingga Z, 259 00:11:39,655 --> 00:11:40,960 sifar melalui 25. 260 00:11:40,960 --> 00:11:44,250 Jadi ia mengambil output kompleks dan mengecut ke bawah untuk sesuatu 261 00:11:44,250 --> 00:11:46,310 yang lebih sedikit berguna dan terkawal. 262 00:11:46,310 --> 00:11:49,250 >> Dan supaya ternyata dalam fungsi yang sangat popular 263 00:11:49,250 --> 00:11:51,160 bahawa dunia keselamatan dan dunia manusia 264 00:11:51,160 --> 00:11:53,060 telah menggunakan selama bertahun-tahun dipanggil SHA1. 265 00:11:53,060 --> 00:11:56,260 Ini adalah cukup mewah matematik formula yang melakukan pada dasarnya itu. 266 00:11:56,260 --> 00:11:58,870 >> Anda mengambil benar-benar besar sebahagian sifar dan ones-- 267 00:11:58,870 --> 00:12:01,530 yang boleh menjadi megabait panjang, long-- gigabit 268 00:12:01,530 --> 00:12:05,930 dan ia mengecut ke bawah untuk hanya beberapa bit, beberapa bit, 269 00:12:05,930 --> 00:12:09,082 supaya anda mempunyai beberapa seperti satu hingga 31, atau A hingga Z. 270 00:12:09,082 --> 00:12:11,540 Tetapi dalam realiti, ia sedikit lebih besar daripada sekadar A hingga Z. 271 00:12:11,540 --> 00:12:16,640 >> Malangnya, kami di puncak apa seseorang yang main-main dipanggil SHAppening yang 272 00:12:16,640 --> 00:12:19,840 di mana dunia adalah kira-kira untuk berakhir dengan mungkin beberapa bulan 273 00:12:19,840 --> 00:12:22,617 masa kerana penyelidik, hanya ini minggu lalu, 274 00:12:22,617 --> 00:12:25,700 menerbitkan laporan yang bertentangan dengan apa penyelidik keselamatan sangka 275 00:12:25,700 --> 00:12:29,810 untuk beberapa waktu, dengan hanya membelanjakan kira-kira, apa yang ia, 276 00:12:29,810 --> 00:12:33,420 Saya rasa ia adalah $ 175,000-- duit yang banyak, 277 00:12:33,420 --> 00:12:36,540 tetapi tidak di luar jangkauan jahat sangat buruk, 278 00:12:36,540 --> 00:12:41,560 atau sangat buruk countries-- $ 175,000 boleh membeli anda banyak pelayan disewa 279 00:12:41,560 --> 00:12:42,690 ruang dalam awan. 280 00:12:42,690 --> 00:12:44,619 Dan kami akan kembali kepada awan tidak lama lagi. 281 00:12:44,619 --> 00:12:47,410 Tetapi ia hanya bermaksud menyewa pelayan ruang pada pelayan seperti Microsoft, 282 00:12:47,410 --> 00:12:50,285 atau Google atau Amazon, atau seperti di mana anda boleh membayar dengan minit 283 00:12:50,285 --> 00:12:51,670 menggunakan komputer orang lain. 284 00:12:51,670 --> 00:12:54,250 >> Dan ternyata jika anda boleh membayar orang lain untuk meminjam komputer mereka 285 00:12:54,250 --> 00:12:56,730 dan kod jangka yang anda tulis padanya dan menggunakan cukup mewah 286 00:12:56,730 --> 00:13:01,580 matematik, anda boleh asasnya angka bagaimana fungsi hash seseorang adalah 287 00:13:01,580 --> 00:13:05,320 bekerja, dan diberikan output, kejuruteraan balikan apa input adalah. 288 00:13:05,320 --> 00:13:08,590 Dan bagi maksud yang pada hari ini, memadai untuk mengatakan, ini adalah tidak baik. 289 00:13:08,590 --> 00:13:12,540 Kerana SHA1 dan hash fungsi seperti ia adalah super biasa 290 00:13:12,540 --> 00:13:17,050 digunakan dalam aplikasi keselamatan, sambungan disulitkan di web, 291 00:13:17,050 --> 00:13:21,890 transaksi bank, penyulitan selular untuk telefon bimbit anda, dan sebagainya. 292 00:13:21,890 --> 00:13:24,880 Dan jadi apa-apa kali seseorang mendapati satu cara untuk mengubah 293 00:13:24,880 --> 00:13:28,510 jurutera salah satu daripada teknologi-teknologi ini atau patah, perkara buruk boleh berlaku. 294 00:13:28,510 --> 00:13:30,300 >> Sekarang dunia sudah tahu ini. 295 00:13:30,300 --> 00:13:31,310 Ini adalah diramalkan. 296 00:13:31,310 --> 00:13:34,670 Dan dunia ini sejak berpindah dari SHA1 untuk SHA256, 297 00:13:34,670 --> 00:13:37,320 yang hanya satu cara mewah mengatakan mereka menggunakan bit yang lebih besar. 298 00:13:37,320 --> 00:13:40,570 Dan sebenarnya, walaupun CS50 sendiri laman web dinaik taraf tahun lepas supaya- 299 00:13:40,570 --> 00:13:43,290 tidak yang kita hadapi semua ini banyak ancaman cuba untuk mendapatkan di PDF 300 00:13:43,290 --> 00:13:46,520 dan whatnot-- tetapi laman web CS50 menggunakan fungsi hash yang lebih besar, 301 00:13:46,520 --> 00:13:47,980 yang bermaksud bahawa kita akan selamat. 302 00:13:47,980 --> 00:13:50,020 Jadi semua PDF anda akan selamat, tetapi tidak 303 00:13:50,020 --> 00:13:52,880 semestinya wang anda atau apa-apa terutamanya persendirian atau peribadi 304 00:13:52,880 --> 00:13:53,380 untuk menggunakan. 305 00:13:53,380 --> 00:13:56,550 Sp menyemak URL yang jika anda lebih seperti beberapa butiran tambahan. 306 00:13:56,550 --> 00:13:59,840 >> Jadi masalah menetapkan lima adalah sesungguhnya di kaki langit. 307 00:13:59,840 --> 00:14:01,560 Kuiz seseorang itu Rabu ini. 308 00:14:01,560 --> 00:14:04,479 Tetapi jangan mengambil kesempatan daripada pejabat jam, kedua-dua malam ini dan esok. 309 00:14:04,479 --> 00:14:07,770 Dan juga mengambil kesempatan daripada waktu pejabat, jika anda ada, selepas ini. 310 00:14:07,770 --> 00:14:11,550 Kakitangan dan saya akan melekat di sekeliling dan jangan lebih kasual Q & A di samping malam ini. 311 00:14:11,550 --> 00:14:16,610 Dan biarlah saya kuat ambil perhatian di sini, untuk orang-orang kita di sini di Haven-- Baru 312 00:14:16,610 --> 00:14:19,360 supaya ia benar-benar satu ini Scaz ucapan merasakan, saya pasti, 313 00:14:19,360 --> 00:14:21,140 seperti sedikit perjuangan berat. 314 00:14:21,140 --> 00:14:24,627 Dan dengan reputasi, jika anda tidak belajar pun atau didengar 315 00:14:24,627 --> 00:14:27,710 dari beberapa rakan-rakan di Harvard, tahu berikut adalah beberapa memori institusi baru. 316 00:14:27,710 --> 00:14:30,790 P menetapkan jenis lima jenis cenderung untuk menjadi yang paling sukar dalam CS50, 317 00:14:30,790 --> 00:14:32,590 atau yang paling mencabar bagi kebanyakan pelajar. 318 00:14:32,590 --> 00:14:37,180 >> Tetapi apa yang bermakna adalah bahawa kita berada hampir di bahagian atas bukit ini. 319 00:14:37,180 --> 00:14:38,270 Dan saya benar-benar bermakna ini. 320 00:14:38,270 --> 00:14:40,728 Ia adalah yang paling mencabar, tetapi ia juga yang paling menguntungkan 321 00:14:40,728 --> 00:14:43,560 kerana tidak seperti kebanyakan setiap lain sains komputer pengenalan 322 00:14:43,560 --> 00:14:47,980 kursus di Amerika Syarikat yang kita tahu, kebanyakan pelajar tidak selesai intro 323 00:14:47,980 --> 00:14:51,400 tentu telah pun melaksanakan perkara seperti pokok-pokok, dan percubaan, 324 00:14:51,400 --> 00:14:52,880 dan jadual hash, dan sebagainya. 325 00:14:52,880 --> 00:14:54,770 >> Oleh itu, saya berharap, dan kami berharap bahawa anda 326 00:14:54,770 --> 00:14:57,280 mempunyai rasa yang sangat besar kepuasan walaupun 327 00:14:57,280 --> 00:15:00,760 jika seminggu dua melalui yang anda dapat kepuasan yang 328 00:15:00,760 --> 00:15:02,490 tidak merasa sedikit kecil seperti ini. 329 00:15:02,490 --> 00:15:05,250 Tetapi biarlah saya memberi jaminan, kita hanya mempunyai empat set P kiri. 330 00:15:05,250 --> 00:15:07,380 Jadi jenis bahagian yang sudah di depan mata. 331 00:15:07,380 --> 00:15:12,370 >> Di sisi lain daripada itu, percaya kepada kami, ia hanya ganang dan awan. 332 00:15:12,370 --> 00:15:16,000 Dan yang akan kita katakan, anak anjing berada di pihak yang lain. 333 00:15:16,000 --> 00:15:18,340 Jadi, anda hanya perlu untuk menggantung di sana lebih lama. 334 00:15:18,340 --> 00:15:22,050 Maksud saya, memang seperti yang kita mula peralihan ke dalam dunia pengaturcaraan web, 335 00:15:22,050 --> 00:15:26,060 anda akan mendapati bahawa perkara become-- ini adalah comel sebenarnya. 336 00:15:26,060 --> 00:15:29,680 337 00:15:29,680 --> 00:15:33,490 OK, kita akan hantar URL ini kemudian. 338 00:15:33,490 --> 00:15:36,140 Anda akan mendapati terlalu bahawa kami semacam mencapai dataran tinggi yang 339 00:15:36,140 --> 00:15:38,150 di mana segala-galanya adalah sesungguhnya masih canggih 340 00:15:38,150 --> 00:15:40,170 dan mencabar oleh reka bentuk, tetapi anda tidak 341 00:15:40,170 --> 00:15:42,590 akan berasa seperti kita sentiasa naik bukit ini. 342 00:15:42,590 --> 00:15:44,390 Oleh itu, mengambil beberapa keselesaan dalam itu. 343 00:15:44,390 --> 00:15:47,409 >> Jadi tanpa berlengah-lengah lagi, mari kita mulakan untuk membuat peralihan pasaran ini 344 00:15:47,409 --> 00:15:49,950 pada semester ke dunia web, dan benar-benar dunia 345 00:15:49,950 --> 00:15:51,420 yang mana semua di antara kita yang biasa. 346 00:15:51,420 --> 00:15:53,753 Kami mempunyai peranti internet dalam poket kita, di atas meja, 347 00:15:53,753 --> 00:15:55,127 dalam beg galas kita, dan sebagainya. 348 00:15:55,127 --> 00:15:56,210 Bagaimana semua kerja-kerja ini? 349 00:15:56,210 --> 00:15:59,077 Dan bagaimana kita boleh mula menulis Kod itu bukan super batin 350 00:15:59,077 --> 00:16:01,910 dan dalam beberapa teks berkelip segera bahawa tidak ada rakan-rakan anda atau keluarga 351 00:16:01,910 --> 00:16:04,659 pernah akan mahu untuk berinteraksi dengan, tetapi sesuatu yang anda boleh meletakkan 352 00:16:04,659 --> 00:16:06,660 pada telefon mereka, atau pada pelayar web mereka, 353 00:16:06,660 --> 00:16:09,010 atau mana-mana peranti dengan mana mereka berinteraksi. 354 00:16:09,010 --> 00:16:10,430 >> Jadi di sini adalah rumah seseorang. 355 00:16:10,430 --> 00:16:14,040 Dan di dalam rumah ini adalah beberapa komputer riba, beberapa desktop sekolah lama 356 00:16:14,040 --> 00:16:17,470 komputer, sesuatu yang dipanggil router atau hab di tengah, 357 00:16:17,470 --> 00:16:20,310 dan kemudian beberapa jenis modem kabel atau DSL modem. 358 00:16:20,310 --> 00:16:24,560 Dan kemudian ada internet, secara amnya disediakan sebagai awan ada di langit. 359 00:16:24,560 --> 00:16:29,230 >> Jadi gambar ini, walaupun semacam sedikit bertarikh, 360 00:16:29,230 --> 00:16:32,604 pasti menangkap apa yang kebanyakan anda mungkin mempunyai di rumah anda, 361 00:16:32,604 --> 00:16:35,520 atau dengan berkesan apa yang anda semua mempunyai di dalam bilik asrama anda, atau pangsapuri, 362 00:16:35,520 --> 00:16:36,480 atau sebagainya. 363 00:16:36,480 --> 00:16:40,010 >> Jadi apa yang sebenarnya berlaku apabila anda cuba menggunakan internet pada hari ini? 364 00:16:40,010 --> 00:16:42,010 Jadi setiap komputer di internet, ternyata, 365 00:16:42,010 --> 00:16:46,860 perlu mempunyai alamat yang unik, sama seperti kita dalam keperluan dunia sebenar 366 00:16:46,860 --> 00:16:52,050 alamat pos, seperti 51 Prospect Street, New Haven, Connecticut, atau 33 367 00:16:52,050 --> 00:16:54,170 Oxford Street, Cambridge, Massachusetts. 368 00:16:54,170 --> 00:16:58,520 Begitu juga dengan komputer di internet memerlukan cara unik menangani diri mereka sendiri. 369 00:16:58,520 --> 00:17:01,180 >> Itu adalah supaya apabila satu komputer mahu bercakap dengan lain, 370 00:17:01,180 --> 00:17:04,525 ia boleh menghantar mesej dan memaklumkan penerima yang kepadanya 371 00:17:04,525 --> 00:17:05,900 ia perlu menghantar respons belakang. 372 00:17:05,900 --> 00:17:07,900 Oleh itu, ia hanya membuat semacam rasa intuitif mungkin 373 00:17:07,900 --> 00:17:09,980 bahawa segala-galanya mempunyai alamat sejenis. 374 00:17:09,980 --> 00:17:11,240 >> Tetapi bagaimana anda mendapatkan alamat? 375 00:17:11,240 --> 00:17:13,589 Nah, jika anda tiba di sini pada kampus, atau anda pulang ke rumah 376 00:17:13,589 --> 00:17:15,760 dan anda menghidupkan anda komputer riba atau komputer desktop, 377 00:17:15,760 --> 00:17:17,770 dan sama ada palamkan ia atau menyambung kepada Wi-Fi, 378 00:17:17,770 --> 00:17:19,569 ternyata bahawa ada pelayan khas 379 00:17:19,569 --> 00:17:22,089 kebanyakan rangkaian dipanggil pelayan DHCP. 380 00:17:22,089 --> 00:17:23,880 Tidak benar-benar perkara apa ini bermaksud, 381 00:17:23,880 --> 00:17:26,660 tetapi ia adalah konfigurasi hos dinamik protokol, yang hanya 382 00:17:26,660 --> 00:17:29,760 cara yang mewah untuk mengatakan, ini adalah komputer yang memuat Yale mempunyai, 383 00:17:29,760 --> 00:17:32,600 atau Harvard mempunyai, atau Comcast mempunyai, atau Verizon mempunyai, 384 00:17:32,600 --> 00:17:35,100 atau syarikat anda mempunyai, yang tujuan dalam kehidupan, 385 00:17:35,100 --> 00:17:38,810 apabila ia mendengar seseorang yang baru ditambah kepada rangkaian, adalah untuk katakan di sini, 386 00:17:38,810 --> 00:17:40,010 menggunakan alamat ini. 387 00:17:40,010 --> 00:17:42,790 >> Oleh itu, kita manusia tidak perlu Kod keras ke dalam komputer kita 388 00:17:42,790 --> 00:17:44,040 apa alamat unik kita. 389 00:17:44,040 --> 00:17:47,070 Kami hanya hidupkannya, buka tudung, dan entah bagaimana pelayan ini 390 00:17:47,070 --> 00:17:52,210 pada rangkaian tempatan hanya memberitahu saya bahawa alamat saya adalah 51 Prospect Street, atau 33 391 00:17:52,210 --> 00:17:53,940 Oxford Street, atau sebagainya. 392 00:17:53,940 --> 00:17:56,000 >> Kini ia tidak akan begitu banyak cakap seperti itu. 393 00:17:56,000 --> 00:18:00,210 Sebaliknya apa yang saya akan dapat adalah alamat bernombor yang dipanggil alamat IP. 394 00:18:00,210 --> 00:18:01,960 IP bermaksud protokol internet. 395 00:18:01,960 --> 00:18:06,025 Dan kemungkinan besar pada masa ini dalam kehidupan anda, anda mungkin mendengar atau melihat perkataan IP, 396 00:18:06,025 --> 00:18:08,140 atau secara amnya dibuang sekitar mungkin. 397 00:18:08,140 --> 00:18:10,720 Tetapi yang sebenarnya, ia cukup lurus ke hadapan apa-apa. 398 00:18:10,720 --> 00:18:13,610 >> Alamat IP adalah hanya nombor perpuluhan putus-putus, 399 00:18:13,610 --> 00:18:17,150 yang bermaksud ia sesuatu dot sesuatu yang dot dot sesuatu sesuatu. 400 00:18:17,150 --> 00:18:21,980 Dan setiap orang-orang yang berlaku somethings menjadi nombor antara 0 dan 255. 401 00:18:21,980 --> 00:18:26,710 >> Berdasarkan kepada lima minggu plus CS50, jika nombor-nombor ini setiap julat 0-255, 402 00:18:26,710 --> 00:18:28,713 berapa banyak bit adalah setiap mereka tanda-tanda nombor? 403 00:18:28,713 --> 00:18:29,420 >> PENONTON: Lapan. 404 00:18:29,420 --> 00:18:30,100 >> DAVID J. MALAN: Ia mendapat menjadi lapan. 405 00:18:30,100 --> 00:18:31,933 Jadi secara keseluruhan, berapa ramai bit adalah alamat IP? 406 00:18:31,933 --> 00:18:32,710 PENONTON: 32. 407 00:18:32,710 --> 00:18:33,820 >> DAVID J. MALAN: Jadi 32. 408 00:18:33,820 --> 00:18:35,830 8 campur 8 campur 8 campur 8 adalah 32. 409 00:18:35,830 --> 00:18:38,767 Berapa banyak jumlah alamat IP boleh dikekalkan di dunia? 410 00:18:38,767 --> 00:18:39,600 PENONTON: 4 bilion. 411 00:18:39,600 --> 00:18:42,410 DAVID J. MALAN: Jadi kira-kira empat bilion kerana itulah 2 kuasa 32. 412 00:18:42,410 --> 00:18:44,410 Jenis dan jika anda tidak boleh sudah grok itu dalam fikiran anda, 413 00:18:44,410 --> 00:18:47,470 hanya tahu bahawa nilai-nilai 32-bit boleh menjadi sebesar 4000000000 414 00:18:47,470 --> 00:18:49,140 jika itu semua nilai positif. 415 00:18:49,140 --> 00:18:52,500 Ini bermakna ada 4 bilion mungkin alamat IP di dunia. 416 00:18:52,500 --> 00:18:55,090 >> Dan cerita lucu, kami jenis berjalan keluar dari mereka. 417 00:18:55,090 --> 00:18:59,720 Dan sebenarnya ia adalah satu masalah yang besar kerana dunia juga melihat masalah ini akan datang, 418 00:18:59,720 --> 00:19:03,639 tetapi tidak semestinya memberi maklum balas kepada dengan cara yang paling cepat mungkin. 419 00:19:03,639 --> 00:19:05,680 Dan sesungguhnya, sebaik sahaja anda telah selesai CS50 dan mula 420 00:19:05,680 --> 00:19:06,950 memberi perhatian dalam dunia teknologi, anda akan 421 00:19:06,950 --> 00:19:08,520 lihat ini adalah sangat biasa bertema. 422 00:19:08,520 --> 00:19:12,260 >> Sebagai contoh, jika kita benar-benar sekolah lama pada masa kini, Y2K. 423 00:19:12,260 --> 00:19:13,570 Yang tidak benar-benar satu kejutan. 424 00:19:13,570 --> 00:19:15,700 Seperti semua orang tahu untuk 1,000 tahun yang yang 425 00:19:15,700 --> 00:19:20,250 was-- lebih dari years-- ribu yang yang akhirnya akan berlaku. 426 00:19:20,250 --> 00:19:23,295 Namun, kita bertindak balas kepadanya amat di saat akhir. 427 00:19:23,295 --> 00:19:24,420 Dan itu berlaku lagi. 428 00:19:24,420 --> 00:19:26,740 Jadi hari ini kita akan bercakap tentang IP versi 4. 429 00:19:26,740 --> 00:19:29,250 Tetapi tahu bahawa dunia akhirnya mendapat 430 00:19:29,250 --> 00:19:31,590 sekitar untuk menaik taraf kepada sesuatu yang dinamakan IPv6, 431 00:19:31,590 --> 00:19:34,540 yang bukannya 32-bit alamat, sesiapa uses-- 432 00:19:34,540 --> 00:19:36,443 mahu mengambil tekaan, berapa banyak bit? 433 00:19:36,443 --> 00:19:37,310 >> PENONTON: 64? 434 00:19:37,310 --> 00:19:38,380 >> DAVID J. MALAN: tekaan Baik, tetapi tiada. 435 00:19:38,380 --> 00:19:39,975 Kami akhirnya cuba untuk mendapatkan lebih awal daripada keluk. 436 00:19:39,975 --> 00:19:40,558 >> PENONTON: 128. 437 00:19:40,558 --> 00:19:43,490 DAVID J. MALAN: 128, yang adalah sejumlah besar freaking 438 00:19:43,490 --> 00:19:46,250 alamat IP, kerana yang seperti kali 2, kali 2, 439 00:19:46,250 --> 00:19:49,620 kali 2, banyak kali berdua-dua dari 4 bilion. 440 00:19:49,620 --> 00:19:50,530 >> Jadi, jika ingin tahu. 441 00:19:50,530 --> 00:19:54,110 Ternyata out-- dan saya googled ini untuk mencari ini out-- komputer Yale, 442 00:19:54,110 --> 00:19:58,910 di sini di Yale, cenderung untuk memulakan dengan ini numbers-- sesuatu 130,132 dot, 443 00:19:58,910 --> 00:20:00,669 dan 128,36 dot sesuatu. 444 00:20:00,669 --> 00:20:02,710 Tetapi ada pasti pengecualian secara menyeluruh 445 00:20:02,710 --> 00:20:05,334 bergantung kepada apa yang jabatan dan bangunan dan kampus anda berada di. 446 00:20:05,334 --> 00:20:09,310 Harvard cenderung untuk mempunyai 140,247 atau 128,103. 447 00:20:09,310 --> 00:20:11,530 Dan ini memanglah maklumat tidak berguna, 448 00:20:11,530 --> 00:20:13,260 tetapi ia adalah sesuatu yang anda mungkin perasan sekarang. 449 00:20:13,260 --> 00:20:15,593 Apabila anda mula poking sekitar tetapan pada komputer anda, 450 00:20:15,593 --> 00:20:18,540 anda mungkin mula melihat ini jenis corak tidak lama lagi. 451 00:20:18,540 --> 00:20:23,470 >> Tetapi apabila anda berada di rumah dan mempunyai Apple AirPort, atau peranti Linksys, 452 00:20:23,470 --> 00:20:26,560 atau D-Link, atau apa sahaja ibu bapa atau adik-beradik anda yang dipasang 453 00:20:26,560 --> 00:20:28,890 di rumah anda, baik apa yang anda mungkin mempunyai 454 00:20:28,890 --> 00:20:30,800 adalah apa yang dikenali sebagai alamat IP persendirian. 455 00:20:30,800 --> 00:20:34,850 Inilah sebenarnya yang bagus, penyelesaian sementara 456 00:20:34,850 --> 00:20:38,050 kepada masalah berjalan pendek pada alamat IP. 457 00:20:38,050 --> 00:20:40,382 >> Dan apa yang anda boleh lakukan dengan rangkaian rumah, typically-- 458 00:20:40,382 --> 00:20:42,340 dan terus terang, walaupun Yale dan Harvard mula 459 00:20:42,340 --> 00:20:46,840 untuk melakukan ini dalam areas-- berbeza adalah anda boleh memberikan sejumlah besar komputer 460 00:20:46,840 --> 00:20:50,360 satu alamat IP selagi anda meletakkan alat khas di hadapan mereka, 461 00:20:50,360 --> 00:20:52,410 sesuatu yang dipanggil router, atau ia boleh dipanggil 462 00:20:52,410 --> 00:20:54,060 seorang proksi atau apa-apa bilangan perkara-perkara lain. 463 00:20:54,060 --> 00:20:56,710 Tetapi peranti tertentu yang mempunyai yang satu alamat IP. 464 00:20:56,710 --> 00:20:59,450 Dan kemudian di belakang peranti, dalam bangunan, 465 00:20:59,450 --> 00:21:03,030 di dalam sebuah rumah atau pangsapuri, boleh apa-apa bilangan komputer, semua yang 466 00:21:03,030 --> 00:21:06,460 mempunyai alamat IP yang bermula dengan salah satu daripada angka ini di sini. 467 00:21:06,460 --> 00:21:08,590 Dan selagi komputer yang tahu bagaimana untuk menukar 468 00:21:08,590 --> 00:21:10,900 alamat awam untuk alamat persendirian, 469 00:21:10,900 --> 00:21:13,340 segala-galanya boleh menyusun kerja seperti yang diharapkan. 470 00:21:13,340 --> 00:21:17,290 >> Tetapi akas bagi ini adalah bahawa jika anda berada di rumah dan anda mempunyai adik-beradik, 471 00:21:17,290 --> 00:21:19,650 dan kedua-dua anda melayari laman web tertentu, 472 00:21:19,650 --> 00:21:23,520 laman web yang tidak tahu jika ia adalah anda atau adik-beradik anda melawat laman web, 473 00:21:23,520 --> 00:21:26,780 kerana anda kelihatan yang sama orang kerana semua data anda 474 00:21:26,780 --> 00:21:30,050 sedang melalui router yang atau bahawa titik pusat. 475 00:21:30,050 --> 00:21:32,220 >> Tetapi yang cukup pada butir-butir tahap yang lebih rendah. 476 00:21:32,220 --> 00:21:37,770 Mari kita lihat pada alamat IP bagaimana kadang-kadang datang mungkin dalam media 477 00:21:37,770 --> 00:21:41,370 dan bagaimana kita boleh mula untuk merosakkan, terus-terang, lebih rancangan untuk anda. 478 00:21:41,370 --> 00:21:45,010 Jika kita boleh malap lampu untuk beberapa saat. 479 00:21:45,010 --> 00:21:46,550 >> [VIDEO MAIN SEMULA] 480 00:21:46,550 --> 00:21:49,310 >> -Ia Adalah satu 32-bit pada IPP 4 alamat. 481 00:21:49,310 --> 00:21:50,650 >> -IP ES internet-- 482 00:21:50,650 --> 00:21:52,800 >> Rangkaian -Daftar, Rangkaian persendirian Tamia ini. 483 00:21:52,800 --> 00:22:05,670 484 00:22:05,670 --> 00:22:08,145 Dia begitu menakjubkan. 485 00:22:08,145 --> 00:22:09,630 -Ayuh Charlie. 486 00:22:09,630 --> 00:22:11,750 DAVID J. MALAN: Ia alamat cermin IP. 487 00:22:11,750 --> 00:22:15,093 Dia membiarkan kita menonton yang dia lakukan dalam masa sebenar. 488 00:22:15,093 --> 00:22:16,285 >> [AKHIR MAIN SEMULA] 489 00:22:16,285 --> 00:22:17,130 >> DAVID J. MALAN: OK. 490 00:22:17,130 --> 00:22:18,480 Jadi beberapa masalah dengan ini. 491 00:22:18,480 --> 00:22:22,740 Jadi salah, apa yang kita cari di sini pada skrin 492 00:22:22,740 --> 00:22:25,290 adalah kod yang ditulis dalam bahasa dipanggil Objektif-C, 493 00:22:25,290 --> 00:22:28,020 yang jenis pengganti kepada bahasa C yang kita lakukan. 494 00:22:28,020 --> 00:22:30,150 Ini sama sekali tiada kaitan dengan pengaturcaraan. 495 00:22:30,150 --> 00:22:32,399 Malah, seperti yang terbaik yang saya boleh beritahu, ini adalah program lukisan 496 00:22:32,399 --> 00:22:38,360 bahawa seseorang turun dari internet entah bagaimana melibatkan krayon. 497 00:22:38,360 --> 00:22:43,660 >> Mungkin kurang mengerikan adalah bahawa alamat IP ini, sah atau tidak sah? 498 00:22:43,660 --> 00:22:44,520 >> PENONTON: tidak sah. 499 00:22:44,520 --> 00:22:48,479 >> DAVID J. MALAN: tidak sah, kerana 275 adalah, sudah tentu, tidak antara 0 dan 255. 500 00:22:48,479 --> 00:22:51,770 Itu juga mungkin OK walaupun, kerana anda tidak mahu sekumpulan orang gila 501 00:22:51,770 --> 00:22:54,790 yang seperti berhenti TV pada mereka TiVos dan kemudian melawat IP untuk melihat 502 00:22:54,790 --> 00:22:56,290 jika ada sebenarnya sesuatu di sana. 503 00:22:56,290 --> 00:22:58,200 Supaya seseorang yang sedikit kurang mengerikan. 504 00:22:58,200 --> 00:23:00,990 Tetapi sedar itu juga adalah semacam di sekeliling kita. 505 00:23:00,990 --> 00:23:04,980 >> Jadi, sudah tentu, tiada seorang pun daripada kami yang pernah benar-benar menaip alamat angka 506 00:23:04,980 --> 00:23:06,410 ke pelayar kami. 507 00:23:06,410 --> 00:23:09,580 Ia akan menjadi jenis perkara yang tidak baik jika Google, untuk melawat Google, 508 00:23:09,580 --> 00:23:15,060 anda terpaksa pergi ke 123.46.57.89. 509 00:23:15,060 --> 00:23:17,007 Dan seluruh dunia mempunyai hanya ingat bahawa. 510 00:23:17,007 --> 00:23:19,090 Dan terus terang, kami telah baik hati untuk melihat isu ini sebelum ini. 511 00:23:19,090 --> 00:23:24,130 Kembali pada hari apabila orang tidak mempunyai telefon bimbit dan senarai kenalan, 512 00:23:24,130 --> 00:23:27,640 dan syarikat-syarikat sebenarnya still-- sebenarnya, Saya rasa syarikat masih mempunyai 800 513 00:23:27,640 --> 00:23:30,600 nombor dan like-- tetapi anda umumnya melihat nombor diiklankan 514 00:23:30,600 --> 00:23:36,480 sebagai 1-800-COLLECT, C-O-L-L-E-C-T. Kerana tidak ada yang benar-benar boleh ingat, 515 00:23:36,480 --> 00:23:39,754 apabila melihat iklan di dalam bas atau papan iklan, apa yang orang nombor adalah, 516 00:23:39,754 --> 00:23:42,420 tetapi mereka boleh mungkin, dengan lebih tinggi kebarangkalian, ingat perkataan. 517 00:23:42,420 --> 00:23:44,530 >> Oleh itu, kita pakai yang sama jenis sistem di dunia 518 00:23:44,530 --> 00:23:48,290 internet di mana ada sistem nama domain supaya kita manusia boleh 519 00:23:48,290 --> 00:23:52,340 menaip google.com, facebook.com, yale.edu, harvard.edu, 520 00:23:52,340 --> 00:23:56,140 dan biarkan angka komputer yang apa IP berkaitan 521 00:23:56,140 --> 00:23:58,480 alamat adalah nama yang diberikan. 522 00:23:58,480 --> 00:24:01,620 >> Dan cara anda melakukan ini dalam dunia sebenar adalah bahawa untuk $ 10 setahun, 523 00:24:01,620 --> 00:24:05,900 mungkin $ 50 setahun, anda boleh membeli domain nama, atau benar-benar menyewa nama domain. 524 00:24:05,900 --> 00:24:09,860 Kemudian sesiapa yang anda membayar untuk menyewa bahawa nama domain, 525 00:24:09,860 --> 00:24:14,069 anda memberitahu mereka yang di dunia mengetahui apa alamat IP anda. 526 00:24:14,069 --> 00:24:16,360 Dan kita tidak akan pergi ke ini butir-butir, tetapi ramai daripada anda 527 00:24:16,360 --> 00:24:18,750 mungkin mahu, akhir projek, untuk benar-benar mendaftar 528 00:24:18,750 --> 00:24:22,120 untuk anda web hosting sendiri syarikat, sama ada secara percuma 529 00:24:22,120 --> 00:24:23,500 atau untuk beberapa dolar sebulan. 530 00:24:23,500 --> 00:24:26,100 Sebahagian daripada anda mungkin mahu membeli, beberapa dolar, nama domain anda sendiri, 531 00:24:26,100 --> 00:24:28,900 hanya untuk suka-suka atau untuk memulakan perniagaan atau laman web peribadi atau sebagainya. 532 00:24:28,900 --> 00:24:30,880 >> Dan sedar bahawa semua itu akan akhirnya 533 00:24:30,880 --> 00:24:35,260 mendidih ke anda memberitahu dunia apa alamat IP pelayan anda adalah. 534 00:24:35,260 --> 00:24:37,740 Dan kemudian DNS ini pelayan sebenarnya menjaga 535 00:24:37,740 --> 00:24:39,910 penyampaian maklumat kepada seluruh dunia. 536 00:24:39,910 --> 00:24:41,830 Jadi semua pelayan DNS mempunyai, dalam jangka pendek, di dalam 537 00:24:41,830 --> 00:24:44,780 ingatan adalah seperti sama dengan hamparan Google 538 00:24:44,780 --> 00:24:49,420 atau spreadsheet Excel dengan sekurang-kurangnya dua tiang, salah satu yang mempunyai nama, 539 00:24:49,420 --> 00:24:52,100 seperti harvard.edu, dan yale.edu dan google.com. 540 00:24:52,100 --> 00:24:55,870 Dan lajur lain mempunyai sepadan alamat IP atau IP 541 00:24:55,870 --> 00:24:56,382 alamat. 542 00:24:56,382 --> 00:24:57,590 Dan kita sebenarnya boleh melihat ini. 543 00:24:57,590 --> 00:24:59,881 Maka pada Mac-- saya dan anda boleh melakukan ini pada komputer Windows 544 00:24:59,881 --> 00:25:04,330 sebagai well-- jika saya membuka tetingkap terminal di sini, agak seperti dalam CD50 IDE, 545 00:25:04,330 --> 00:25:08,190 kebanyakan komputer mempunyai arahan yang dipanggil nslookup, nama pelayan mencari. 546 00:25:08,190 --> 00:25:12,380 Dan jika saya menaip sesuatu dalam seperti yale.edu dan tekan Enter, apa 547 00:25:12,380 --> 00:25:19,250 Saya perlu melihat jika rangkaian saya bekerjasama sebagai ia lakukan untuk pelbagai ujian sebelum kelas 548 00:25:19,250 --> 00:25:24,584 began-- mari kita cuba google.com. 549 00:25:24,584 --> 00:25:26,390 Sudah tentu kini tiada apa yang bekerja. 550 00:25:26,390 --> 00:25:27,190 Itu yang besar. 551 00:25:27,190 --> 00:25:30,660 Baiklah, berdiri untuk satu masa. 552 00:25:30,660 --> 00:25:32,100 nslookup google.com. 553 00:25:32,100 --> 00:25:35,570 554 00:25:35,570 --> 00:25:38,660 >> Nah, mari kita lihat jika internet-- tidak sebenar. 555 00:25:38,660 --> 00:25:39,700 Itulah yang berlaku. 556 00:25:39,700 --> 00:25:43,090 Oh tuhan saya, baiklah. 557 00:25:43,090 --> 00:25:45,490 Wi-Fi patah. 558 00:25:45,490 --> 00:25:47,410 >> Hey, ingin tahu apa yang alamat IP saya? 559 00:25:47,410 --> 00:25:49,722 Baiklah. 560 00:25:49,722 --> 00:25:50,820 YaleSecure. 561 00:25:50,820 --> 00:25:53,330 Ini adalah bagaimana anda menyelesaikan masalah perkara sebagai seorang saintis komputer. 562 00:25:53,330 --> 00:25:54,617 Kami menghidupkan Wi-Fi di luar. 563 00:25:54,617 --> 00:25:57,480 564 00:25:57,480 --> 00:25:59,450 OKAY. 565 00:25:59,450 --> 00:26:02,610 >> Dan sebenarnya, Scaz, adakah anda keberatan pembalakan kita ke dalam satu yang selamat? 566 00:26:02,610 --> 00:26:06,246 Jika tidak lebih banyak ujian ialah- OK, terima kasih anda Yale-- atau hampir putus. 567 00:26:06,246 --> 00:26:07,370 Saya hendak pergi YaleSecure. 568 00:26:07,370 --> 00:26:09,880 569 00:26:09,880 --> 00:26:11,870 Oh, dan mungkin kita akan menjadi OK. 570 00:26:11,870 --> 00:26:12,686 Mungkin kami kembali. 571 00:26:12,686 --> 00:26:16,810 572 00:26:16,810 --> 00:26:19,733 Dan itulah bagaimana, kerana komputer saintis menetapkan komputer. 573 00:26:19,733 --> 00:26:22,000 [Tepuk tangan] 574 00:26:22,000 --> 00:26:23,220 Baiklah. 575 00:26:23,220 --> 00:26:27,160 Jadi di mana saya berada dalam ini apa yang dikenali sebagai tetingkap terminal, 576 00:26:27,160 --> 00:26:32,270 dan jika saya nslookup yale.edu, ada kita pergi. 577 00:26:32,270 --> 00:26:38,350 Jadi saya kembali pertama alamat IP pelayan DNS yang komputer riba saya menggunakan. 578 00:26:38,350 --> 00:26:41,610 Jadi sebagai tambahan kepada pelayan DHCP yang kita bercakap tentang masa yang lalu memberitahu 579 00:26:41,610 --> 00:26:44,720 apa laptop saya IP saya alamat, bahawa pelayan DHCP 580 00:26:44,720 --> 00:26:46,860 juga memberitahu saya apa yang pelayan DNS untuk digunakan. 581 00:26:46,860 --> 00:26:48,860 Jika tidak, saya akan secara manual menaip ini. 582 00:26:48,860 --> 00:26:50,359 >> Tetapi itu tidak semua yang menarik. 583 00:26:50,359 --> 00:26:54,310 Apa yang saya mengambil berat tentang adalah bahawa ini adalah Alamat IP laman web Yale nampaknya. 584 00:26:54,310 --> 00:26:55,470 Jadi sebenarnya, mari kita cuba ini. 585 00:26:55,470 --> 00:27:02,710 Biar saya naik ke dalam pelayar dan pergi http: //, dan kemudian bahawa alamat IP, 586 00:27:02,710 --> 00:27:04,220 dan tekan Enter. 587 00:27:04,220 --> 00:27:06,700 Marilah kita lihat. 588 00:27:06,700 --> 00:27:09,587 Itulah bagaimana lagi yang anda boleh melawat laman web Yale. 589 00:27:09,587 --> 00:27:10,920 Kini ia bukan semua yang tidak akan dilupakan. 590 00:27:10,920 --> 00:27:12,220 Seperti, pra-Frosh mungkin tidak akan 591 00:27:12,220 --> 00:27:15,310 ingat alamat tertentu ini jika diberitahu untuk melawat di sana selepas melawat. 592 00:27:15,310 --> 00:27:16,580 Tetapi ia seolah-olah untuk bekerja. 593 00:27:16,580 --> 00:27:21,179 Dan sebagainya DNS benar-benar hanya membolehkan kita untuk mempunyai banyak lebih alamat mesra manusia. 594 00:27:21,179 --> 00:27:23,220 Tapi mereka tidak semestinya hanya menghasilkan satu jawapan. 595 00:27:23,220 --> 00:27:25,640 >> Malah, apabila anda seorang benar-benar syarikat teknologi besar, 596 00:27:25,640 --> 00:27:27,620 anda mungkin ingin mempunyai banyak pelayan. 597 00:27:27,620 --> 00:27:29,027 Dan walaupun ini adalah mengelirukan. 598 00:27:29,027 --> 00:27:31,110 Jadi Yale mungkin tidak mempunyai hanya satu pelayan web. 599 00:27:31,110 --> 00:27:34,150 Google mungkin tidak mempunyai hanya 10 atau lebih pelayan web. 600 00:27:34,150 --> 00:27:36,960 Google terutamanya mungkin mempunyai beribu-ribu pelayan web 601 00:27:36,960 --> 00:27:40,030 di seluruh dunia yang boleh bertindak balas permintaan daripada orang seperti kami. 602 00:27:40,030 --> 00:27:43,870 >> Tetapi mereka juga menggunakan teknologi yang dipanggil pengimbangan beban, yang cerita panjang pendek, 603 00:27:43,870 --> 00:27:48,810 mempunyai hanya beberapa peranti di dunia menyebarkan beban di lebih pelayan. 604 00:27:48,810 --> 00:27:52,320 Jadi ia adalah jenis seperti web labah-labah jika anda akan menghantar permintaan. 605 00:27:52,320 --> 00:27:54,380 Tetapi untuk sekarang, semua yang menarik untuk hari ini 606 00:27:54,380 --> 00:27:56,870 ialah nama domain seperti google.com walaupun boleh 607 00:27:56,870 --> 00:28:00,100 mempunyai berbilang alamat IP seperti itu. 608 00:28:00,100 --> 00:28:04,610 >> Tetapi bagaimana semua data kita sebenarnya mendapatkan belakang dan sebagainya maka pada akhirnya? 609 00:28:04,610 --> 00:28:08,320 Nah, ternyata bahawa ada ini perkara yang dipanggil router di internet. 610 00:28:08,320 --> 00:28:10,980 Dan apa yang router kepada tahap yang anda sudah tahu? 611 00:28:10,980 --> 00:28:13,730 Dan saya telah menggunakan perkataan pasangan kali dalam konteks rumah, 612 00:28:13,730 --> 00:28:17,155 tetapi dalam bahasa yang mudah, apakah router lakukan? 613 00:28:17,155 --> 00:28:18,780 Berikan saya hanya tekaan berdasarkan namanya? 614 00:28:18,780 --> 00:28:20,082 >> PENONTON: Jadi jalan atau jalan yang? 615 00:28:20,082 --> 00:28:21,790 DAVID J. MALAN: Jadi ia adalah satu jalan atau jalan. 616 00:28:21,790 --> 00:28:23,980 Jadi laluan adalah jalan yang atau jalan, sama sekali. 617 00:28:23,980 --> 00:28:27,000 Dan router, jadi peranti yang sebenarnya maklumat laluan, 618 00:28:27,000 --> 00:28:29,690 akan memindahkan data antara titik A dan B. 619 00:28:29,690 --> 00:28:31,920 >> Dan sebagainya dalam fact-- dan ini mungkin apabila 620 00:28:31,920 --> 00:28:34,510 anda Google gambaran router di dunia, semua yang anda dapat 621 00:28:34,510 --> 00:28:35,900 adalah gambar rajah pemasaran cheesy. 622 00:28:35,900 --> 00:28:38,550 Dan sebagainya ini adalah jenis yang paling seorang wakil saya dapat mencari 623 00:28:38,550 --> 00:28:39,841 yang kelihatan sedikit menarik. 624 00:28:39,841 --> 00:28:44,170 Setiap titik atau kacamata harapan di seluruh dunia mewakili router. 625 00:28:44,170 --> 00:28:47,210 Dan setiap daripada mereka mempunyai garis antara beberapa router lain. 626 00:28:47,210 --> 00:28:49,090 >> Kerana sesungguhnya, ada beribu-ribu, mungkin 627 00:28:49,090 --> 00:28:52,560 berjuta-juta router sekitar dunia, ada yang berada di dalam rumah kita 628 00:28:52,560 --> 00:28:56,070 dan di kampus kita, tetapi banyak yang dimiliki oleh syarikat-syarikat besar 629 00:28:56,070 --> 00:29:00,250 dan saling supaya jika saya ingin menghantar beberapa data dari sini di Yale 630 00:29:00,250 --> 00:29:04,430 rumah kembali ke Cambridge, Yale mungkin tidak mempunyai satu kabel, sudah tentu, 631 00:29:04,430 --> 00:29:05,650 pergi terus ke Harvard. 632 00:29:05,650 --> 00:29:07,399 Dan Yale tidak mempunyai satu kabel akan 633 00:29:07,399 --> 00:29:10,010 ke MIT, atau untuk Stanford, atau Berkeley, atau untuk Google, 634 00:29:10,010 --> 00:29:11,820 atau apa-apa bilangan destinasi. 635 00:29:11,820 --> 00:29:14,760 >> Sebaliknya, Yale dan Harvard, dan orang lain di internet 636 00:29:14,760 --> 00:29:17,610 tidak mempunyai satu atau lebih router berkaitan dengannya, mungkin 637 00:29:17,610 --> 00:29:18,810 di pinggir kampus. 638 00:29:18,810 --> 00:29:21,690 Supaya apabila data saya mahu untuk meninggalkan kampus Yale, 639 00:29:21,690 --> 00:29:24,770 ia pergi ke penghala terdekat, seperti yang digambarkan oleh salah satu daripada titik ini. 640 00:29:24,770 --> 00:29:27,940 Dan kemudian bahawa angka-angka router sama ada untuk menghantarnya cara ini, atau cara ini, 641 00:29:27,940 --> 00:29:33,440 atau cara ini, atau cara ini berdasarkan di atas meja lain dalam ingatan, 642 00:29:33,440 --> 00:29:36,870 satu lagi fail Excel atau Google spreadsheet bahawa dalam satu ruangan 643 00:29:36,870 --> 00:29:41,315 berkata, jika alamat IP anda bermula dengan nombor satu, pergi dengan cara ini. 644 00:29:41,315 --> 00:29:43,690 Jika alamat IP anda bermula dengan nombor dua, pergi dengan cara itu. 645 00:29:43,690 --> 00:29:47,040 Dan supaya anda boleh memecahkan ia ke bawah berangka mempunyai router penghantaran 646 00:29:47,040 --> 00:29:49,040 data setiap cara. 647 00:29:49,040 --> 00:29:51,419 >> Dan kita boleh jenis melihat ini juga. 648 00:29:51,419 --> 00:29:54,210 Mari kita pergi ke hadapan ke dalam terminal ini tetingkap lagi, dan biarlah saya pergi ke hadapan 649 00:29:54,210 --> 00:30:00,700 dan mengesan laluan ke, katakan, www.mit.edu, 650 00:30:00,700 --> 00:30:02,970 yang merupakan beberapa ratus batu jauhnya. 651 00:30:02,970 --> 00:30:04,500 Itu adalah benar-benar celaka cepat. 652 00:30:04,500 --> 00:30:06,290 >> Jadi apa yang berlaku? 653 00:30:06,290 --> 00:30:10,360 Jadi, dalam tujuh langkah, dan dalam masa empat milisaat, 654 00:30:10,360 --> 00:30:14,660 Saya menghantar data melalui internet dari sini di Yale untuk MIT. 655 00:30:14,660 --> 00:30:18,240 Setiap baris ini, anda boleh mungkin rasa kini mewakili apa? 656 00:30:18,240 --> 00:30:19,060 >> PENONTON: router A. 657 00:30:19,060 --> 00:30:20,101 >> DAVID J. MALAN: router A. 658 00:30:20,101 --> 00:30:24,090 Maka sesungguhnya, ia kelihatan seperti ada kira-kira tujuh atau lebih router, 659 00:30:24,090 --> 00:30:29,350 atau enam router di antara saya fizikal di Yale undang-undang sekolah di sini 660 00:30:29,350 --> 00:30:31,612 dan laman web MIT di sana. 661 00:30:31,612 --> 00:30:34,570 Dan apa yang kita boleh memungut dari ini adalah sebagai follows-- dan biarlah saya membersihkannya sehingga. 662 00:30:34,570 --> 00:30:38,180 Saya akan jalankan dengan perintah hujah garis -q 1 untuk hanya mengatakan, 663 00:30:38,180 --> 00:30:39,300 hanya memberi saya satu pertanyaan. 664 00:30:39,300 --> 00:30:40,800 Secara lalai, laluan surih tidak tiga. 665 00:30:40,800 --> 00:30:42,350 Dan itulah sebabnya kita lihat tandan nombor. 666 00:30:42,350 --> 00:30:44,850 Saya mahu melihat lebih sedikit nombor hanya untuk menjaga bersih output. 667 00:30:44,850 --> 00:30:46,280 Dan mari kita lihat apa yang berlaku. 668 00:30:46,280 --> 00:30:49,220 >> Jadi untuk apa jua alasan, seseorang di Yale pemikiran 669 00:30:49,220 --> 00:30:54,130 ia akan menjadi lucu untuk memanggil anda lalai arubacentral router, yang 670 00:30:54,130 --> 00:30:57,920 kini dalam vlan atau maya LAN, kawasan tempatan maya 671 00:30:57,920 --> 00:30:59,810 rangkaian 30-- supaya anda mungkin mempunyai sekurang-kurangnya 672 00:30:59,810 --> 00:31:03,050 29 router.net.yale.internal others--. 673 00:31:03,050 --> 00:31:06,660 Dan .internal di sini adalah jenis palsu domain peringkat atas dimaksudkan untuk digunakan hanya 674 00:31:06,660 --> 00:31:07,210 di kampus. 675 00:31:07,210 --> 00:31:10,335 Dan perhatikan alamat IP yang sama itu router, di mana sahaja ia berada di sini 676 00:31:10,335 --> 00:31:13,920 di kampus, adalah 172.28.204.129. 677 00:31:13,920 --> 00:31:17,470 Dan ia mengambil masa 36 milisaat untuk pergi dari sini ke sana. 678 00:31:17,470 --> 00:31:18,050 >> Cerita lucu. 679 00:31:18,050 --> 00:31:19,716 Kami akan kembali kepada yang dalam hanya seketika. 680 00:31:19,716 --> 00:31:22,920 Tetapi kini kedua router-- untuk yang arubacentral nampaknya 681 00:31:22,920 --> 00:31:25,790 mempunyai beberapa jenis fizikal sambungan paling likely-- 682 00:31:25,790 --> 00:31:27,249 manusia tidak mengganggu menamakan ia. 683 00:31:27,249 --> 00:31:30,373 Manusia Yale tidak mengganggu menamakan kerana ia adalah di dalam rangkaian anda 684 00:31:30,373 --> 00:31:30,940 ia seolah-olah. 685 00:31:30,940 --> 00:31:32,520 Dan oleh itu hanya mempunyai alamat IP. 686 00:31:32,520 --> 00:31:34,660 >> Tetapi router ketiga di sini pada rangkaian Yale 687 00:31:34,660 --> 00:31:36,700 itu mungkin sedikit lebih jauh masih 688 00:31:36,700 --> 00:31:41,330 dipanggil cen10g apa sahaja yang asr.net.yale.internal. 689 00:31:41,330 --> 00:31:43,040 Dan ia juga mempunyai alamat IP. 690 00:31:43,040 --> 00:31:44,990 >> Sekarang kenapa nombor-nombor jenis turun naik? 691 00:31:44,990 --> 00:31:47,890 2.9, 1.4, 36? 692 00:31:47,890 --> 00:31:48,840 Penghala mendapatkan sibuk. 693 00:31:48,840 --> 00:31:50,420 Dan mereka mendapat sesak dan disokong. 694 00:31:50,420 --> 00:31:53,200 Ada beribu-ribu orang di ini kampus menggunakan internet sekarang. 695 00:31:53,200 --> 00:31:56,050 Ada seratus orang dalam ini bilik menggunakan internet sekarang. 696 00:31:56,050 --> 00:31:59,030 >> Dan jadi apa yang berlaku adalah bahawa router mungkin akan sesak. 697 00:31:59,030 --> 00:32:01,350 Dan sebagainya masa-masa mungkin turun naik sedikit. 698 00:32:01,350 --> 00:32:04,620 Jadi itulah sebabnya mereka tidak semestinya meningkatkan terus terang. 699 00:32:04,620 --> 00:32:07,510 >> Tetapi hal-hal yang sejenis menarik dalam langkah empat. 700 00:32:07,510 --> 00:32:13,040 Rupa-rupanya antara Yale dan langkah empat adalah hop lain. 701 00:32:13,040 --> 00:32:16,480 Dan di mana router dalam langkah empat mungkin? 702 00:32:16,480 --> 00:32:17,410 >> PENONTON: [didengar] 703 00:32:17,410 --> 00:32:19,410 >> DAVID J. MALAN: JFK mungkin, mungkin di lapangan terbang. 704 00:32:19,410 --> 00:32:21,950 Tetapi untuk apa jua alasan, pentadbir sistem, jadi 705 00:32:21,950 --> 00:32:24,140 Geeks yang berjalan pelayan untuk tahun telah menamakan router 706 00:32:24,140 --> 00:32:25,600 selepas kod lapangan terbang terdekat. 707 00:32:25,600 --> 00:32:27,420 Jadi JFK mungkin bermakna ia hanya di suatu tempat 708 00:32:27,420 --> 00:32:29,970 di New York, mungkin di Manhattan atau salah satu daripada daerah. 709 00:32:29,970 --> 00:32:34,460 nyc2 menandakan, mungkin, satu lagi router itu di suatu tempat di New York. 710 00:32:34,460 --> 00:32:37,140 >> Saya kurang tahu di mana berturut-turut enam di sini, bilangan router enam. 711 00:32:37,140 --> 00:32:40,110 quest.net ISP besar, pembekal perkhidmatan internet, 712 00:32:40,110 --> 00:32:43,240 yang menyediakan sambungan internet ke tempat-tempat besar seperti Yale dan lain-lain. 713 00:32:43,240 --> 00:32:47,110 Dan kemudian yang terakhir ini, ia kelihatan seperti itu MIT tidak walaupun 714 00:32:47,110 --> 00:32:50,180 mempunyai laman web mereka sendiri di Cambridge semestinya, 715 00:32:50,180 --> 00:32:52,090 tetapi mereka telah sumber luar laman web mereka, 716 00:32:52,090 --> 00:32:55,150 atau sekurang-kurangnya pelayan fizikal, kepada sebuah syarikat bernama Akamai. 717 00:32:55,150 --> 00:32:57,940 Dan Akamai sebenarnya sampai jalan dari MIT di Cambridge 718 00:32:57,940 --> 00:32:58,790 ia ternyata. 719 00:32:58,790 --> 00:33:02,360 >> Tetapi sedar juga bahawa walaupun pemikiran anda akan www.mit.edu, 720 00:33:02,360 --> 00:33:05,200 kita benar-benar boleh dihantar mana-mana sahaja di dunia. 721 00:33:05,200 --> 00:33:06,960 >> Dan mari kita lihat di suatu tempat tempat lain di dunia. 722 00:33:06,960 --> 00:33:09,240 Biar saya pergi ke hadapan dan membersihkan skrin ini dan sebaliknya 723 00:33:09,240 --> 00:33:15,240 mengesan laluan, hanya sekali, jadi bertanya satu, untuk www.cnn.co.jp, 724 00:33:15,240 --> 00:33:18,390 laman utama Jepun untuk CNN, laman web berita. 725 00:33:18,390 --> 00:33:20,660 Dan jika saya tekan Enter sekarang, mari kita lihat apa yang berlaku. 726 00:33:20,660 --> 00:33:23,610 Kami sekali lagi bermula dari arubacentral. 727 00:33:23,610 --> 00:33:26,510 Kami kemudian pergi ke router bernama, beberapa lagi. 728 00:33:26,510 --> 00:33:29,527 Oleh itu, ia mengambil masa selama 12 hop ke mendapatkan ke Jepun kali ini. 729 00:33:29,527 --> 00:33:30,860 Dan mari kita lihat apa yang kita boleh memungut. 730 00:33:30,860 --> 00:33:32,450 >> Hop Jadi sama, hop sama. 731 00:33:32,450 --> 00:33:35,170 Sedikit berbeza sekarang. 732 00:33:35,170 --> 00:33:36,380 Ini seseorang yang menarik. 733 00:33:36,380 --> 00:33:40,870 Jadi saya meneka sini, stamford1 ialah Beberapa bandar-bandar jauh di Connecticut juga. 734 00:33:40,870 --> 00:33:43,810 Ini router berturut-turut enam dan tujuh tidak mempunyai nama. 735 00:33:43,810 --> 00:33:46,370 Tetapi ini adalah jenis yang luar biasa. 736 00:33:46,370 --> 00:33:53,310 >> Jadi apa yang seolah-olah menjadi antara router dalam langkah tujuh dan lapan? 737 00:33:53,310 --> 00:33:54,760 Dan mengapa kamu mengatakan sebanyak? 738 00:33:54,760 --> 00:33:55,260 Ya? 739 00:33:55,260 --> 00:33:56,060 >> PENONTON: Ocean. 740 00:33:56,060 --> 00:33:57,640 >> DAVID J. MALAN: Mungkin lautan. 741 00:33:57,640 --> 00:34:01,366 Kita tahu yang benar seperti, intuitif, bukan? 742 00:34:01,366 --> 00:34:04,790 Tetapi kita boleh mengesahkan sebanyak jenis daripada jenis empirik mengapa? 743 00:34:04,790 --> 00:34:06,860 Apa yang telah berubah antara baris tujuh dan lapan? 744 00:34:06,860 --> 00:34:09,429 745 00:34:09,429 --> 00:34:14,739 >> Ia mengambil lebih banyak masa untuk pergi ke apa ini router bernama tujuh adalah, 746 00:34:14,739 --> 00:34:18,670 mungkin di suatu tempat di benua Amerika Syarikat, untuk melangkah lapan, 747 00:34:18,670 --> 00:34:22,639 yang mungkin di suatu tempat di Jepun berdasarkan nama domain Jp sana. 748 00:34:22,639 --> 00:34:25,719 Dan supaya orang-orang tambahan ratus sesuatu milisaat 749 00:34:25,719 --> 00:34:28,960 atau 90 atau lebih milisaat adalah hasil daripada data kami pergi 750 00:34:28,960 --> 00:34:31,100 atas badan cantik besar air. 751 00:34:31,100 --> 00:34:34,570 >> Sekarang ingin tahu, ia seolah-olah bahawa mungkin kabel yang berlaku di seluruh Amerika Syarikat. 752 00:34:34,570 --> 00:34:37,070 Jika kita benar-benar akan lebih Pantai Barat untuk mendapatkan ke Jepun, 753 00:34:37,070 --> 00:34:39,111 ia adalah jenis jalan panjang jika kita pergi dengan cara yang lain. 754 00:34:39,111 --> 00:34:41,400 Jadi ia tidak begitu jelas apa yang sedang berlaku secara fizikal. 755 00:34:41,400 --> 00:34:43,830 Tetapi hakikat bahawa setiap hop tambahan sesungguhnya 756 00:34:43,830 --> 00:34:46,020 mengambil ketara lagi daripada setiap lain, ia adalah 757 00:34:46,020 --> 00:34:50,440 pengesahan yang cukup baik bahawa ini CNN Pelayan web Jepun mungkin memang 758 00:34:50,440 --> 00:34:51,310 di Jepun. 759 00:34:51,310 --> 00:34:54,089 Dan ia sudah tentu lebih jauh jauh daripada MIT telah. 760 00:34:54,089 --> 00:34:56,380 Dan ia adalah diperhatikan juga, data anda tidak semestinya 761 00:34:56,380 --> 00:34:58,794 akan melakukan perjalanan yang jarak singkat. 762 00:34:58,794 --> 00:35:00,960 Malah, jika anda bermain-main dengan laluan surih di rumah 763 00:35:00,960 --> 00:35:04,170 hanya memilih laman web rawak, anda mungkin mendapati bahawa hanya untuk menghantar e-mel 764 00:35:04,170 --> 00:35:06,490 atau melawat laman web itulah di sini di New Haven, 765 00:35:06,490 --> 00:35:09,200 kadang-kadang data anda mungkin pertama mengambil jalan memutar, turun ke DC, 766 00:35:09,200 --> 00:35:10,450 dan kemudian datang kembali. 767 00:35:10,450 --> 00:35:12,860 Dan itu hanya kerana keputusan penghalaan dinamik 768 00:35:12,860 --> 00:35:14,650 bahawa komputer ini membuat. 769 00:35:14,650 --> 00:35:18,930 >> Kini hanya untuk keseronokan, pasukan pengeluaran dipotong salah satu video ini untuk kita 770 00:35:18,930 --> 00:35:20,807 hanya menjadi sedikit lebih ringkas. 771 00:35:20,807 --> 00:35:23,640 Tetapi untuk memberi kita rasa yang cepat sini-- dan kita boleh meninggalkan lampu pada-- 772 00:35:23,640 --> 00:35:32,363 tentang betapa banyak kabel adalah sebenarnya membawa semua data kami. 773 00:35:32,363 --> 00:35:33,029 [VIDEO MAIN SEMULA] 774 00:35:33,029 --> 00:35:36,023 [Bermain muzik] 775 00:35:36,023 --> 00:36:31,911 776 00:36:31,911 --> 00:36:32,777 [AKHIR MAIN SEMULA] 777 00:36:32,777 --> 00:36:35,860 DAVID J. MALAN: Semua video rangkaian mempunyai muzik berbunyi sejuk nampaknya. 778 00:36:35,860 --> 00:36:38,084 Jadi, itu untuk mendapatkan hanya satu rasa betapa banyak mempunyai 779 00:36:38,084 --> 00:36:39,500 telah berlaku di bawah hood. 780 00:36:39,500 --> 00:36:41,355 >> Tetapi mari kita lihat pada tahap rendah sedikit sekarang 781 00:36:41,355 --> 00:36:44,150 apa data sebenarnya menyeberangi mereka garis, 782 00:36:44,150 --> 00:36:46,720 dan juga akan secara wayarles di dalam bilik seperti ini. 783 00:36:46,720 --> 00:36:49,580 >> Jadi ternyata apabila anda meminta laman web, atau menghantar e-mel, 784 00:36:49,580 --> 00:36:53,670 atau menerima laman web, atau e-mel, atau mesej GChat, atau mesej Facebook, 785 00:36:53,670 --> 00:36:57,800 atau sebagainya, yang bukan sahaja satu sebahagian besar daripada bit mengalir secara wayarles 786 00:36:57,800 --> 00:37:00,600 melalui udara atau secara elektronik pada wayar. 787 00:37:00,600 --> 00:37:03,680 Sebaliknya, permintaan itu atau sambutan umumnya 788 00:37:03,680 --> 00:37:05,810 chunked sehingga menjadi kepingan yang berasingan. 789 00:37:05,810 --> 00:37:08,880 >> Jadi dalam erti kata lain, apabila anda mempunyai meminta untuk membuat komputer lain, 790 00:37:08,880 --> 00:37:10,980 atau anda kembali jawapan dari computer-- lain 791 00:37:10,980 --> 00:37:15,800 seperti rasa, misalnya, jika unfamiliar-- kerana terlalu ramai orang 792 00:37:15,800 --> 00:37:18,400 seolah-olah menjadi days-- ini jika tidak biasa dengan this-- 793 00:37:18,400 --> 00:37:20,200 Bukankah ini fellow-- rakan-rakan ini. 794 00:37:20,200 --> 00:37:23,950 Jadi andaikan ini adalah mesej bahawa Saya ingin menghantar kepada seseorang di belakang. 795 00:37:23,950 --> 00:37:28,930 Yang dalam yang belakang sedang menerima gambar Rick Astley hari ini? 796 00:37:28,930 --> 00:37:29,805 OK, apa nama anda? 797 00:37:29,805 --> 00:37:30,590 >> PENONTON: Cole. 798 00:37:30,590 --> 00:37:31,306 >> DAVID J. MALAN: Apa itu? 799 00:37:31,306 --> 00:37:31,672 >> PENONTON: Cole. 800 00:37:31,672 --> 00:37:32,040 >> DAVID J. MALAN: Holt? 801 00:37:32,040 --> 00:37:32,540 H-O? 802 00:37:32,540 --> 00:37:33,711 PENONTON: C-O-L-E. 803 00:37:33,711 --> 00:37:34,960 DAVID J. MALAN: C-O-L-E, Cole. 804 00:37:34,960 --> 00:37:35,520 Maaf. 805 00:37:35,520 --> 00:37:36,430 C-O-L-E. 806 00:37:36,430 --> 00:37:36,930 Baiklah. 807 00:37:36,930 --> 00:37:40,990 Jadi, jika saya ingin menghantar Cole ini gambar di sini, anda tahu ini 808 00:37:40,990 --> 00:37:42,410 adalah jenis gambar besar, bukan? 809 00:37:42,410 --> 00:37:44,472 Ini boleh menjadi beberapa kilobait, beberapa megabait, 810 00:37:44,472 --> 00:37:45,930 terutamanya jika ia resolusi tinggi. 811 00:37:45,930 --> 00:37:48,660 Dan saya tidak benar-benar mahu berhenti orang lain daripada menggunakan internet 812 00:37:48,660 --> 00:37:50,680 hanya semasa saya menghantar ini benar-benar besar, berkualiti tinggi gambar 813 00:37:50,680 --> 00:37:52,138 Rick Astley di seluruh bilik. 814 00:37:52,138 --> 00:37:55,310 Saya mahu data anda untuk terus merentasi rangkaian dan Wi-Fi 815 00:37:55,310 --> 00:37:56,100 juga. 816 00:37:56,100 --> 00:38:00,100 >> Dan jadi ia membuatkan sense-- dan ini boleh diperolehi semula secara elektronik, 817 00:38:00,100 --> 00:38:01,780 tidak begitu banyak dalam dunia sebenar. 818 00:38:01,780 --> 00:38:04,904 Sebenarnya, ini akan mempunyai berbilang makna jika anda mengambil audio saya keluar. 819 00:38:04,904 --> 00:38:08,360 Jadi, jika saya air mata ini dalam separuh seperti ini di sini, 820 00:38:08,360 --> 00:38:11,912 ini kini boleh melakukan perjalanan yang internet dengan lebih cekap, 821 00:38:11,912 --> 00:38:13,120 kerana ia adalah bahagian yang lebih kecil. 822 00:38:13,120 --> 00:38:16,780 Jadi dengan kebarangkalian yang lebih rendah ia akan bertembung dengan lalu lintas orang lain 823 00:38:16,780 --> 00:38:17,650 dalam internet. 824 00:38:17,650 --> 00:38:21,240 >> Dan supaya apa yang komputer anda memang tidak apabila anda ingin menghantar mesej kepada Cole 825 00:38:21,240 --> 00:38:24,917 adakah ketulan sehingga mesej seperti ini ke dalam bahagian yang lebih kecil, serpihan jadi untuk bercakap. 826 00:38:24,917 --> 00:38:28,000 Dan kemudian ia meletakkan mereka di dalam apa kita akan memanggil jenis sampul surat maya. 827 00:38:28,000 --> 00:38:29,620 >> Jadi saya mempunyai empat sampul surat kertas di sini. 828 00:38:29,620 --> 00:38:32,690 Dan saya telah pra-bernombor mereka, satu, dua, tiga, dan empat. 829 00:38:32,690 --> 00:38:35,800 Dan apa yang saya akan lakukan di bahagian depan ini, sama seperti penghantaran surat biasa, 830 00:38:35,800 --> 00:38:38,000 adalah saya akan meletakkan nama Cole di sana. 831 00:38:38,000 --> 00:38:41,270 Dan kemudian di bahagian atas, saya akan meletakkan nama saya di sana, 832 00:38:41,270 --> 00:38:44,995 Daud supaya paket pertama seumpamanya Aku menghantar di luar sana di internet 833 00:38:44,995 --> 00:38:47,620 kelihatan sesuatu yang kecil seperti ini, ciri-ciri penting 834 00:38:47,620 --> 00:38:50,830 yang mana adalah bahawa ia mempunyai untuk menangani, dari alamat, 835 00:38:50,830 --> 00:38:52,670 dan juga beberapa, jadi yang yang diharapkan 836 00:38:52,670 --> 00:38:55,680 maklumat yang mencukupi untuk Cole untuk membina semula mesej ini. 837 00:38:55,680 --> 00:38:58,820 >> Jadi biarlah saya melakukan perkara yang sama di sini, sama di sini, dan yang sama di sini, 838 00:38:58,820 --> 00:39:01,310 menulis namanya dalam Medan pada semua daripada mereka. 839 00:39:01,310 --> 00:39:04,240 Dan kemudian mari kita pergi ke depan dan meletakkan gambar-gambar ini di dalam. 840 00:39:04,240 --> 00:39:06,540 >> Jadi di sini adalah satu paket itu bersedia untuk pergi. 841 00:39:06,540 --> 00:39:09,780 Berikut adalah satu lagi paket itu bersedia untuk pergi. 842 00:39:09,780 --> 00:39:14,100 Berikut adalah paket ketiga itu bersedia untuk pergi. 843 00:39:14,100 --> 00:39:16,870 Dan di sini adalah yang keempat paket itu bersedia untuk pergi. 844 00:39:16,870 --> 00:39:19,849 >> Dan kini apa yang menarik tentang bagaimana internet dalam kerja-kerja realiti 845 00:39:19,849 --> 00:39:22,140 adalah bahawa walaupun saya telah mendapat empat paket, semua yang 846 00:39:22,140 --> 00:39:24,730 ditakdirkan untuk yang sama lokasi, mereka tidak semestinya 847 00:39:24,730 --> 00:39:26,870 akan merentasi laluan yang sama. 848 00:39:26,870 --> 00:39:32,070 Dan sebagainya walaupun saya mungkin menyerahkan ini paket off ke router yang terdekat 849 00:39:32,070 --> 00:39:36,660 katakan, jika anda ingin menghantar mereka setiap cara, mari kita lihat 850 00:39:36,660 --> 00:39:40,706 apa yang sebenarnya berlaku, matlamat iaitu untuk mendapatkan mereka akhirnya Cole. 851 00:39:40,706 --> 00:39:44,850 852 00:39:44,850 --> 00:39:48,770 Dan sesungguhnya, mereka sudah tidak semestinya mengambil arah yang sama. 853 00:39:48,770 --> 00:39:50,510 Dan itulah denda. 854 00:39:50,510 --> 00:39:52,480 Ini adalah sedikit janggal dan gaya Oprah hari ini. 855 00:39:52,480 --> 00:39:56,540 >> Dan sekarang mari saya sengaja mengambil satu gol itu. 856 00:39:56,540 --> 00:40:00,196 Dan kini Cole, jika anda ingin himpunkan semula terbaik yang anda boleh. 857 00:40:00,196 --> 00:40:06,610 858 00:40:06,610 --> 00:40:10,180 Sudah tentu, kita semua boleh meneka apa yang kesimpulan di sini akan menjadi. 859 00:40:10,180 --> 00:40:12,600 Anda akan mempunyai 3/4 daripada Rick Astley dalam hanya seketika. 860 00:40:12,600 --> 00:40:15,920 861 00:40:15,920 --> 00:40:19,291 Dan sungguh adalah Implikasi itu? 862 00:40:19,291 --> 00:40:20,540 Anda ingin mencuba untuk memegang sehingga? 863 00:40:20,540 --> 00:40:23,540 Kami mempunyai satu kamera menunjuk pada anda jika anda ingin 864 00:40:23,540 --> 00:40:26,226 bergambar dengan Rick Astley di sini. 865 00:40:26,226 --> 00:40:28,610 866 00:40:28,610 --> 00:40:29,510 Di sana kami pergi. 867 00:40:29,510 --> 00:40:30,410 Indah. 868 00:40:30,410 --> 00:40:33,230 >> Tetapi anda seolah-olah hilang serpihan Rick Astley. 869 00:40:33,230 --> 00:40:37,015 Jadi ternyata bahawa internet pada amnya didorong oleh bukan sahaja IP, 870 00:40:37,015 --> 00:40:39,890 tetapi sebenarnya kita mendengar sekurang- bermula kuliah di video-- yang 871 00:40:39,890 --> 00:40:42,473 dan anda mungkin telah melihat ini singkatan lebih often-- apa yang sebenarnya 872 00:40:42,473 --> 00:40:44,360 adalah protokol anda cenderung untuk mendengar tentang? 873 00:40:44,360 --> 00:40:45,120 >> PENONTON: TCP / IP. 874 00:40:45,120 --> 00:40:48,090 >> DAVID J. MALAN: TCP / IP, yang hanya kombinasi yang 875 00:40:48,090 --> 00:40:49,940 dua protokol, satu dipanggil IP. 876 00:40:49,940 --> 00:40:52,640 Yang sekali lagi, hanya set konvensyen melalui mana kita 877 00:40:52,640 --> 00:40:54,740 menangani setiap komputer di internet. 878 00:40:54,740 --> 00:40:56,930 Dan kemudian TCP, yang mempunyai tujuan lain. 879 00:40:56,930 --> 00:41:00,110 >> TCP adalah protokol yang anda biasanya digunakan bersama-sama 880 00:41:00,110 --> 00:41:04,410 dengan IP, yang antara lain perkara, penghantaran jaminan. 881 00:41:04,410 --> 00:41:08,860 Malah, TCP adalah protokol yang akan notis bahawa salah satu paket 882 00:41:08,860 --> 00:41:10,930 nampaknya tidak dapat Cole, kerana dia seolah-olah 883 00:41:10,930 --> 00:41:12,830 telah hilang nombor empat daripada empat. 884 00:41:12,830 --> 00:41:16,530 Dan jadi apa TCP, protokol tidak, adalah ia memberitahu Cole, 885 00:41:16,530 --> 00:41:19,850 hey Cole, jika anda menerima hanya tiga daripada empat paket, 886 00:41:19,850 --> 00:41:22,600 beritahu saya yang mana yang anda yang hilang, pada dasarnya, 887 00:41:22,600 --> 00:41:25,570 dan kemudian tujuan saya dalam hidup adalah untuk menghantar semula itu. 888 00:41:25,570 --> 00:41:28,580 >> Dan jadi jika saya juga, penghantar, menggunakan TCP, 889 00:41:28,580 --> 00:41:31,810 Aku boleh membuat packet-- baru Bukankah ini satu berkedut sini-- 890 00:41:31,810 --> 00:41:35,980 menghantar semula hanya sekeping ini , supaya akhirnya Cole mempunyai 891 00:41:35,980 --> 00:41:38,280 cenderahati selesai, jika apa-apa lagi. 892 00:41:38,280 --> 00:41:43,000 Tetapi supaya akhirnya data sebenarnya mendapat ke destinasi yang betul. 893 00:41:43,000 --> 00:41:48,020 >> Tetapi malangnya, menulis nama Cole di bahagian depan tidak mencukupi, semata-mata. 894 00:41:48,020 --> 00:41:50,270 Dan benar-benar, saya tidak akan menulis Nama Cole, tetapi mungkin 895 00:41:50,270 --> 00:41:51,655 alamat IP di atas sampul surat. 896 00:41:51,655 --> 00:41:52,780 Dan saya tidak akan menulis Daud. 897 00:41:52,780 --> 00:41:56,550 Saya menulis alamat IP saya pada sampul surat supaya komputer boleh sebenarnya 898 00:41:56,550 --> 00:41:57,999 berkomunikasi dan ke belakang. 899 00:41:57,999 --> 00:42:00,540 Tetapi ternyata bahawa komputer boleh lakukan cara yang lebih daripada menyampaikan 900 00:42:00,540 --> 00:42:01,900 gambar Rick Astley. 901 00:42:01,900 --> 00:42:05,340 Mereka juga boleh menghantar semula dan menerima e-mel, berbual mesej. 902 00:42:05,340 --> 00:42:09,780 Mereka boleh melakukan perkara seperti pemindahan fail, dan apa-apa bilangan alat-alat lain 903 00:42:09,780 --> 00:42:12,330 anda menggunakan di internet, pelayan boleh lakukan hari ini. 904 00:42:12,330 --> 00:42:15,300 >> Dan hanya kerana sebuah syarikat, atau sekolah, atau seseorang yang 905 00:42:15,300 --> 00:42:19,420 mahu mempunyai pelayan web, dan pelayan e-mel, dan pelayan chat, 906 00:42:19,420 --> 00:42:21,420 tidak bermakna anda memerlukan tiga komputer. 907 00:42:21,420 --> 00:42:26,200 Anda boleh mempunyai hanya satu komputer berjalan pelbagai perkhidmatan, jadi untuk bercakap. 908 00:42:26,200 --> 00:42:29,190 >> Dan setelah Cole menerima mesej seperti itu, bagaimana 909 00:42:29,190 --> 00:42:32,940 adakah komputernya tahu sama ada untuk menunjukkan gambar yang di pelayarnya, 910 00:42:32,940 --> 00:42:37,730 atau dalam GChat, atau di Facebook Messenger, atau dalam apa-apa bilangan alat-alat lain? 911 00:42:37,730 --> 00:42:40,430 >> Jadi, ternyata juga bahawa seperti sampul surat adalah sekeping tambahan 912 00:42:40,430 --> 00:42:43,070 maklumat dikenali sebagai nombor port. 913 00:42:43,070 --> 00:42:45,240 Dan beberapa pelabuhan adalah hanya beberapa sesungguhnya, 914 00:42:45,240 --> 00:42:48,342 tetapi ia tidak mengenal pasti secara unik komputer, tetapi perkhidmatan ini. 915 00:42:48,342 --> 00:42:49,550 Dan ada tandan ini. 916 00:42:49,550 --> 00:42:51,258 Jadi ia ternyata bahawa di dunia, manusia 917 00:42:51,258 --> 00:42:57,095 telah membuat keputusan mengenai apa-apa beberapa konvensyen, ada juga yang tidak ini. 918 00:42:57,095 --> 00:42:59,220 Jadi ada sesuatu yang dipanggil Fail Transfer Protocol. 919 00:42:59,220 --> 00:42:59,870 Ia cukup bertarikh. 920 00:42:59,870 --> 00:43:00,970 Ia sama sekali tidak selamat. 921 00:43:00,970 --> 00:43:02,320 Ramai orang masih menggunakannya. 922 00:43:02,320 --> 00:43:04,240 Dan ia menggunakan nombor port 21. 923 00:43:04,240 --> 00:43:07,250 Dalam erti kata lain, jika menghantar fail melalui FTP, 924 00:43:07,250 --> 00:43:10,570 sampul surat itu akan mempunyai bukan sahaja Pengguna dan alamat IP penerima, 925 00:43:10,570 --> 00:43:14,020 ia juga akan mempunyai bilangan 21 supaya komputer penerima tahu oh, ini 926 00:43:14,020 --> 00:43:17,280 Fail, bukan e-mel atau mesej chat. 927 00:43:17,280 --> 00:43:19,016 >> 25 adalah SMTP. 928 00:43:19,016 --> 00:43:20,516 Berapa ramai daripada anda pernah menggunakan SMTP? 929 00:43:20,516 --> 00:43:22,850 930 00:43:22,850 --> 00:43:23,380 Salah. 931 00:43:23,380 --> 00:43:24,490 Hampir semua yang anda ada. 932 00:43:24,490 --> 00:43:28,730 Jika anda pernah menggunakan e-mel, anda telah menggunakan SMTP, mudah protokol pemindahan mel, 933 00:43:28,730 --> 00:43:32,300 yang hanya satu cara mewah untuk mengatakan, ini adalah jenis komputer atau perkhidmatan 934 00:43:32,300 --> 00:43:34,600 yang menghantar keluar e-mel anda. 935 00:43:34,600 --> 00:43:38,780 >> Dan jika anda telah pernah melihat akronim seperti POP, atau IMAP, dan ada beberapa yang lain, 936 00:43:38,780 --> 00:43:40,670 mereka adalah untuk menerima e-mel, biasanya. 937 00:43:40,670 --> 00:43:42,650 Yang hanya bermakna ia perkhidmatan yang berbeza. 938 00:43:42,650 --> 00:43:45,850 Ia adalah perisian yang seseorang menulis yang menghantar kepada atau mendengar 939 00:43:45,850 --> 00:43:48,880 pada nombor port tertentu supaya bahawa ia tidak mengelirukan e-mel 940 00:43:48,880 --> 00:43:50,360 dengan beberapa jenis lain data. 941 00:43:50,360 --> 00:43:55,500 >> Sekarang web adalah HTTP, iaitu nombor 80, dan juga port 443. 942 00:43:55,500 --> 00:43:57,590 Dan sebenarnya, walaupun kita manusia nasib baik 943 00:43:57,590 --> 00:43:59,610 tidak perlu melakukan ini, bila-bila masa yang anda lawati 944 00:43:59,610 --> 00:44:05,810 sebuah laman web seperti http://www.yale.edu, pelayar 945 00:44:05,810 --> 00:44:07,790 adalah hanya menjadi sejenis membantu dalam bahawa itu 946 00:44:07,790 --> 00:44:10,970 dengan anggapan bahawa anda mahu pelabuhan angka 80. 947 00:44:10,970 --> 00:44:15,710 Kita sudah tahu bahawa DNS boleh memikirkan apa alamat IP adalah www.yale.edu. 948 00:44:15,710 --> 00:44:17,970 Tetapi komputer hanya akan membuat kesimpulan bahawa anda 949 00:44:17,970 --> 00:44:21,560 mahu port 80 kerana anda menggunakan Chrome atau IE, atau beberapa pelayar lain. 950 00:44:21,560 --> 00:44:24,930 Tetapi saya teknikal boleh melakukan kolon 80. 951 00:44:24,930 --> 00:44:28,520 Dan kemudian saya jelas boleh memberitahu pelayar saya, menghantar paket atau lebih 952 00:44:28,520 --> 00:44:32,080 maklumat kepada www.yale.edu meminta halaman rumah hari ini. 953 00:44:32,080 --> 00:44:36,070 Tetapi secara khusus, alamat kepada IP Yale di port 80 954 00:44:36,070 --> 00:44:39,190 supaya saya benar-benar mendapatkan menyokong pelayan web Yale. 955 00:44:39,190 --> 00:44:42,229 >> Sekarang ia segera hilang kerana pelayar hanya 956 00:44:42,229 --> 00:44:44,020 memutuskan bahawa kita tidak perlu untuk mengelirukan manusia 957 00:44:44,020 --> 00:44:46,810 dengan mempunyai lagi lebih sukar difahami maklumat seperti kolon 80. 958 00:44:46,810 --> 00:44:50,640 Dan terus terang, pelayar seperti Chrome tidak walaupun 959 00:44:50,640 --> 00:44:55,464 menunjukkan http lagi, atau kolon, atau slash slash, atau palang belakang itu, 960 00:44:55,464 --> 00:44:58,380 dalam erti kata lain kerana mereka cuba untuk membuat perkara yang lebih mudah untuk pengguna. 961 00:44:58,380 --> 00:45:01,080 Dalam erti kata lain, ia hanya jenis daripada pengalaman pengguna yang thing-- 962 00:45:01,080 --> 00:45:02,720 mari kita menghilangkan beberapa kekusutan itu. 963 00:45:02,720 --> 00:45:05,405 Tetapi ia bersembunyi beberapa butir-butir asas. 964 00:45:05,405 --> 00:45:09,360 >> Dan sebenarnya, tiada seorang pun daripada kami mungkin pernah menaip http lagi. 965 00:45:09,360 --> 00:45:12,060 Anda hanya menaip sesuatu seperti www.harvard.edu. 966 00:45:12,060 --> 00:45:15,310 Dan sekali lagi, menyimpulkan Chrome yang anda mahu HTTP. 967 00:45:15,310 --> 00:45:18,970 Tetapi ada protokol lain bahawa kita boleh pasti menggunakan. 968 00:45:18,970 --> 00:45:24,480 >> Jadi memandangkan semua ini, jika anda kini semacam daripada memakai topi kejuruteraan yang dipanggil, 969 00:45:24,480 --> 00:45:27,417 bagaimana perkara yang dipanggil firewall berfungsi? 970 00:45:27,417 --> 00:45:29,750 Jadi anda mungkin umumnya biasa dengan firewall, 971 00:45:29,750 --> 00:45:30,990 tidak begitu banyak dalam erti kata fizikal. 972 00:45:30,990 --> 00:45:32,470 Jadi kembali pada hari itu, dan masih hingga ke hari ini, 973 00:45:32,470 --> 00:45:35,430 jika anda telah mendapat seperti pusat membeli-jalur untuk contoh yang mempunyai banyak kedai-kedai, 974 00:45:35,430 --> 00:45:38,500 umumnya dinding di antara kedai-kedai individu atau kedai-kedai 975 00:45:38,500 --> 00:45:43,180 adalah firewall dalam erti kata bahawa mereka mempunyai penebat khas 976 00:45:43,180 --> 00:45:45,310 supaya jika kebakaran merebak di satu kedai, 977 00:45:45,310 --> 00:45:48,210 ia tidak semestinya merebak ke pintu kedai depan. 978 00:45:48,210 --> 00:45:51,710 >> Dunia komputer juga mempunyai firewall yang melakukan sesuatu yang berbeza. 979 00:45:51,710 --> 00:45:52,798 Apakah bola api lakukan? 980 00:45:52,798 --> 00:45:53,298 Ya? 981 00:45:53,298 --> 00:45:55,290 >> PENONTON: Pada dasarnya mereka terputus sambungan 982 00:45:55,290 --> 00:45:59,493 jika mereka menghadapi sesuatu seperti, sebagai contoh, 983 00:45:59,493 --> 00:46:01,361 mereka mempunyai beberapa kenyataan id. 984 00:46:01,361 --> 00:46:04,340 Dan jika sesuatu berlaku, mereka memotong sambungan. 985 00:46:04,340 --> 00:46:07,570 Seperti jika serangan ini berniat jahat [Didengar] komputer anda, or-- 986 00:46:07,570 --> 00:46:08,630 >> DAVID J. MALAN: baik OK. 987 00:46:08,630 --> 00:46:11,220 Ya, dan sebenarnya anda berada walaupun pergi lebih jauh sedikit 988 00:46:11,220 --> 00:46:14,590 dalam menggambarkan sesuatu yang mungkin dipanggil sistem pengesanan pencerobohan, 989 00:46:14,590 --> 00:46:18,305 atau IDS untuk jangka pendek, di mana anda sebenarnya mempunyai peraturan yang ditetapkan. 990 00:46:18,305 --> 00:46:22,140 Dan jika anda mula melihat mencurigakan tingkah laku, anda cuba untuk menghentikan kepadanya. 991 00:46:22,140 --> 00:46:24,250 >> Dan firewall, terus-terang, di peringkat rangkaian yang, 992 00:46:24,250 --> 00:46:26,821 adalah lebih dumber dan lebih mudah daripada itu, secara amnya. 993 00:46:26,821 --> 00:46:29,070 Dan ada pelbagai jenis firewall di dunia. 994 00:46:29,070 --> 00:46:31,569 Tetapi orang-orang yang beroperasi pada tahap kita berbicara today-- 995 00:46:31,569 --> 00:46:35,330 IP dan TCP-- bekerja lebih lebih terus terang. 996 00:46:35,330 --> 00:46:39,180 >> Sebagai contoh, jika anda adalah sistem Yale pentadbir, atau sistem Harvard 997 00:46:39,180 --> 00:46:42,020 pentadbir, atau beberapa Big Brother pada suatu syarikat, 998 00:46:42,020 --> 00:46:45,040 dan anda mahu mengelakkan semua anda pelajar atau pekerja anda 999 00:46:45,040 --> 00:46:47,619 daripada pergi ke facebook.com, semua yang anda perlu lakukan 1000 00:46:47,619 --> 00:46:50,160 adalah memastikan bahawa semua mereka trafik rangkaian, pertama sekali, 1001 00:46:50,160 --> 00:46:51,850 akan melalui peranti khas. 1002 00:46:51,850 --> 00:46:53,030 Mari kita memanggilnya firewall. 1003 00:46:53,030 --> 00:46:54,910 >> Dan itulah denda, kerana anda boleh membuat router anda 1004 00:46:54,910 --> 00:46:57,618 perkara yang sama seperti firewall jika anda meletakkan jenis yang sama perisian 1005 00:46:57,618 --> 00:46:58,940 pada mesin yang sama. 1006 00:46:58,940 --> 00:47:01,780 Jadi, jika semua pelajar anda atau pekerja trafik 1007 00:47:01,780 --> 00:47:04,450 sedang melalui ini firewall pusat, bagaimana 1008 00:47:04,450 --> 00:47:08,540 kita akan menghalang orang daripada pergi untuk facebook.com, misalnya? 1009 00:47:08,540 --> 00:47:10,780 Apa yang akan sistem pentadbir perlu lakukan? 1010 00:47:10,780 --> 00:47:11,370 Orang lain? 1011 00:47:11,370 --> 00:47:12,911 Mari kita cuba untuk pergi sekitar. 1012 00:47:12,911 --> 00:47:15,074 >> PENONTON: [didengar] 1013 00:47:15,074 --> 00:47:16,365 DAVID J. MALAN: Katakanlah lagi? 1014 00:47:16,365 --> 00:47:19,215 PENONTON: Ia hanya perlu mendapatkan terperangkap di dalam sistem. 1015 00:47:19,215 --> 00:47:22,487 Jadi hanya meletakkan Facebook ke dalam 127.0.0-- 1016 00:47:22,487 --> 00:47:23,820 DAVID J. MALAN: Oh, menarik. 1017 00:47:23,820 --> 00:47:27,290 Jadi, anda boleh sebenarnya kemudian menggodam sistem DNS anda. 1018 00:47:27,290 --> 00:47:31,180 Ini merupakan satu cara yang anda boleh lakukan ini di mana bila-bila masa seorang pelajar Yale menarik 1019 00:47:31,180 --> 00:47:34,670 sehingga www.facebook.com, semua kita di sini hari ini di kampus 1020 00:47:34,670 --> 00:47:38,590 menggunakan pelayan DNS Yale, kerana pelayan DHCP Yale memberi kami 1021 00:47:38,590 --> 00:47:39,580 alamat tersebut. 1022 00:47:39,580 --> 00:47:42,490 Jadi ya, anda boleh jenis memecahkan sesuatu atau percutian konvensyen 1023 00:47:42,490 --> 00:47:49,190 dengan hanya berkata, ya, alamat facebook.com adalah palsu, 1024 00:47:49,190 --> 00:47:52,530 adalah 1.2.3.4, iaitu sebenarnya tidak sah. 1025 00:47:52,530 --> 00:47:53,930 Atau mungkin ia adalah 278. 1026 00:47:53,930 --> 00:47:57,460 apa sahaja yang dalam rancangan TV masa lalu, supaya jangan ada di antara kita 1027 00:47:57,460 --> 00:47:59,176 sebenarnya boleh melawat facebook.com. 1028 00:47:59,176 --> 00:48:00,590 >> Jadi andaikan Yale melakukannya. 1029 00:48:00,590 --> 00:48:03,336 Katakan Yale mahu menyimpan kamu dari facebook.com. 1030 00:48:03,336 --> 00:48:05,700 Oleh itu, mereka mengubah tetapan DNS 1031 00:48:05,700 --> 00:48:08,812 untuk memberikan anda IP palsu menangani untuk facebook.com. 1032 00:48:08,812 --> 00:48:10,616 Bagaimana anda bertindak balas? 1033 00:48:10,616 --> 00:48:12,990 Secara teknikal, tidak-- oh, sekarang semua orang mahu mengambil bahagian. 1034 00:48:12,990 --> 00:48:13,490 OK, yeah. 1035 00:48:13,490 --> 00:48:16,190 PENONTON: Anda hanya perlu menaip dalam alamat IP sebenar Facebook. 1036 00:48:16,190 --> 00:48:16,710 >> DAVID J. MALAN: OK, baik. 1037 00:48:16,710 --> 00:48:19,350 Oleh itu, kita hanya boleh menaip alamat IP sebenar Facebook, 1038 00:48:19,350 --> 00:48:21,090 sama seperti yang saya lakukan dengan laman web Yale. 1039 00:48:21,090 --> 00:48:24,636 Dan jika pelayan Facebook dikonfigurasi untuk menyokong itu, ia memang harus bekerja. 1040 00:48:24,636 --> 00:48:26,510 Ia adalah satu kesakitan kecil dalam leher, kerana sekarang kita 1041 00:48:26,510 --> 00:48:30,220 perlu ingat beberapa rawak Nilai 32-bit, tetapi yang boleh bekerja. 1042 00:48:30,220 --> 00:48:31,622 Apa lagi yang anda boleh buat? 1043 00:48:31,622 --> 00:48:32,121 Yeah. 1044 00:48:32,121 --> 00:48:35,117 >> PENONTON: Anda boleh mengubah mereka tetapan [didengar]. 1045 00:48:35,117 --> 00:48:37,700 DAVID J. MALAN: Ya, anda boleh juga menukar tetapan DNS anda. 1046 00:48:37,700 --> 00:48:40,480 Jadi sebenarnya ini sebenarnya cukup berguna, terus-terang, 1047 00:48:40,480 --> 00:48:45,590 jika anda berada di sebuah lapangan terbang, atau jika anda berada dalam sebuah kafe, atau sesuatu yang 1048 00:48:45,590 --> 00:48:48,834 mempunyai internet tidak stabil di mana kadang-kadang pelayan DNS hanya berhenti bekerja. 1049 00:48:48,834 --> 00:48:51,000 Jadi, walaupun saya kadang-kadang tidak ini, bukan untuk berniat jahat, saya 1050 00:48:51,000 --> 00:48:52,750 mahu menggunakan Facebook tujuan, tetapi benar-benar 1051 00:48:52,750 --> 00:48:56,344 kerana saya seolah-olah mempunyai rangkaian sambungan, tetapi tiada apa yang bekerja. 1052 00:48:56,344 --> 00:48:58,260 Dan sebagainya salah satu yang pertama perkara yang saya try-- dan anda 1053 00:48:58,260 --> 00:49:01,710 boleh melakukan ini pada Windows too-- tetapi pada Mac saya, jika saya pergi ke Rangkaian. 1054 00:49:01,710 --> 00:49:03,330 Dan saya memilih sambungan Wi-Fi saya. 1055 00:49:03,330 --> 00:49:04,750 Dan saya pergi ke Advanced. 1056 00:49:04,750 --> 00:49:06,080 Dan saya pergi ke DNS. 1057 00:49:06,080 --> 00:49:08,260 Ini adalah tiga Alamat IP yang Yale 1058 00:49:08,260 --> 00:49:10,290 adalah memberi saya untuk tiga pelayan DNS. 1059 00:49:10,290 --> 00:49:14,110 Tujuannya maka adalah bagi saya untuk membicarakan apa-apa salah satu untuk menyelesaikan alamat. 1060 00:49:14,110 --> 00:49:15,946 >> Tetapi saya boleh mengatasi ini dengan melakukan ditambah. 1061 00:49:15,946 --> 00:49:18,333 Dan sesiapa yang ingin mencadangkan pelayan DNS? 1062 00:49:18,333 --> 00:49:19,120 >> PENONTON: 8.8.8.8? 1063 00:49:19,120 --> 00:49:20,578 >> DAVID J. MALAN: Oh, anda menakjubkan. 1064 00:49:20,578 --> 00:49:21,650 Ya, 8.8.8.8. 1065 00:49:21,650 --> 00:49:26,170 Jadi Google, memberkati hati mereka, beli alamat IP 8.8.8.8, 1066 00:49:26,170 --> 00:49:29,560 kerana ia jenis kelihatan seperti Gs mungkin, dan ia adalah mudah untuk diingati. 1067 00:49:29,560 --> 00:49:34,820 Dan sesungguhnya aku telah dikonfigurasikan saya komputer untuk menggunakan pelayan DNS Google. 1068 00:49:34,820 --> 00:49:38,050 >> Oleh sebab itu jika saya pergi ke yale.edu, ia masih pergi ke tempat kerja. 1069 00:49:38,050 --> 00:49:40,100 Tetapi saya tidak menggunakan ini Yale Pelayan DNS lagi. 1070 00:49:40,100 --> 00:49:44,430 Dan jika saya pergi ke facebook.com, semua orang-orang melihat up 1071 00:49:44,430 --> 00:49:45,960 akan pergi melalui Google. 1072 00:49:45,960 --> 00:49:49,120 >> Maka pada satu tangan, saya telah bijak dielakkan sistem tempatan 1073 00:49:49,120 --> 00:49:51,810 pentadbir hanya dengan memahami bagaimana kerja-kerja rangkaian. 1074 00:49:51,810 --> 00:49:53,360 Tetapi saya membayar harga yang. 1075 00:49:53,360 --> 00:49:54,740 Tidak ada yang percuma. 1076 00:49:54,740 --> 00:49:56,096 Apa yang telah saya hanya diberikan sehingga? 1077 00:49:56,096 --> 00:50:00,180 1078 00:50:00,180 --> 00:50:02,250 Apa yang telah saya hanya diberikan sehingga? 1079 00:50:02,250 --> 00:50:06,090 Anda semua orang pandai yang mempunyai telah menggunakan 8.8.8.8, kerana ia sejuk 1080 00:50:06,090 --> 00:50:10,440 atau menyelesaikan masalah, apa yang telah anda telah lakukan selama ini? 1081 00:50:10,440 --> 00:50:11,910 >> PENONTON: Perjalanan lebih jauh? 1082 00:50:11,910 --> 00:50:15,201 >> DAVID J. MALAN: Mungkin perjalanan lebih jauh, kerana Google mungkin tidak cukup sebagai 1083 00:50:15,201 --> 00:50:16,770 sehampir pelayan di jalan. 1084 00:50:16,770 --> 00:50:18,420 Tetapi yang lebih worrisomely. 1085 00:50:18,420 --> 00:50:18,920 Ya? 1086 00:50:18,920 --> 00:50:20,940 >> PENONTON: Jadi sekarang Google tahu di mana anda akan pergi. 1087 00:50:20,940 --> 00:50:23,856 >> DAVID J. MALAN: Google tahu literal setiap laman web yang anda lawati, 1088 00:50:23,856 --> 00:50:26,080 kerana anda adalah benar-benar meminta mereka, hey Google, 1089 00:50:26,080 --> 00:50:28,360 anda boleh menterjemahkan yale.edu untuk saya? 1090 00:50:28,360 --> 00:50:32,430 Atau hey Google, anda boleh menterjemahkan ini alamat laman web yang lain bagi saya 1091 00:50:32,430 --> 00:50:33,334 kepada alamat IP. 1092 00:50:33,334 --> 00:50:35,750 Dan sebagainya they're-- saya tidak mempunyai tahu apa yang anda bercakap tentang. 1093 00:50:35,750 --> 00:50:38,080 Dan supaya mereka mengetahui segala-galanya tentang anda. 1094 00:50:38,080 --> 00:50:42,180 Jadi sedar bahawa ini adalah perkhidmatan percuma dengan tujuan dari perspektif mereka 1095 00:50:42,180 --> 00:50:42,680 juga. 1096 00:50:42,680 --> 00:50:44,420 Tetapi ia boleh pasti mengeluarkan kamu dari mengikat. 1097 00:50:44,420 --> 00:50:46,380 >> Kini hanya untuk menangani salah lain isu yang sering datang 1098 00:50:46,380 --> 00:50:48,640 di kalangan pelajar, terutamanya apabila perjalanan di peringkat antarabangsa 1099 00:50:48,640 --> 00:50:50,765 di negara-negara tertentu seperti China, di mana memang 1100 00:50:50,765 --> 00:50:54,559 adalah Firewall Besar China di mana kerajaan di sana blok agak 1101 00:50:54,559 --> 00:50:56,100 sedikit trafik pada tahap yang berbeza. 1102 00:50:56,100 --> 00:50:58,141 Anda tidak perlu hanya trafik blok di peringkat 1103 00:50:58,141 --> 00:51:01,240 kita bercakap di sini, DNS atau sebaliknya, anda boleh menghalang ia pada tahap yang lain. 1104 00:51:01,240 --> 00:51:04,030 >> Dan sebenarnya, hanya untuk jelas, firewall 1105 00:51:04,030 --> 00:51:08,400 boleh beroperasi lebih daripada hanya semata-mata mempunyai pentadbir sistem mengubah 1106 00:51:08,400 --> 00:51:09,500 Tetapan DNS. 1107 00:51:09,500 --> 00:51:12,920 Firewall, peranti di antara kami dan seluruh dunia, 1108 00:51:12,920 --> 00:51:16,850 hanya boleh menghalang mana-mana keluar permintaan untuk alamat IP 1109 00:51:16,850 --> 00:51:21,240 Facebook pada port 80, atau alamat IP untuk harvard.edu, 1110 00:51:21,240 --> 00:51:22,580 atau alamat IP apa-apa. 1111 00:51:22,580 --> 00:51:26,280 Jadi firewall boleh melihat anda sampul surat 'alamat IP dan juga pelabuhan 1112 00:51:26,280 --> 00:51:29,384 nombor, dan jika Yale mahu, ia hanya boleh berhenti kita semua 1113 00:51:29,384 --> 00:51:32,550 dari walaupun menggunakan FTP lagi, yang akan mungkin menjadi satu perkara yang baik kerana ia 1114 00:51:32,550 --> 00:51:34,320 memang satu protokol tidak selamat. 1115 00:51:34,320 --> 00:51:37,620 Yale juga boleh menghalang kita daripada melawat keseluruhan daripada web 1116 00:51:37,620 --> 00:51:42,632 hanya dengan menyekat semua pelabuhan lalu lintas di nombor 80 juga. 1117 00:51:42,632 --> 00:51:43,840 Jadi yang mungkin cara yang lain. 1118 00:51:43,840 --> 00:51:45,740 Dan ada cara walaupun pelamun juga. 1119 00:51:45,740 --> 00:51:47,770 >> Tetapi apabila anda hendak pergi berjalan, di luar negara misalnya, 1120 00:51:47,770 --> 00:51:50,740 atau jika anda berada dalam sebuah kafe internet, atau jika anda mana-mana sahaja di mana ada 1121 00:51:50,740 --> 00:51:53,179 sekatan atau ancaman, apa yang boleh anda lakukan? 1122 00:51:53,179 --> 00:51:56,220 Nah, jika anda pergi ke jalan untuk Starbucks atau anda melakukan perjalanan di lapangan terbang, 1123 00:51:56,220 --> 00:51:58,780 biasanya anda hanya boleh melompat pada Wi-Fi dengan memilih 1124 00:51:58,780 --> 00:52:04,631 seperti, JFK Wi-Fi daripada LaGuardia Wi-Fi, atau Logan Airport Wi-Fi, atau apa yang tidak. 1125 00:52:04,631 --> 00:52:05,880 Dan ia tidak disulitkan, bukan? 1126 00:52:05,880 --> 00:52:06,949 Tidak ada ikon mangga. 1127 00:52:06,949 --> 00:52:09,490 Dan anda mungkin tidak mendorong untuk nama pengguna dan kata laluan. 1128 00:52:09,490 --> 00:52:11,240 Anda hanya mendorong dengan beberapa bentuk bodoh 1129 00:52:11,240 --> 00:52:15,260 untuk mengatakan seperti, saya bersetuju untuk menggunakan ini sahaja selama 30 minit, atau sesuatu seperti itu. 1130 00:52:15,260 --> 00:52:18,761 >> Tetapi tidak ada penyulitan antara anda dan akses Starbucks Wi-Fi 1131 00:52:18,761 --> 00:52:20,760 titik, perkara-perkara dengan antena di dinding. 1132 00:52:20,760 --> 00:52:24,840 Tidak ada penyulitan antara anda dan Wi-Fi isyarat lapangan terbang itu. 1133 00:52:24,840 --> 00:52:29,060 >> Dan sebagainya secara teknikal, bahawa orang menyeramkan duduk beberapa kerusi turun dari anda 1134 00:52:29,060 --> 00:52:31,970 di Starbucks atau di lapangan terbang boleh, dengan perisian yang betul, 1135 00:52:31,970 --> 00:52:35,164 menonton semua wayarles anda lalu lintas pada komputer riba masing-masing. 1136 00:52:35,164 --> 00:52:37,080 Ia bukan sukar untuk meletakkan komputer riba ke dalam apa yang 1137 00:52:37,080 --> 00:52:39,880 dipanggil mod rambang, yang seperti namanya, 1138 00:52:39,880 --> 00:52:41,760 bermakna anda jenis longgar dengan peraturan. 1139 00:52:41,760 --> 00:52:44,740 Dan ia hanya mendengar bukan sahaja untuk lalu lintas bertujuan untuk itu, 1140 00:52:44,740 --> 00:52:47,700 tetapi juga kepada orang lain yang trafik dalam liputan. 1141 00:52:47,700 --> 00:52:50,550 >> Dan dengan logik itu, ia boleh melihat semua paket maklumat 1142 00:52:50,550 --> 00:52:51,360 anda menerima. 1143 00:52:51,360 --> 00:52:53,510 Dan sekiranya orang-paket tidak disulitkan, anda 1144 00:52:53,510 --> 00:52:56,680 meletakkan diri anda pada risiko e-mel, atau mesej anda, 1145 00:52:56,680 --> 00:52:58,620 atau apa-apa lagi mendapat terdedah. 1146 00:52:58,620 --> 00:53:01,220 >> Jadi, walaupun anda tidak berada di luar negara tetapi anda hanya di Starbucks, 1147 00:53:01,220 --> 00:53:03,800 atau anda berada di mana-mana orang secara rawak yang Wi-Fi yang tidak disulitkan, 1148 00:53:03,800 --> 00:53:05,410 VPN adalah satu perkara yang baik. 1149 00:53:05,410 --> 00:53:07,410 VPN adalah rangkaian persendirian maya. 1150 00:53:07,410 --> 00:53:09,480 Dan ia adalah teknologi yang yang membolehkan anda untuk mempunyai 1151 00:53:09,480 --> 00:53:14,560 disulitkan, yang connection-- hancur pelamun daripada Kaisar atau Vigenere-- 1152 00:53:14,560 --> 00:53:17,420 antara komputer riba anda, atau telefon anda, atau desktop anda, 1153 00:53:17,420 --> 00:53:22,460 dan pelayan di tempat lain, seperti pelayan di kampus Yale. 1154 00:53:22,460 --> 00:53:25,840 >> Dan jika anda hendak pergi berjalan abroad-- dan sebenarnya, anda mendapati ini dalam hotel 1155 00:53:25,840 --> 00:53:26,560 sepanjang masa. 1156 00:53:26,560 --> 00:53:28,580 Dan terutama yang bercita-cita ahli sains komputer 1157 00:53:28,580 --> 00:53:32,090 di mana anda semua mungkin, sebagai Geeks, mahu menggunakan pelabuhan-pelabuhan lain daripada 80, 1158 00:53:32,090 --> 00:53:35,770 dan pelabuhan lain daripada 443-- dan sebenarnya untuk masalah set enam, 1159 00:53:35,770 --> 00:53:39,280 kita akan bermain dengan beberapa Port TCP hanya dengan choice-- banyak 1160 00:53:39,280 --> 00:53:42,940 hotel-hotel dan kedai, dan rangkaian hanya menyekat jenis barangan 1161 00:53:42,940 --> 00:53:45,970 kerana mereka agak naif, atau jahil, hanya berfikir 1162 00:53:45,970 --> 00:53:48,010 bahawa tidak ada keperluan pelabuhan-pelabuhan lain. 1163 00:53:48,010 --> 00:53:51,150 >> Dan demikian dengan menggunakan VPN boleh anda mengelakkan orang-orang jenis sekatan, 1164 00:53:51,150 --> 00:53:54,050 kerana apa VPN dilakukan adalah ia membolehkan anda di Starbucks, 1165 00:53:54,050 --> 00:53:58,630 atau lapangan terbang, atau mana-mana sahaja di dunia untuk menyambung encryptedly untuk yale.edu, 1166 00:53:58,630 --> 00:54:02,950 kepada beberapa pelayan di sini di kampus, dan kemudian terowong, boleh dikatakan, 1167 00:54:02,950 --> 00:54:06,570 semua trafik anda dari mana sahaja anda adalah melalui Yale, di mana titik 1168 00:54:06,570 --> 00:54:08,720 ia kemudian pergi ke destinasi yang terakhir. 1169 00:54:08,720 --> 00:54:11,150 >> Tetapi dengan menyulitkan, anda mengelakkan sebarang jenis ini 1170 00:54:11,150 --> 00:54:15,380 penapis atau pengenaan yang beberapa rangkaian tempatan telah dikenakan. 1171 00:54:15,380 --> 00:54:17,980 Dan ditambah, anda mempunyai pertahanan yang jauh lebih kuat 1172 00:54:17,980 --> 00:54:19,730 terhadap orang-orang menyeramkan sekeliling anda yang mungkin 1173 00:54:19,730 --> 00:54:21,300 menjadi cuba untuk mendengar dalam trafik anda. 1174 00:54:21,300 --> 00:54:24,591 Terdapat masih boleh menjadi orang menyeramkan di sini pulang ke rumah di Yale menonton trafik anda 1175 00:54:24,591 --> 00:54:28,440 kerana ia datang daripada VPN, tetapi sekurang-kurangnya anda telah ditolak ancaman jauh. 1176 00:54:28,440 --> 00:54:30,490 Dan ia adalah di sini juga, perdagangan luar. 1177 00:54:30,490 --> 00:54:33,645 >> Sekarang sudah tentu, jika anda berada dalam China atau di kafe, 1178 00:54:33,645 --> 00:54:35,770 dan anda semua terowong trafik anda melalui Yale, 1179 00:54:35,770 --> 00:54:37,590 apa harga kita membayar mungkin? 1180 00:54:37,590 --> 00:54:38,272 >> PENONTON: Speed. 1181 00:54:38,272 --> 00:54:39,480 DAVID J. MALAN: Kelajuan, bukan? 1182 00:54:39,480 --> 00:54:41,430 Pasti ada beberapa matematik atau beberapa fanciness terlibat 1183 00:54:41,430 --> 00:54:42,574 dalam penyulitan sebenar. 1184 00:54:42,574 --> 00:54:44,990 Mungkin ada beribu-ribu batu jarak atau beribu-ribu 1185 00:54:44,990 --> 00:54:47,250 batu kabel antara anda dan Yale. 1186 00:54:47,250 --> 00:54:49,800 Dan ia benar-benar buruk jika anda di China, misalnya, 1187 00:54:49,800 --> 00:54:51,650 dan anda mahu untuk melawat sebuah laman web di China. 1188 00:54:51,650 --> 00:54:54,230 Dan supaya data anda akan Amerika Syarikat, dan kemudian kembali ke China 1189 00:54:54,230 --> 00:54:56,620 hanya kerana anda menyulitkan ia melalui terowong ini. 1190 00:54:56,620 --> 00:54:59,960 >> Tetapi ia menyelesaikan teknikal dan bekerja masalah sama. 1191 00:54:59,960 --> 00:55:02,050 Tetapi ia semua bisul ke idea-idea ini sangat mudah. 1192 00:55:02,050 --> 00:55:06,530 Dan Harvard, bagi mereka yang ingin tahu, mempunyai satu di sini juga, di vpn.harvard.edu, 1193 00:55:06,530 --> 00:55:09,150 yang beroperasi seperti ini Yale. 1194 00:55:09,150 --> 00:55:12,580 >> Jadi dengan segala yang berkata, mengapa adalah rangkaian ini seluruh berguna kepada anda? 1195 00:55:12,580 --> 00:55:14,080 Dan apa yang kita boleh mula melakukan dengan ia? 1196 00:55:14,080 --> 00:55:15,630 Nah, mari kita membuat sebenar ini kini lebih. 1197 00:55:15,630 --> 00:55:17,610 Ini adalah akronim dengan yang kebanyakan kita 1198 00:55:17,610 --> 00:55:22,140 mungkin super familiar-- HTTP-- yang bermaksud pemindahan teks hyper 1199 00:55:22,140 --> 00:55:22,950 protokol. 1200 00:55:22,950 --> 00:55:26,460 Dan ini hanya bermakna ini adalah bahasa, protokol 1201 00:55:26,460 --> 00:55:29,140 yang pelayar web dan pelayan web bercakap. 1202 00:55:29,140 --> 00:55:31,437 >> P dalam HTTP memang protokol. 1203 00:55:31,437 --> 00:55:33,270 Dan protokol tetapi ini satu set konvensyen. 1204 00:55:33,270 --> 00:55:36,690 Kami telah melihat IP-- protocol-- internet Kawalan penghantaran TCP-- 1205 00:55:36,690 --> 00:55:38,290 protocol-- dan HTTP. 1206 00:55:38,290 --> 00:55:40,570 Tetapi apa yang ini bodoh perkara yang telah protokol? 1207 00:55:40,570 --> 00:55:41,930 Ia hanya satu set konvensyen. 1208 00:55:41,930 --> 00:55:43,760 >> Jadi, jika saya semacam turun sini, dan saya mahu menyambut anda. 1209 00:55:43,760 --> 00:55:44,930 Saya akan mengatakan hi, nama saya David. 1210 00:55:44,930 --> 00:55:45,600 >> PENONTON: Luis. 1211 00:55:45,600 --> 00:55:46,475 >> DAVID J. MALAN: Luis. 1212 00:55:46,475 --> 00:55:49,360 Kami ada manusia bodoh konvensyen berjabat tangan di sini. 1213 00:55:49,360 --> 00:55:50,570 Tetapi itu protokol, bukan? 1214 00:55:50,570 --> 00:55:51,470 Saya menghulurkan tangan saya. 1215 00:55:51,470 --> 00:55:52,530 Luis dilanjutkan tangannya. 1216 00:55:52,530 --> 00:55:53,070 Kami melakukan ini. 1217 00:55:53,070 --> 00:55:54,790 Dan kemudian selesai, dilakukan. 1218 00:55:54,790 --> 00:55:58,100 >> Dan itulah yang sama semangat protokol komputer 1219 00:55:58,100 --> 00:56:02,770 di mana seperti dalam HTTP, apa yang berlaku adalah ini. 1220 00:56:02,770 --> 00:56:05,520 Jika anda komputer pada tinggal di sini, dan terdapat beberapa web 1221 00:56:05,520 --> 00:56:07,230 server ada di sebelah kanan. 1222 00:56:07,230 --> 00:56:11,130 Dan komputer di sebelah kiri mahu meminta maklumat daripada pelayan itu. 1223 00:56:11,130 --> 00:56:13,140 Ia adalah jenis operasi dua arah. 1224 00:56:13,140 --> 00:56:15,800 Pelayar di sebelah kiri meminta beberapa laman web. 1225 00:56:15,800 --> 00:56:18,404 Pelayan di sebelah kanan bertindak balas dengan beberapa laman web. 1226 00:56:18,404 --> 00:56:20,570 Dan kita akan lihat apa bentuk mereka kecapi hanya seketika. 1227 00:56:20,570 --> 00:56:24,311 >> Dan ternyata bahawa mereka computers-- bahawa pelayar dan pelayan, atau pelanggan 1228 00:56:24,311 --> 00:56:25,310 dan pelayan, jadi untuk bercakap. 1229 00:56:25,310 --> 00:56:28,120 Sama seperti sebuah restoran di mana pelanggan meminta sesuatu, 1230 00:56:28,120 --> 00:56:31,670 dan pelayan membawa dia atau dia something-- mendapatkan 1231 00:56:31,670 --> 00:56:33,170 adalah jenis perkataan pembedahan. 1232 00:56:33,170 --> 00:56:38,560 Secara harfiah di dalam sampul surat yang pelayar saya menghantar dari sini ke web yang 1233 00:56:38,560 --> 00:56:40,880 server adalah perkataan dapatkan. 1234 00:56:40,880 --> 00:56:42,700 Suka saya ingin mendapatkan berita hari ini. 1235 00:56:42,700 --> 00:56:45,370 Saya ingin mendapatkan saya Facebook suapan berita, atau saya 1236 00:56:45,370 --> 00:56:47,330 ingin mendapatkan halaman beberapa dari pelayan. 1237 00:56:47,330 --> 00:56:50,760 >> Secara khusus, ini adalah apa yang berlaku di dalam sampul surat itu. 1238 00:56:50,760 --> 00:56:53,810 Jadi saya, dengan Cole, pada dasarnya Cole menghantar jawapan. 1239 00:56:53,810 --> 00:56:56,750 Jika anda bayangkan bahawa Cole sebenarnya mahu gambar Rick Astley, 1240 00:56:56,750 --> 00:57:00,700 dia mungkin telah menghantar saya permintaan sama dalam semangat untuk ini. 1241 00:57:00,700 --> 00:57:04,670 Di dalam sampul surat kepada saya, di mana Saya kini memainkan peranan sebagai Google, 1242 00:57:04,670 --> 00:57:08,270 akan menjadi satu permintaan yang benar-benar berkata, mendapatkan, dan kemudian slash-- ke hadapan 1243 00:57:08,270 --> 00:57:10,636 dan anda mungkin telah melihat ke hadapan garis condong dalam URL sebelum ini. 1244 00:57:10,636 --> 00:57:13,260 Ia hanya bermakna memberi saya lalai halaman, lalai Rick Astley yang 1245 00:57:13,260 --> 00:57:14,560 gambar dalam kes ini. 1246 00:57:14,560 --> 00:57:20,100 >> Dan dengan cara itu, Cole bercakap bahasa HTTP versi 1.1, atau protokol 1.1. 1247 00:57:20,100 --> 00:57:22,090 Dan ternyata di luar sana yang versi yang lebih tua 1.0. 1248 00:57:22,090 --> 00:57:23,910 Tetapi komputer cenderung untuk menggunakan 1.1. 1249 00:57:23,910 --> 00:57:27,840 >> Barisan kedua adalah satu perkara yang berguna yang akan kembali kepada mungkin tidak lama lagi. 1250 00:57:27,840 --> 00:57:31,900 Tetapi ia hanya spesifikasi kepada saya, penerima, yang perkara yang saya ingin 1251 00:57:31,900 --> 00:57:33,586 adalah www.google.com. 1252 00:57:33,586 --> 00:57:36,340 Kerana ia sangat mungkin hari ini untuk berpuluh-puluh, 1253 00:57:36,340 --> 00:57:39,510 beratus-ratus laman web dengan nama-nama domain yang berbeza untuk semua 1254 00:57:39,510 --> 00:57:40,735 tinggal pada pelayan yang sama. 1255 00:57:40,735 --> 00:57:42,860 Ia tidak akan menjadi benar begitu banyak dalam kes Google. 1256 00:57:42,860 --> 00:57:45,261 Tetapi dalam syarikat yang lebih kecil ini kes, sama sekali boleh. 1257 00:57:45,261 --> 00:57:47,260 Jadi Cole adalah hanya jenis meletakkan dalam sampul surat, 1258 00:57:47,260 --> 00:57:50,840 dengan cara itu, ketika ini mencapai alamat IP anda pada port 80, 1259 00:57:50,840 --> 00:57:54,450 hanya pastikan bahawa anda tahu Saya hendak www.google.com, tidak 1260 00:57:54,450 --> 00:57:56,740 beberapa laman web rawak lain pada pelayan yang sama. 1261 00:57:56,740 --> 00:58:00,360 >> Apa yang saya kemudian bertindak balas kepada Cole dengan, pada akhir hari, adalah gambar. 1262 00:58:00,360 --> 00:58:02,920 Tetapi di atas gambar yang dalam sampul surat 1263 00:58:02,920 --> 00:58:05,600 sebenarnya beberapa teks, di mana saya berkata, OK. 1264 00:58:05,600 --> 00:58:07,970 Saya bercakap HTTP versi 1.1 juga. 1265 00:58:07,970 --> 00:58:09,200 200. 1266 00:58:09,200 --> 00:58:11,730 Yang merupakan kod status yang sebahagian besar daripada kita mungkin telah 1267 00:58:11,730 --> 00:58:14,185 pernah melihat, kerana ia bermakna OK. 1268 00:58:14,185 --> 00:58:16,810 Dan ini adalah baik, kerana ia bermakna saya bertindak balas dengan jayanya 1269 00:58:16,810 --> 00:58:18,040 permintaan Cole. 1270 00:58:18,040 --> 00:58:21,930 >> Apa nombor anda mungkin dilihat di web yang tidak OK? 1271 00:58:21,930 --> 00:58:22,780 >> PENONTON: 404. 1272 00:58:22,780 --> 00:58:24,830 >> DAVID J. MALAN: 404-- Fail tidak dijumpai. 1273 00:58:24,830 --> 00:58:27,520 Jadi sesungguhnya, bila-bila masa yang anda lihat salah seorang daripada mereka fail menjengkelkan tidak 1274 00:58:27,520 --> 00:58:31,010 ralat yang ditemui, kerana Laman web itu telah mati, 1275 00:58:31,010 --> 00:58:34,190 atau kerana anda salah taip URL, yang hanya bermakna 1276 00:58:34,190 --> 00:58:37,600 bahawa sampul surat kecil yang anda komputer yang diterima daripada pelayan 1277 00:58:37,600 --> 00:58:42,670 terkandung mesej HTTP 1.1, 404-- tidak dijumpai. 1278 00:58:42,670 --> 00:58:44,930 Bahawa fail atau permintaan yang anda buat tidak dijumpai. 1279 00:58:44,930 --> 00:58:48,660 >> Lebih-lebih lagi, di dalam sampul surat biasanya adalah baris, jenis kandungan ini. 1280 00:58:48,660 --> 00:58:51,080 Kadang-kadang ia HTML, sesuatu yang kita tidak lama lagi akan melihat. 1281 00:58:51,080 --> 00:58:52,225 Kadang-kadang ia adalah satu JPEG. 1282 00:58:52,225 --> 00:58:53,100 Kadang-kadang ia GIF a. 1283 00:58:53,100 --> 00:58:56,060 Kadang-kadang ia adalah satu fail filem, fail audio, apa-apa beberapa perkara. 1284 00:58:56,060 --> 00:59:00,059 Jadi di dalam sampul surat hanya sedikit petunjuk tentang apa yang saya menerima. 1285 00:59:00,059 --> 00:59:03,100 Ada kod status lain juga, beberapa yang mana kami akan meneroka dalam P menetapkan enam, 1286 00:59:03,100 --> 00:59:05,890 dan anda akan tersandung di seluruh dalam P menetapkan tujuh dan / atau lapan. 1287 00:59:05,890 --> 00:59:08,580 Tetapi beberapa di sini, seperti 404 yang kita lihat. 1288 00:59:08,580 --> 00:59:11,700 Larangan, 403, bermakna seperti keizinan adalah salah, 1289 00:59:11,700 --> 00:59:14,740 seperti anda tidak mempunyai jenis dikonfigurasikan dengan betul. 1290 00:59:14,740 --> 00:59:17,830 301 dan 302, kita jarang melihat secara visual. 1291 00:59:17,830 --> 00:59:19,150 Tetapi mereka maksudkan mengarahkan. 1292 00:59:19,150 --> 00:59:21,650 Bila-bila masa anda telah pergi ke satu URL dan anda telah ajaib 1293 00:59:21,650 --> 00:59:24,410 dihantar di tempat lain, itu kerana pelayar itu telah dihantar pulang 1294 00:59:24,410 --> 00:59:27,210 sampul surat yang mengandungi nombor 301 atau 302, 1295 00:59:27,210 --> 00:59:30,790 dan URL yang ia mahu pelayar anda untuk pergi untuk sebaliknya. 1296 00:59:30,790 --> 00:59:32,010 >> 500 adalah dahsyat. 1297 00:59:32,010 --> 00:59:34,842 Anda akan melihat ia tidak lama, mungkin dalam P menetapkan enam atau P menetapkan tujuh. 1298 00:59:34,842 --> 00:59:37,050 Dan ia secara amnya bermakna ada beberapa bug dalam kod anda, 1299 00:59:37,050 --> 00:59:40,000 kerana sesungguhnya kami akan menulis kod yang memberi respons kepada permintaan web. 1300 00:59:40,000 --> 00:59:42,110 Dan anda baru sahaja mendapat beberapa kesilapan dalam logik atau sintaksis, 1301 00:59:42,110 --> 00:59:43,820 dan pelayan tidak boleh menghadapinya. 1302 00:59:43,820 --> 00:59:47,460 >> Jadi mari kita lihat bagaimana kita boleh memanfaatkan dan memahami perkara ini dengan seperti berikut. 1303 00:59:47,460 --> 00:59:50,716 Jika saya pergi ke, katakan, google.com. 1304 00:59:50,716 --> 00:59:55,240 Biarkanlah aku pergi ke www.google.com. 1305 00:59:55,240 --> 01:00:01,220 Dan demi demonstrasi, mari kita lihat, saya perlu pergi ke Tetapan sini. 1306 01:00:01,220 --> 01:00:03,180 Saya akan pergi ke Mencari Tetapan. 1307 01:00:03,180 --> 01:00:08,236 Dan Google mempunyai semakin menjengkelkan ciri-ciri, tetapi ciri-ciri berguna. 1308 01:00:08,236 --> 01:00:11,110 Jadi Google mempunyai perkara ini seperti segera keputusan di mana anda mula menaip, 1309 01:00:11,110 --> 01:00:12,889 dan secara automatik perkara mula muncul. 1310 01:00:12,889 --> 01:00:14,680 Dan itu semua baik dan teknikal yang berguna, 1311 01:00:14,680 --> 01:00:16,420 dan kita akan faham tidak lama bagaimana ia berfungsi. 1312 01:00:16,420 --> 01:00:18,429 Tetapi buat masa ini, saya beralih off hasil yang segera, 1313 01:00:18,429 --> 01:00:20,720 kerana saya mahu pelayar saya untuk jenis kerja sekolah lama jadi 1314 01:00:20,720 --> 01:00:22,940 bahawa saya boleh melihat apa yang sedang berlaku. 1315 01:00:22,940 --> 01:00:23,840 >> Jadi sekarang saya kembali di sini. 1316 01:00:23,840 --> 01:00:25,090 Dan saya ingin mencari kucing. 1317 01:00:25,090 --> 01:00:30,351 Dan perhatikan saya melihat beberapa cadangan, beberapa cadangan yang sangat berbahaya 1318 01:00:30,351 --> 01:00:30,850 bersyukur. 1319 01:00:30,850 --> 01:00:34,730 Dan kini jika saya tekan Enter, mari kita lihat apa yang berlaku. 1320 01:00:34,730 --> 01:00:35,850 >> Jadi terdapat beberapa kucing. 1321 01:00:35,850 --> 01:00:37,540 Dan hit atas adalah di Wikipedia. 1322 01:00:37,540 --> 01:00:39,820 Tetapi hari ini kita mengambil berat tentang teknologi di sini. 1323 01:00:39,820 --> 01:00:42,479 Jadi URL yang yang saya telah telah dihantar adalah ini di sini. 1324 01:00:42,479 --> 01:00:44,520 Dan ada beberapa perkara yang saya tidak benar-benar faham. 1325 01:00:44,520 --> 01:00:47,430 >> Jadi, saya akan pergi ke hadapan, kerana Saya jenis tahu bagaimana Google berfungsi, 1326 01:00:47,430 --> 01:00:50,700 dan saya akan menyuling ini URL ke dalam bentuk termudah. 1327 01:00:50,700 --> 01:00:52,510 Dan sekarang saya akan melanda Masukkan lagi. 1328 01:00:52,510 --> 01:00:53,360 Dan ia masih berfungsi. 1329 01:00:53,360 --> 01:00:55,800 Saya mempunyai laman keputusan tentang kucing. 1330 01:00:55,800 --> 01:00:58,460 >> Tetapi notis kesederhanaan dalam URL saya. 1331 01:00:58,460 --> 01:01:00,820 Ternyata ini adalah bagaimana banyak kerja-kerja web. 1332 01:01:00,820 --> 01:01:03,500 Web ini hanyalah keseluruhan sekumpulan komputer 1333 01:01:03,500 --> 01:01:05,320 perisian yang mengambil input berjalan. 1334 01:01:05,320 --> 01:01:07,480 Ia tidak mendapatkan input gaya tali. 1335 01:01:07,480 --> 01:01:09,670 Ia bukan baris arahan hujah-hujah seperti yang kita digunakan untuk. 1336 01:01:09,670 --> 01:01:13,449 Mereka mengambil input, pelayan web, melalui URL agak kerap. 1337 01:01:13,449 --> 01:01:15,240 Dan bila-bila masa anda telah mencari sesuatu, 1338 01:01:15,240 --> 01:01:17,448 bila-bila masa anda telah log masuk ke dalam Facebook, bila-bila masa anda telah 1339 01:01:17,448 --> 01:01:20,090 melakukan apa-apa interaktif dengan laman web, apa yang anda lakukan 1340 01:01:20,090 --> 01:01:24,340 berkesan menghantar borang, jadi untuk speak-- kotak teks, kotak semak, 1341 01:01:24,340 --> 01:01:27,880 bulatan kecil, dan barang kecil yang menghantar maklumat daripada anda kepada pelayan. 1342 01:01:27,880 --> 01:01:31,960 >> Dan ternyata bahawa web server tahu untuk melihat URL yang 1343 01:01:31,960 --> 01:01:36,040 dan menghuraikan ia seperti melihat ia watak oleh watak mencari apa-apa 1344 01:01:36,040 --> 01:01:38,000 menarik selepas tanda tanya. 1345 01:01:38,000 --> 01:01:40,910 Kerana selepas tanda tanya, Ternyata, akan datang 1346 01:01:40,910 --> 01:01:42,730 sekumpulan pasangan nilai utama. 1347 01:01:42,730 --> 01:01:44,570 Maksud saya key = nilai. 1348 01:01:44,570 --> 01:01:48,130 Dan kemudian jika ada multiple-- mungkin Ampersand, sesetengah yang lain key = nilai, 1349 01:01:48,130 --> 01:01:50,200 Ampersand, key = nilai. 1350 01:01:50,200 --> 01:01:54,560 >> Oleh itu, kita telah jenis lihat idea ini sebelum di mana sesuatu yang mempunyai nilai. 1351 01:01:54,560 --> 01:01:55,880 Ia hanya satu format baru di sini. 1352 01:01:55,880 --> 01:01:59,040 Dan saya hanya tahu, oleh konvensyen, Google menggunakan q untuk pertanyaan. 1353 01:01:59,040 --> 01:02:02,670 Dan kemudian jika saya mahu untuk mencari anjing, saya manual boleh mencari anjing seperti itu. 1354 01:02:02,670 --> 01:02:06,360 Dan kemudian saya nampaknya semakin beberapa keputusan carian yang melibatkan anjing. 1355 01:02:06,360 --> 01:02:07,727 >> Jadi yang seolah-olah menjadi menarik. 1356 01:02:07,727 --> 01:02:10,060 Dan sesungguhnya, apa yang berlaku di bawah hood adalah ini. 1357 01:02:10,060 --> 01:02:11,460 Biar saya melakukan ini. 1358 01:02:11,460 --> 01:02:13,620 Ini adalah a-- mari kita lihat. 1359 01:02:13,620 --> 01:02:16,320 Biar saya kembali ke atas di sini hanya untuk seketika. 1360 01:02:16,320 --> 01:02:19,810 >> Kami akan melihat bahawa ada yang lain cara-cara untuk mengemukakan maklumat. 1361 01:02:19,810 --> 01:02:25,340 Jadi, jika saya log masuk ke Facebook, atau Gmail, atau mana-mana laman web popular yang lain, 1362 01:02:25,340 --> 01:02:30,720 ia seolah-olah jenis buruk jika apa sahaja yang saya menaip ke dalam kotak carian berakhir dalam URL saya, 1363 01:02:30,720 --> 01:02:32,850 dalam bar alamat penyemak imbas saya. 1364 01:02:32,850 --> 01:02:33,690 Mengapa? 1365 01:02:33,690 --> 01:02:35,395 Mengapa yang sedikit membimbangkan? 1366 01:02:35,395 --> 01:02:39,567 1367 01:02:39,567 --> 01:02:40,067 Ya? 1368 01:02:40,067 --> 01:02:41,380 PENONTON: Taip kata laluan. 1369 01:02:41,380 --> 01:02:41,720 DAVID J. MALAN: Ya. 1370 01:02:41,720 --> 01:02:44,000 Jadi apa jika apa yang saya telah ditaip kata laluan saya? 1371 01:02:44,000 --> 01:02:47,881 Saya jenis tidak mahu ia begitu jelas kelihatan dalam bar alamat penyemak imbas saya. 1372 01:02:47,881 --> 01:02:50,630 Satu, kerana rakan sebilik menjengkelkan saya cenderung untuk menonton di atas bahu saya, 1373 01:02:50,630 --> 01:02:53,980 dan dia kini boleh melihat, walaupun ia adalah peluru apabila saya menaip dalam, 1374 01:02:53,980 --> 01:02:54,810 bulatan kecil. 1375 01:02:54,810 --> 01:02:56,010 Kini sudah tiba di bar alamat saya. 1376 01:02:56,010 --> 01:02:59,270 >> Selain itu, apa yang benar mengenai barangan anda cenderung untuk menaip dalam bar alamat. 1377 01:02:59,270 --> 01:03:00,230 >> PENONTON: [didengar] 1378 01:03:00,230 --> 01:03:01,505 >> DAVID J. MALAN: Apa itu? 1379 01:03:01,505 --> 01:03:02,630 PENONTON: Ia akan dihantar keluar. 1380 01:03:02,630 --> 01:03:03,510 DAVID J. MALAN: Ia akan dihantar keluar. 1381 01:03:03,510 --> 01:03:05,102 Dan juga, ia akan diingati. 1382 01:03:05,102 --> 01:03:07,060 Oleh kerana masa yang akan datang anda menaip sesuatu di sana, 1383 01:03:07,060 --> 01:03:10,440 Selalunya ia autocompletes dan ia ingat apa yang anda telah ditaip sebelum ini. 1384 01:03:10,440 --> 01:03:13,850 Dan jadi ada sejarah sungguh ini yang adik-beradik anda, atau rakan sebilik anda, 1385 01:03:13,850 --> 01:03:16,830 atau sesiapa yang boleh berjalan melalui cukup banyak melihat setiap laman web 1386 01:03:16,830 --> 01:03:19,760 anda melawat kerana ia adalah log masuk yang bar alamat. 1387 01:03:19,760 --> 01:03:22,790 >> Lebih-lebih lagi, katakan anda mahu memuat naik foto ke Facebook. 1388 01:03:22,790 --> 01:03:26,520 Bagaimana di dunia adalah anda akan meletakkan foto dalam URL? 1389 01:03:26,520 --> 01:03:30,217 >> Baik ia ternyata anda boleh melakukannya dalam beberapa cara, tetapi ia sudah tentu tidak jelas. 1390 01:03:30,217 --> 01:03:33,050 Dan sebagainya ada cara ini lain menghantar maklumat dalam sampul surat, 1391 01:03:33,050 --> 01:03:35,680 tidak melalui GET, tetapi melalui sesuatu yang dinamakan POST. 1392 01:03:35,680 --> 01:03:38,060 Dan dalam teori, ia kelihatan lebih kurang sama. 1393 01:03:38,060 --> 01:03:41,270 Sebaliknya dengan perkataan GET, kita katakan POST, dan kemudian jenis yang sama format. 1394 01:03:41,270 --> 01:03:43,310 >> Sebagai contoh, ini adalah screenshot apa 1395 01:03:43,310 --> 01:03:46,920 ia mungkin kelihatan seperti jika saya cuba pembalakan ke dalam Facebook, yang menghantar saya ke fail 1396 01:03:46,920 --> 01:03:51,230 dipanggil login.php, yang sebenarnya masih hingga ke hari ini dinamakan seperti itu. 1397 01:03:51,230 --> 01:03:53,910 Ia adalah nama fail Mark yang sama memberikan kepadanya beberapa tahun lalu. 1398 01:03:53,910 --> 01:03:58,520 Ia adalah program yang ditulisnya dalam PHP melalui mana pengguna boleh log masuk ke laman web. 1399 01:03:58,520 --> 01:04:00,370 >> Tetapi anda perlu menghantar beberapa input tambahan. 1400 01:04:00,370 --> 01:04:05,170 Dan bukannya ia akan selepas nama fail seperti yang berlaku sebelum ini dengan cats-- 1401 01:04:05,170 --> 01:04:09,720 q = cats-- ia boleh pergi lebih rendah dalam permintaan itu, dalam lebih dalam sampul surat jika anda 1402 01:04:09,720 --> 01:04:12,440 akan di mana tidak ada yang dapat melihatnya, dan di mana ia tidak berakhir 1403 01:04:12,440 --> 01:04:15,670 di bar pelayar pengguna, dan oleh itu tidak ingat untuk orang ramai untuk mengintip 1404 01:04:15,670 --> 01:04:16,290 sekitar. 1405 01:04:16,290 --> 01:04:21,260 >> Dan sebagainya di sini alamat e-mel saya dan kata palsu saya benar-benar pergi. 1406 01:04:21,260 --> 01:04:27,400 Dan jika Facebook menggunakan tidak HTTP, HTTPS tetapi, 1407 01:04:27,400 --> 01:04:30,710 ini semua akan disulitkan, hancur, ala Kaisar atau Vigenere, 1408 01:04:30,710 --> 01:04:34,960 tetapi lebih fancily supaya tiada siapa yang sebenarnya boleh melihat permintaan ini. 1409 01:04:34,960 --> 01:04:38,120 >> Dan sebagainya sesungguhnya, bila-bila masa anda mempunyai URL yang bermula dengan HTTPS, 1410 01:04:38,120 --> 01:04:39,560 itu hanya bererti ia disulitkan. 1411 01:04:39,560 --> 01:04:42,710 Tetapi pada akhir hari, apa yang sebenarnya di dalam sampul surat ini? 1412 01:04:42,710 --> 01:04:44,070 Ini adalah tahap yang sangat rendah. 1413 01:04:44,070 --> 01:04:46,240 Dan nasib baik, kita tidak akan semestinya 1414 01:04:46,240 --> 01:04:49,310 pergi tahap begitu rendah setiap masa untuk mula menulis perisian yang menarik. 1415 01:04:49,310 --> 01:04:51,060 Kita boleh mula mengambil idea-idea minggu satu 1416 01:04:51,060 --> 01:04:54,020 melalui lima, menganggap bahawa terdapat kini infrastruktur ini yang 1417 01:04:54,020 --> 01:04:57,160 membolehkan kita menulis perisian yang beroperasi di web, 1418 01:04:57,160 --> 01:05:00,120 dan ia akan membolehkan kita minggu yang akan datang untuk memulakan 1419 01:05:00,120 --> 01:05:01,840 melihat sesuatu yang dipanggil HTML. 1420 01:05:01,840 --> 01:05:04,750 Ini adalah barangan yang adalah lebih lebih mendalam di dalam sampul surat, 1421 01:05:04,750 --> 01:05:06,150 tetapi ia adalah barangan yang kita berada akan mula menulis. 1422 01:05:06,150 --> 01:05:08,020 Dan ia adalah barangan yang lebih menarik lagi, kami 1423 01:05:08,020 --> 01:05:11,420 akan menulis program yang bermula menjana secara automatik 1424 01:05:11,420 --> 01:05:15,410 supaya laman web kita tidak dikodkan, tetapi mengambil input dan menghasilkan output. 1425 01:05:15,410 --> 01:05:18,810 >> Ini mungkin web yang paling mudah halaman yang anda boleh membuat di dunia. 1426 01:05:18,810 --> 01:05:23,000 Saya memang boleh membuka sesuatu yang bodoh seperti TextEdit 1427 01:05:23,000 --> 01:05:26,160 pada Mac saya, yang hanya memberikan saya tetingkap teks yang mudah seperti ini. 1428 01:05:26,160 --> 01:05:29,510 Pengguna PC mempunyai Notepad.ext, yang hampir sama dalam semangat. 1429 01:05:29,510 --> 01:05:33,212 >> Dan saya benar-benar boleh menaip keluar this-- DOCTYPE HTML, 1430 01:05:33,212 --> 01:05:34,420 yang kelihatan sedikit samar. 1431 01:05:34,420 --> 01:05:35,850 Tetapi kita akan kembali kepada itu. 1432 01:05:35,850 --> 01:05:38,730 HTML, dengan ini pelik kurungan bersudut dan garis condong, 1433 01:05:38,730 --> 01:05:42,240 di dalam yang sekarang saya akan berkata di sini datang ketua atas laman web saya. 1434 01:05:42,240 --> 01:05:45,220 Di dalam itu, saya hanya tahu, dan anda akan segera tahu, 1435 01:05:45,220 --> 01:05:47,850 bahawa saya boleh meletakkan tajuk laman web saya. 1436 01:05:47,850 --> 01:05:49,720 Dan kemudian di bawah kepala halaman web adalah 1437 01:05:49,720 --> 01:05:51,972 akan pergi ke apa yang dikenali sebagai badan halaman web. 1438 01:05:51,972 --> 01:05:54,180 Dan saya hanya mengensotkannya hanya seperti dalam C untuk jenis menyimpan 1439 01:05:54,180 --> 01:05:57,620 perkara yang baik yang boleh dibaca segi gaya. 1440 01:05:57,620 --> 01:06:04,745 Dan sekarang saya akan menyelamatkan ini sebagai memfailkan di desktop saya, yang dipanggil hello.html. 1441 01:06:04,745 --> 01:06:06,770 >> Dan saya akan beritahu ya, menggunakan HTML. 1442 01:06:06,770 --> 01:06:09,690 Jangan menukar kepada .txt, walaupun walaupun semua ini adalah fail teks, 1443 01:06:09,690 --> 01:06:12,130 sama seperti program C ditulis dengan menggunakan penyunting teks. 1444 01:06:12,130 --> 01:06:15,080 Walaupun tidak dalam CS50 IDE pada masa, hanya di sini pada Mac saya. 1445 01:06:15,080 --> 01:06:18,490 >> Dan jika saya sekarang pergi ke desktop saya, anda akan melihat hello.html. 1446 01:06:18,490 --> 01:06:20,720 Jika saya klik dua kali ini, ia akan membuka Chrome. 1447 01:06:20,720 --> 01:06:23,260 Dan walaupun fail ini berlaku untuk hidup di desktop saya, 1448 01:06:23,260 --> 01:06:26,550 yang mungkin yang paling mudah laman web saya boleh membuat. 1449 01:06:26,550 --> 01:06:30,080 >> Perhatikan bahawa tajuk tab cara sehingga atas adalah dunia hello. 1450 01:06:30,080 --> 01:06:32,470 Mayat atas laman web memang hello dunia. 1451 01:06:32,470 --> 01:06:35,830 Dan semua yang saya lakukan untuk mendapatkan ke tahap ini adalah melaksanakan, 1452 01:06:35,830 --> 01:06:38,342 atau adalah menulis bahasa baru, yang dipanggil HTML. 1453 01:06:38,342 --> 01:06:40,300 Ia bukan pengaturcaraan bahasa seperti C. Ada 1454 01:06:40,300 --> 01:06:42,508 tidak akan menjadi syarat, dan gelung, dan fungsi. 1455 01:06:42,508 --> 01:06:46,560 Ia adalah satu bahasa penanda, di mana Sekiranya anda hanya memberitahu penerima 1456 01:06:46,560 --> 01:06:48,410 program apa yang anda mahu lakukan. 1457 01:06:48,410 --> 01:06:51,195 Ini bermakna hey pelayar, di sini datang dalam halaman HTML. 1458 01:06:51,195 --> 01:06:53,040 Hey pelayar, di sini datang ketua halaman saya. 1459 01:06:53,040 --> 01:06:55,130 Hey pelayar, di sini datang badan halaman saya. 1460 01:06:55,130 --> 01:06:57,100 Hey pelayar, itu sahaja untuk badan. 1461 01:06:57,100 --> 01:06:59,350 Itu sahaja untuk halaman HTML. 1462 01:06:59,350 --> 01:07:03,560 >> Dan di antara orang definisi mudah sahaja, kita tidak lama lagi akan melihat yang satu, 1463 01:07:03,560 --> 01:07:05,122 kita boleh mewakili ini sebagai pokok. 1464 01:07:05,122 --> 01:07:06,080 Tetapi lebih kepada yang kemudian. 1465 01:07:06,080 --> 01:07:08,788 Jadi ini semua akan sambung ke struktur data terkini kami. 1466 01:07:08,788 --> 01:07:12,460 Kedua, kami akan memperkenalkan jenaka bodoh. 1467 01:07:12,460 --> 01:07:15,680 Ini adalah satu tatu sebenar yang lelaki ini telah pada lehernya. 1468 01:07:15,680 --> 01:07:19,660 Ia mungkin melucukan minggu pertama atau dua, dan selepas itu, mungkin tidak begitu banyak. 1469 01:07:19,660 --> 01:07:22,960 >> Tetapi HTML, dan juga web Laman Saya hanya membuat, minda super 1470 01:07:22,960 --> 01:07:25,670 numbingly disappointing-- hanya mengatakan hello dunia 1471 01:07:25,670 --> 01:07:27,210 dalam teks hitam pada latar belakang putih. 1472 01:07:27,210 --> 01:07:28,680 Sesungguhnya kami boleh melakukan lebih baik. 1473 01:07:28,680 --> 01:07:31,552 Dan kami akan berbuat demikian dengan memperkenalkan bahasa lain yang dipanggil CSS. 1474 01:07:31,552 --> 01:07:34,760 Ini juga bukan language-- pengaturcaraan ada gelung, dan syarat, atau untuk gelung, 1475 01:07:34,760 --> 01:07:38,470 tetapi benar-benar, hanya sintaks yang mana kita boleh katakan, membuat teks ini besar. 1476 01:07:38,470 --> 01:07:39,415 Membuat teks ini kecil. 1477 01:07:39,415 --> 01:07:40,040 Menyelaraskan dengan betul. 1478 01:07:40,040 --> 01:07:40,650 Kiri menyamakannya. 1479 01:07:40,650 --> 01:07:41,195 Jadikan ia merah jambu. 1480 01:07:41,195 --> 01:07:41,820 Jadikan ia ungu. 1481 01:07:41,820 --> 01:07:42,650 Jadikan ia biru. 1482 01:07:42,650 --> 01:07:44,860 Atau melakukan apa-apa bilangan kesan visual lain. 1483 01:07:44,860 --> 01:07:48,590 Dan dengan itu kita akan melihat bagaimana untuk memulakan stylizing laman web sehingga mereka melihat dengan cara yang 1484 01:07:48,590 --> 01:07:50,480 lebih dekat dengan apa yang kita mahu. 1485 01:07:50,480 --> 01:07:56,930 >> Dan akhir sekali, kami memang hancur mungkin banyak TV dan filem untuk anda. 1486 01:07:56,930 --> 01:07:58,930 Saya fikir kita akan berakhir di sini dengan saat akhir kami 1487 01:07:58,930 --> 01:08:03,700 pada music akhir yang menunjukkan anda bagaimana penggodaman kepada kerja-kerja internet. 1488 01:08:03,700 --> 01:08:06,250 Jika kita boleh malap menyala satu masa akhir. 1489 01:08:06,250 --> 01:08:07,250 >> [VIDEO MAIN SEMULA] 1490 01:08:07,250 --> 01:08:09,520 >> Cara -No. 1491 01:08:09,520 --> 01:08:10,650 Saya mendapat digodam. 1492 01:08:10,650 --> 01:08:11,770 >> -Okorsky? 1493 01:08:11,770 --> 01:08:14,230 >> -No-- Tidak, ini adalah utama. 1494 01:08:14,230 --> 01:08:17,074 Mereka sudah dibakar melalui firewall awam NCIS. 1495 01:08:17,074 --> 01:08:19,990 -Baik, Mengasingkan nod dan pembuangan mereka di sisi lain dari router. 1496 01:08:19,990 --> 01:08:20,990 -Saya sedang mencuba. 1497 01:08:20,990 --> 01:08:23,990 Ia bergerak terlalu cepat. 1498 01:08:23,990 --> 01:08:25,179 >> -Oh, Ini tidak baik. 1499 01:08:25,179 --> 01:08:27,470 Mereka menggunakan hubungan kita [Didengar] pangkalan data ini. 1500 01:08:27,470 --> 01:08:28,458 Memutuskan ia. 1501 01:08:28,458 --> 01:08:28,958 -Saya Tidak boleh. 1502 01:08:28,958 --> 01:08:29,454 Ia adalah satu serangan mata. 1503 01:08:29,454 --> 01:08:31,438 Dia hanya akan selepas mesin saya. 1504 01:08:31,438 --> 01:08:32,430 >> -Ia Tidak mungkin. 1505 01:08:32,430 --> 01:08:33,847 Ada DOD penyulitan lombong peringkat. 1506 01:08:33,847 --> 01:08:35,055 Ia akan mengambil bulan untuk get-- 1507 01:08:35,055 --> 01:08:35,857 Hey, apakah itu? 1508 01:08:35,857 --> 01:08:36,398 Permainan video? 1509 01:08:36,398 --> 01:08:37,886 >> -Tiada Tony, kami mendapat digodam. 1510 01:08:37,886 --> 01:08:40,795 >> -Jika Mereka dalam komputer Abby, seluruh rangkaian NCIS adalah yang akan datang. 1511 01:08:40,795 --> 01:08:42,050 >> -Saya Tidak boleh menghalangnya. 1512 01:08:42,050 --> 01:08:43,050 Melakukan sesuatu McGee. 1513 01:08:43,050 --> 01:08:44,550 >> -Aku Pernah melihat kod seperti ini. 1514 01:08:44,550 --> 01:08:47,432 1515 01:08:47,432 --> 01:08:48,571 -Oh. 1516 01:08:48,571 --> 01:08:49,196 -Di Yang ia pergi? 1517 01:08:49,196 --> 01:08:50,604 Abby? 1518 01:08:50,604 --> 01:08:51,520 -Saya Tidak berbuat apa-apa. 1519 01:08:51,520 --> 01:08:53,020 Saya fikir anda lakukan. 1520 01:08:53,020 --> 01:08:54,520 >> -Tiada. 1521 01:08:54,520 --> 01:08:57,232 >> -Saya telah lakukan. 1522 01:08:57,232 --> 01:08:58,307 >> [AKHIR MAIN SEMULA] 1523 01:08:58,307 --> 01:09:00,390 DAVID J. MALAN: Yang terbaik bahagian adalah dua orang menaip 1524 01:09:00,390 --> 01:09:02,170 pada papan kekunci pada masa yang sama. 1525 01:09:02,170 --> 01:09:03,200 >> Jadi itu sahaja untuk CS50. 1526 01:09:03,200 --> 01:09:04,700 Kami akan melekat di sekeliling untuk waktu pejabat. 1527 01:09:04,700 --> 01:09:06,344 Dan kita akan melihat masa depan. 1528 01:09:06,344 --> 01:09:07,760 [Bermain muzik - "TEMA Seinfeld"] 1529 01:09:07,760 --> 01:09:11,139 1530 01:09:11,139 --> 01:09:11,680 Ini adalah CS50. 1531 01:09:11,680 --> 01:09:17,960 1532 01:09:17,960 --> 01:09:20,854 Saya tidak mahu menjadi lanun. 1533 01:09:20,854 --> 01:09:21,770 SPEAKER 2: Yarr Daud. 1534 01:09:21,770 --> 01:09:23,700 Ia adalah sepasang denda anda memakai. 1535 01:09:23,700 --> 01:09:26,450 Banyak Luff dalam puff itu. 1536 01:09:26,450 --> 01:09:29,327