Kiến trúc của giao thức

Một phần của tài liệu Nâng cao hiệu quả làm việc giữa các mạng trong hệ thống FixSMS (Trang 50)

Hình 27: Mối quan hệ giữa chồng giao thức SMS cho GSM và PSTN/ISDN 4.2.3.1. Tầng vật lý

Tầng Vật lý cung cấp các dịch vụ cho tầng Datalink , đó là cho phép việc truyền tin nhắn của tầng Datalink qua đường thoại .

Tầng vật lý có chức năng truyền và nhận các khung FSK.

Sự mô tả chi tiết kiến trúc của tầng vật lý người đọc có thể tham khảo chi tiết tại tài liệu [6].

4.2.3.2. Tầng DataLink

Tầng Datalink cung cấp dịch vụ cho tầng Tranfer. Nó thực hiện việc truyền và nhận tin nhắn giữa các thực thể ngang hàng. Bên cạnh đó tầng Datalink còn có một số chức năng như khả năng phát hiện lỗi, quyết định Mark Signal cho các thông điệp lớp Tranfer và cũng điều khiển cả thời gian đáp ứng của các thực thể ngang hàng.

Khả năng truyền tối đa của lớp Datalink tương ứng với chiều dài tối đa của tin nhắn ở lớp Transfer Layer là 176 byte. Nếu các tin nhắn ở lớp Tranfer dài quá 176 byte thì sẽ bị cắt thành nhiều mảnh . Định dạng của thông điệp ở lớp Datalink được mô tả như hình sau:

Mark Signal Message Type Message Length Layload (Transfer Layer Message)

Check sum

Hình 28: Cấu trúc của thông điệp lớp Datalink

Mark Signal : là khối 80 25 bit đánh dấu. Nhiệm vụ của nó là đồng bồ hóa FSK nhận được. Giá trị này được truyền theo hai hướng (từ SM TE đến SM SC và ngược lại).

Message Type : 1 octet được dùng để xác định thông điệp. Trong đó bit có trọng số lớn nhất có ý nghĩa: Nếu bit này là 0 thì nghĩa là thông điệp đã bị phân mảnh, cần phải có thêm 1 hoặc nhiều thông điệp tiếp theo để hoàn thiện. Ngược lại bit này sẽ có gía trị là 1.

Message Length : 1 octet cho biết chiều dài của thông điệp , bao gồm tất cả các trường. Tối đa là 176 octet .

CheckSum : trường này có tác dụng kiểm tra lỗi của toàn bộ bản tin ở mức 2. Nếu có lỗi xảy ra (sai checksum, hoặc không xác định được dạng thông điệp ), lớp Datalink của thực thể nhận sẽ gửi đi thông điệp dạng “DLL_SMS_ERROR“. Thông điệp này bao gồm một tham số dùng để xác định lỗi. Có một số lỗi như sau:

Bảng 2: Các lỗi có thể xảy ra ở lớp Datalink

Mã Error ( nhị phân ) Mô tả

0000 0001 b Sai Checksum

0000 0010 b Chiều dài thông điệp sai

0000 0011 b Không hiểu định dạng thông điệp 0000 0100 b Các cơ chế mỏ rộng không được hỗ trợ 1111 1111 b Không xác định được nguyên nhân gây lỗi

4.2.3.3. Tầng Transfer Layer

Tầng này cung cấp dịch vụ cho lớp ứng dụng. Cho phép lớp ứng dụng có thể gửi, nhận tin nhắn đến các thực thể ngang hàng và nhận các thông báo về yêu cầu về tin nhắn. Kích thước tối đa của tin nhắn là 176 octet.

Trong trường hợp lỗi, được xác định bằng các trường trong SMS_DELIVER_REP hoặc SMS_SUBMIT_REP, kết nối giữa SM TE và SM SC sẽ bị hủy bởi bên nhận. Tại lớp này cũng duy trì timer để điều khiển việc thiết lập kết nối. Giá trị này phụ thuộc vào từng mạng.

