Kiến trúc tổng quan của giao thức SCTP

Một phần của tài liệu Đánh giá hiệu quả của giao thức SCTPIP cho ứng dụng DVTS trong hội chẩn từ xa luận văn thạc sĩ (Trang 29 - 35)

Hình 2.1 – Mô hình kiến trúc giao thức SCTP Trong đó [13]:

Association Startup and Takedown: một Association được khởi

xướng bởi một yêu cầu từ người sử dụng SCTP.

Sequenced Delivery within Streams: Thuật ngữ "dòng" được sử dụng

trong SCTP để chỉ một chuỗi các thông điệp người dùng sẽ được gửi đến các lớp giao thức phía trên theo thứ tự với các thông điệp khác trong cùng một dòng. Điều này là trái ngược với việc sử dụng giao thức TCP, ở đó dùng để chỉ một chuỗi các byte (trong luận văn này một byte được coi là tám bit). Người sử dụng SCTP có thể xác định số dòng được hỗ trợ bởi Association tại thời gian khởi động Association. Con số này dùng đàm phán với Endpoint ở xa. Thông điệp người sử dụng có liên quan đến số luồng (SEND, Receive primitives (nguyên thủy)). Trong đó, SCTP thiết lập một số thứ tự cho mỗi Stream được thông qua

nó trước khi đến người sử dụng SCTP. Ở phía bên nhận, SCTP đảm bảo rằng thông điệp được gửi đến người dùng SCTP theo thứ tự trong một stream cho trước. Tuy nhiên, khi một trong những stream có thể bị chặn để chờ thông điệp người dùng trong của trình tự tiếp theo, việc phân phối từ những stream khác vẫn có thể tiến hành. SCTP cung cấp một cơ chế để bỏ qua trình tự/thứ tự phân phối. Thông điệp người dùng được gửi bằng cách sử dụng cơ chế này được giao cho người sử dụng SCTP ngay sau khi chúng nhận được.

User Data Fragmentation: Khi cần thiết, những fragments SCTP của

thông điệp người dùng đảm bảo rằng gói SCTP (Packet SCTP) đi qua các lớp bên dưới sẽ phù hợp với đường dẫn MTU. Bên đầu nhận, các fragments được lắp ráp lại thành những thông điệp hoàn chỉnh trước khi được đưa đến người sử dụng SCTP.

TCP-Friendly Congestion Control: Acknowledgement và chức năng

tránh tắc nghẽn thì chịu trách nhiệm gửi lại gói tin khi hết thời gian mà không nhận được Acknowledgement. Việc gửi lại gói tin có điều kiện bởi thủ tục tránh tắc nghẽn sử dụng giống như trong TCP.

Chunk Bundling: Gói tin SCTP khi chuyển giao cho các lớp phía dưới

gồm một tiêu để phổ biến (common header) bằng một hay nhiều khối. Mỗi Chunk có thể chứa dữ liệu người dùnh hoặc thông tin điều khiển SCTP. Người sử dụng SCTP có thể chọn để yêu cầu Bundling nhiều hơn một thông điệp trong một gói SCTP. Hàm chunk bundling của SCTP chịu trách nhiệm gửi đầy đủ gói tin SCTP và được loại bỏ vào cuối lúc nhận.

Packet Validation: một trường xác minh bắt buộc có chiều dài là 32 bits bao gồm trong tiêu đề phổ biến trong SCTP. Giá trị thẻ xác minh được chọn bởi mỗi một thiết bị cuối của một Asscociation kể cả

Association startup. Các gói tin nhận được mà không có thẻ xác minh sẽ bị loại bỏ, như là một cách bảo vệ chống lại các cuộc tấn công giả mù (blind masquerade) và chống lại gói tin SCTP cũ từ các Association trước đó. Thuật toán Adler32 sẽ thiết lập trên mỗi gói tin người gửi để cung cấp thêm cơ chế chống hỏng dữ liệu trên mạng. Người nhận một gói tin SCTP với kiểm tra Adler-32 không hợp lệ sẽ âm thầm loại bỏ gói tin đó.

Path Management: Chức năng quản lý đường dẫn SCTP chọn địa chỉ

vận chuyển đích cho mỗi gói tin gửi đi SCTP dựa trên hướng dẫn của người dùng SCTP và cảm nhận trạng thái hiện tại có thể đủ điều kiện tới đích đã thiết lập. Chức năng quản lý đường màn hình thông quan những heartbeats khi mà lưu lượng truy cập gói tin là không đủ cung cấp thông tin và khuyên người dùng SCTP khi có bất cứ thay đổi nào liên quan đến địa chỉ truyền vận tại đầu cuối. Chức năng quản lý đường dẫn cũng chịu trách nhiệm cho việc báo cáo đến các địa chỉ truyền vận vùng đủ điều kiện để những đầu cuối phía xa bao gồm cả Association startup và báo cáo địa chỉ truyền vận trở lại từ những đầu cuối phía xa đến những người dùng SCTP.

