DOUG LLOYD: Nếu bạn đã xem Video mồi internet của chúng tôi, Tôi để lại một chút của một cliffhanger bằng cách nói chuyện về internet và làm thế nào nó là một hệ thống các giao thức. Vâng, chúng ta hãy nói về đầu tiên của những giao thức thực sự bao gồm internet. Và điều thú vị là, đó là được gọi là giao thức Internet, mà chúng ta thường gọi là IP. Vì vậy, internet, như tôi đã nói, là một mạng kết nối với nhau, một internet, đó là thực sự chỉ là một vài mạng đan xen với nhau và đồng ý bằng cách nào đó để giao tiếp với nhau. Này là gì bằng cách nào đó tôi đang nói về? Vâng, đây là giao thức Internet. Điều này ra lệnh như thế nào thông tin truyền từ điểm A đến điểm B. Và điều này thật kỳ một điều kiện của tham gia vào mạng lưới internet đồng nghĩa với việc làm theo điều này giao thức khi nhu cầu thông tin được di chuyển từ điểm A đến điểm B. Vì vậy, ở cuối đó Video mồi internet, Tôi thấy hình ảnh này của những gì mà internet đã. Và trên một quy mô nhỏ, đây là thực sự có lẽ là khá chính xác. Điều này có thể là như thế nào ba mạng thực sự nói chuyện với nhau. Nhưng đó là một chút sai lầm. Và lý do đó là một chút gây hiểu lầm là because-- nếu tôi chỉ đánh số các mạng cho Vì lợi ích của sự thuận tiện ở đây và chúng ta thoát khỏi mọi thứ khác và chỉ tập trung vào các networks-- nó một chút bối rối vì nó ngụ ý rằng cả ba mạng có một kết nối với nhau. Một được nối vào hai. Hai là kết nối với ba. Và ba được kết nối với một. Và khi tôi nói về một kết nối ở đây, tôi nói về một vật lý, kết nối có dây. Chúng tôi có dây. Nhưng nó thực sự không thực tế cho dữ liệu được truyền không dây trên một quy mô lớn. Và như vậy tại một số điểm, chúng tôi thực sự dựa trên đường dây điện thoại technology-- dây, dây cáp quang, công nghệ khác nhau rằng có thể chất kết nối điểm A đến điểm B. Và trên một quy mô nhỏ như this-- này có thể là chính xác, nhưng như các hình ảnh được một chút lớn hơn, chúng ta hãy nay tưởng tượng chúng ta có sáu mạng khác nhau. Nếu đó là sự thật, bây giờ chúng tôi có một cái gì đó như thế này cho tất cả các mạng được kết nối với các mạng khác. Và nếu bạn có cái nhìn, mỗi mạng có năm mũi tên kết nối với nó. Vì vậy, tất cả mọi thứ được kết nối để tất cả các mạng khác. Chúng tôi chỉ có sáu mạng ở đây, và đã nhìn vào bao nhiêu dây chúng ta cần phải sử dụng, phải không? Và internet bao gồm nhiều hơn sáu mạng. Chúng tôi không thể đủ khả năng để dây mỗi mạng cho từng mạng khác, đặc biệt là xem xét một số các mạng lưới trải rộng đại dương, phải không? Nếu chúng ta đang cố gắng để kết nối với một mạng ở châu Á hoặc châu Âu, chúng ta sẽ phải trải rộng toàn bộ đại dương. Chúng ta sẽ cần đến sử dụng dây điện tại một số điểm, nhưng chúng tôi muốn giảm thiểu Số lượng dây dẫn chúng tôi thực sự sử dụng. Chúng tôi không muốn gửi một triệu dây bên kia đại dương, vì họ tiêu tốn hàng triệu USD mỗi người để nằm xuống. Và rất nhanh chóng, chúng tôi sẽ không thể đủ khả năng internet nữa. Vì vậy, chúng ta phải có một cách cho tất cả các mạng để nói chuyện với mọi khác mạng nếu không chúng ta có miếng của internet được ngắt kết nối từ phần khác của Internet. Và đó không phải là những gì chúng ta muốn. Nhưng chúng tôi không muốn có tất cả có dây với nhau. Và đây là nơi mà các bộ định tuyến trở lại vào chơi. Chúng tôi có thể sử dụng các bộ định tuyến trong các cách sau đây. Điều gì nếu thay vì mỗi mạng được thể chất kết nối với tất cả các mạng khác, chúng tôi có những mảnh trung gian, nơi các mạng được kết nối để các tổ chức trung gian, đó được kết nối với một vài mạng. Vì vậy, thay vì có một kết nối đến hai, ba, bốn, năm, sáu, có thể một kết nối với một router, mà có lẽ kết nối để một hoặc hai trong số những mạng, nhưng cũng có thể kết nối đến khác thiết bị định tuyến, mà còn sẽ kết nối với các mạng khác. Và công việc của router is-- nó chứa thông tin gọi là một bảng định tuyến rằng mệnh lệnh mà làm Tôi đi nếu tôi thấy một địa chỉ IP cụ thể không? Nếu tôi thấy một địa chỉ IP bắt với bốn, tôi sẽ đi theo con đường này. Nếu tôi nhìn thấy địa chỉ IP bắt đầu với 12, tôi sẽ đi theo cách đó. Chúng ta không cần phải được kết nối thể chất để có số mạng bốn hoặc số mạng 12 trong ví dụ này. Chúng tôi chỉ biết nói chung nơi mà chúng tôi muốn đi. Và nếu bạn nghĩ về nó, đây là loại tương tự với khái niệm đệ quy mà chúng ta đã nói về việc khi nào chúng tôi đã nói về nó trong C. Tôi sẽ không để kết nối bạn chính xác nơi bạn muốn đi. Tôi chỉ cần đi để di chuyển cho bạn một bước gần hơn nơi bạn muốn đi. Và tôi sẽ cho người khác đối phó với giải quyết phần còn lại của vấn đề. Tôi sẽ chỉ giải quyết điều này mảnh nhỏ của các vấn đề và trì hoãn việc còn lại của nó cho người khác. Vì vậy, thông tin định tuyến là thực sự loại tương tự như đệ quy. Nếu đó là một khái niệm rằng bạn hiểu tốt, có lẽ tương tự mà có thể giúp. Vì vậy, chúng ta hãy nhìn vào Ví dụ mạng này một lần nữa và cho rằng, một lần nữa, chúng ta sẽ sử dụng những người cùng sáu mạng, từ một đến sau. Vì vậy, chúng ta hãy chỉ nói rằng mọi Địa chỉ IP trên một mạng bắt đầu với một dấu chấm một cái gì đó. Và chúng ta sẽ nói rằng có một số điều khác mà Chương trình khuyến mại với cách tất cả các hệ được kết nối với mạng một. Chúng tôi chỉ quan tâm đến kết nối tất cả các các mạng với nhau trong một mạng Internet. Vì vậy, mỗi thiết bị đó là kết nối vào mạng một có một địa chỉ IP bắt đầu với một dấu chấm và sau đó ba con số khác. Đây là một sự tổng quát của cách thức điều thực sự làm việc. Nó khá hơn một chút chính xác hơn này. Nhưng điều này sẽ cho bạn một ý tưởng chung của những gì Internet Nghị định thư được thực sự làm. Vì vậy, đây là sơ đồ chúng ta có trước. Đây là hệ thống mà là không bền vững. Thậm chí sáu, điều này có thể là OK. Nhưng nếu chúng ta có được đến 10 hoặc 20 hoặc 50, chúng tôi sẽ là nói dối rất nhiều dây. Và 50 vẫn là cũng không ngay cả những nổi của tảng băng như số lượng các mạng chúng ta có. Vì vậy, mô hình này là không bền vững. Chúng tôi không thể dính với điều này. Vì vậy, hãy thay vì áp dụng mô hình này, nơi chúng ta thoát khỏi của tất cả các dây giữa mạng và chúng tôi thêm các router. Vì vậy, những hộp màu vàng đại diện cho các bộ định tuyến. Và công việc của họ là để di chuyển thông tin chung gần nơi nó phải đi. Và có lẽ đây là những kết nối rằng các mạng có. Và có lẽ đó là những bảng được xây dựng vào router. Vì vậy, nếu chúng ta chỉ bắt đầu bằng cách tìm kiếm tại một mạng, ví dụ, về cơ bản những gì nó nói là nếu Tôi đã từng nhìn thấy một địa chỉ mà không bắt đầu bằng một one-- đó là những gì dấu chấm than một hoặc các bang ai ở đó, không one-- tôi sẽ để vượt qua nó đi với một router. Và từ đó, các bộ định tuyến có thể đưa ra quyết định. Các router nói nếu tôi thấy một, tôi sẽ di chuyển vào mạng số một. Đó là mũi tên màu xanh hướng tới bên trái ra khỏi cái hộp trên bên trái. Nếu tôi thấy một two-- đó mũi tên loại của nhóm để phía trên bên phải hướng tới các network-- tím nếu tôi thấy một địa chỉ IP bắt đầu với một hai, Tôi sẽ đi về phía các mạng hai. Nếu một trong ba, bốn, một năm, hay một tôi nhìn thấy six-- đó mà mũi tên màu đỏ sắp ra của phía trên bên trái router-- Tôi không kết nối với ba, bốn, năm, hoặc sáu. Nhưng tôi biết ai đó là người hay người là một chút ít gần gũi hơn để có. Vì vậy, tôi chỉ cần đi để nói, mỗi khi tôi nhìn thấy một địa chỉ IP bắt đầu với ba, bốn, năm, hoặc sáu, tôi chỉ sẽ gửi nó tới router. Vì vậy, tôi sẽ di chuyển nó một chút gần gũi hơn với nơi đó là nghĩa vụ để đi và để cho rằng router đối phó với các vấn đề. Và như bạn có thể see-- nếu bạn muốn dừng lại ở đây và trace-- bạn có thể tới mọi điểm khác trong mạng từ bất cứ nơi nào bạn đang có. Tất cả sáu mạng vẫn có thể kết nối với tất cả các mạng khác nhưng họ không thể chất kết nối nữa. Chúng tôi hiện các bước trung gian. Bây giờ, tất nhiên có một thương mại giảm của tốc độ, phải không? Nếu một lần trực tiếp kết nối đến sáu, chúng tôi sẽ không phải đi qua hai router trên đường đi. Vì vậy, chúng ta có thể có được kết nối nhanh hơn một chút. Nhưng có lẽ đó thương mại-off là giá trị nó, phải không? Nếu nó sẽ là như vậy tốn kém về chi phí thực tế, đô la và xu, để cơ thể dây tất cả các mạng với nhau, có thể là một chút của một suy giảm trong tốc độ là OK. Chúng tôi có thể chịu đựng được điều đó. Vì vậy, một lần nữa, trong ví dụ mà chúng ta chỉ nói về, không ai trong số các mạng kết nối trực tiếp với nhau tất cả. Có thể có been-- có thể trong ví dụ mà chúng ta có thể làm điều đó để có lẽ mạng một và hai là kết nối trực tiếp. Và đó sẽ là OK. Một số mạng có thể chất kết nối với các mạng khác. Nhưng họ không phải là tất cả kết nối với nhau. Họ dựa trên routers-- trong example-- đặc biệt này để phân phối các thông tin liên lạc từ điểm A đến điểm B. Trên một scale-- nhỏ như những gì chúng ta đang nói về here-- cấu hình này thực sự có thể có nhiều hiệu quả hơn là chỉ có kết nối trực tiếp. Nhưng trên một quy mô lớn, chúng ta có thể quy mô hệ thống tốt hơn rất nhiều. Nó thực sự sẽ làm giảm chúng tôi chi phí của cơ sở hạ tầng mạng có router trung gian mà công việc nó là chuyển lưu lượng từ người gửi đến người nhận, từ điểm A đến điểm B, như trái ngược với hệ thống dây điện tất cả mọi người cùng với nhau. Vì vậy, chúng ta hãy nhìn vào một ví dụ về thông tin đi du lịch bằng cách sử dụng giao thức Internet này. Hãy nói rằng tôi là thể chất nằm ở IP 1.208.12.37 vì vậy tôi tồn tại ở đâu đó trên một mạng. Và tôi muốn gửi một tin nhắn cho bạn. Và bạn đang trên năm mạng tại 5.188.109.14. Địa chỉ IP của bạn đặc biệt không quan trọng, nhưng trong ví dụ này chúng ta đang nói về khái quát này về những gì các giao thức Internet là tất cả trong khoảng. Bạn đang ở trên mạng năm, và tôi đang trên một mạng. Như bạn có thể thấy, chúng tôi không kết nối với nhau ở tất cả. Vì vậy, tôi bắt đầu ra. Và tôi muốn gửi cho bạn một tin nhắn. Và như vậy bằng cách nào đó tôi giao tiếp rằng thông điệp tới router. Các bộ định tuyến là một trong đó thực sự có địa chỉ IP. Và nó đang tìm kiếm tại nơi nó phải đi. Chúng tôi đang đi đến năm chấm một cái gì đó. Vì vậy, bây giờ tôi sẽ bắt đầu sử dụng my-- hoặc router, đúng hơn, là sẽ bắt đầu sử dụng nó bảng định tuyến để chuyển thông tin dọc. Nó thấy rằng năm không phải là một, vì vậy nó nói rằng tôi sẽ vượt qua nó để anh chàng này. Sau đó, anh chàng này đã đưa ra quyết định. Tôi sẽ đi đâu? Vâng, nó không phải là một, vì vậy tôi không sẽ di chuyển đến một mạng. Và nó không phải là một hai. Tôi sẽ không để di chuyển với mạng hai. Nó bắt đầu với một năm. Tôi không kết nối với năm, router này nói. Và vì vậy tôi chỉ cần đi để vượt qua nó đi đối với: Tôi sẽ đi theo con đường này. Đây là nơi threes và bốn chân và fives và sixes đi. Và tôi sẽ cho rằng thỏa thuận chàng trai với nó. Tôi sẽ nhận được nó gần hơn một chút đến nơi mà nó phải đi. Tôi biết đó là nghĩa vụ để đi trong đó hướng chung. Nhưng có lẽ anh chàng có thể đối phó với nó. ĐƯỢC. Vì vậy, anh chàng trông. Ông nói, OK, IP này địa chỉ bắt đầu với một năm. Vâng, tôi đang kết nối với ba và sáu, vì vậy tôi không thể nhận được thông báo trực tiếp nơi nó cần phải đi. Nhưng mà router khác ở đó, tôi biết nếu tôi gửi nó bằng bốn chân và fives, nó có thể xử lý những người. Vì vậy, nó sẽ chuyển dọc xuống con đường. Và sau đó router này nói, tốt, tôi kết nối với các mạng bốn và năm. Vì vậy, có, tôi có thể giúp bạn. Tôi sẽ lấy địa chỉ IP của bạn bắt đầu với một năm. Tôi sẽ cho nó vào mạng năm. Các mạng năm sẽ làm một số công việc trên kết thúc của nó và cung cấp cho các tin nhắn cho bạn. Và bây giờ chúng tôi đã thành công truyền một tin nhắn từ tôi để bạn sử dụng giao thức Internet. Một lần nữa, rất tổng quát cho các mục đích minh hoạ như những gì đang xảy ra. Nhưng đó là khá nhiều như thế nào Nghị định thư Internet hoạt động. Các router biết nói chung là nơi để gửi nó và sẽ gửi một bước dọc theo cách, nhận được gần hơn và gần gũi hơn đến đích của nó cho đến khi một Router được kết nối vật lý với mạng hoặc địa chỉ hay bất cứ điều gì trong câu hỏi và cung cấp cho nó ở đó. Bây giờ, nói chung, ngoại trừ thực sự, thực sự nhỏ, tin nhắn nhỏ, nó sẽ không gửi nó là một trong những lợi thế lớn của dữ liệu. Nếu tôi gửi cho bạn một email-- một email rất dài, say-- nó không phải đi để mất rằng toàn bộ email, bó nó lên trong một quả bóng hoặc một gói hoặc bất cứ điều gì, và gửi toàn bộ mà điều xuống mạng. Trước hết, việc gửi thông tin cùng mạng là đắt. Nó thêm lên. Và lớn hơn chunk, tốn kém hơn nó là để di chuyển tất cả các bước của con đường. Và nếu có bằng cách nào đó chậm lại và sau đó có này giant-- loại giống như nếu bạn đang lái xe trên đường cao tốc và có xe tải khổng lồ này loại chặn đường và bạn không thể có được xung quanh nó trên một trong hai làn đường vì nó loại lan rộng ra. Nó làm chậm tất cả mọi người khác xuống đằng sau nó. Nhưng những chiếc xe nhỏ, nếu họ là tất cả những chiếc xe nhỏ, họ có thể có thể di chuyển xung quanh, nếu tương tự mà loại giúp một chút. Vì vậy, một khối lớn trong hệ thống có thể tất cả mọi người thực sự chậm khác xuống. Và vì vậy những gì IP là sẽ làm được chia thành các gói dữ liệu này. Nó sẽ mất email lớn này hoặc chuyển FTP hoặc truyền tải file, hoặc có lẽ tôi đang làm cho một yêu cầu một trình duyệt web bởi vì tôi muốn có một hình ảnh của mèo. Và nó sẽ đi mà yêu cầu hoặc email hoặc tập tin đó và chia nó ra thành nhiều mảnh và gửi tất cả các miếng riêng biệt. Vì vậy, trong thực tế, tôi đang làm đường cao tốc với rất nhiều chiếc xe nhỏ, mà có thể tất cả di chuyển thay vì một chiếc xe tải lớn có thể, nếu có điều gì sai, điều tiết giao thông cho mọi người khác. Một tác dụng phụ của điều này là nếu có một số loại thảm khốc thất bại và có điều gì sai và các gói được giảm xuống. Một cái gì đó là thất bại và tin nhắn không thể được truyền đạt. Các router có thể có quá nhiều thứ đang diễn ra trong. Nó không thể sắp xếp mọi thứ. Và do đó, nó chỉ theo nghĩa đen đã đánh rơi nó. Đó là loại tương tự, phải không? Nó có rất nhiều điều đang xảy ra. Nó đi qua thông tin từ điểm A tới điểm B. Chúng tôi không phải chỉ có hai người trên internet, vì vậy nó phải xử lý rất nhiều lưu lượng truy cập. Và nếu nó không có đủ tay và nó không thể tìm ra những gì nó làm, nó chỉ có thể thả một cái gì đó. Vì vậy, nó có thể làm một cái gì đó khác. Nó đã quá nhiều đang xảy ra. Nếu chúng tôi đã có thông báo của chúng tôi là một trong rất lớn chặn và đó là những gì đã giảm, bây giờ chúng tôi phải gửi tin nhắn lại. Và bây giờ chúng tôi có thể gây tắc đường một lần nữa. Và chúng ta chạy các nguy cơ mà khối lớn đang được giảm xuống một lần nữa. Nhưng nếu những dữ liệu được chia thành các gói dữ liệu và chúng tôi thả một trong những, đó là ít hơn rất nhiều tốn kém để gửi mà gói một lần nữa như trái ngược để điều toàn bộ một lần nữa. Vì vậy, IP là chịu trách nhiệm nhận thông tin từ điểm A đến điểm B và cũng phá vỡ Thông tin thành miếng nhỏ do đó mạng không phải là quá bị đánh thuế. IP cũng được biết đến như một giao thức kết nối. Có không nhất thiết phải là một con đường được xác định từ người gửi đến người nhận hoặc ngược lại. Bây giờ, trong ví dụ này, chúng tôi đã nói chuyện về, có thật là chỉ có một cách để có được tất cả các mạng. Vì vậy, trong này đặc biệt minh họa, có thật là một con đường được xác định từ điểm A đến điểm B. Nhưng chúng ta có thể thay đổi điều đó bằng cách chỉ cần làm một sự sửa đổi để hai router bên trái bằng cách thêm này điều kiện để các bảng định tuyến. Bây giờ nhận thấy rằng từ các bộ định tuyến trên cùng bên trái, thực sự có hai cách để đối phó với bốn hoặc một địa chỉ IP năm. Nó có thể đi xuống phía dưới bên trái router, hoặc có thể đi sang phải, để đúng router. Nó có nhiều lựa chọn. Và điều này thực sự loại một điều tốt bởi vì nó làm cho chúng tôi mạng phản ứng nhanh hơn. Nếu cho example-- nó loại giống như một GPS. Nếu bạn đã từng lái xe trên đường cao tốc và đột nhiên GPS của bạn cảnh báo bạn rằng giao thông ở phía trước, bạn muốn tránh nó nếu bạn có thể. Và như vậy bạn có thể tính toán lại đường đi của bạn. Và một mạng router, trong Ngoài việc có thông tin về nơi các gói tin nên đi hoặc nơi dữ liệu nên đi, cũng có loại xung chung này vào trạng thái của mạng lưới địa phương của mình. Chuyện gì sẽ xảy ra nếu tôi gửi nó xuống con đường này so với con đường này? Và như vậy trong ánh sáng của giao thông nặng tình huống trên mạng, có thể mọi thứ sẽ được định tuyến một nhiều hơn cách không hiệu quả hoặc một cách tổng quát hơn cách không hiệu quả, bởi vì nếu chúng ta đi theo cách thông thường, có đi có rất nhiều lưu lượng truy cập. Xa lộ được hoàn toàn bị kẹt. Vì vậy, có lẽ những gì chúng ta sẽ làm là thay vì mất con đường phụ, mà thông thường sẽ phải mất một rất nhiều thời gian, nhưng không ai có của thực sự sử dụng những con đường phụ. Và vì vậy chúng tôi có thể đường các gói dữ liệu của chúng tôi theo cách đó. Vì vậy, không phải tất cả các gói của một đoạn lớn của dữ liệu có thể đi theo con đường tương tự từ đầu đến cuối. Và mạng lưới của chúng tôi trở nên rất nhiều phản ứng hơn nếu bảng định tuyến của chúng tôi cho phép có để có nhiều lựa chọn cho đi đâu. Chúng tôi không phụ thuộc vào một trong những xe di chuyển ra khỏi con đường. Chúng ta có thể nhận ra các đường cao tốc tại lối ra tiếp theo và có một con đường khác nhau. Và do đó, các loại giao thức Internet của không một chút về điều đó, quá. Vì vậy, đó là những điều cơ bản của Nghị định thư Internet. Nhưng có một nhiều hơn vấn đề để giải quyết, mà là những gì sẽ xảy ra nếu chúng ta thả một gói? Làm thế nào để chúng ta biết chúng ta đang đi để gửi gói tin đó một lần nữa? Bên phải? Vâng, Internet Protocol không đảm bảo giao hàng. Chúng tôi đang có được tùy trên một giao thức khác để đối phó với điều đó được gọi là Transmission Control Protocol, giao thức TCP. Và chúng ta sẽ nói chuyện về Transmission Control Nghị định thư trong các video tiếp theo. Tôi Doug Lloyd. Đây là CS50.