Người đọc có thể tham khảo chi tiết và kiến trúc của các tầng này cũng như các tham số liên quan trong tài liệu [8].

4.3. Giao Thức 2

4.3.1. Quá trình “Submission” bản tin từ SM7TE lên SM7SC Quá trình này khá giống quá trình như ở giao thức 1.

4.3.2. Quá trình “Delivery” bản tin từ SM7SC đến SM7TE.

SM TE được chọn sẽ trả lời cuộc gọi từ SM SC sau khi caller ID của SM SC đã được nhận và được đánh giá.

Trong trường hợp nhiều SME cùng kết nối đến 1 thuê bao (nhiều SM TE hoặc 1 SM TE chứa nhiều SME), sự quyết định SME sẽ được trả lời phụ thuộc vào kết quả của phép so sánh caller ID nhận được với cả “calling number“ của SM SC trong SM TE và với SME Subaddress được lưu trữ. Caller ID nhận được sẽ được thông dịch bởi SME như hình dưới.

Số cuối cùng của Caller ID nhận được là “Called SME Subaddress”, những số đằng trước để xác định SM SC. “SME Subaddress” nằm trong khoảng 1 9, giá trị mặc định là 1. Giá trị 0 được dự trữ cho tương lai.

Sau khi cuộc gọi đã được trả lời bởi SM TE, liên kết dữ liệu sẽ được thiết lập tương tự như phần II.1 (chỉ khác là trong trường hợp này SM TE là thực thể thiết lập đường truyền dữ liệu bằng cách gửi Data Link Layer message (DLL_SMS_EST) thích hợp).

SM TE có thể nhận được nhiều SM trong cùng một cuộc gọi. (adsbygoogle = window.adsbygoogle || []).push({});

4.4. Mô Hình Thực Tế

Trên thực tế hệ thống FixSMS đang trong giai đoạn thử nghiệm và có cấu hình như sau:

Hình 30: Mô hình hệ thống FixSMS trong giai đoạn chạy thử nghiệm Trong đó giao thức xử lý các bản tin nhắn trong nội bộ hệ thống là giao thức SMPP mà ta đã tìm hiểu kỹ ở chương trước (giao thức xử lý này là do hãng cung cấp thiết bị quy định sẵn). Vì vậy mà các hệ thống của những nhà cung cấp khác muốn kết nối đến mà lại sử dụng giao thức xử lý cũng như trao đổi bản tin khác (như mạng GSM dùng giao thức MAP chẳng hạn) thì lúc đó các bản tin nhận được sẽ được một thực thể đặc biệt trong hệ thống FixSMS của chúng ta chuyển đổi các bản tin đó sang các bản tin của giao thức SMPP tương ứng cho phần còn lại của hệ thống FixSMS có thể hiểu và xử lý được. Quá trình trao đổi ngược lại với các hệ thống bên ngoài cũng được thực hiện thông qua bộ phận đặc biệt này.

Mô hình trên đây chỉ là mô hình trong giai đoạn thử nghiệm vì nó đáp ứng được những yêu cầu: các hệ thống kết nối đến chưa nhiều và nhỏ gọn, dễ lắp đặp, dễ thao tác và xử lý trong quá trình chạy thử… Tuy nhiên nó sẽ không phù hợp khi đưa dịch vụ vào hoạt động trong môi trường thực tế. Vì lúc đó số thuê bao sẽ nhiều lên, các hệ thống của các nhà cung cấp dịch vụ khác cũng sẽ kết nối đến rất nhiều nên hệ thống FixSMS của ta sẽ không thể kết nối trực tiếp được nữa mà sẽ phải thông qua một hệ thống tổng đài chuyển tiếp Toll như minh họa ở hình dưới. Cấu hình này tỏ ra rất tối ưu khi có một hệ thống mới muốn khai thác dịch vụ của FixSMS, hệ thống đó chỉ việc kết nối qua tổng đài Toll mà không cần thay đổi cấu hình hệ thống FixSMS.

