Saturday, August 27, 2005

Các bài báo kinh điển của KHMT (6)


Bài báo hôm nay là của các tiến sĩ Vinton CerfRobert Kahn, hai người cùng lãnh giải Turing năm 2004 (công bố tháng 2 năm 2005):

V. Cerf and R. Kahn, A Protocol for Packet Network Interconnection. IEEE Transactions on Communications COM-22, pp. 637-641 , 1974.

Đầu những năm 1960, các ý tưởng khởi điểm về mạng chuyển gói (packet switched networks) dẫn đến mạng ARPANET do DARPA tài trợ. Các nodes trên ARPANET chạy NCP (Network Control Protocol), bắt đầu năm 1970. Cùng năm này packet radio network đầu tiên - ALOHA Net -
bắt đầu làm việc. Cùng với sự ra đời của ứng dụng phổ biến nhất trên Internet - email - cuối 71, đầu 72, và phác thảo ý tưởng về Ethernet, Robert Kahn nhận rõ sự cần thiết của việc nối các mạng khác nhau với nhau để chia sẻ tài nguyên và thông tin. Kahn phác thảo ý tưởng về một cấu hình mạng mở (open networking architecture) trong đó các mạng với kiến trúc, cấu hình máy, hệ điều hành ... khác nhau có thể nối kết với nhau. Cái mạng của các mạng này được gọi là Internet.

NCP không đủ mạnh để làm việc này. Kahn phát triển giao thức TCP (Transmission Control Protocol), với các thành phần chính như sau:

  • Các mạng con, sau khi nối kết, không phải thay đổi gì (protocol, hệ điều hành, ...)
  • Truyền thông sẽ theo kiểu cố hết sức (best effort), nghĩa là bên gửi và bên nhận chịu trách nhiệm truyền lại nếu dữ liệu bị mất hoặc hư hỏng, Internet không chịu trách nhiệm làm việc này.
  • Các gateways sẽ liên kết các mạng con lại với nhau, chịu trách nhiệm chuyển dạng tín hiệu, dạng dữ liệu từ mạng này sang mạng khác.
  • Mạng Internet mang tính phân bố (distributed) cực cao.

(Chú ý rằng ngày nay cấu trúc của Internet y nguyên như thế.)

Còn khá nhiều vấn đề kỹ thuật cụ thể phải giải quyết: xử lý mất packets, packets đến sai thứ tự, cung cấp dịch vụ đáng tin cậy, cách đánh địa chỉ các máy và các tiến trình trong các máy, flow control, giao tiếp với các hệ điều hành khác nhau, vân vân và vân vân.

Đầu năm 1973, Kahn mời thêm Cerf, người rất quen thuộc và góp phần thiết kế và phát triển NCP, để cùng phát triển TCP. Đến tháng 9 năm 1973, Cerf và Kahn báo cáo về công trình của họ ở một hội nghị tại đại học Sussex, Anh quốc. Bài báo trên chứa nội dung chi tiết của các ý tưởng của họ.

Thật ra TCP đầu tiên là viết tắt của Transmission Control Program. Họ muốn nói đến một chương trình sẽ làm công việc truyền dữ liệu giữa các tiến trình của một máy này và các tiến trình của một máy khác trên Internet. Lúc đầu thì IP (Internet Protocol) là một phần của TCP, nhưng đến năm 1978 thì tách ra thành hai protocols riêng biệt ở hai mức khác nhau của thiết kế. Từ đó trở đi, họ protocols này được gọi là họ TCP/IP. Đa phần các máy tính ta đang dùng đều chạy TCP/IP để giao tiếp trên mạng.

Dù có phát triển và thích nghi, các ý tưởng căn bản của TCP/IP đứng vững trước bao nhiêu kỹ thuật mạng mới, bao nhiêu trăm triệu máy mới nối mạng, nghìn vạn các ứng dụng mới của Internet mà dù Cerf và Kahn có mơ cũng không thể thấy hết. Đây là bằng chứng hùng hồn cho một ý tưởng vĩ đại.