[MUSIC CHƠI] DAVID J. Malan: Vì vậy, tôi chỉ muốn làm dịu bớt để. Tôi sẽ echo chính xác những gì Scaz nói về bộ nhớ chế. CS50 đã được khoảng khoảng 20 năm tại Harvard. Và thực tế là, từ những người cao niên trên xuống, hàng năm có sự bảo đảm mà các tân sinh viên, các sophomores, và các đàn em và còn những người cao niên dùng CS50, rằng bạn sẽ làm tốt. Thực tế là, sinh viên không thất bại CS50. Trong thực tế, trong những trường hợp hiếm hoi nơi mà chúng ta Es hay Fs, nó thực sự được vì tình tiết giảm nhẹ, cho dù đó là y tế hoặc cá nhân. Ds là cực kỳ hiếm gặp là tốt. Và tôi có thể nói thoải mái, mặc dù chúng tôi thường không tiết lộ số liệu thống kê, nhưng cho rằng không có bộ nhớ chế ở đây nào, đa số học sinh trong CS50 không kết thúc nhận được một loạt các hạng. Một phần đáng kể kết thúc kết thúc trong phạm vi B quá. Vì vậy, mặc dù bạn có thể có tương đương trong threes tâm trí của bạn với 60% và do đó Ds, hoặc Cs, hoặc tương tự, nó thực sự không thẳng hàng với thực tế. Trong thực tế, chúng tôi có nghĩa là chính xác những gì chúng tôi nói ở phần đầu của thuật ngữ mà rất nhiều sinh viên trong CS50, cả hai ở Cambridge và ở đây tại New Haven, không bao giờ lấy một khóa học CS trước. Và những gì thực sự quan trọng cuối cùng là nơi mà bạn kết thúc trong tuần 12 so với chính mình trong tuần zero. Bây giờ chúng tôi có nhiều theo dõi trong khóa học như bạn know-- ít thoải mái, hơn thoải mái, một nơi nào đó ở giữa. Và quả thực, khi bạn nhận được thống kê về đố của tuần này, đừng nản lòng nếu, đặc biệt là nếu bạn cảm thấy rằng bạn xung quanh giá trị trung bình hoặc dưới trung bình hoặc trung bình, đặc biệt là kể từ khi chúng tôi không nhất thiết phải lấy tất cả những nhân khẩu học vào tài khoản giữa học kỳ với các số liệu thống kê phân loại. Nói cách khác, chúng ta biết thống kê hàng năm mà học sinh ít thoải mái, làm một ít tồi tệ hơn vào các bài kiểm tra. Và những sinh viên được thoải mái hơn làm tốt hơn một chút về các bài kiểm tra. Nhưng mỗi lời hứa đó trong các giáo trình và cũng trong tuần đầu tiên của bài giảng, chúng tôi mất tất cả mà vào tài khoản. Thật vậy, ở những năm cuối, những gì chúng ta kết thúc làm được bình thường hóa tất cả các điểm trên phần, cả ở Cambridge và bây giờ đây ở New Haven, có nghĩa là có tính các phong cách khác nhau, sự khác nhau sự khắc nghiệt, các loại khác nhau của các cá tính rằng cá nhân HTKT có ở đây và ở Cambridge vì vậy mà bạn có thể chưa biết một bất lợi ngay cả khi bạn chỉ thường bị đã có một TF hoặc TA ai đã từng một chút khó khăn hơn về bạn trong tâm trí của bạn. Hai, chúng tôi đưa vào tài khoản thoải mái mức độ và nền tảng thực tế, hoặc thiếu của chúng, khi chụp điểm bài kiểm tra vào tài khoản. Vì vậy, hai là yếu tố trong. Và vào cuối ngày, bởi vì nó luôn luôn như vậy rằng một học sinh đã kết thúc trong một phần ít thoải mái khi anh ta thực sự thuộc về trong một ở giữa hoặc ngược lại, tất cả mọi thứ là như vậy cực kỳ cá nhân. Thật vậy, bạn sẽ nhận được khó chịu với chúng tôi tại Khi hết thời hạn, khi chúng tôi đến trễ gửi điểm của bạn bởi vì với Scaz, và Jason, và Andy, và tôi, và các đội sẽ phải làm ở Cambridge là nghĩa đen có hàng trăm email lại và ra với tất cả trăm của các khóa học Hỗ trợ kỹ thuật, ở đây và ở Cambridge, hỏi họ những gì họ nghĩ rằng tất cả các học sinh của mình dựa trên một dự thảo của lớp. Và tất cả mọi thứ ở đó sau khi là cực kỳ cá nhân. Vì vậy, đến mức chúng tôi biết đến bạn trong giờ hành chính, các phần, và nhiều hơn nữa, tất cả điều đó quá được đưa vào tài khoản. Vì vậy, mặc dù chúng ta có xu hướng sử dụng năm này thang điểm, xin vui lòng, tách mình từ giả định rằng một ba thực sự là một 60%. Nó có nghĩa là để được tốt. Và các trợ giảng được tính theo đầu hạn để cố gắng giữ điểm số trong twos, và ba, và bốn chân dao động để chúng tôi thực sự có chỗ để phát triển. Và chúng tôi thực sự có một thước đo mà chúng tôi có thể cung cấp cho bạn hữu ích thông tin phản hồi như thế nào bạn đang làm và làm thế nào bạn đang tiến bộ. Vì vậy, xin đừng lấy đó để trái tim. Có bất kỳ câu hỏi tôi có thể giúp giải quyết hoặc quan tâm tôi có thể giúp làm dịu bớt? Hoặc những lời hứa tôi có thể cố gắng giữ? Không có? ĐƯỢC. Được rồi. Vì vậy, với những gì đã nói, đây là CS50. Đây là khởi đầu của tuần sáu ở đây ở New Haven. Hãy bắt đầu với một tóm tắt mờ của đèn để chuẩn bị cho những nội dung của ngày hôm nay. [VIDEO PLAYBACK] [MUSIC CHƠI] -Anh Đến với một tin nhắn. Với một giao thức tất cả của riêng mình. Ông đã đến một thế giới của bức tường lửa mát, router không quan tâm, và nguy cơ còn tồi tệ hơn rằng cái chết. Ông nhanh chóng, anh ta mạnh, ông là TCP / IP. Và ông đã nhận địa chỉ của bạn. Warriors of the net. [END PLAYBACK] DAVID J. Malan: Tất cả các quyền. Đây là CS50. Đây là khởi đầu của tuần sáu. Và đây là khởi đầu của cái nhìn của chúng tôi tại các chương trình internet và web. Và, có lẽ sôi nổi nhất, hôm nay đánh dấu sự chuyển tiếp cho chúng tôi từ dòng lệnh của chúng tôi thế giới của C lên web dựa thế giới của PHP và HTML và CSS, và SQL, và JavaScript, và nhiều hơn nữa mà là trên đường chân trời. Nhưng trước tiên, nó đã gây chú ý của chúng tôi trong bước đi trên khuôn viên trường mà ở đó là một phòng tắm nhất định ở đây tại New Haven gọi là phòng Harvard, mà là một chút màu xám ra ở đây. Nhưng thực sự, một người nào đó đã đến thời gian và chi phí khắc trong phòng Harvard trên đây căn phòng này. Cảm ơn bạn vì điều đó. Tôi không thể nói rằng chúng ta có một tương tự ở Cambridge nào, nhưng tôi nghĩ rằng chúng tôi có một dự án nhỏ cho mình bây giờ khi chúng tôi quay trở lại. Vì vậy, cảm ơn bạn vì điều đó. Vì vậy, một cách nhanh chóng nhìn lại nơi chúng tôi rời đi tuần trước và nơi bạn đang đi này đến tuần với những vấn đề thiết lập năm. Vì vậy, trong vấn đề thiết lập năm, bạn sẽ được thách thức để thực hiện một kiểm tra chính tả. Và để làm được điều đó, bạn sẽ có trao một văn bản khá lớn tập tin với như 140.000 từ tiếng Anh. Và bạn sẽ được thử thách để quyết định trên một cấu trúc dữ liệu mà bạn muốn tải tất cả những lời nói vào bộ nhớ, và vào bộ nhớ RAM, và sau đó thực hiện một số chức năng, một trong số đó là có được kiểm tra. Nhờ đó mà khi vượt qua một đối số, một từ, kiểm tra chức năng của bạn chỉ đơn giản là sẽ có nói đúng hay sai, đây là một từ trong từ điển. Nhưng bạn sẽ có một số thiết kế theo ý mình và thách thức khi nói đến việc thực hiện điều đó. Trong việc thực hiện đơn giản, bạn có thể chắc chắn thực hiện một kiểm tra chính tả trong từ điển cơ bản với những loại cấu trúc dữ liệu? Bạn chỉ cần lưu trữ một toàn bộ bó dây trong bộ nhớ? Đường đi để trả lời là gì từ tuần thứ hai có lẽ? Đung Array. DAVID J. Malan: Bạn có thể sử dụng một mảng. Và đó không phải là tất cả những gì xấu. Nhưng bạn không nhất thiết phải biết trước cách lớn của một mảng bạn sẽ cần, nếu bạn không biết các tập tin cần thiết trước. Vì vậy, bạn sẽ phải sử dụng một ít thủ đoạn gian trá như malloc, giống như chúng ta bắt đầu sử dụng. Hoặc chúng ta có thể giải quyết rằng mối quan tâm bằng cách sử dụng những cấu trúc dữ liệu khác đó là được sắp xếp của một tăng cường biên trên một mảng? Đung danh sách liên kết. DAVID J. Malan: Giống như một liên kết danh sách, trong đó chúng tôi nhận được một số tính năng động. Nhưng có một chi phí ít hơn. Chúng tôi có con trỏ để duy trì. Và bạn đã chưa được mã hóa này lên, nhưng có chắc chắn để được một ít phức tạp hơn hơn là chỉ sử dụng dấu ngoặc vuông và nhảy xung quanh một mảng. Nhưng thời gian chạy của một mảng, nếu bạn đang tìm kiếm cho một từ, có thể được đăng nhập của n. Nhưng một lần nữa, nó có thể là một chút không tầm thường để xây dựng mảng mà không biết kích thước trước. Một danh sách liên kết, mặc dù nếu bạn chỉ cần lưu trữ một bó dây trong một danh sách liên kết, những gì là giới hạn trên của bạn về thời gian chạy sẽ được để tìm kiếm cho hoặc kiểm tra một từ trong danh sách đó? Đung n. DAVID J. Malan: Yeah, O lớn của n hay tuyến tính bởi vì trong trường hợp xấu nhất, từ đó như một từ Z tất cả các cách ở cuối. Và vì một danh sách liên kết, vì những mũi tên theo mặc định, trong một danh sách đơn lẻ liên kết, chỉ đi từ hướng này sang người kia, bạn không thể nhảy xung quanh. Bạn phải làm theo tất cả chúng. Vì vậy, chúng tôi đề xuất vào cuối tuần trước, tuần năm, đó có những cách tốt hơn. Và trên thực tế, các chén thánh thực sự sẽ là thời gian liên tục nhờ đó mà khi bạn muốn để tìm kiếm một từ, bạn có được một câu trả lời ngay lập tức không phân biệt của bao nhiêu từ đã trong từ điển của bạn. Đây là một màn biểu diễn của người nghệ sĩ những gì bạn có thể gọi là một bảng băm. Và một bảng băm là loại một đẹp hỗn hợp của một array-- vẽ theo chiều dọc ở đây, chỉ because-- và sau đó một liên kết list-- vẽ theo chiều ngang ở đây. Và bảng băm có thể được thực hiện trong chùm cách. Đoạn trích này từ một cuốn sách giáo khoa sẽ xảy ra sử dụng ngày tháng năm sinh của những người này như các phương tiện mà nó quyết định nơi để đặt tên của một ai đó. Vì vậy, đây là một từ điển nếu bạn muốn của tên. Và để đẩy nhanh việc đưa tên vào cấu trúc dữ liệu này, họ nhìn vào, rõ ràng, của những người này sinh ngày đối với một tháng với. Vì vậy, nó là 1-31. Và quên đi tháng hai và trường hợp góc như thế. Và nếu ngày sinh nhật của bạn là vào ngày 1, hoặc 01 tháng 2, hoặc 1 tháng 12, bạn sẽ kết thúc tại chuỗi lên đỉnh đầu tiên. Nếu ngày sinh nhật của bạn như ngày 25 của một tháng, bạn sẽ kết thúc tại xô số 25. Và nếu có ai đó đã có trong bất kỳ của những địa điểm, những gì bạn bắt đầu làm với các liên kết danh sách được khâu chúng lại với nhau để bạn có thể có một tùy ý số người, hoặc bất cứ điều gì, tại địa điểm đó. Vì vậy, bạn có một loại hỗn hợp hằng số thời gian cho băm. Và để băm một cái gì đó có nghĩa là mất đầu vào như một con người, hoặc tên mình, hoặc người khai sinh của mình ngày, và sau đó quyết định trên một số đầu ra trên cơ sở đó, giống như nhìn vào họ sinh nhật và cho ra một thông qua 31. Vì vậy, sau đó bạn có thể có một chút thời gian tuyến tính, nhưng trong thực tế, và như trong trường hợp của vấn đề thiết lập năm, chúng tôi sẽ không được làm việc tại P đặt năm rất nhiều về tiệm cận chạy thời gian, như sự chậm chạp lý thuyết mà một thuật toán có thể chạy. Chúng ta sẽ quan tâm thực tế số lượng giây và số tiền thực tế của bộ nhớ, thực tế số lượng byte của bộ nhớ bạn đang sử dụng. Vì vậy, thẳng thắn, có một rất lớn chuỗi giống như một triệu người là damn khá chậm nếu bạn đang tìm kiếm cho một tên trong danh sách các kích thước triệu. Nhưng nếu bạn chia rằng danh sách lên thành 31 bộ phận? Tìm kiếm 1/31 đó siêu danh sách dài, trong thực tế, chắc chắn là sẽ nhanh hơn. Tiệm cận, đó là điều tương tự. Bạn chỉ cần chia bởi một yếu tố không đổi. Và nhớ rằng chúng ta ném những thứ đi. Nhưng trong thực tế, nó sẽ được nhanh hơn 31 lần. Và đó là những gì chúng ta sẽ bắt đầu vào đòn bẩy trong P thiết lập năm. Vì vậy, P thiết lập năm quá cũng đề xuất rằng bạn xem xét hơi phức tạp hơn cấu trúc dữ liệu gọi là một Trie. Và một Trie chỉ là một cây giống như cấu trúc dữ liệu. Nhưng thay vì có vòng tròn nhỏ hoặc hình chữ nhật như chúng tôi tiếp tục vẽ cho các nút, nó thực sự có toàn bộ mảng cho các nút của nó. Và mặc dù đây là một chút trừu tượng ở đây để xem xét, Zamyla trong P tập đi bộ thông qua sẽ hướng dẫn bạn qua chi tiết hơn về điều này. Đây là một cấu trúc dữ liệu mà thay khéo léo có thể có mỗi nút là một mảng các kích thước 26, từ A đến Z hoặc không thông qua 25. Và khi bạn muốn chèn một người của tên vào cấu trúc dữ liệu này hoặc tìm anh ta hoặc cô ấy, những gì bạn làm, nếu các Tên là như Maxwell, M-A-X-W-E-L-L, đầu tiên bạn nhìn vào M. Và sau đó bạn chuyển đến các vị trí tương ứng M trong mảng đầu tiên. Sau đó bạn nhảy đến A, người đầu tiên vị trí trong mảng tới, sau các mũi tên. Sau đó, X, sau đó W, sau đó E, sau đó L, sau đó L, và sau đó có thể kết thúc một số đặc biệt nhân vật, một số trọng điểm mà nói một từ dừng lại ở đây. Và những gì tốt đẹp về this-- và giữ trong tâm trí rằng tình hình ở đây, chú ý cách cạnh của mỗi mảng bị cắt đứt. Đó chỉ là bởi vì điều này sẽ được lớn và khủng khiếp để tìm ở trên màn hình. Vì vậy, nó trích. Những gì tốt đẹp về cách tiếp cận này là mà nếu có một triệu tên đã trong cấu trúc dữ liệu này, bao nhiêu bước nó đưa tôi đến chèn Maxwell? M-A-X-W-E-L-L-- như bảy-ish các bước để chèn hoặc tìm Maxwell. Giả sử có một nghìn tỷ tên trong cấu trúc dữ liệu này. Có bao nhiêu bước nào nó đi tôi để tìm Maxwell? M-A-X-- vẫn bảy. Và đó chính là cái gọi là thời gian liên tục. Nếu chúng ta giả định rằng những lời chắc chắn bao bọc 20 ký tự, hoặc 46 ký tự, hoặc một số nguyên lý nhỏ, sau đó nó có hiệu quả là một hằng số. Và do đó, chèn và tìm kiếm một Trie là siêu nhanh. Tất nhiên, chúng tôi không bao giờ có được bất cứ điều gì miễn phí. Và mặc dù có thể bạn đã không nhảy vào P thiết lập năm nào, giá cả những gì chúng ta có thể trả tiền để nhận được rằng thời gian hiệu quả cao hơn khôn ngoan? Đung Memory. DAVID J. Malan: Memory, phải không? Tôi có nghĩa là, chúng tôi đã không rút ra toàn bộ hình ảnh ở đây. Đoạn trích này từ sách giáo khoa không thu hút tất cả các mảng. Có một số lượng lớn bộ nhớ và chỉ con trỏ null mà không được sử dụng. Vì vậy, nó là một thương mại giảm. Và nó sẽ được để lại cho bạn trong P đặt năm để quyết định cách mà bạn muốn đi. Bây giờ ý tưởng này của băm, như là một sang một bên, thực sự là siêu phổ biến. Vì vậy, để băm một phương tiện có giá trị, khá chỉ đơn giản, để có một cái gì đó như là đầu vào và sản xuất ra một sản lượng. Vì vậy, một hàm băm chỉ là một thuật toán. Và nói chung, một mục đích hàm băm trong cuộc sống là để có một cái gì đó như là đầu vào và sản xuất một số lượng như sản lượng, như số một đến 31 hoặc từ A đến Z, không thông qua 25. Vì vậy, phải mất một đầu ra phức tạp và co lại xuống đến một cái gì đó đó là nhiều hơn một chút hữu ích và dễ quản lý. Và do đó, nó quay ra trong một chức năng rất phổ biến rằng thế giới an ninh và thế giới của con người được sử dụng trong nhiều năm qua được gọi là SHA1. Đây là một khá lạ mắt toán học công thức nào về cơ bản đó. Bạn hãy thực sự lớn đoạn của số không và ones-- đó có thể là một megabyte dài, một long-- gigabyte và nó co lại nó xuống chỉ một vài bit, một vài bit, để bạn có một số mặt hàng như một đến 31, hoặc từ A đến Z. Nhưng trong thực tế, nó là một chút lớn hơn chỉ từ A đến Z. Thật không may, chúng tôi đang ở trên đỉnh của những gì ai đó tinh nghịch gọi là SHAppening nhờ đó mà thế giới sắp tới kết thúc trong một vài tháng có lẽ thời gian bởi vì các nhà nghiên cứu, chỉ trong tuần vừa qua, công bố một báo cáo rằng trái với những gì các nhà nghiên cứu bảo mật đã nghĩ một thời gian, bởi chỉ chi tiêu về, đó là gì, Tôi nghĩ đó là $ 175,000-- nhiều tiền, nhưng không vượt quá tầm với của chàng trai đặc biệt xấu xấu, hoặc đặc biệt xấu countries-- $ 175,000 có thể mua cho bạn rất nhiều máy chủ thuê không gian trong các đám mây. Và chúng tôi sẽ trở lại các đám mây trước khi dài. Nhưng nó chỉ có nghĩa là thuê máy chủ không gian trên như máy chủ của Microsoft, hoặc Google, hoặc Amazon, hoặc giống như nơi mà bạn có thể trả tiền theo phút sử dụng máy tính của người khác. Và hóa ra nếu bạn có thể trả tiền người khác mượn máy tính của họ và chạy mã mà bạn đã viết vào nó và sử dụng khá lạ mắt toán học, bạn có thể hình cơ bản ra cách hàm băm một ai đó là làm việc, và cho sản lượng của nó, đảo ngược kỹ sư gì đầu vào của nó là. Và cho các mục đích của ngày hôm nay, nó đủ để nói, đây là xấu. Bởi vì SHA1 băm và chức năng như nó là siêu thường được sử dụng trong các ứng dụng bảo mật, các kết nối được mã hóa trên trang web, giao dịch ngân hàng, mã hóa tế bào cho điện thoại di động của bạn, và như thế. Và vì vậy bất cứ khi ai đó tìm thấy một cách để đảo ngược kế một trong những công nghệ hoặc phá vỡ nó, những điều xấu có thể xảy ra. Bây giờ thế giới đã biết điều này. Đây là dự đoán được. Và thế giới có từ năm chuyển từ SHA1 để SHA256, mà chỉ là một cách ưa thích của nói rằng họ sử dụng các bit lớn hơn. Và trên thực tế, thậm chí CS50 của mình website nâng cấp năm ngoái đối với: Không phải chúng ta phải đối mặt với tất cả điều này nhiều các mối đe dọa đang cố gắng để có được các file PDF và whatnot-- nhưng website của CS50 sử dụng hàm băm lớn hơn, có nghĩa là chúng ta sẽ được an toàn. Vì vậy, tất cả các file PDF của bạn sẽ được an toàn, nhưng không nhất thiết tiền hoặc bất cứ điều gì của bạn đặc biệt là cá nhân hoặc riêng sử dụng. Sp kiểm tra URL mà nếu bạn như một số chi tiết bổ sung. Vì vậy, vấn đề đặt năm là thực sự trên đường chân trời. Đố ai này Wednesday tới. Nhưng tận dụng lợi thế của văn phòng giờ, cả đêm nay và ngày mai. Và cũng tận dụng giờ làm việc, nếu bạn đang có sẵn, ngay sau này. Các nhân viên và tôi sẽ thanh xung quanh và làm hơn bình thường Q & A, thêm vào tối nay. Và hãy để tôi mạnh mẽ lưu ý ở đây, cho những người chúng ta ở đây trong Haven-- mới vì vậy nó hoàn toàn mỗi Scaz của nhận xét cảm thấy, tôi chắc chắn rằng, giống như một chút của một cuộc đấu tranh khó khăn. Và bởi danh tiếng, nếu bạn chưa học đã hoặc nghe từ một số bạn bè tại Harvard, biết đây là một số bộ nhớ thể chế mới. P thiết lập năm loại loại có xu hướng là khó khăn nhất trong CS50, hoặc các thách thức nhất cho hầu hết các sinh viên. Nhưng điều đó có nghĩa là chúng ta hầu như ở trên cùng của ngọn đồi này. Và tôi thực sự có ý nghĩa này. Đó là khó khăn nhất, nhưng nó cũng xứng đáng nhất trong đó không giống như hầu hết mọi khác khoa học máy tính giới thiệu Tất nhiên ở Mỹ mà chúng ta biết, hầu hết sinh viên không hoàn thành một đoạn giới thiệu Tất nhiên khi đã thực hiện những thứ như cây cối, và cố gắng, và bảng băm, và như thế. Và vì vậy tôi hy vọng, và chúng tôi hy vọng rằng bạn đang có một cảm giác rất lớn sự hài lòng ngay cả nếu hay hai tuần qua mà bạn sẽ có được sự hài lòng đó không cảm thấy một chút như thế này. Nhưng hãy để tôi trấn an, chúng tôi chỉ có bốn bộ P trái. Vì vậy, loại hàng đầu mà là trong tầm nhìn. Ở phía bên kia của nó, tin tưởng chúng tôi, nó chỉ là những ngọn đồi và những đám mây. Và chúng ta sẽ nói, con chó là ở phía bên kia. Vì vậy, bạn chỉ cần có để treo trong đó lâu hơn một chút. Tôi có nghĩa là, thực sự là chúng ta bắt đầu quá trình chuyển đổi vào thế giới lập trình web, bạn sẽ thấy rằng những điều become-- này là đáng yêu thực sự. OK, chúng tôi sẽ gửi URL này sau. Bạn sẽ tìm thấy quá rằng chúng tôi đạt loại của một cao nguyên nơi mọi thứ thực sự vẫn còn phức tạp và đầy thử thách bởi thiết kế, nhưng bạn không phải sẽ cảm thấy như chúng tôi ngừng đi lên ngọn đồi này. Vì vậy, có một số tiện nghi trong đó. Vì vậy, không có thêm ado, chúng ta hãy bắt đầu để làm cho quá trình chuyển đổi thị trường này trong học kỳ tới thế giới các trang web, và thực sự thế giới mà tất cả chúng ta đều quen thuộc hơn. Chúng tôi đã có các thiết bị internet trong túi của chúng tôi, trên bàn làm việc của chúng tôi, trong ba lô của chúng tôi, và như thế. Làm thế nào để tất cả các công việc này? Và làm thế nào chúng ta có thể bắt đầu viết mã mà không phải siêu phức tạp và trong một số nhấp nháy nhanh chóng văn bản rằng không ai trong số bạn bè hoặc gia đình của bạn được bao giờ sẽ muốn tương tác với, nhưng một cái gì đó bạn có thể đặt trên điện thoại của họ, hoặc trên các trình duyệt web của họ, hoặc trên bất kỳ thiết bị với mà chúng tương tác. Vì vậy, đây là nhà của một ai đó. Và bên trong của ngôi nhà này là một vài máy tính xách tay, một vài máy tính để bàn học cũ máy vi tính, một cái gì đó gọi là một router hoặc hub ở giữa, và sau đó một số loại modem cáp hoặc modem DSL. Và sau đó có internet, nói chung rút ra như một đám mây ở trên đó trong bầu trời. Vì vậy, hình ảnh này, mặc dù một ít loại lạc hậu, chắc chắn chụp gì nhất bạn có thể có trong ngôi nhà của bạn, hoặc hiệu quả những gì tất cả các bạn có trong phòng ký túc xá của bạn, hoặc căn hộ, hoặc tương tự. Vì vậy, những gì đang thực sự xảy ra khi bạn hãy thử sử dụng internet ngày hôm nay? Vì vậy, mỗi máy tính trên internet, nó quay ra, cần phải có một địa chỉ duy nhất, giống như chúng ta trong thế giới thực sự cần thiết một địa chỉ bưu điện, như 51 Prospect Street, New Haven, Connecticut, hay 33 Oxford Street, Cambridge, Massachusetts. Vì vậy, các máy tính trên internet cần một cách giải quyết duy nhất bản thân mình. Đó là để khi một máy tính muốn nói chuyện với nhau, nó có thể gửi một tin nhắn và thông báo cho người nhận để người mà nó sẽ gửi phản hồi trở lại. Vì vậy, nó chỉ làm cho loại ý thức trực giác có lẽ rằng tất cả mọi thứ có một địa chỉ của một số loại. Nhưng làm thế nào để bạn có được một địa chỉ? Vâng, nếu bạn nhận được ở đây trên khuôn viên trường, hoặc bạn đi về nhà và bạn bật của bạn máy tính xách tay hoặc máy tính để bàn, và hoặc là cắm nó vào hoặc kết nối Wi-Fi, nó chỉ ra rằng có một máy chủ đặc biệt trên hầu hết các mạng được gọi là một máy chủ DHCP. Không quan trọng những gì này là viết tắt, nhưng nó là cấu hình máy chủ năng động giao thức, mà chỉ là một cách nói, đây là một máy tính hoặc Yale, hay Harvard có, hoặc Comcast có, hoặc Verizon có, hoặc công ty của bạn có, mà mục đích trong cuộc sống, khi nó nghe thấy có người mới được bổ sung vào mạng, là để nói ở đây, sử dụng địa chỉ này. Vì vậy, con người chúng ta không cần phải mã cứng vào máy tính của chúng tôi những địa chỉ duy nhất của chúng tôi là. Chúng tôi chỉ cần bật máy lên, mở nắp, và bằng cách nào đó máy chủ này trên mạng địa phương chỉ nói với tôi rằng địa chỉ của tôi là 51 Prospect Street, hay 33 Oxford Street, hoặc tương tự. Bây giờ nó không phải đi để quá dài dòng như vậy. Thay những gì tôi sẽ nhận được là một địa chỉ số gọi là địa chỉ IP. IP có nghĩa là giao thức internet. Và tỷ lệ cược là do thời gian này trong cuộc sống của bạn, bạn có thể nghe hoặc nhìn thấy từ IP, hay nói chung là ném nó xung quanh có lẽ. Nhưng trong thực tế, nó đẹp thẳng về phía trước một điều. Một địa chỉ IP chỉ là một số dấu chấm thập phân, có nghĩa là nó là cái gì dot một cái gì đó chấm một cái gì đó chấm một cái gì đó. Và mỗi người trong những somethings xảy ra là một số từ 0 đến 255. Vì vậy, dựa trên năm tuần cộng với CS50, nếu những con số này mỗi khoảng 0-255, bao nhiêu bit là mỗi những dấu hiệu số? Đung Tám. DAVID J. Malan: Nó là đã nhận được tám. Vì vậy, trong tổng số, có bao nhiêu bit là một địa chỉ IP? Đung 32. DAVID J. Malan: Vì vậy, 32. 8 cộng với 8 cộng với 8 cộng 8 là 32. Có bao nhiêu số địa chỉ IP có thể có được trên thế giới? Đung 4 tỷ. DAVID J. Malan: Vì vậy, khoảng bốn tỷ vì đó là 2 sức mạnh 32. Sắp xếp và nếu bạn có thể không của grok rằng trong tâm trí của bạn, chỉ biết rằng giá trị 32-bit có thể là lớn như 4 tỷ nếu đó là tất cả những giá trị tích cực. Vì vậy, đó có nghĩa là có 4 tỷ địa chỉ IP có thể có trong thế giới. Và truyện cười, chúng tôi loại chạy ra khỏi chúng. Và trên thực tế đó là một vấn đề lớn trong đó trên thế giới cũng đã nhìn thấy vấn đề này đến, nhưng không nhất thiết đã trả lời nó một cách nhanh chóng nhất có thể. Và quả thực, một khi bạn đã hoàn thành và bắt đầu CS50 phải chú ý trong thế giới công nghệ, bạn sẽ thấy điều này là rất phổ biến chuyên đề. Ví dụ, nếu chúng ta đi thực sự trường cũ ngày nay, Y2K. Đó không phải là thực sự là một bất ngờ. Giống như tất cả mọi người biết với 1.000 năm mà đó was-- hơn một ngàn mà years-- mà cuối cùng sẽ xảy ra. Chưa hết, chúng ta phản ứng với nó rất nhiều ở những phút cuối cùng. Và điều đó xảy ra lần nữa. Vì vậy, hôm nay chúng ta sẽ nói về IP phiên bản 4. Nhưng biết rằng thế giới là cuối cùng nhận được xung quanh để nâng cấp lên một cái gì đó gọi là IPv6, mà thay vì 32-bit địa chỉ, uses-- ai muốn có nhiều phán đoán, bao nhiêu bit? Đung 64? DAVID J. Malan: Tốt đoán, nhưng không có. Chúng tôi đang cố gắng để cuối cùng có được trước của đường cong. Đung 128. DAVID J. Malan: 128, trong đó là một con số khổng lồ hoảng các địa chỉ IP, vì đó là giống như lần 2, lần 2, lần 2, rất nhiều lần twos tăng từ 4 tỷ USD. Vì vậy, nếu tò mò. Hóa out-- và tôi chỉ googled này để tìm kiếm này out-- máy tính Yale, ở đây tại Yale, có xu hướng bắt đầu với những numbers-- 130,132 dot một cái gì đó, và 128,36 chấm một cái gì đó. Nhưng có chắc chắn trường hợp ngoại lệ trên bảng tùy thuộc vào những gì bộ phận và xây dựng và trường bạn đang ở trên. Harvard có xu hướng có 140,247 hoặc 128,103. Và nói chung là thông tin vô dụng, nhưng nó là một cái gì đó bạn có thể nhận thấy bây giờ. Khi bạn bắt đầu chĩa ra xung quanh cài đặt trên máy tính của bạn, bạn có thể bắt đầu nhận thấy những loại mô hình trước khi dài. Nhưng khi bạn đang ở nhà và có một Apple AirPort, hoặc một thiết bị Linksys, hoặc một D-Link, hoặc bất cứ điều gì nó là cha mẹ hoặc anh chị em ruột của bạn cài đặt trong ngôi nhà của bạn, cũng những gì bạn có thể có là những gì được gọi là địa chỉ IP riêng. Và đây là những thực sự là một ngơi, giải pháp tạm thời cho vấn đề chạy ngắn trên các địa chỉ IP. Và những gì bạn có thể làm với mạng lưới nhà, typically-- và thẳng thắn, thậm chí Yale và Harvard đang bắt đầu để làm điều này trong areas-- khác nhau là bạn có thể cung cấp cho một bó toàn bộ các máy tính một địa chỉ IP miễn là bạn đặt một thiết bị đặc biệt ở phía trước của họ, một cái gì đó gọi là một router, hoặc nó có thể được gọi là một proxy hoặc bất kỳ số thứ khác. Nhưng một thiết bị nào đó có mà một địa chỉ IP. Và rồi sau đó thiết bị, trong một tòa nhà, trong một ngôi nhà hoặc một căn hộ, có thể là bất kỳ số lượng máy tính, tất cả đều có một địa chỉ IP bắt đầu với một trong các chữ số ở đây. Và miễn là máy tính đó biết làm thế nào để chuyển đổi địa chỉ nào để các địa chỉ tư nhân, tất cả mọi thứ có thể sắp xếp công việc như mong đợi. Nhưng ngược của việc này là nếu bạn đang ở nhà và bạn có anh chị em, và cả hai bạn thăm một số trang web, trang web mà không biết nếu đó là bạn hoặc anh chị đã ghé thăm website, bởi vì bạn xuất hiện để được giống người vì tất cả các dữ liệu của bạn đang trải qua router hoặc điểm trung tâm. Nhưng đủ các chi tiết mức thấp hơn. Chúng ta hãy nhìn vào địa chỉ IP như thế nào đôi khi đưa ra có lẽ trong các phương tiện truyền thông và làm thế nào bây giờ chúng ta có thể bắt đầu làm hỏng, thẳng thắn, thậm chí nhiều chương trình cho bạn. Nếu chúng ta có thể làm mờ đèn chiếu sáng cho một vài giây. [VIDEO PLAYBACK] -Nó Là một 32-bit trên IPP 4 địa chỉ. -IP ES internet-- Mạng -Private, Mạng riêng của Tamia. Cô ấy thật tuyệt vời. -Come Charlie. DAVID J. Malan: Đó là một địa chỉ IP gương. Cô ấy cho chúng tôi xem đó cô ấy làm trong thời gian thực. [END PLAYBACK] DAVID J. Malan: OK. Vì vậy, một vài vấn đề với điều này. Vì vậy, một, những gì chúng tôi đang tìm kiếm ở đây trên màn hình là một mã được viết trong một ngôn ngữ gọi là Objective-C, đó là loại người kế nhiệm ngôn ngữ C mà chúng ta đang làm. Điều này hoàn toàn không có gì có để làm với lập trình. Trong thực tế, là tốt nhất tôi có thể nói, đây là một chương trình vẽ rằng ai đó đã tải về từ internet bằng cách nào đó liên quan đến bút chì màu. Có lẽ ít nghiêm trọng là địa chỉ IP này, hợp lý hay không? Đung không hợp lệ. DAVID J. Malan: không hợp lệ, vì 275 là, tất nhiên, không phải giữa 0 và 255. Đó có lẽ là quá OK mặc dù, bởi vì bạn không muốn bó của những người điên những người như tạm dừng TV trên của họ TiVos và sau đó truy cập vào IP để xem nếu có thực sự là một cái gì đó. Vì vậy, mà một là một chút ít nghiêm trọng. Nhưng nhận ra rằng quá là loại của tất cả các xung quanh chúng ta. Vì vậy, tất nhiên, không ai trong chúng ta thực sự gõ địa chỉ số vào trình duyệt của chúng tôi. Nó sẽ là loại một điều xấu nếu Google, để truy cập vào Google, bạn đã phải đi đến 123.46.57.89. Và cả thế giới đã chỉ cần nhớ rằng. Và thẳng thắn mà nói, chúng tôi đã loại của nhìn thấy vấn đề này trước đây. Quay trở lại những ngày khi con người không có điện thoại di động và danh sách liên lạc, và các công ty thực sự still-- thực sự, Tôi đoán các công ty vẫn có 800 số và các like-- nhưng bạn thường thấy những con số được quảng cáo như 1-800-THU THẬP, C-O-L-L-E-C-T. Bởi vì không ai thực sự có thể nhớ, khi nhìn thấy một quảng cáo trên xe buýt hay biển quảng cáo, những gì của ai đó là số lượng, nhưng họ có thể có lẽ, với cao xác suất, nhớ một lời. Vì vậy, chúng tôi đã thông qua cùng loại hệ thống trên thế giới của internet trong đó có một Hệ thống tên miền để chúng tôi có thể con người gõ google.com, facebook.com, yale.edu, harvard.edu, và để cho các con số máy tính ra những IP tương ứng địa chỉ là một cái tên được. Và cách bạn làm điều này trong thế giới thực là cho $ 10 một năm, có lẽ $ 50 một năm, bạn có thể mua một tên miền tên, hoặc thực sự thuê một tên miền. Và sau đó bất cứ ai bạn đang trả tiền cho thuê tên miền, bạn nói với họ người trên thế giới biết địa chỉ IP của bạn là. Và chúng tôi sẽ không đi vào những cụ thể, nhưng nhiều bạn có thể muốn, cho thức các dự án, để thực sự đăng ký cho lưu trữ web của riêng bạn công ty, hoặc cho miễn phí hoặc cho một vài đô la mỗi tháng. Một số bạn có thể muốn mua, cho một vài đô la, tên miền riêng của bạn, chỉ để cho vui hay để bắt đầu một doanh nghiệp hoặc một trang web cá nhân hoặc tương tự. Và nhận ra rằng tất cả đó sẽ cuối cùng đun sôi xuống để bạn nói với thế giới những địa chỉ IP của máy chủ là. Và sau đó các DNS các máy chủ thực sự chăm sóc thông báo cho các phần còn lại của thế giới. Vì vậy, tất cả các máy chủ DNS có, trong ngắn hạn, bên trong bộ nhớ của nó là như tương đương với một bảng tính Google hoặc một bảng tính Excel với ít nhất hai cột, một trong số đó có các tên gọi, như harvard.edu, và yale.edu, và google.com. Và các cột khác có địa chỉ IP hoặc IP tương ứng địa chỉ. Và chúng tôi thực sự có thể thấy điều này. Vì vậy, trên Mac-- của tôi và bạn có thể làm điều này trên các máy tính Windows như well-- nếu tôi mở một cửa sổ terminal ở đây, khá giống như một trong CD50 IDE, hầu hết các máy tính đều có lệnh gọi nslookup, tên máy chủ tìm kiếm. Và nếu tôi gõ gì đó như yale.edu và nhấn Enter, những gì Tôi sẽ thấy nếu mạng của tôi như hợp tác nó đã làm cho nhiều cuộc thử nghiệm trước khi đến lớp began-- hãy thử google.com. Tất nhiên bây giờ không có gì làm việc. Thật tuyệt. Tất cả các quyền, đứng trong một khoảnh khắc. nslookup google.com. Vâng, chúng ta hãy xem nếu thực tế internet-- không. Đó là những gì đã xảy ra. Oh my god, tất cả các quyền. Wi-Fi đã phá vỡ. Hey, muốn biết địa chỉ IP của tôi là gì? Được rồi. YaleSecure. Đây là cách bạn gỡ rối những thứ như là một nhà khoa học máy tính. Chúng tôi bật Wi-Fi tắt. ĐƯỢC. Và trên thực tế, Scaz, làm bạn phiền đăng nhập chúng ta vào bảo mật không? Nếu không kiểm tra hơn are-- OK, cảm ơn bạn Yale-- hoặc là về để phá vỡ. Tôi muốn đi vào YaleSecure. Oh, và có lẽ chúng ta sẽ được OK. Có lẽ chúng ta đang trở lại. Và đó là như thế nào, như một máy tính Nhà khoa học sửa chữa một máy tính. [Vỗ tay] Được rồi. Vì vậy, tôi đang ở đâu trong này cái gọi là cửa sổ thiết bị đầu cuối, và nếu tôi nslookup yale.edu, có chúng tôi đi. Vì vậy, tôi nhận được trở lại đầu tiên của địa chỉ IP của các máy chủ DNS mà máy tính xách tay của tôi đang sử dụng. Vì vậy, thêm vào một máy chủ DHCP chúng tôi nói chuyện về một thời điểm cách đây nói máy tính xách tay của tôi những gì IP của tôi địa chỉ là, máy chủ DHCP cũng nói với tôi những gì máy chủ DNS để sử dụng. Mặt khác tôi sẽ để tự gõ này. Nhưng đó không phải là tất cả những gì thú vị. Những gì tôi quan tâm là đây là Địa chỉ IP của trang web của Yale rõ ràng. Vì vậy, trong thực tế, chúng ta hãy cố gắng này. Hãy để tôi đi lên thành một trình duyệt và đi http: //, và sau đó là địa chỉ IP, và nhấn Enter. Và chúng ta hãy xem. Đó là làm thế nào khác bạn có thể ghé thăm trang web của Yale. Bây giờ nó không phải tất cả những gì đáng nhớ. Giống như, các pre-frosh có lẽ sẽ không để ghi nhớ địa chỉ cụ thể này nếu nói đến thăm đó sau khi quý khách đến thăm. Nhưng nó có vẻ làm việc. Và như vậy DNS thực sự chỉ cho phép chúng tôi có nhiều địa chỉ thân thiện với con người. Nhưng họ không nhất thiết phải chỉ mang lại một câu trả lời. Trong thực tế, khi bạn là một thực sự công ty công nghệ lớn, có thể bạn muốn có rất nhiều máy chủ. Và ngay cả điều này là sai lầm. Vì vậy, Yale có lẽ không chỉ có một máy chủ web. Google có thể không có chỉ 10 hay như vậy các máy chủ web. Google đặc biệt là có thể có hàng ngàn máy chủ web trên thế giới mà có thể đáp ứng các yêu cầu từ những người như chúng tôi. Nhưng họ cũng sử dụng một công nghệ gọi là cân bằng tải, mà câu chuyện dài ngắn, chỉ có một số ít các thiết bị trên thế giới lan truyền tải qua nhiều máy chủ. Vì vậy, nó là loại giống như một mạng nhện nếu bạn sẽ gửi đi các yêu cầu. Nhưng bây giờ, tất cả những gì thú vị cho ngày hôm nay là một tên miền như google.com thậm chí có thể có nhiều địa chỉ IP như thế. Nhưng làm thế nào tất cả các dữ liệu của chúng tôi thực sự trở lại và ra sau đó cuối cùng? Vâng, nó quay ra rằng có những điều được gọi là bộ định tuyến trên internet. Và một router tới là gì mức độ mà bạn đã biết? Và tôi đã được sử dụng từ một cặp vợ chồng lần trong bối cảnh một ngôi nhà, nhưng trong điều kiện đơn giản, những gì hiện một bộ định tuyến làm gì? Hãy cho tôi chỉ là một đoán dựa vào tên của nó? Đung vậy, một con đường hay một con đường? DAVID J. Malan: Vì vậy, đó là một con đường hay một con đường. Vì vậy, một tuyến đường là một đường hay đường dẫn, hoàn toàn. Và một bộ định tuyến, do đó, một thiết bị thực sự lộ thông tin, sẽ di chuyển dữ liệu giữa các điểm A và B. Và như vậy trong fact-- và đây có lẽ là khi bạn Google miêu tả của router trên thế giới, tất cả các bạn có được là các biểu đồ thị cheesy. Và vì vậy đây là loại nhiều nhất một đại diện tôi có thể tìm mà trông nhẹ nhàng thú vị. Mỗi một dấu chấm hoặc những tia sáng của hy vọng trên thế giới đại diện cho một router. Và mỗi người trong số họ có một dòng giữa một số router khác. Bởi vì thực sự, có hàng ngàn, có lẽ hàng triệu thiết bị định tuyến xung quanh thế giới, một số trong số đó là nhà của chúng tôi và trên cơ sở của chúng tôi, nhưng rất nhiều được sở hữu bởi các công ty lớn và được kết nối với nhau để nếu tôi muốn gửi một số dữ liệu từ đây tại Yale nhà trở lại Cambridge, Yale lẽ không có một dây cáp, chắc chắn, đi trực tiếp đến Harvard. Và Yale không có một dây cáp duy nhất đi MIT, hay Stanford, hoặc Berkeley, hoặc để Google, hoặc bất kỳ số lượng các điểm đến. Thay vào đó, Yale và Harvard, và tất cả mọi người khác trên internet không có một hoặc nhiều router kết nối với nó, có lẽ ở ngoại vi của khuôn viên trường. Vì vậy mà khi dữ liệu của tôi muốn rời khỏi khuôn viên trường Đại học Yale, nó đi để mà router gần nhất, như được mô tả bởi một trong các dấu chấm. Và sau đó là con số Router hiểu xem để gửi nó theo cách này, hay cách này, hoặc theo cách này, hay cách này dựa trên một bảng trong bộ nhớ của nó, một tập tin Excel hoặc Google bảng tính trong một cột nói, nếu địa chỉ IP của bạn bắt đầu với số một, đi theo con đường này. Nếu địa chỉ IP của bạn bắt đầu với một số hai, đi theo cách đó. Và do đó, bạn có thể phá vỡ nó xuống số lượng có gửi các bộ định tuyến dữ liệu mỗi cách đó. Và chúng ta có thể nhìn thấy loại này là tốt. Hãy đi về phía trước vào thiết bị đầu cuối này cửa sổ một lần nữa, và cho tôi đi trước và theo dõi các tuyến, hãy nói, www.mit.edu, đó là một vài trăm dặm. Đó là thực sự damn nhanh. Vì vậy, những gì vừa xảy ra? Vì vậy, chỉ trong bảy bước, chỉ trong bốn phần nghìn giây, Tôi gửi dữ liệu qua internet từ đây tại Yale để MIT. Mỗi một hàng, bạn có thể có lẽ đoán bây giờ đại diện cho những gì? Đung A router. DAVID J. Malan: Một router. Vì vậy, thực sự, nó trông giống như có khoảng bảy, vì vậy router, hoặc sáu router ở giữa tôi thể chất ở trường luật Yale ở đây và trang web của MIT ở đó. Và những gì chúng ta có thể thu lượm được từ này là như follows-- và cho tôi làm sạch nó lên. Tôi sẽ chạy lại nó bằng lệnh đối số dòng của -q 1 để chỉ nói, chỉ cho tôi một câu truy vấn. Theo mặc định, traceroute làm ba. Và đó là lý do tại sao chúng ta thấy chùm con số. Tôi muốn nhìn thấy số lượng ít hơn chỉ để giữ cho đầu ra sạch hơn. Và chúng ta hãy xem những gì sẽ xảy ra. Vì vậy, đối với bất cứ lý do nào, ai đó ở Yale tưởng nó sẽ được vui để gọi nó là của bạn arubacentral router mặc định, mà là trên vlan hay ảo LAN, khu vực địa phương ảo mạng 30-- vì vậy bạn có thể có ít nhất 29 router.net.yale.internal others--. Và .internal đây là loại một giả miền cấp cao nhất có nghĩa là để được sử dụng chỉ trong khuôn viên trường. Và thông báo các địa chỉ IP tương ứng của router, bất cứ nơi nào nó là ở đây trong khuôn viên trường, là 172.28.204.129. Và phải mất 36 mili giây để đi từ đây đến đó. Câu chuyện hài hước. Chúng tôi sẽ lấy lại cho rằng chỉ trong một khoảnh khắc. Nhưng bây giờ router-- thứ hai mà rõ ràng arubacentral có một số loại vật lý kết nối likely-- nhất con người không bận tâm đặt tên nó. Những con người Yale đã không bận tâm đặt tên nó bởi vì nó là bên trong mạng của bạn dường như. Và do đó, nó chỉ có một địa chỉ IP. Nhưng sau đó một router thứ ba đây trên mạng của Đại học Yale đó có thể là một chút xa vẫn được gọi là cen10g bất cứ điều gì đó là asr.net.yale.internal. Và nó cũng có một địa chỉ IP. Bây giờ là lý do tại sao những con số loại dao động? 2.9, 1.4, 36? Router nhận được bận rộn. Và họ nhận được tắc nghẽn và sao lưu. Có hàng ngàn người về điều này trường bằng cách sử dụng internet ngay bây giờ. Có một trăm người trong này phòng bằng cách sử dụng internet ngay bây giờ. Và vì vậy những gì đang xảy ra là các bộ định tuyến có thể bị tắc nghẽn. Và do đó, những lần might dao động một chút. Vì vậy, đó là lý do tại sao họ không nhất thiết tăng thẳng thắn. Nhưng những thứ có được loại thú vị trong bước thứ tư. Rõ ràng giữa Yale và Bước bốn là một hop. Và đâu là router trong bước thứ có lẽ? Đung [Không nghe thấy] DAVID J. Malan: JFK có lẽ, có lẽ tại sân bay. Nhưng vì lý do gì, quản trị hệ thống, do đó chuyên viên máy tính chạy các máy chủ cho năm đã đặt tên cho router sau khi mã sân bay gần nhất. Vì vậy, có thể có nghĩa JFK nó chỉ là một nơi nào đó ở New York, có thể ở Manhattan hoặc một trong các quận. nyc2 biểu, có lẽ, khác bộ định tuyến đó là một nơi nào đó ở New York. Tôi không biết chắc đâu hàng sáu là ở đây, router số sáu. quest.net một ISP lớn, cung cấp dịch vụ internet, cung cấp kết nối internet đến những nơi lớn như Yale và những người khác. Và rồi cuối cùng này, nó trông như thế MIT thậm chí không có trang web riêng của họ ở Cambridge nhất thiết, nhưng thay vì họ đã bên ngoài trang web của họ, hoặc ít nhất là các máy chủ vật lý, để một công ty gọi là Akamai. Và Akamai thực sự là phải xuống đường từ MIT ở Cambridge nó quay ra. Nhưng nhận ra quá mà thậm chí còn nghĩ bạn sẽ www.mit.edu, chúng tôi thực sự có thể được gửi bất cứ nơi nào trên thế giới. Và chúng ta hãy xem một nơi nào đó khác trên thế giới. Hãy để tôi đi trước và rõ ràng màn hình này và thay vào đó theo dõi các tuyến đường, chỉ một lần, vì vậy truy vấn một, để www.cnn.co.jp, trang chủ Nhật Bản cho CNN, các trang web tin tức. Và nếu tôi nhấn Enter bây giờ, hãy xem những gì sẽ xảy ra. Chúng tôi đang một lần nữa bắt đầu từ arubacentral. Chúng tôi sau đó đi đến bộ định tuyến không tên, một vài chi tiết. Vì vậy, phải mất 12 bước nhảy để có được đến Nhật Bản lần này. Và chúng ta hãy xem những gì chúng tôi có thể thu thập. Vì vậy, cùng một hop, cùng hop. Hơi khác nhau bây giờ. Của thú vị này. Vì vậy, tôi đoán ở đây, stamford1 là một vài thị trấn đi trong Connecticut cũng. Các router trong sáu liên tiếp và bảy không có tên. Nhưng đây là loại tuyệt vời. Vì vậy, những gì có vẻ là giữa router trong bước bảy và tám? Và tại sao bạn nói càng nhiều? Yeah? Đung Dương. DAVID J. Malan: Có thể là một đại dương. Chúng tôi biết đó là sự thật như, trực giác, phải không? Nhưng chúng ta có thể khẳng định như nhiều loại các loại thực nghiệm tại sao? Điều gì đã thay đổi giữa hàng bảy và tám? Phải mất rất nhiều thời gian để đi đến bất cứ bộ định tuyến không tên này bảy là, có lẽ đâu đó trong lục địa Mỹ, bước tám, mà có lẽ là một nơi nào đó ở Nhật Bản dựa trên tên miền của .jp có. Và do đó, những bổ sung trăm mili giây một cái gì đó hoặc 90 hoặc hơn mili giây là kết quả của dữ liệu của chúng tôi đi trên một cơ thể khá lớn các nước. Bây giờ tò mò, có vẻ như rằng có lẽ cáp mà đi qua toàn bộ Hoa Kỳ. Nếu chúng ta đang thực sự đi qua Bờ Tây để đến Nhật Bản, đó là loại đường dài nếu chúng ta đi theo con đường khác. Vì vậy, nó không hoàn toàn rõ ràng những gì đang xảy ra trên cơ thể. Nhưng thực tế là mỗi thêm hop thực sự mất còn rõ rệt hơn mỗi khác, đó là khá tốt xác nhận rằng CNN Máy chủ web của Nhật Bản có lẽ là thực sự Ở Nhật. Và nó chắc chắn xa hơn xa hơn của MIT. Và nó đáng chú ý quá, dữ liệu của bạn không nhất thiết phải là đi du lịch các khoảng cách ngắn nhất có thể. Trong thực tế, nếu bạn chơi xung quanh với đường dấu vết ở nhà chỉ cần chọn trang web ngẫu nhiên, bạn có thể thấy rằng chỉ cần gửi một email hoặc truy cập vào một trang web đó là ở đây tại New Haven, đôi khi dữ liệu của bạn có thể đầu tiên đi đường vòng, đi xuống DC, và sau đó quay trở lại. Và đó chỉ là vì các quyết định định tuyến động các máy tính này đang làm. Bây giờ chỉ để cho vui, đội ngũ sản xuất tỉa một trong những video cho chúng tôi chỉ là một chút gọn gàng hơn. Tuy nhiên, để cho chúng ta một cảm giác nhanh here-- và chúng ta có thể để đèn sáng on-- như bao nhiêu cáp là thực sự thực hiện tất cả các dữ liệu của chúng tôi. [VIDEO PLAYBACK] [MUSIC CHƠI] [END PLAYBACK] DAVID J. Malan: Tất cả các video mạng có âm nhạc âm mát rõ ràng. Vì vậy, đó là để chỉ nhận cảm giác chỉ cần bao nhiêu có được diễn ra dưới mui xe. Nhưng chúng ta hãy nhìn vào một mức thấp hơn một chút bây giờ tại những dữ liệu thực sự là đi qua những đường dây, và thậm chí đi không dây trong một căn phòng như thế này. Vì vậy, nó quay ra khi bạn yêu cầu một trang web, hoặc gửi e-mail, hoặc nhận được một trang web, hoặc một e-mail, hoặc nhắn Gchat, hoặc một tin nhắn Facebook, hoặc các loại tương tự, đó không chỉ là một đoạn lớn của các bit chảy không dây qua không khí hoặc điện tử trên một sợi dây. Thay vào đó, yêu cầu đó hoặc phản ứng nói chung là chửi rủa thành phần riêng biệt. Vì vậy, nói cách khác, khi bạn có một yêu cầu để làm cho các máy tính khác, hoặc bạn nhận lại một phản ứng trong máy khác như giả sử, ví dụ, nếu unfamiliar-- như quá nhiều người dường như là những days-- nếu không quen thuộc với this-- không này fellow-- đồng này. Vì vậy, giả sử đây là một thông điệp rằng Tôi muốn gửi đến một ai đó ở phía sau. Ai trong rất trở lại muốn nhận được một hình ảnh của Rick Astley ngày hôm nay? OK, tên của bạn là gì? Đung Cole. DAVID J. Malan: nó là gì? Đung Cole. DAVID J. Malan: Holt? H-O? Đung C-O-L-E. DAVID J. Malan: C-O-L-E, Cole. Xin lỗi. C-O-L-E. Được rồi. Vì vậy, nếu tôi muốn gửi Cole này hình ảnh ở đây, bạn có biết điều này là loại một bức tranh lớn, phải không? Đây có thể là một vài kilobytes, một vài MB, đặc biệt là nếu nó có độ phân giải cao. Và tôi không thực sự muốn dừng lại tất cả mọi người khác sử dụng internet chỉ khi tôi gửi này thực sự lớn, chất lượng hình ảnh cao của Rick Astley khắp phòng. Tôi muốn dữ liệu của bạn để tiếp tục truyền đi trong mạng và các kết nối Wi-Fi cũng. Và do đó, nó làm cho sense-- và điều này được thu hồi bằng điện tử, không quá nhiều trong thế giới thực. Trên thực tế, điều này sẽ có nhiều ý nghĩa nếu bạn đưa âm thanh của tôi ra. Vì vậy, nếu tôi xé này trong nửa như thế này đây, này bây giờ có thể đi du lịch internet hiệu quả hơn, bởi vì đó là một mảnh nhỏ hơn. Vì vậy, với xác suất thấp hơn là nó sẽ để va chạm giao thông với người khác trên mạng. Và vì vậy những gì máy tính của bạn thực hiện khi bạn muốn gửi một thông điệp tới Cole nó là khối lên một tin nhắn như thế này vào từng miếng nhỏ, mảnh như vậy để nói chuyện. Và sau đó nó đặt chúng bên trong của những gì chúng ta sẽ gọi loại phong bì ảo. Vì vậy, tôi có bốn phong bì giấy ở đây. Và tôi đã sẵn số họ, một, hai, ba, bốn người. Và những gì tôi sẽ làm gì trên mặt trước điều này, giống như một thư bình thường, là tôi sẽ đặt tên Cole có. Và sau đó ở phía trên, tôi sẽ đặt tên của tôi ở đó, David, vì vậy mà các gói tin đầu tiên như vậy Tôi gửi ra có trên internet trông một chút gì đó như này, các đặc điểm nổi bật trong số đó là nó có một để giải quyết, một từ địa chỉ, và cũng có một số, do đó đó mà hy vọng đầy đủ thông tin cho Cole để tái tạo lại thông điệp này. Vì vậy, hãy để tôi làm như vậy ở đây, cùng ở đây, và cùng ở đây, viết tên của mình trong Đến trường trên tất cả chúng. Và sau đó chúng ta hãy đi trước và đưa những hình ảnh bên trong. Vì vậy, đây là một trong những gói đó là sẵn sàng để đi. Dưới đây là gói tin khác đó là sẵn sàng để đi. Dưới đây là một gói thứ ba đó là sẵn sàng để đi. Và đây là một thứ tư gói tin đó là sẵn sàng để đi. Và bây giờ những gì là thú vị về cách mạng trong các công trình thực tế đó là mặc dù tôi đã có bốn gói, tất cả đều được mệnh cho cùng vị trí, họ không nhất thiết sẽ đi qua cùng một tuyến đường. Và do đó, mặc dù tôi có thể giao các Túi đi đến router gần nhất hãy nói, nếu bạn muốn gửi cho họ bằng mọi cách, chúng ta hãy xem những gì thực sự xảy ra, mục tiêu của mà là để có được họ cuối cùng với Cole. Và quả thực, họ đã không nhất thiết phải cùng một hướng. Và đó là tốt. Đây là một chút vụng về Oprah và phong cách ngày nay. Và bây giờ hãy để tôi cố tình mất rằng một trong trở lại. Và bây giờ Cole, nếu bạn muốn Lắp ráp lại nó như là tốt nhất bạn có thể. Tất nhiên, chúng ta có thể đoán những gì kết luận ở đây là có được. Bạn sẽ có 3/4 Rick Astley chỉ trong một khoảnh khắc. Và những gì mặc dù là hàm ý về điều đó? Bạn muốn thử để giữ nó lên? Chúng tôi có một máy ảnh chỉ vào bạn nếu bạn muốn để đặt ra với Rick Astley ở đây. Hiện chúng tôi đi. Đáng yêu. Nhưng bạn dường như mất tích một mảnh của Rick Astley. Vì vậy, nó quay ra rằng internet thường được thúc đẩy bởi không chỉ IP, nhưng trong thực tế chúng ta đã nghe ở rất bắt đầu bài giảng trong video-- đó và bạn đã có thể nhìn thấy điều này từ viết tắt hơn often-- những gì thực sự là giao thức bạn có xu hướng nghe về? Đung TCP / IP. DAVID J. Malan: TCP / IP, mà chỉ là một sự kết hợp của hai giao thức, một gọi là IP. Mà một lần nữa, chỉ là tập các công ước thông qua đó chúng ta giải quyết mọi máy tính trong mạng Internet. Và sau đó TCP, trong đó phục vụ một mục đích khác. TCP là một giao thức mà bạn thường sử dụng kết hợp với IP, mà trong số khác điều, giao hàng đảm bảo. Trong thực tế, TCP là giao thức sẽ nhận thấy rằng một trong những gói dường như đã không nhận được để Cole, bởi vì anh ta có vẻ là thiếu số bốn trong số bốn. Và vì vậy những gì TCP, một giao thức không có gì, là nó nói với Cole, hey Cole, nếu bạn nhận được chỉ Ba trong số bốn gói, cho tôi biết là một trong những bạn đang mất tích, về cơ bản, và sau đó mục đích của tôi trong cuộc sống nên được để truyền lại rằng. Và do đó, nếu tôi cũng vậy, người gửi, đang sử dụng TCP, Sau đó tôi nên tạo một packet-- mới không nhăn một here-- này truyền lại chỉ mảnh này nó, vì vậy mà cuối cùng Cole có một món quà lưu niệm đầy đủ, nếu không có gì khác. Nhưng như vậy mà cuối cùng các dữ liệu thực sự được đến đích chính xác của nó. Nhưng thật không may, viết tên của Cole về phía trước là không đủ, mỗi se. Và thực sự, tôi sẽ không viết Tên của Cole, nhưng có lẽ địa chỉ IP của mình trên phong bì. Và tôi sẽ không viết David. Tôi sẽ viết địa chỉ IP của tôi trên phong bì để các máy tính có thể thực sự giao tiếp qua lại. Nhưng nó chỉ ra rằng máy tính có thể làm cách nào nhiều hơn là phục vụ lên hình ảnh của Rick Astley. Họ cũng có thể gửi lại và nhận email, các tin nhắn. Họ có thể làm những việc như chuyển file, và bất kỳ số công cụ khác bạn sử dụng trên internet, các máy chủ có thể làm những ngày này. Và chỉ vì một công ty, hoặc một trường học, hoặc một người muốn có một máy chủ web, và một máy chủ email, và một máy chủ trò chuyện, không có nghĩa là bạn cần ba máy vi tính. Bạn có thể chỉ có một máy tính đang chạy nhiều dịch vụ, do đó, để nói chuyện. Và như vậy khi Cole nhận một thông điệp như thế, làm thế nào sao máy tính của mình để biết liệu hiển thị hình ảnh trong trình duyệt của mình, hoặc trong Gchat, hoặc trong Facebook Messenger, hoặc trong bất kỳ số lượng các công cụ khác? Vì vậy, nó quay ra cũng vào đó như vỏ có thêm mảnh các thông tin được biết đến như là một số cổng. Và một số cổng là chỉ là một số thực, nhưng nó xác định duy nhất không máy tính, nhưng các dịch vụ. Và có những chùm. Vì vậy, nó chỉ ra rằng trong thế giới, con người đã quyết định một vài ví dụ công ước, một số trong đó là những. Vì vậy, có cái gì đó gọi Nộp Transfer Protocol. Nó khá ngày. Nó hoàn toàn không an toàn. Rất nhiều người vẫn sử dụng nó. Và nó sử dụng cổng số 21. Nói cách khác, nếu gửi một tập tin thông qua FTP, phong bì sẽ không chỉ có những gửi và địa chỉ IP của người nhận, nó cũng sẽ có số 21 để máy tính nhận biết oh, đây là một tập tin, không phải là một email hoặc tin nhắn chat. 25 là SMTP. Làm thế nào nhiều bạn đã từng sử dụng SMTP? Sai rồi. Hầu như tất cả các bạn có. Nếu bạn đã từng sử dụng email, bạn đã sử dụng SMTP, đơn giản giao thức truyền mail, mà chỉ là một cách nói, đây là loại máy tính hoặc dịch vụ mà gửi đi email của bạn. Và nếu bạn đã từng nhìn thấy từ viết tắt như POP, IMAP hay, và có một vài người khác, những người đang tiếp nhận email, thông thường. Điều đó chỉ có nghĩa là nó một dịch vụ khác nhau. Đó là phần mềm mà một người nào đó viết rằng sẽ gửi đến hoặc nghe trên một số cổng cụ thể như vậy rằng nó không gây nhầm lẫn email với một số loại dữ liệu khác. Bây giờ là web HTTP, đó là số 80, và cũng có cổng 443. Và trên thực tế, mặc dù chúng tôi con người may mắn không cần phải làm điều này, bất cứ lúc nào bạn truy cập một trang web như thế http://www.yale.edu, các trình duyệt chỉ là loại hữu ích ở chỗ nó giả sử rằng bạn muốn số cổng 80. Chúng tôi đã biết rằng DNS có thể tìm ra những địa chỉ IP là của www.yale.edu. Nhưng máy tính chỉ là sẽ suy ra rằng bạn muốn cổng 80 vì bạn đang sử dụng Chrome hoặc IE, hoặc một số trình duyệt khác. Nhưng tôi kỹ thuật có thể làm ruột 80. Và sau đó tôi có thể nói một cách rõ ràng trình duyệt của tôi, gửi một gói hoặc nhiều hơn thông tin để www.yale.edu yêu cầu trang nhà ngày nay. Nhưng đặc biệt, địa chỉ nó để IP Yale tại cổng 80 vì vậy mà tôi thực sự có được sao máy chủ web của Yale. Bây giờ nó ngay lập tức biến mất bởi vì trình duyệt chỉ quyết định mà chúng ta làm không cần nhầm lẫn giữa con người bằng cách nào phức tạp hơn thông tin như ruột 80. Và thẳng thắn, các trình duyệt như Chrome thậm chí không chỉ cho bạn http nữa, hoặc đại tràng, hoặc các dấu gạch chéo dấu gạch chéo, hoặc dấu gạch chéo, trong một số ý nghĩa bởi vì họ đang cố gắng để làm cho mọi việc đơn giản hơn cho người sử dụng. Trong một nghĩa khác, nó chỉ là loại một trải nghiệm người dùng thing-- chúng ta hãy loại bỏ một số lộn xộn. Nhưng nó đang giấu một số các chi tiết cơ bản. Và trên thực tế, không ai trong chúng có lẽ bao giờ gõ http nữa. Bạn chỉ cần gõ vào một cái gì đó như www.harvard.edu. Và một lần nữa, infers Chrome mà bạn muốn HTTP. Nhưng có những giao thức khác rằng chúng ta chắc chắn có thể được sử dụng. Vì vậy, cho tất cả những điều này, nếu bây giờ bạn loại của đặt trên cái gọi là hat kỹ thuật, làm thế nào để điều được gọi là tường lửa làm việc? Vì vậy, có lẽ bạn đang nói chung quen thuộc với các bức tường lửa, không quá nhiều trong ý nghĩa vật lý. Vì vậy, trở lại trong ngày, và vẫn còn cho đến ngày nay, nếu bạn đã có như trung tâm dải cho Ví dụ có rất nhiều cửa hàng, nói chung các bức tường ở giữa cửa hàng cá nhân hoặc cửa hàng là bức tường lửa trong ý nghĩa rằng họ có cách ly đặc biệt do đó nếu một ngọn lửa xảy ra tại một cửa hàng, nó không nhất thiết lan sang các cửa hàng bên cạnh. Thế giới máy tính cũng có tường lửa mà làm một cái gì đó khác nhau. Không một quả cầu lửa làm gì? Yeah? Đung Về cơ bản họ cắt đứt kết nối nếu họ gặp phải một cái gì đó như thế, ví dụ, họ có số lượng các báo cáo id. Và nếu có điều gì xảy ra, họ cắt kết nối. Cũng giống như nếu cuộc tấn công độc hại này [Không nghe thấy] máy tính của bạn, or-- DAVID J. Malan: OK tốt. Yeah, và trong thực tế bạn thậm chí còn đi xa hơn một chút trong việc mô tả một cái gì đó mà có thể là được gọi là một hệ thống phát hiện xâm nhập, hoặc IDS cho ngắn, nhờ đó mà bạn thực sự có quy định. Và nếu bạn bắt đầu thấy nghi ngờ hành vi, bạn cố gắng để chấm dứt nó. Và một bức tường lửa, thẳng thắn, ở một mức độ kết nối mạng, thậm chí còn ngớ ngẩn hơn và đơn giản hơn hơn thế, nói chung. Và có nhiều loại khác nhau các bức tường lửa trên thế giới. Nhưng những hoạt động ở mức độ chúng ta đang nói today-- IP và TCP-- làm việc ngay cả thẳng thắn hơn. Ví dụ, nếu bạn là hệ thống Yale các quản trị viên, hoặc hệ thống Harvard các quản trị viên, hoặc một số Big Anh trai tại một số công ty, và bạn muốn ngăn chặn tất cả các bạn sinh viên hoặc tất cả các nhân viên của bạn từ sẽ facebook.com, tất cả các bạn phải làm được đảm bảo rằng tất cả họ mạng lưới giao thông, trước hết, đi qua một thiết bị đặc biệt. Hãy gọi nó là một bức tường lửa. Và đó là tốt, bởi vì bạn có thể làm cho router của bạn điều tương tự như một bức tường lửa nếu bạn đặt cùng một loại phần mềm trên cùng một máy. Vì vậy, nếu tất cả các học sinh của bạn hoặc nhân viên giao thông đang trải qua này tường lửa trung tâm, làm thế nào chúng tôi sẽ chặn không cho người đi để facebook.com, chẳng hạn? Sẽ những gì hệ thống quản trị viên phải làm gì? Ai khác? Hãy cố gắng để đi xung quanh. Đung [Không nghe thấy] DAVID J. Malan: Nói rằng một lần nữa? Đung Nó chỉ nên được bắt lên bên trong hệ thống. Vì vậy, chỉ cần đặt Facebook vào 127.0.0-- DAVID J. Malan: Oh, thú vị. Vì vậy, bạn có thể thực sự sau đó hack hệ thống DNS của bạn. Đây thực sự là một cách bạn có thể làm điều này theo đó bất cứ lúc nào một sinh viên Yale kéo www.facebook.com lên, tất cả của chúng tôi ở đây ngày hôm nay trong khuôn viên trường đang sử dụng máy chủ DNS của Yale, vì máy chủ DHCP của Yale đã cho chúng tôi địa chỉ. Vì vậy, yeah, bạn có thể loại phá vỡ những điều ước hay nghỉ bởi chỉ cần nói, yeah, địa chỉ facebook.com là giả, là 1.2.3.4, đó là không thực sự chính đáng. Hoặc có lẽ nó là 278. gì đó đựng trong một chương trình truyền hình thời điểm trước đây vì vậy mà không ai trong chúng thực sự có thể truy cập vào facebook.com. Vì vậy, giả Yale đã làm điều đó. Giả sử Yale muốn giữ bạn ra khỏi facebook.com. Và do đó, họ thay đổi các thiết lập DNS để cung cấp cho bạn một IP giả giải quyết cho facebook.com. Làm thế nào để bạn trả lời? Về mặt kỹ thuật, not-- oh, bây giờ tất cả mọi người muốn tham gia. OK, yeah. Đung Bạn chỉ cần gõ vào địa chỉ IP thực của Facebook. DAVID J. Malan: OK, tốt. Vì vậy, chúng ta có thể chỉ cần gõ vào địa chỉ IP thực của Facebook, giống như tôi đã làm với trang web của Yale. Và nếu các máy chủ được cấu hình Facebook để hỗ trợ đó, nó thực sự cần làm việc. Đó là một nỗi đau nhỏ trong cổ, bởi vì bây giờ chúng tôi phải nhớ một số ngẫu nhiên Giá trị 32-bit, nhưng điều đó có thể làm việc. Bạn có thể làm những gì khác? Yeah. Đung Bạn có thể thay đổi những thiết lập [không nghe được]. DAVID J. Malan: Vâng, bạn có thể thậm chí thay đổi các thiết lập DNS của bạn. Vì vậy, trong thực tế, điều này thực sự khá hữu ích, thẳng thắn, nếu bạn đang ở một sân bay, hoặc nếu bạn đang ở trong một quán cà phê, hoặc cái gì đó có internet flaky nhờ đó mà đôi khi các máy chủ DNS chỉ dừng lại làm việc. Vì vậy, ngay cả khi tôi thỉnh thoảng làm này, không phải cho độc hại, tôi muốn sử dụng Facebook mục đích, nhưng thực sự bởi vì tôi dường như có một mạng lưới kết nối, nhưng không được làm việc. Và vì vậy một trong những người đầu tiên điều tôi try-- và bạn có thể làm điều này trên Windows too-- nhưng trên máy Mac của tôi, nếu tôi đi đến Network. Và tôi chọn kết nối Wi-Fi của tôi. Và tôi đi đến nâng cao. Và tôi đi đến DNS. Đây là ba Địa chỉ IP mà Yale là đem lại cho tôi cho ba máy chủ DNS. Mục đích sau đó là cho tôi để thử bất kỳ một trong những địa chỉ để giải quyết. Nhưng tôi có thể ghi đè lên những bằng cách làm một cộng. Và bất cứ ai muốn đề xuất một máy chủ DNS? Đung 8.8.8.8? DAVID J. Malan: Oh, bạn thật tuyệt vời. Có, 8.8.8.8. Vì vậy, Google, chúc lành cho trái tim của họ, mua các địa chỉ IP 8.8.8.8, bởi vì nó loại trông giống như Gs có lẽ, và nó dễ dàng để nhớ. Nhưng đương nhiên, bây giờ tôi đã cấu hình của tôi máy tính để sử dụng máy chủ DNS của Google. Vì vậy, bây giờ nếu tôi đi đến yale.edu, nó vẫn sẽ làm việc. Nhưng tôi không sử dụng Yale Các máy chủ DNS nữa. Và nếu tôi đi đến facebook.com, tất cả những người tìm ups sẽ đi qua Google. Vì vậy, một mặt, tôi đã khéo léo phá vỡ các hệ thống địa phương quản trị chỉ bằng cách Hiểu được cách mạng. Nhưng tôi phải trả một mức giá. Không có gì là miễn phí. Những gì tôi có chỉ cho lên? Những gì tôi có chỉ cho lên? Tất cả các bạn những người thông minh, có được sử dụng 8.8.8.8, vì nó mát mẻ hoặc giải quyết vấn đề, những gì có bạn đã làm tất cả thời gian này? Đung Du lịch xa hơn? DAVID J. Malan: Có thể di chuyển xa hơn, bởi vì Google có lẽ không phải là khá gần như các máy chủ xuống các đường phố. Nhưng worrisomely hơn. Yeah? Đung vậy, bây giờ Google biết nơi bạn đang đi. DAVID J. Malan: Google biết nghĩa đen mỗi trang web bạn đang truy cập, bởi vì bạn có nghĩa là yêu cầu họ, hey Google, bạn có thể dịch yale.edu cho tôi? Hoặc hey Google, bạn có thể dịch địa chỉ này trang web khác cho tôi vào một địa chỉ IP. Và như vậy they're-- tôi không có ý tưởng những gì bạn đang nói về. Và do đó, họ biết mọi thứ về bạn. Vì vậy, nhận ra rằng đây là một dịch vụ miễn phí với một mục đích từ quan điểm của họ cũng. Nhưng nó có thể chắc chắn giúp bạn có được ra khỏi một ràng buộc. Bây giờ chỉ để giải quyết một khác vấn đề mà thường đi lên giữa học sinh, đặc biệt là khi đi du lịch quốc tế ở một số nước như Trung Quốc, nơi có thực là một Great Firewall của Trung Quốc, theo đó chính phủ có khối khá một chút về giao thông ở các cấp độ khác nhau. Bạn không phải chỉ khối giao thông ở cấp chúng ta đang nói ở đây, DNS hay không, bạn có thể chặn nó ở cấp độ khác. Và trên thực tế, chỉ để được rõ ràng, một tường lửa có thể hoạt động ngay cả đơn giản hơn chỉ có hệ thống quản trị thay đổi Thiết lập DNS. Một bức tường lửa, một thiết bị ở giữa chúng ta và phần còn lại của thế giới, chỉ có thể chặn bất kỳ đi yêu cầu đến địa chỉ IP cho Facebook trên cổng 80, hoặc các địa chỉ IP cho harvard.edu, hoặc địa chỉ IP của bất cứ điều gì. Vì vậy, một tường lửa có thể nhìn vào bạn phong bì 'địa chỉ IP và thậm chí cả cổng số, và nếu Yale muốn, nó chỉ có thể ngăn chặn tất cả chúng ta từ thậm chí sử dụng FTP nữa, mà sẽ có lẽ là một điều tốt vì nó thực sự là một giao thức không an toàn. Yale thậm chí có thể ngăn chặn chúng tôi quý khách đến thăm toàn bộ các web chỉ bằng cách ngăn chặn tất cả các cổng giao thông trên số 80 là tốt. Vì vậy, đó có thể là một cách khác. Và có cách thậm chí fancier là tốt. Nhưng khi bạn đi du lịch ở nước ngoài chẳng hạn, hoặc nếu bạn đang ở trong một quán cà phê internet, hoặc nếu bạn đang ở bất cứ đâu, nơi có tắc nghẽn hoặc các mối đe dọa, những gì bạn có thể làm gì? Vâng, nếu bạn đi xuống các đường phố để Starbucks hoặc bạn đi du lịch ở một sân bay, nói chung là bạn chỉ có thể nhảy trên Wi-Fi bằng cách chọn như, JFK Wi-Fi của LaGuardia Wi-Fi, hoặc Logan Airport Wi-Fi, hoặc những gì không. Và nó không được mã hóa, phải không? Không có biểu tượng ổ khóa. Và có lẽ bạn đang không được nhắc nhở cho một tên người dùng và mật khẩu. Bạn chỉ cần nhắc nhở với một số hình thức ngu ngốc nói như thế, tôi đồng ý sử dụng chỉ này trong 30 phút, hoặc một cái gì đó như thế. Nhưng không có mã hóa giữa bạn và truy cập Wi-Fi Starbucks điểm, những điều có các ăng-ten trên tường. Không có mã hóa giữa bạn và Wi-Fi tín hiệu của sân bay. Và do đó, về mặt kỹ thuật, mà người đáng sợ ngồi một vài chỗ ngồi xuống từ bạn trong Starbucks hoặc tại sân bay có thể là, với một phần mềm, xem tất cả các dây của bạn lưu lượng truy cập trên máy tính xách tay của mình. Nó không phải là khó đặt một máy tính xách tay vào những gì gọi là chế độ promiscuous, mà như tên cho thấy, có nghĩa là bạn đang loại lỏng lẻo với các quy tắc. Và nó chỉ lắng nghe không chỉ cho giao thông có nghĩa là cho nó, nhưng cũng để mọi người khác là giao thông trong phạm vi. Và theo logic đó, nó có thể nhìn thấy tất cả các gói thông tin bạn đang nhận được. Và nếu những gói không được mã hóa, bạn đang đặt mình vào nguy cơ email, hoặc tin nhắn của bạn, hoặc bất cứ điều gì khác nhận được tiếp xúc. Vì vậy, ngay cả khi bạn không phải ra nước ngoài nhưng bạn chỉ trong Starbucks, hoặc bạn đang ở trên một số ngẫu nhiên của người Wi-Fi mà không được mã hóa, một VPN là một điều tốt. Một VPN là một mạng riêng ảo. Và đó là một công nghệ cho phép bạn có một mã hóa, một connection-- scrambled fancier hơn Caesar hoặc Vigenere-- giữa máy tính xách tay của bạn, hoặc điện thoại của bạn, hoặc máy tính để bàn của bạn, và một máy chủ ở nơi khác, như một máy chủ trong khuôn viên trường Đại học Yale. Và nếu bạn đang đi du lịch abroad-- và trong thực tế, bạn tìm thấy điều này trong khách sạn tất cả các thời gian. Và đặc biệt là tham vọng các nhà khoa học máy tính nơi các bạn có thể, như chuyên viên máy tính, muốn sử dụng các cổng khác hơn là 80, và các cảng khác hơn 443-- và trong thực tế cho vấn đề thiết lập sáu, chúng ta đang đi chơi với nhiều Cổng TCP chỉ bởi choice-- rất nhiều của khách sạn, và các cửa hàng, và các mạng chỉ chặn các loại công cụ bởi vì họ có phần ngây thơ, hoặc vì không biết gì, chỉ cần nghĩ mà không ai cần những cảng khác. Và như vậy bằng cách sử dụng một VPN có thể bạn mặt những loại hạn chế, bởi vì những gì một VPN nào là nó cho phép bạn tại Starbucks, hoặc sân bay, hoặc bất cứ nơi nào trên thế giới để kết nối encryptedly để yale.edu, một số máy chủ ở đây trên khuôn viên trường, và sau đó đường hầm, có thể nói, tất cả các lưu lượng truy cập của bạn từ bất cứ nơi bạn là thông qua Yale, tại thời điểm đó sau đó nó đi đến đích cuối cùng của nó. Nhưng bằng cách mã hóa nó, bạn tránh bất kỳ các loại các bộ lọc hay áp đặt mà một số mạng lưới địa phương đã áp đặt. Và cộng thêm, bạn có một quốc phòng mạnh mẽ hơn nhiều đối với những người đáng sợ xung quanh bạn, những người có phải cố gắng để lắng nghe về giao thông của bạn. Vẫn có thể là người đáng sợ ở đây trở về nhà tại Yale xem lưu lượng truy cập của bạn khi nó đi ra khỏi VPN, nhưng ít nhất bạn đã đẩy các mối đe dọa xa. Và nó ở đây quá, một thương mại giảm. Bây giờ tất nhiên, nếu bạn đang ở trong Trung Quốc hoặc thậm chí trong các quán cà phê, và bạn đang Tunneling tất cả lưu lượng truy cập của bạn thông qua Yale, được giá những gì chúng ta phải trả lẽ? Đung Speed. DAVID J. Malan: Tốc độ, phải không? Có nhận được một số toán học hoặc một số fanciness tham gia trong mã hóa thực tế. Có thể có hàng ngàn dặm khoảng cách hoặc hàng ngàn dặm của dây cáp nối giữa bạn và Yale. Và nó thực sự xấu nếu bạn ở Trung Quốc, ví dụ, và bạn muốn ghé thăm một trang web ở Trung Quốc. Và do đó, dữ liệu của bạn sẽ Mỹ, và sau đó trở lại Trung Quốc chỉ vì bạn đang mã hóa nó thông qua đường hầm này. Nhưng nó quyết kỹ thuật và làm việc những vấn đề giống nhau. Nhưng tất cả nắm để những ý tưởng rất đơn giản. Và Harvard, cho những người tò mò, có một ở đây là tốt, tại vpn.harvard.edu, mà hoạt động giống như Yale. Vì vậy, với tất cả những gì đã nói, tại sao là toàn bộ mạng lưới này hữu ích? Và những gì chúng ta có thể bắt đầu làm gì với nó? Vâng, chúng ta hãy làm này thực sự bây giờ nhiều hơn. Đây là từ viết tắt mà hầu hết chúng ta có lẽ là siêu familiar-- HTTP-- đó là viết tắt để chuyển văn bản siêu giao thức. Và điều này chỉ có nghĩa là đây là ngôn ngữ, các giao thức mà các trình duyệt web và máy chủ web nói. P trong HTTP thực sự là một giao thức. Và một giao thức chỉ là một tập hợp các công ước. Chúng tôi đã nhìn thấy IP-- protocol-- internet Điều khiển truyền dẫn TCP-- protocol-- và HTTP. Nhưng những gì là ngu ngốc này điều của một giao thức? Nó chỉ là một tập hợp các công ước. Vì vậy, nếu tôi loại đi xuống ở đây, và tôi muốn chào đón bạn. Tôi sẽ nói chào, tôi tên là David. Đung Luis. DAVID J. Malan: Luis. Chúng tôi có nhân ngu ngốc này ước bắt tay ở đây. Nhưng đó là một giao thức, phải không? Tôi đưa tay tôi. Luis mở rộng bàn tay của mình. Chúng tôi đã làm điều này. Và sau đó hoàn chỉnh, thực hiện. Và đó là chính xác như nhau Tinh thần của một giao thức máy tính nơi như trong HTTP, những gì xảy ra là. Nếu bạn là máy tính trên còn lại ở đây, và có một số web máy chủ ở phía bên phải. Và các máy tính bên trái muốn yêu cầu thông tin từ máy chủ đó. Đó là một loại hoạt động hai chiều. Các trình duyệt trên bên trái yêu cầu một số trang web. Các máy chủ bên phải phản ứng với một số trang web. Và chúng ta sẽ thấy những hình thức những mất chỉ trong một khoảnh khắc. Và nó chỉ ra rằng những computers-- rằng trình duyệt và máy chủ, hoặc khách hàng và máy chủ, do đó, để nói chuyện. Giống như một nhà hàng nơi khách hàng là yêu cầu cho một cái gì đó, và máy chủ được đưa anh ta hoặc cô something-- nhận là loại từ tác. Nghĩa đen bên trong phong bì Trình duyệt của tôi sẽ gửi từ đây đến một web máy chủ là get từ. Cũng giống như tôi muốn có được tin tức của ngày hôm nay. Tôi muốn nhận được của tôi Nguồn tin Facebook, hoặc tôi muốn có được một số trang từ máy chủ. Cụ thể, đây là những gì xảy ra bên trong phong bì đó. Vì vậy, tôi, với Cole, về cơ bản gửi Cole một phản ứng. Nếu bạn tưởng tượng rằng Cole thực sự muốn có một hình ảnh của Rick Astley, có thể anh đã gửi cho tôi một yêu cầu tinh thần tương tự này. Bên trong phong bì của mình với tôi, nơi Tôi bây giờ đang chơi vai trò của Google, sẽ là một yêu cầu mà nghĩa đen nói, có được, và sau đó một slash-- về phía trước và bạn đã có thể nhìn thấy các dấu gạch chéo trong URL trước. Nó chỉ có nghĩa là cho tôi mặc định trang, mặc định Rick Astley hình ảnh trong trường hợp này. Và bằng cách này, Cole nói ngôn ngữ HTTP phiên bản 1.1, hoặc các giao thức 1.1. Và hóa ra có của một phiên bản cũ 1.0. Nhưng máy tính có xu hướng sử dụng 1.1. Dòng thứ hai là một điều hữu ích mà sẽ trở lại có lẽ không bao lâu. Nhưng nó chỉ là một đặc điểm kỹ thuật cho tôi, người nhận, đó là điều tôi muốn là www.google.com. Bởi vì nó rất có thể những ngày này cho hàng chục, hàng trăm trang web với tên miền khác nhau cho tất cả sống trên cùng một máy chủ. Nó sẽ không là sự thật rất nhiều trong trường hợp của Google. Nhưng trong một công ty nhỏ hơn của trường hợp, hoàn toàn có thể được. Vì vậy, Cole chỉ là loại đặt trong phong bì, bằng cách này, khi này đạt Địa chỉ IP của bạn trên cổng 80, chỉ cần chắc chắn rằng bạn biết Tôi muốn www.google.com, không một số trang web ngẫu nhiên khác trên cùng một máy chủ. Những gì tôi sau đó phản ứng với Cole, vào cuối ngày, là một bức tranh. Nhưng trên đỉnh hình ảnh mà bên trong phong bì thực sự là một số văn bản, nơi mà tôi nói, OK. Tôi nói HTTP phiên bản 1.1 cũng. 200. Mà là một mã trạng thái mà hầu hết chúng ta có thể không bao giờ nhìn thấy, bởi vì nó có nghĩa là OK. Và điều này là tốt, bởi vì nó nghĩa là tôi đang đáp ứng thành công yêu cầu của Cole. Những gì con số có thể bạn nhìn thấy trên các trang web mà không phải là OK? Đung 404. DAVID J. Malan: 404-- không tìm thấy file. Vì vậy, trên thực tế, bất cứ lúc nào bạn đã nhìn thấy một trong những tập tin không gây phiền nhiễu lỗi được tìm thấy, bởi vì các trang web đã chết, hoặc vì bạn đã nhập một URL, mà chỉ có nghĩa là rằng phong bì nhỏ mà bạn máy tính nhận được từ các máy chủ chứa đựng một thông điệp HTTP 1.1, 404-- không tìm thấy. Đó là tập tin hoặc yêu cầu bạn đã không được tìm thấy. Hơn nữa, bên trong phong bì thường là dòng, loại nội dung này. Đôi khi nó là HTML, một cái gì đó chúng ta sẽ sớm thấy. Đôi khi đó là một JPEG. Đôi khi đó là một GIF. Đôi khi đó là một tập tin phim, một tập tin âm thanh, bất kỳ số lượng của sự vật. Vì vậy, bên trong phong bì chỉ là một chút gợi ý như những gì tôi nhận được. Có mã trạng thái khác quá, một số trong đó chúng ta sẽ khám phá trong P đặt sáu, và bạn sẽ vấp ngã trên trong P đặt bảy và / hoặc tám. Nhưng một số ở đây, giống như 404, chúng tôi đã nhìn thấy. Forbidden, 403, có nghĩa như quyền hạn sai, như bạn không có loại cấu hình nó một cách chính xác. 301 và 302, chúng ta hiếm khi nhìn thấy bằng mắt thường. Nhưng họ có nghĩa là chuyển hướng. Bất cứ lúc nào bạn đã đi đến một URL và bạn đã kỳ diệu gửi ở một nơi khác, đó là vì trình duyệt đã được gửi trở lại một phong bì có chứa số 301 hoặc 302, và URL mà nó muốn trình duyệt của bạn để đi đến thay thế. 500 là khủng khiếp. Bạn sẽ nhìn thấy nó trước khi dài, có thể là trong P đặt sáu hoặc bảy P thiết. Và nó thường có nghĩa có một số lỗi trong mã của bạn, vì thực sự chúng ta sẽ viết mã mà đáp ứng các yêu cầu web. Và bạn đã chỉ có một số lỗi trong logic hoặc cú pháp, và các máy chủ không thể xử lý nó. Vì vậy, chúng ta hãy xem làm thế nào bây giờ chúng ta có thể tận dụng và hiểu được những yêu cầu như sau. Nếu tôi đi đến, chúng ta hãy nói, google.com. Hãy để tôi đi đến www.google.com. Và vì lợi ích của cuộc biểu tình, chúng ta hãy thấy, tôi cần phải đi vào Cài đặt ở đây. Tôi sẽ đi tìm kiếm Settings. Và Google đã ngày càng khó chịu tính năng, nhưng tính năng hữu ích. Vì vậy, Google có điều này như ngay lập tức kết quả mà bạn bắt đầu gõ, và tự động mọi thứ bắt đầu xuất hiện. Và đó là tất cả tiền phạt và kỹ thuật hữu ích, và chúng ta sẽ hiểu trước dài cách làm việc này. Nhưng bây giờ, tôi đang quay tắt kết quả tức thì, bởi vì tôi muốn trình duyệt của tôi để sắp xếp công việc học cũ nên mà tôi có thể xem những gì đang xảy ra. Vì vậy, bây giờ tôi lại ở đây. Và tôi muốn tìm kiếm cho mèo. Và nhận thấy tôi đang nhìn thấy một số gợi ý, một số gợi ý rất lành tính may mắn. Và bây giờ nếu tôi nhấn Enter, hãy xem những gì sẽ xảy ra. Vì vậy, có một số mèo. Và các hit đầu là trên Wikipedia. Nhưng hôm nay chúng ta quan tâm công nghệ lên đây. Vì vậy, các URL mà tôi đã được gửi lại ở đây. Và có một số thứ tôi không thực sự hiểu. Vì vậy, tôi sẽ đi trước, bởi vì Tôi loại biết cách hoạt động của Google, và tôi sẽ để chưng cất này URL vào hình thức đơn giản của nó. Và bây giờ tôi sẽ nhấn Enter lần nữa. Và nó vẫn hoạt động. Tôi có một trang kết quả của tất cả về con mèo. Nhưng nhận thấy sự đơn giản của URL của tôi. Hóa ra đây là cách nhiều công trình web. Các web chỉ là một toàn bộ loạt các máy tính chạy phần mềm mà lấy đầu vào. Nó không có được phong cách chuỗi đầu vào. Nó không phải dòng lệnh lập luận như chúng ta đang sử dụng để. Họ lấy đầu vào, các máy chủ web, bằng cách của URL khá thường xuyên. Và bất cứ lúc nào bạn đã tìm kiếm một cái gì đó, bất kỳ thời gian bạn đã đăng nhập vào Facebook, bất kỳ thời gian bạn đã thực hiện bất cứ điều gì tương tác với một trang web, những gì bạn đang làm được hiệu quả nộp một mẫu đơn, vì vậy để speak-- hộp văn bản, hộp kiểm tra, vòng tròn nhỏ, và không có điều gì mà gửi thông tin từ bạn đến máy chủ. Và nó chỉ ra rằng các trang web máy chủ biết để nhìn vào URL và phân tích nó, giống như nhìn vào nó nhân vật bởi nhân vật tìm kiếm bất cứ điều gì thú vị sau một dấu chấm hỏi. Bởi vì sau khi một dấu hỏi, nó quay ra, là sẽ đi một loạt các cặp giá trị quan trọng. Tôi có nghĩa là key = value. Và sau đó nếu có thể multiple-- một dấu, một số khác key = giá trị, ký hiệu, key = value. Vì vậy, chúng tôi đã loại nhìn thấy ý tưởng này trước khi mà một cái gì đó có giá trị. Nó chỉ là một định dạng mới đây. Và tôi chỉ biết, theo quy ước, Google sử dụng cho truy vấn q. Và sau đó nếu tôi muốn tìm kiếm cho chó, tôi có thể tự tìm kiếm cho chó như thế. Và sau đó tôi nhận được rõ ràng một số kết quả tìm kiếm liên quan đến chó. Vì vậy, điều đó có vẻ thú vị. Và quả thực, những gì đang xảy ra bên dưới mui xe là điều này. Hãy để tôi làm điều này. Đây là a-- để xem nào. Hãy để tôi nhìn lại ở đây chỉ một khoảnh khắc. Chúng ta sẽ thấy rằng có khác cách để gửi thông tin. Vì vậy, nếu tôi đăng nhập vào Facebook, hoặc Gmail, hoặc bất kỳ trang web phổ biến khác, có vẻ như loại xấu nếu bất cứ điều gì tôi đã gõ vào hộp tìm kiếm kết thúc trong URL của tôi, trong thanh địa chỉ của trình duyệt của tôi. Tại sao? Tại sao là nhẹ đáng lo ngại? Yeah? Đung Gõ vào một mật khẩu. DAVID J. Malan: Yeah. Vì vậy, nếu những gì tôi đã gì gõ vào là mật khẩu của tôi? Tôi loại không muốn nó quá rõ ràng nhìn thấy trong thanh địa chỉ của trình duyệt của tôi. Một, bởi vì bạn cùng phòng khó chịu của tôi có xu hướng xem qua vai tôi, và anh ta hoặc cô ta có thể thấy, mặc dù nó là viên đạn khi tôi đang gõ nó trong, vòng tròn nhỏ. Bây giờ nó vào thanh địa chỉ của tôi. Hơn nữa, những gì là sự thật về công cụ bạn có xu hướng nhập vào thanh địa chỉ. Đung [Không nghe thấy] DAVID J. Malan: Đó là gì? Đung Nó được gửi ra ngoài. DAVID J. Malan: Nó được gửi ra ngoài. Và cũng có thể, nó được ghi nhớ. Bởi vì trong thời gian tới bạn gõ lên những điều đó, thường nó tự động hoàn và nó nhớ lại những gì bạn đã gõ trước. Và do đó, có lịch sử thật sự này rằng anh chị em của bạn, hoặc bạn cùng phòng của bạn, hoặc bất cứ ai có thể đi bộ qua để khá nhiều nhìn thấy tất cả các website bạn đến thăm vì nó đăng nhập ở chỗ thanh địa chỉ. Hơn nữa, giả sử bạn muốn tải lên một bức ảnh lên Facebook. Làm thế nào trên thế giới là bạn sẽ đặt một bức ảnh trong một URL? Vâng nó quay ra bạn có thể làm điều đó trong một số cách nào, nhưng chắc chắn là không rõ ràng. Và do đó, có cách này khác gửi thông tin trong một phong bì, không phải thông qua một GET, nhưng qua một cái gì đó gọi là POST. Và trong lý thuyết, có vẻ khá giống nhau. Thay vì từ GET, POST chúng ta nói, và sau đó cùng một loại định dạng. Ví dụ, đây là một ảnh chụp màn hình của những gì nó có thể trông như thế nào nếu tôi cố gắng khai thác gỗ vào Facebook, gửi tôi vào một tập tin gọi là login.php, mà thực sự là vẫn còn cho đến ngày nay đặt tên như vậy. Đó là cùng một tên tập tin Mark đã cung cấp cho nó nhiều năm trước đây. Đây là chương trình mà ông đã viết trong PHP qua mà người dùng có thể đăng nhập vào trang web. Nhưng bạn cần phải gửi một số đầu vào bổ sung. Và thay vì nó đi sau tên file như trước đây với cats-- q = cats-- nó có thể xuống thấp hơn trong yêu cầu, bên trong sâu sắc hơn về các phong bì nếu bạn sẽ không ai có thể nhìn thấy nó, và nơi mà nó không kết thúc trong thanh trình duyệt của người dùng, và do đó không nhớ để mọi người ăn trộm xung quanh. Và vì vậy ở đây địa chỉ email của tôi và fake mật khẩu của tôi thực sự đi. Và nếu đang sử dụng Facebook không HTTP, HTTPS nhưng, tất cả điều này sẽ được mã hóa, tranh giành, ala Caesar hoặc Vigenere, nhưng fancily nhiều hơn như vậy mà không có ai thực sự có thể nhìn thấy yêu cầu này. Và như vậy thực sự, bất cứ lúc nào bạn có một URL bắt đầu bằng HTTPS, nó chỉ có nghĩa là nó được mã hóa. Nhưng vào cuối ngày, có chuyện gì thực sự bên trong các phong bì? Đây là mức siêu thấp. Và may mắn thay, chúng tôi không sẽ nhất thiết phải có đi mức thấp như vậy mỗi lần đến bắt đầu viết phần mềm thú vị. Chúng tôi có thể bắt đầu để mất những ý tưởng của một tuần đến năm, giả sử rằng có bây giờ là cơ sở hạ tầng này cho phép chúng tôi viết phần mềm mà hoạt động trên web, và nó sẽ cho phép chúng tôi này đến tuần để bắt đầu nhìn vào một cái gì đó gọi là HTML. Đây là những thứ mà thậm chí còn sâu hơn bên trong phong bì, nhưng đó là công cụ chúng tôi sẽ bắt đầu viết. Và đó là công cụ hơn thú vị, chúng tôi sẽ viết chương trình bắt đầu tạo ra tự động để các trang web của chúng tôi không được mã hóa cứng, nhưng có đầu vào và đầu ra sản xuất. Đây có lẽ là đơn giản nhất web Trang bạn có thể thực hiện trên thế giới. Tôi thực sự có thể mở lên một cái gì đó ngu ngốc như TextEdit trên máy Mac của tôi, mà chỉ mang lại cho tôi một cửa sổ văn bản đơn giản như thế này. Người dùng máy tính có Notepad.ext, mà là rất giống nhau trong tinh thần. Và tôi theo nghĩa đen có thể gõ ra this-- DOCTYPE HTML, mà có vẻ hơi khó hiểu. Nhưng chúng tôi sẽ trở lại đó. HTML, với những kỳ lạ dấu ngoặc góc cạnh và chém, bên trong mà bây giờ tôi sẽ nói ở đây có người đứng đầu của trang web của tôi. Bên trong đó, tôi chỉ biết, và bạn sẽ sớm biết, mà tôi có thể đặt tiêu đề của trang web của tôi. Và sau đó dưới đầu của trang web là sẽ đi đến cái gọi là cơ thể của trang web. Và tôi chỉ thụt chỉ giống như trong C để loại giữ những điều độc đáo có thể đọc được văn phong. Và bây giờ tôi sẽ tiết kiệm này là một tập tin trên máy tính để bàn, gọi hello.html của tôi. Và tôi sẽ nói cho nó có, sử dụng HTML. Không thay đổi nó để .txt, thậm chí mặc dù tất cả điều này là một tập tin văn bản, giống như một chương trình C bằng văn bản với một trình soạn thảo văn bản. Mặc dù không phải trong CS50 IDE tại thời điểm, chỉ ở đây trên Mac của tôi. Và nếu bây giờ tôi đi đến máy tính để bàn của tôi, bạn sẽ thấy hello.html. Nếu tôi nhấp đúp chuột này, nó sẽ mở Chrome. Và mặc dù tập tin này xảy ra để sống trên máy tính để bàn của tôi, đó có lẽ là đơn giản nhất Trang web của tôi có thể làm. Chú ý rằng các tiêu đề của tab con đường lên đỉnh là hello world. Cơ thể của trang web thực sự là hello world. Và tất cả tôi đã làm để có được đến thời điểm này là thực hiện, hay là viết một ngôn ngữ mới, được gọi là HTML. Nó không phải là một lập trình ngôn ngữ như C. Có sẽ không có điều kiện, và vòng lặp, và các chức năng. Đó là một ngôn ngữ đánh dấu, trong đó trường hợp bạn chỉ cần nói cho nhận Chương trình những gì bạn muốn làm. Điều này có nghĩa hey trình duyệt, ở đây có một trang HTML. Hey trình duyệt, ở đây có người đứng đầu trang của tôi. Hey trình duyệt, ở đây có cơ thể của trang web của tôi. Hey trình duyệt, đó là nó cho cơ thể. Đó là nó cho các trang HTML. Và với những định nghĩa đơn giản một mình, chúng ta sẽ sớm thấy rằng một trong, chúng tôi có thể đại diện này như một cái cây. Nhưng nhiều hơn về điều này sau. Vì vậy, đây sẽ tất cả các kết nối đến cấu trúc dữ liệu gần đây nhất của chúng tôi. Hai, chúng tôi sẽ giới thiệu trò đùa ngu ngốc này. Đây là một hình xăm thật mà anh chàng này đã có trên cổ anh. Đây có thể là hài hước trong tuần đầu tiên hai, và sau đó, có lẽ không quá nhiều. Nhưng HTML, và thậm chí cả các trang web Trang tôi chỉ cần thực hiện, siêu tâm numbingly disappointing-- chỉ nói hello world trong văn bản màu đen trên nền trắng. Chắc chắn chúng ta có thể làm tốt hơn nhiều. Và chúng tôi sẽ làm như vậy bằng cách giới thiệu một ngôn ngữ được gọi là CSS. Điều này cũng không phải là một lập trình language-- không có vòng, và điều kiện, hoặc cho các vòng, nhưng thực sự, chỉ cần cú pháp mà theo đó chúng ta có thể nói, làm cho văn bản này lớn. Làm cho văn bản này nhỏ. Right align nó. Trái align nó. Làm cho nó màu hồng. Làm cho nó màu tím. Làm cho nó màu xanh. Hoặc làm bất kỳ số lượng hiệu ứng hình ảnh khác. Và vì vậy chúng tôi sẽ xem làm thế nào để bắt đầu stylizing các trang web để họ nhìn một cách gần gũi hơn với những gì chúng ta muốn. Và cuối cùng, chúng tôi đã thực sự bị hủy hoại có lẽ nhiều kênh truyền hình và phim cho bạn. Tôi nghĩ chúng ta sẽ kết thúc ở đây với giây cuối cùng của chúng tôi trên một đoạn phim cuối cùng mà bạn thấy cách hack vào các công trình internet. Nếu chúng ta có thể làm mờ sáng một lần cuối cùng. [VIDEO PLAYBACK] -Không đời nào. Tôi đang bị tấn công. -Okorsky? -No-- Không có, điều này là chính. Họ đã đốt cháy thông qua các bức tường lửa công NCIS. -Well, Cô lập các nút và bãi họ ở phía bên kia của router. -Tôi đang cô. Nó đang chuyển động quá nhanh. -Oh, Điều này là không tốt. Họ đang sử dụng kết nối của chúng tôi [Không nghe thấy] cơ sở dữ liệu này. Sever nó. -Tôi Không thể. Đó là một cuộc tấn công điểm. Anh ta hoặc cô ấy chỉ là đi sau khi máy tính của tôi. -Điều đó là không thể. Có mã hóa mỏ cấp của Bộ Quốc phòng. Nó sẽ mất vài tháng để get-- -Hey, Đó là những gì? Một trò chơi video? -Không Tony, chúng tôi đang bị tấn công. -Nếu Họ nhận được trong máy tính của Abby, toàn bộ mạng NCIS là tới. -Tôi Không thể ngăn chặn anh ta. Làm điều gì đó McGee. -I've Bao giờ thấy mã như thế này. -Oh. -Where Của nó đi? Abby? -Tôi Đã không làm bất cứ điều gì. Tôi nghĩ bạn đã làm. -Không. -Tôi đã làm. [END PLAYBACK] DAVID J. Malan: The best một phần là hai người gõ trên bàn phím cùng một lúc. Vì vậy, đó là nó cho CS50. Chúng tôi sẽ dính vào xung quanh cho giờ làm việc. Và chúng ta sẽ thấy bạn thời gian tới. [MUSIC CHƠI - "THEME Seinfeld"] Đây là CS50. Tôi không muốn trở thành một cướp biển. SPEAKER 2: Yarr David. Đó là một đôi bạn tốt được mặc. Nhiều lái tàu theo chiều gió trong làn đó.