FixSMS Vinaphone Mobilephone Các hệ thống khác Trung tâm xử lý 10. 201. 1. 215

Hình 31: Mô hình hệ thống FixSMS trong thực tế dịch vụ

Hiện tại đã tồn tại một trung tâm xử lý tin nhắn cho cho mạng di động, trung tâm dịch vụ đó thực hiện các thao tác gửi và nhận các bản tin giữa các hệ thống của Mobiphone, Vinaphone và các mạng khác. Khi hệ thống FixSMS của chúng ta đi vào hoạt động, nó sẽ liên thông với hệ thống tin nhắn cũ của mạng di động. Đó là sự mở rộng đáng kể không chỉ cho khả năng trao đổi bản tin giữa các mạng viễn thông mà còn có khả năng nâng cao chất lượng dịch vụ, tăng độ tin cậy và khả năng thành công của bản tin. Tức là trong trường hợp trung tâm xử lý tin nhắn của mạng di động không thể xử lý hết các bản tin của mình thì nó sẽ được chuyển qua cho hệ thống FixSMS như một sự lựa chọn thứ 2 (có độ ưu tiên thứ 2) để xử lý các bản tin đó rồi tiếp tục được truyền đến đích. Như vậy tránh được tình trạng tắc nghẽn cục bộ và mất bản tin.

FixSMS Vinaphone Mobilephone Các hệ thống khác Trung tâm xử lý 10. 201. 1. 215 Toll

CHƯƠNG V: ĐO LƯỜNG VÀ ĐÁNH GIÁ MẠNG

5.1. Giới Thiệu

Trong tất cả các chương trước chúng ta đã đưa ra được mô hình hoạt động cũng như cấu trúc của hệ thống FixSMS. Tuy nhiên cũng cần phải nói thêm rằng bất cứ một hệ thống nào dù lớn, dù nhỏ thì hệ thống hoạt động trên lý thuyết cũng có một khác biệt rất lớn so với thực tế. Trong viễn thông điều đó lại càng rõ ràng hơn, mọi tình huống đều có thể xảy ra và có rất ít quy luật chủ quan chi phối được nó (nếu có thì thường chỉ là các quy luật xác suất, thống kê). Vì vậy một hệ thống viễn thông dù đã được xây dựng hoàn chỉnh cũng cần phải được chạy thử để kiểm nghiệm độ tin cậy. Không dừng lại ở đó khi hệ thống đã đưa vào triển khai thực tế thì việc đo đạc, kiểm thử hệ thống vẫn phải thường xuyên được thực hiện để đảm bảo sự hoạt động bình thường của hệ thống. Khi những tình huống xấu xảy ra thì những thông số đo đạc được của hệ thống trước sự cố là rất quan trọng. Nó cho phép người quản trị hệ thống biết được về tình trạng của hệ thống trước khi xảy ra sự cố. Vì vậy có thể xác định được chính xác nguyên nhân để đề ra hướng khắc phục và cũng là để rút ra được kinh nghiệm cho những lần sau, khi quan sát thấy những thông số hệ thống có những dấu hiệu như vậy thì có biện pháp phòng tránh kịp thời.

Ngoài ra việc đo đạc cũng có thể rút ra những đánh giá về hệ thống về mặt lý thuyết để rút ra những bài học thực tế cho việc thiết kế hệ thống về sau này.

Và quan trọng nhất là qua việc đo đạc và phân tích đánh giá kết quả đo đạc còn cho chúng ta biết tỷ lệ thành công của hệ thống là bao nhiêu, điều này rất quan trọng bởi vì không có hệ thống nào là hoàn hảo, thành công 100%. Tỷ lệ thành công của hệ thống cũng chính là hiệu suất làm việc của hệ thống, nó là thông số quan trọng nhất của hệ thống. Mọi điều khiển, cải tiến cũng chỉ nhằm mục đích năng cao thông số này.

