DOUG LLOYD: Trong video này, chúng ta đang đi để nói về các Control Transmission Protocol, giao thức TCP. Nếu bạn chưa xem video trên giao thức Internet, IP, bạn có thể muốn làm như vậy trước khi xem video này bởi vì cả hai đều khá tương quan với nhau. Vì vậy, các giao thức internet, một lần nữa, một bản tóm tắt nhanh chóng, đó là giao thức mà di chuyển thông tin từ một máy gửi đến một nhận máy qua mạng. Vì vậy, TCP là gì? Trong khi chỉ cần di chuyển từ một gửi máy tính đến máy nhận, không phải là toàn bộ câu chuyện. Chúng tôi cũng biết rằng chương trình của chúng tôi, máy tính của chúng tôi, ví dụ, đang chạy nhiều chương trình, và có nhiều dịch vụ chạy trên các máy. Và như vậy, nếu chúng ta muốn có được một gói tin, hoặc thông tin vào một chương trình cụ thể, trên một máy cụ thể, chúng ta cần biết thêm thông tin hơn là chỉ IP nào cho phép chúng tôi để có được thông tin từ điểm A đến điểm B. Vì vậy, TCP có thể được coi như chỉ đạo các gói tin để chương trình chính xác, hoặc chính xác dịch vụ, trên máy nhận. Và do đó, điều quan trọng là để, như bạn có thể mong đợi, biết đâu nó phải đi, và những gì các gói tin là cho cùng một lúc. Và như vậy, thường xuyên, khi bạn nói về Giao thức điều khiển truyền dẫn, TCP, bạn thực sự thường nghe nó trong bối cảnh, TCP giảm IP, hoặc chỉ TCP / IP. Hai giao thức là như vậy quan hệ với nhau rằng, họ cơ bản xử lý như một đơn vị duy nhất. Nhưng họ là hai giao thức riêng biệt mà làm hai việc riêng biệt. Một lần nữa, IP là chịu trách nhiệm nhận nó từ một máy khác. Và TCP là trách nhiệm nhận được nó vào chương trình chính xác, hay đúng dịch vụ trên một máy. Và nó làm một cái gì đó IP khác mà không làm, đó là giao hàng bảo lãnh. Vì vậy, nếu bây giờ chúng ta vài IP của một máy tính giải quyết với cái gọi là số cổng, và một số cổng là một cách cụ thể dịch vụ, hoặc tiện ích, hay chương trình, được xác định trên một máy. Nếu bây giờ chúng ta có một IP địa chỉ cộng thêm một số cổng, bây giờ chúng ta có thể xác định duy nhất một dịch vụ cụ thể chạy trên một máy tính cụ thể. Vì vậy, đó là lý do tại sao TCP và IP là vì vậy thường xuyên quan hệ với nhau, vì rằng số cổng ngày của riêng mình không thực sự có ý nghĩa gì nếu bạn cần một số cổng, và máy tính rằng bạn đang nói về. Máy gì là nghĩa vụ phải được sử dụng cổng cụ thể này, ví dụ. Một thứ khác mà TCP làm, như Tôi nói, là nó đảm bảo giao hàng. Vì vậy, ngoài xác định số cổng, nó cũng chỉ ra có bao nhiêu các gói dữ liệu, giao thức Internet, IP, đã chia dữ liệu vào. Và nó ra lệnh cho những gói tin để họ có thể được xây dựng lại trên nhận máy, ngay cả khi họ received-- trong một thứ tự khác nhau hơn so với họ đã được gửi. Mà có thể xảy ra bởi vì IP là một giao thức kết nối, và vì vậy các gói khác nhau có thể mất con đường khác nhau thông qua hệ thống. Một số các số cổng rất thường được sử dụng, và họ đã được chuẩn hóa trên tất cả các máy tính, như thế, khá nhiều hàng nhà sản xuất máy tính hiện nay. Vì vậy, một cái gì đó gọi là FTP, các giao thức truyền file, được sử dụng để truyền tải các tập tin, như bạn mong đợi, từ một máy khác, sử dụng cổng 21 thông thường. Email, SMTP, sử dụng cổng 25. DNS, hệ thống tên miền, mà chúng tôi nói đến trong mồi internet của chúng tôi video, sử dụng cổng 53. Nếu bạn đã bao giờ xem web, bạn khá nhiều luôn luôn sử dụng cổng 80, trừ khi bạn duyệt web an toàn, duyệt web an toàn, sử dụng cổng 443. Vì vậy, TCP / IP quá trình này là gì? Điều gì đang xảy ra với cả hai các giao thức này với nhau? Vâng, chúng ta hãy nói về nó. Khi một chương trình muốn gửi dữ liệu, TCP giúp phá vỡ nó thành nhiều phần, và giao tiếp các gói tin cho phần mềm nối mạng của máy tính. Vì vậy, nó lấy dữ liệu và nó kết thúc tốt đẹp các thông tin xung quanh nó mà chỉ ra cổng gì được cho là để đi đến, và theo thứ tự nào đó gói tin là trong số tất cả. Vì vậy, hãy gói một trong 10, hai 10, ba 10, và như vậy. IP được những khối dữ liệu đó đã được bao bọc với TCP, và kết thúc tốt đẹp hơn thông tin về nơi gói tin là vụ phải đi. Chúng ta có thể gọi đây là IP lớp xung quanh các gói tin. Vì vậy, nó là loại, giống như, một trong những con búp bê làm tổ. Chúng tôi có các dữ liệu trong các giữa, và sau đó TCP trên đầu, nói cho nó nơi dữ liệu bên trong của TCP là nghĩa vụ phải đi, để những gì cổng hoặc những dịch vụ trên một máy. Xung quanh đó là các lớp IP. Địa chỉ IP gì, những gì máy tính, là thực sự nhận được điều này. Vì vậy, sau đó, mà gói tin đó là được gói với tất cả các layer, được gửi thông qua giao thức internet thông qua hệ thống các thiết bị định tuyến, nhận từ điểm A đến điểm B. Khi máy, hoặc thiết bị nhận, được nó, nó nhìn vào IP lớp, nó nói, yup đó địa chỉ IP của tôi, nên phải mất off, loại vết nứt trứng, và cất cánh, lớp IP. Sau đó, nó thấy rằng có một lớp TCP, và nó nói, OK, hình như đây là đi đến cổng x, y hoặc cổng. Và rõ ràng nó là số gói tám trong số 15. Vì vậy, đó là tốt để biết. Vì vậy, sau đó nó có thể mất thông tin đó, đi ra khỏi lớp TCP bây giờ, khi biết rằng đó là cho cảng x, và đó là số gói tám, và nhận được dữ liệu bên trong. Và nó có thể chuẩn bị dữ liệu để được tổ chức theo cách chính xác. Và một khi tất cả các dữ liệu được nhận, TCP có thể bàn tay nó đi vào đúng dịch vụ, và nói, ở đây bạn đi. Dưới đây là những dữ liệu mà bạn nhận được. Quá trình đó có thể trông một cái gì đó như thế này. Vì vậy, hãy gửi một email từ một người gửi đến người nhận. Và chúng ta hãy nói điều này email là khá nhỏ, vì vậy chúng tôi chỉ cần để phá vỡ nó thành bốn gói tin, và chúng tôi sẽ gọi họ A, B, C, và D. Vâng, chúng tôi muốn chuyển mà gói tin đầu tiên điều gì xảy ra? Vâng, chúng tôi đi mà đoạn dữ liệu, dữ liệu là một phần của gói A, và xung quanh mà chúng ta đang đi để bọc nó bằng một lớp TCP. Email, bạn có thể nhớ lại, được gửi qua cổng 25, và chúng tôi có bốn khối dữ liệu, ở đây, chúng ta sẽ được sử dụng, và đây là lần đầu tiên của họ. Vì vậy, có lẽ lớp TCP của chúng tôi có chứa thông tin về, tốt, chúng tôi đi đến cổng 25, và điều này là số gói một trong bốn. Xung quanh đó, vì vậy bây giờ chúng tôi có tất cả những gì thông tin đi kèm với nhau, chúng ta sẽ nói nơi chúng tôi muốn nó để đi, những gì máy tính, địa chỉ IP là vụ để có được gói tin này. Và đó là một phần của lớp IP. Và có thông tin khác trong đó là tốt, chẳng hạn như địa chỉ trở trong trường hợp bị sai, nó biết nơi để gửi thông tin trở lại, và như vậy. Nhưng lớp IP đi xung quanh tất cả điều đó. Đó là toàn bộ điều là kèm với nhau, là một đơn vị lớn, và gửi thông qua một chuyển IP. Vì vậy, nó được định tuyến thông qua các bộ định tuyến mạng, sử dụng giao thức internet. Và người nhận nhận được toàn bộ điều. Và sau đó nó có thể bắt đầu tháo gỡ những gì đang xảy ra ở đây. Nó nhìn vào các lớp IP, lớp bên ngoài của dữ liệu này, và nói, vâng, đó là IP của tôi địa chỉ để chúng ta có thể loại bỏ điều đó. Tôi có thể, loại, bỏ qua nó, không cần nó nữa, và nó có thể nhìn một cách sâu hơn. Nó thấy rằng, OK, đây là dữ liệu mà được dự định sẽ nhận được trên cổng 25. Đó dường như là phần đầu tiên của bốn. Vì vậy, tôi sẽ giữ cho rằng trong tâm, và nhìn vào các dữ liệu, và khe cắm nó gần nơi Tôi nghĩ rằng nó sẽ đi. Bây giờ, vì các giao thức internet nó không nhất thiết phải là trường hợp rằng các gói tin tiếp theo nhận được, là hai gói. Trong thực tế, tiếp theo điều nhận được có thể là số gói ba vì các gói tin mất con đường khác nhau vì giao thông khác nhau trên mạng. Và như vậy, tôi sẽ không đi thông qua sơ đồ xây dựng nó lên một lần nữa, nhưng gói ba di chuyển, bị tước đi của tất cả các lớp của nó, là Lớp IP, lớp TCP, và các dữ liệu được đặt vào đúng chỗ. Và sau đó, chúng ta hãy nói nó nhận gói bốn. Bây giờ chúng ta hãy nói, đó là nó, nó không nhận được bất kỳ dữ liệu hơn. Nó sẽ làm gì? IP không làm bất cứ điều gì cho chúng ta. Nhưng TCP nào. TCP biết, tốt, tôi đã nhận được một trong bốn, ba trong số bốn, và bốn trong số bốn. Tôi không nhận được bất kỳ dữ liệu hơn. Vì vậy, một cái gì đó đã đi sai. Nhưng tôi có thể đảm bảo giao hàng. Tôi biết gói đó số hai là mất tích. Và như vậy TCP bây giờ có thể tạo một yêu cầu, loại, theo hướng ngược lại. Bundling lên yêu cầu của mình trong nhiều cách giống nhau, và gửi nó qua IP, trong đó, tôi biết, có thể dẫn đến một số loại vòng lặp vô hạn của tất cả mọi người bỏ các gói tin trên đường. Nhưng nó đủ để nói rằng TCP nói, tôi là thiếu một gói tin. Tôi cần gửi thông tin lại cho người gửi. May mắn thay địa chỉ IP của người gửi, loại, đóng gói trong các lớp IP. Đó là một phần of-- đó là sự trở lại địa chỉ trên phong bì. Và nói, tôi là thiếu số gói hai, bạn có thể xin vui lòng gửi lại nó. Khi người gửi nhận thông tin, nó không phải gửi toàn bộ email nữa. Nó chỉ cần gửi cho cá nhân mảnh của nó mà đã mất tích, vì vậy chúng tôi có thể gửi gói số hai. Và khi nó được nó, bây giờ TCP nói, Tôi có tất cả bốn phần của dữ liệu mà tôi cần. Vì vậy, tôi có thể lắp ráp chúng lại với nhau, và lấy toàn bộ khối này thông tin và vượt qua nó cùng với cổng 25, nơi nó sẽ được hiểu như là một email. Và that-- theo cách này, chúng tôi đã Bây giờ gửi một email từ người gửi đến người nhận bằng cách sử dụng giao thức TCP / IP. Vì vậy, như tôi đã nói, nếu vào thời điểm bất kỳ trên đường đi một cái gì đó đã đi sai, TCP có thể đối phó với nó. Nó có thể làm cho một yêu cầu mà thông tin được gửi lại cho nó. Và nó có thể tái tạo lại các tin nhắn. Và một khi nó được xây dựng lại các tin nhắn từ tất cả các gói tin nó nhận được, sau đó nó có thể sắp xếp chúng và cung cấp cho họ đến đúng dịch vụ. Vì vậy, đó là TCP trong một nutshell. Đó là cách chúng tôi đảm bảo cung cấp thông tin. Ghi TCP thường xuyên làm việc với IP, do đó, hai giao thức này thực sự đi tay trong tay. Chúng tôi thảo luận về chúng trong một số video ở đây bởi vì họ làm những điều khác nhau, nhưng họ rất liên quan đến nhau, họ bạn thường sẽ sử dụng chúng với nhau. Tôi Doug Lloyd. Đây là CS50.