CHƢƠNG 2 GIAO THỨC TRAO ĐỔI SỐ LIỆU
3.1 Lịch sử và mục đích phát triển giao thức SCTP
Tháng 10/2000, IETF (International Engineering Task Force)- Một tổ chức quốc tế lớn các nhà thiết kế mạng, các nhà điều hành, các nhà cung cấp và các nhà nghiên cứu cùng quan tâm đến sự phát triển của kiến trúc và việc điều hành của mạng Internet - chính thức chuẩn hố SCTP thơng qua tài liệu RFC 2960 (Request for comment). SCTP là giao thức truyền tải số liệu điểm - điểm trên nền giao thức IP. Ban đầu, SCTP đƣợc phát triển nhằm cung cấp chuẩn truyền tải số liệu hƣớng thông điệp cho các mạng thông tin mà số liệu cần truyền tải trong thời gian thực nhƣ truyền tải các thơng điệp tín hiệu điện thoại trên nền IP cho các hệ thống thƣơng mại điện tử và viễn thơng. Nhƣ đã phân tích ở chƣơng trƣớc, TCP và UDP đều có những hạn chế khi dùng truyền tải tín hiệu điện thoại trên nền giao thức IP. Do vậy mà SCTP đã đƣợc thiết kế để đáp ứng yêu cầu này và các ứng dụng tƣơng tự khác. Nhờ đƣợc phát triển sau và rút kinh nghiệm từ các giao thức đã đƣợc phát triển trƣớc đó nhƣ TCP hay UDP, SCTP đƣợc thiết kế đa mục đích và đa chức năng, nhờ vậy có miền các lĩnh vực áp dụng rộng rãi hơn, ngay cả trong các lĩnh vực mà giao thức TCP đang đƣợc sử dụng với những thuận lợi hơn hẳn. Để hiểu rõ hơn, chúng ta sẽ điểm qua lịch sử cũng nhƣ mục đích phát triển SCTP:
Để cung cấp dịch vụ điện thoại thƣơng mại với phạm vi rộng, cần phát triển giao thức truyền tải tín hiệu điện thoại qua hệ thơng mạng IP đủ tin cậy. Các kỹ sƣ của các công ty điện thoại lớn đã thấy đƣợc yêu cầu nghiêm ngặt về thời gian và độ tin cậy khi truyền tải các thơng điệp tín hiệu điện thoại và đã tạo ra Hệ thống phát tín hiệu số 7 (SS7) để đáp ứng các yêu cầu trên. Tuy nhiên, có những nghi ngờ về việc liệu giao thức TCP, vốn đƣợc đánh giá là tin cậy, có khả năng đáp ứng đƣợc yêu cầu trên không.
Các kỹ sƣ của Telcordia đã thử nghiệm TCP/IP truyền tải tín hiệu điện thoại. Họ đi đến kết luận rằng vấn đề chính trong việc sử dụng TCP/IP trong
việc cung cấp dịch vụ điện thoại thƣơng mại là thiếu sự kiểm soát đồng hồ phát lại của TCP, nhất là ở mức ngƣời dùng và việc này nằm ở sự cài đặt TCP chứ không phải là hạn chế của giao thức. Một hạn chế lớn nữa của TCP là ảnh hƣởng của lỗi mất dữ liệu kiểu HoLB. Trong các ứng dụng điện thoại lớn nhƣ các tổng đài xử lý, lỗi này trở thành vấn đề lớn trong việc làm trễ tín hiệu. Lỗi này có thể gây hiệu ứng “domino” lên tất cả các cuộc gọi, tăng độ trễ vƣợt quá giới hạn cho phép. Một hạn chế nữa của TCP là khơng hỗ trợ các đƣờng kết nối dự phịng ở mức liên kết (link-leval redundancy support), đó là điểm hạn chế lớn nhất của TCP so với SS7. Trong SS7, sự kết nối giữa các đầu cuối thông qua một đƣờng kết nối logic nhƣng là một tập các đƣờng kết nối vật lý, có thể lên đến 16 đƣờng T1, do vậy khả năng dự phịng và sẵn sàng rất cao. Vì là chuyển mạch gói, TCP khơng thể tự cố định đƣờng đi trên đƣờng vật lý. Trong SS7, một kết nối nghĩa là „đƣờng dẫn” (path) trong mạng IP. Để có khả năng phục hồi lỗi đƣờng dẫn nhƣ SS7, các kỹ sƣ đã đi tới sự nhất trí rằng giao thức IP phục vụ cho truyền tải tín hiệu điện thoại cần hỗ trợ kết nối dự phòng (path redundancy)
Các đề xuất cải tiến TCP để đáp ứng các yêu cầu trên đã đƣợc đƣa ra bàn thảo và đều bị loại bỏ vì những hạn chế khác đã đƣợc IETF khuyến cáo trong các báo cáo nhƣ yêu cầu về truyền tải Unicast (Requirements for Unicast Transport/Session – RUTS) hay hỗ trợ nhiều phiên Unicast (Support for lots of Unicast Multiplexed Sessions – SLUM) mà TCP sẽ khó có thể sửa đổi để đáp ứng.
Cuối cùng, các kỹ sƣ đi đến kết luận cần một giao thức mới. Cuối năm 1998, tại hội thảo của IETF tại Orlando, Hoa Kỳ, Randall R. Stewart và Qiaobing Xie đã đề nghị một giao thức mới là MDTP (Multi-Network Datagram Transmission Protocol), giải quyết đƣợc một số hạn chế của TCP. MDTP ban đầu là một giao thức ở tầng ứng dụng và sử dụng UDP để truyền tải. Các kỹ sƣ đã quyết định dùng giao thức MDTP để làm cơ sở để thiết kế giao thức mới. Bản phác thảo (draft) đầu tiên của giao thức mới này đƣợc đệ trình vào tháng 9/1999.
MDTP đã đƣợc sửa đổi và có tên mới là SCTP. Thiết kế này đạt tới sự ổn định cho đến năm 1999, ban giám đốc lĩnh vực truyền tải của IETF yêu cầu xem xét lại các thiết kế quan trọng. Các kỹ sƣ đã thảo luận xem giao thức mới này nên chạy trên IP hay UDP. IESG và TAD đều đề xuất chuyển SCTP chạy trực tiếp trên IP vì thấy đƣợc giá trị và ý nghĩa của giao thức mới này, cũng nhƣ tiềm năng rất to lớn của SCTP trong hàng loạt các ứng dụng rộng rãi ngồi truyền tải tín hiệu điện thoại. Việc SCTP chạy trục tiếp trên IP với không gian cổng riêng là một giải pháp thiết kế đúng đắn.
Ban đầu các kỹ sƣ thiết kế SCTP lƣỡng lự trƣớc đề xuất đó bởi nhƣ vậy SCTP sẽ phải đƣợc cài đặt trong nhân của các hệ điều hành. Điều đó sẽ mất vài năm để các nhà cung cấp hệ điều hành có thể tích hợp SCTP vào nhân của hệ điều hành của họ. Ngồi ra, nó sẽ làm SCTP trở nên phức tạp hơn trong việc kiểm soát đồng hồ phát lại, là điểm mấu chốt để đảm bảo sự chặt chẽ về thời gian trong truyền tải tín hiệu điện thoại.
Tuy nhiên, IESG đã thuyết phục nhóm thiết kế thấy đƣợc tƣơng lai của giao thức. SCTP chạy trên nền IP là kiến trúc đúng đắn, đem lại lợi ích về lâu dài, mặc dù điều đó có thể làm việc triển khai vào thực tế của SCTP chậm lại. Cuối cùng, vào tháng 1/2000, SCTP chính thức đƣợc thiết kế để chạy trực tiếp trên IP. Đến tháng 10/2000, SCTP chính thức đƣợc chuẩn hố thơng qua RFC 2960.