Tuy vậy trong mạng viễn thông nói chung, các hệ thống viễn thông dù có cùng mục đích sử dụng cũng có những tiêu chuẩn chất lượng cũng như những đòi hỏi về hiệu suất làm việc khác nhau vì vậy mà cần phải có những chương trình phân tích những số liệu đo đạc khác nhau, phù hợp với từng hoàn cảnh cụ thể.

Vì vậy chương trình này được viết ra để phân tích kết quả đo đạc các thông số chính của “hệ thống tin nhắn ngắn FixSMS“ từ máy đo K1297. Chương trình được viết bằng ngôn ngữ C#.

5.2. Giới Thiệu Máy Đo K1297 và Cấu Hình Kết Nối

5.2.1. Máy đo K1297 Chức năng chính: Chức năng chính:

Máy K1297 có chức năng: Đo báo hiệu ISUP

Đo báo hiệu lớp ứng dụng: MAP 5.2.2. Cấu hình kết nối

Hình 32: Cấu hình kết nối 5.2.3. Những hạn chế của phương tiện đo

Như đã nói ở trên máy đo K1297 là một loại máy đo đa năng. Nó có thể đo ở nhiều mức cũng như nhiều loại bản tin khác nhau. Tuy nhiên trong thực tế do nhiều lý do khách quan cũng như chủ quan mà máy đo K1297 hiện tại chỉ có thể đo được ở mức ISUP trong mô hình hệ thống báo hiệu số 7 (đáng lẽ nó phải đo được ở mức MAP mới đạt yêu cầu kỹ thuật). Vì vậy mà trong một chừng mực nào đó chúng ta phải tạm giả thiết rằng: quá trình trao đổi bản tin liên mạng giữa mạng cố định và mạng di động nếu thành công ở mức ISUP thì được coi là “thành công”.

Một tin nhắn thành công ở mức ISUP nếu quá trình báo hiệu của nó bao gồm đủ 5 bản tin sau: Mobilephone FixSMS Vinaphone Các hệ thống khác Trung tâm xử lý 10. 201. 1. 215 Toll K1297

Bản tin địa chỉ khởi đầu IAM (Initial Address Message): bản tin này được gửi theo hướng đi để chiếm mạch đầu ra và truyền số thuê bao cùng các thông tin khác liên quan tới định tuyến và xử lý cuộc gọi.

Bản tin hoàn thành địa chỉ ACM (Address Complete Message): bản tin này được gửi theo hướng về nhằm chỉ ra rằng tổng đài này đã nhận được tất cả các tín hiệu địa chỉ cần thiết để định tuyến cuộc gọi tới thuê bao bị gọi.

Bản tin trả lời ANM (Answer Message): bản tin này được gửi theo hướng về nhằm chỉ ra rằng cuộc gọi đã được trả lời và bắt đầu tính cước cho thuê bao chủ gọi.

Bản tin giải phóng REL (Release Message): bản tin này có thể được gửi đi theo cả hướng đi hoặc hướng về, để chỉ ra rằng mạch đã được giải phóng và sẵn sàng chuyển sang trạng thái rỗi khi nhận được bản tin RLC. Đồng thời để chỉ ra nguyên nhân giải phóng cuộc gọi, người ta dựa vào tham số cause indicators trong bản tin này. Nếu cause indicators = 16 (Normal Clearing) tức là có thể coi tin nhắn này sẽ thành công ở mức ứng dụng.

Bản tin hoàn thành giải phóng RLC (Release Complete Message): bản tin này được gửi theo cả hướng đi hoặc hướng về để trả lời khi nhận được bản tin REL.