o Tại Associationd Startup, một đường dẫn chính được xác định cho mỗi điểm cuối (End – point) và sử dụng cho việc gửi các gói tin SCTP.

o Tại nơi nhận, việc quản lý đường dẫn sẽ có trách nhiệm xác minh sự tồn tại hợp lệ của một SCTP Asssociation bên trong gói SCTP được thông qua trước khi xử lý các tiến trình khác.

o Chú ý: quản lý đường dẫn và xác nhận gói tin được thực hiện cùng một lúc. Do đó, mặc dù mô tả một cách riêng biệt như ở

trên nhưng thực tế nó không thể thực hiện thành các mục riêng biệt.

SCTP Association [3]: Một SCTP Association thì được định nghĩa bởi

2 SCTP endpoint (điểm đầu – điểm cuối). Mỗi SCTP endpoint được xác định bởi một địa chỉ IP và 1 cổng (port). Điều đó có nghĩa là cùng 1 địa chỉ IP có thể định nghĩa nhiều Association khác nhau miễn là số cổng (SCTP port number) là khác nhau. Ví dụ đối với SGSN Alcatel- Lucent thì họ thường dùng địa chỉ IP khác nhau để phân biệt các Association, còn SGSN Huawei thì họ lại phân biệt Association bằng cách chọn cổng SCTP khác nhau. Tổ hợp địa chỉ IP@ + Port (transport address, địa chỉ vận tải) là duy nhất cho mỗi SCTP Endpoint.

(@IP 1, port A) ———– Association ————- (@IP 2, port B).

Trong trường hợp multi-homing thì SCTP endpoint được định nghĩa bởi nhiều địa chỉ IP+port, tức nhiều địa chỉ vận tải.

(@IP 1, port A) — Association —([@IP 2, port B][@IP 3, port B]) Như vậy, Association hình phía trên có 2 đường định tuyến khác nhau để hướng về SCTP Endpoint 2. Người ta gọi đó là path. Tức một association có thể có nhiều path. Khi một path bị hỏng (ví dụ hư router) thì association vẫn còn được giữ nguyên, không bị đứt.

Về việc khai báo cổng SCTP ở 2 đầu thiết bị, cổng SCTP ở 2 đầu không nhất thiết phải giống nhau. Thông thường người ta hay khai báo giống nhau cho dễ, nhưng cũng có thể hoàn toàn khai báo khác nhau. Quan trọng là ở đầu A phải biết là đầu B dùng port nào (để gửi message

SCTP cho đúng) và ngược lại ở đầu B phải khai báo port mà đầu A dùng để lắng nghe bản tin SCTP.

Trong 1 SCTP Association thì hai đầu đều gửi một cách đều đặn các thông điệp SCTP HEARTBEAT (nhịp tim) về đầu bên kia và chờ đầu bên kia trả lời lại bằng HEARTBEAT ACK (đã nhận được HEARTBEAT). Nhờ vào đó mà các SCTP Endpoint kiểm tra được là Association còn sống hay đã chết, hoặc một path của Association còn sống hay đã chết.

SCTP Endpoint: là điểm gửi/nhận gói tin SCTP tại tầng vật lý. Trên

một Host đa đích, một SCTP Endpoint thì đại diện cho các điểm ngang hàng với nó như là một tập các địa chỉ chuyển vận đích đủ điều kiện mà các gói tin SCTP có thể gửi và thiết lập một địa chì chuyển vận nguồn mà gói tin SCTP có thể nhận. Tất cả các địa chỉ chuyển vận được sử dụng bởi một SCTP Endpoint phải có cùng số Cổng, nhưng có thể dùng nhiều địa chỉ IP. Một địa chỉ chuyển vận đã xác định bởi một SCTP Endpoint không thể được sử dụng bởi một SCTP Endpoint khác.  Stream: Một kênh logic đơn hướng được thành lập từ một SCTP

Endpoint này đến SCTP Endpoint khác trong cùng hiệp hội, trong đó tất cả các thông điệp người dùng được phân phối theo thứ tự ngoại trừ những dịch vụ không được cung cấp theo thứ tự.

Một phần của tài liệu Đánh giá hiệu quả của giao thức SCTPIP cho ứng dụng DVTS trong hội chẩn từ xa luận văn thạc sĩ (Trang 29 - 35)

Tải bản đầy đủ (PDF)

(99 trang)