Trong tất cả các hệ thống mạng nói chung, vấn đề tắc nghẽn và chống tắc nghẽn luôn luôn là vấn đề lớn và việc giải quyết nó chưa bao giờ là triệt để và tuyệt đối. Đối với giao thức SMPP cũng vậy, vấn đề này càng phức tạp hơn khi ta thấy SMPP là một giao thức bất đồng bộ. Như đã nói ở trên giao thức bất đồng bộ cho phép trong một phiên làm việc một thực thể có thể gửi đi nhiều yêu cầu liên tục mà không cần đợi trả lời, điều đó làm giảm thời gian chờ đợi và tăng được hiệu suất mạng. Nhưng cũng nảy sinh vấn đề lớn ở đây khi bên gửi cứ gửi mà không biết tình trạng bên nhận ra sao? đã “quá tải“ hay chưa? Trong trường hợp bên nhận đã hết khả năng xử lý mà bên gửi vẫn tiếp tục thì tắc nghẽn sẽ xảy ra. SMPP cung cấp một cách giải quyết vấn đề này là bên nhận tìm cách thông báo cho bên gửi biết “tình trạng” hiện tại của mình. Ở đây bên nhận sẽ gửi lại một tham số congestion_state, tham số này có thể có mặt trong bất kỳ PDU trả lời nào. Tham số này thực chất là một số nguyên trong khoảng từ 1 (mức rảnh rỗi) đến 100 (mức tắc nghẽn) chi tiết xem ở bảng dưới. Bên nhận dựa vào đó để tăng hoặc giảm số lượng các PDU tiếp theo. Mức tối ưu cần đạt được là khoảng 80 90, ở khoảng này ta tận dụng được tối đa băng thông của mạng và đồng thời tắc nghẽn chưa xảy ra. Nếu tham số này không xuất hiện trong các PDU trả lời thì luồng các yêu cầu được gửi đi sau đó sẽ giữ ở mức tuyến tính. Ưu điểm của phương pháp này là mềm
dẻo, luôn đẩy khả năng thực thi và truyền tải lên mức tối ưu (Optimum) mà không phải đặt ra một giới hạn cứng nhắc không được vượt quá.
Để rõ hơn ta hãy quan sát các mức báo hiệu tắc nghẽn ở bảng dưới và hình vẽ minh họa phương pháp chống tắc nghẽn ở trang sau:
Bảng 1: Các mức cảnh báo tắc nghẽn Khoảng Mô tả 0 Idle 1 29 Low Load 30 49 Medium Load 50 79 High Load 80 90 Optimum Load 90 99 Nearing Congestion 100 Congestion/Maximum Load
Giả sử ban đầu thực thể SM TE gửi luồng dữ liệu với tốc độ 50 kb/sec, bên thực thể SM SC sẽ tính toán khả năng xử lý, lưu trữ của mình và trả lời bên gửi bằng các PDU có tham số connection_state = 40 (mức Medium). Đó là một mức thấp chứng tỏ khả năng xử lý của SM SC còn rất lớn, vì vậy ngay lập tức các luồng dữ liệu tiếp sau đó sẽ được SM TE năng lên 80 kb/sec. Với tốc độ này phía SM SC vẫn tiếp tục xử lý được nhưng đã năng mức cảnh báo lên mức High (tham số connection_state = 55 rồi 72). Đầu phát lúc này vẫn tiếp tục năng tốc độ luồng dữ liệu lên 120 kb/sec để đạt được mức Optimum (mức tối ưu với tham số connection_state = 85, 83, 86, 88 ). Đến lúc này tuy tốc độ luồng dữ liệu được giữ nguyên nhưng do SM SC phải xử lý quá nhiều luồng dữ liệu từ các thực thể khác nhau gửi đến nên mức cảnh báo được năng lên thành Nearing Congestion (connection_state = 94) để thông báo cho các đầu cuối giảm tốc độ truyền dữ liệu. Qua đó luôn gữi được khả năng xử lý dữ liệu ở mức tối ưu mà không xảy ra tình trạng tắc nghẽn mạng.
Hình 23: Minh họa cho thủ tục chống tắc nghẽn SM TE SM SC XXX XXX_resp (congestion_state=40) XXX Open 50 kb/sec XXX_resp (congestion_state=55) Medium XXX_resp (congestion_state=72) 80 kb/sec High High XXX XXX_resp (congestion_state=85) 120 kb/sec Optimum XXX XXX_resp (congestion_state=83) 120 kb/sec Optimum XXX XXX_resp (congestion_state=86) XXX_resp (congestion_state=88) 120 kb/sec Optimum Optimum XXX XXX_resp (congestion_state=94) 120 kb/sec Nearing Congestion XXX XXX_resp (congestion_state=88) 100 kb/sec Optimum
CHƯƠNG IV: INTERWORKING GIỮA MẠNG CỐ ĐỊNH VÀ MẠNG DI ĐỘNG
4.1. Tổng Quan
Trong một hệ thống tin nhắn thực tế, một tin nhắn sẽ không được truyền thông trực tiếp giữa các thực thể của mạng viễn thông với nhau mà được thực hiện theo cơ chế “lưu và chuyển tiếp”, thực tế mạng di động đã truyền tin nhắn đi theo phương thức này. Hệ thống FixSMS của chúng ta cũng tương tự như vậy, tức là bản tin sẽ được lưu lại một thực thể trung gian để xử lý (chính là các SM SC) và sẽ được truyền tiếp đến đầu cuối nhận bản tin này (các SM TE đích). Phương thức hoạt động như vậy vừa đủ để đáp ứng được những yêu cầu về thời gian, đồng thời việc truyền thông giữa các mạng của các nhà cung cấp dịch vụ khác nhau trở thành “trong suốt“ và không phụ thuộc vào các giao thức của từng hệ thống riêng lẻ.
Cấu trúc của giao thức truyền dữ liệu giữa các SM TE và SM SC gồm 3 lớp: SM Transfer Layer, SM Data Link Layer, SM Physical Layer, trong đó lớp SM Physical Layer sử dụng đường truyền vật lý 1200 baud. Tương ứng với mô hình OSI như sau:
Hình 24: Mô hình các tầng ISO/OSI của hệ thống SMS qua kết nối PSTN/ISDN Theo khuyến nghị của các tổ chức có uy tín trên thế giới và đặc biệt là tổ chức tiêu chuẩn viễn thông châu Âu thì có hai loại giao thức đã được phát triển để thực hiện việc trao đổi thông tin giữa hai SM_TE thông qua PSTN/ISDN là:
Protocol 2: Có ưu điểm đặc biệt đối với môi trường mạng cố định.
Trong chương này ta sẽ trình bầy kỹ hơn về giao thức 1 vì giao thức này khá giống với mô hình thực tế ma ta sẽ tìm hiểu ở những chương sau.
Với mỗi giao thức ta đi sâu vào nghiên cứu cụ thể từng quá trình “Submission” bản tin từ SM TE lên SM SC và quá trình “Delivery” từ SM SC đến SM TE.