Cả 5 bản tin trên nếu cùng là bản tin báo hiệu của một tin nhắn thì sẽ được truyền trên một kênh riêng (kênh này không giống với kênh báo hiệu của bất kỳ một tin nhắn nào khác và kênh này sẽ được giải phóng khi nhận được bản tin RLC). Kênh này được xác định bằng mã nhận dạng kênh mạch CIC (Circuit Identification Code) trong nhãn định tuyến của trường thông tin báo hiệu SIF đã được đề cập đến trrong chương I của tài liệu này.

5.3. Chương Trình

5.3.1. Yêu cầu kỹ thuật (adsbygoogle = window.adsbygoogle || []).push({});

Phải đọc được khuôn dạng của file đo kết xuất từ máy K1297 (xem thêm phần phụ lục). Vì máy này có thể kết xuất được ra nhiều loại khuôn dạng khác nhau. Phải lọc bỏ được các bản tin của các lớp dưới như các bản tin FISU hay LSSU của lớp 2 trong một số trường hợp.

Các trường tham số tuân theo chuẩn của nhà cung cấp thiết bị mạng ERICSSON.

5.3.2. Mục đích

Giao diện chương trình thân thiết với người dùng .

Đọc các tham số cần thiết để thuận tiện cho người sử dụng. Thống kê tóm tắt các bản tin trao đổi

Xử lý và đưa ra kết quả phân tích các cuộc gọi

5.3.3. Các module xử lý & Giải thuật (bằng lời – lưu đồ) 5.3.3.1. Module Open file 5.3.3.1. Module Open file

Begin

Hiển thị hộp thoại Open file; Nhận dạng file đo;

If (true)

Mở file cần đọc; Else

Begin

Đưa ra thông báo: “File này không đúng khuôn dạng yêu cầu chọn lại”;

Thực hiện lại; End;

End;

Hình 33: Module Open File 5.3.3.2. Module nhận dạng khuôn dạng file đo Begin

If kiểm tra khuôn dạng của từng khung theo khuôn dạng sau:

! !"# " $% ! # &# & &!#'# # (& BEGIN

END

Mở hộp thoai Open

Nhận dạng file đo

Thông báo sai khuôn dạng

Mở file cần đọc +

% ) * + % ) , $ +- .. / 0/ $ 0 , .. / 0/ $ 0 123 4 5 1 6 123 4 401 0 Trả về kết quả; End;

Hình 34: Module nhận dạng khuôn dạng file đo 5.3.3.3. Module lọc dữ liệu

Begin

Nhập các thông số đầu vào: OPC, DPC, chiều của bản tin; Duyệt từ đầu đến cuối file để

Begin

So sánh OPC, DPC của những bản tin với OPC, DPC đã chọn;

If (true) thì lọc ra những thông số quan trọng của bản tin đó như: kiểu bản tin, OPC, DPC, mã nhận (adsbygoogle = window.adsbygoogle || []).push({});

BEGIN

END Nhận file đầu vào

Kiểm tra phần header

Thông báo sai khuôn dạng Trả về kết quả + So sánh số lượng ký tự một dòng với 94 Thông báo sai

khuôn dạng

dạng kênh mạch CIC; else quay lại vòng lặp; End; End; Hình 35: Module lọc dữ liệu BEGIN END Nhận các thông số đầu vào So sánh các thông số Lọc các thông số và hiển thị Trả về kết quả + EOF = true + Đọc dữ liệu khung

5.3.3.4. Module Phân tích dữ liệu Begin Begin

Lọc dữ liệu 2 chiều;

Tìm kiếm tất cả các bản tin IAM trong file cần phân tích;

Tìm kiếm các bản tin RLC có cùng thông số CIC với bản tin IAM ở Trên;

Duyệt trong khoảng từ bản tin IAM đến RLC vừa tìm được để tìm tất cả các loại bản tin có cùng thông số CIC tương ứng;

If trong đó có xuất hiện bản tin ANM và REL với tham số Cause

Một phần của tài liệu Nâng cao hiệu quả làm việc giữa các mạng trong hệ thống FixSMS (Trang 50)