2.4.1 Tổng quan về giao thức Megaco/H.248
Megaco đƣợc phát triển bởi IETF (đƣa ra vào cuối năm 1998), còn H. 248 đƣợc đƣa ra vào tháng 5/1999 bởi ITU-T. Sau đó cả IETF và ITU-T cùng hợp tác thống nhất giao thức điều khiển MG, kết quả là vào tháng 6/2000 chuẩn Megaco/H.248 ra đời.
Megaco/H.248 cung cấp một giải pháp toàn diện cho việc điều khiển các MG. Giao thức này hỗ trợ đa phƣơng tiện và các dịch vụ hội thoại nâng cao đa điểm các cú pháp lập trình đƣợc nâng cao nhằm tăng hiệu quả cho các tiến trình đàm thoại, hỗ trợ cả việc mã hoá text và binary và thêm vào việc mở rộng các định nghĩa cho các gói tin.
Megaco/H.248 là giao thức báo hiệu giữa Softswitch hoặc MGC với MG (Trunking Media Gateway, Lines Media Gateway hoặc IP Phone Media Gateway). Megaco/H.248 điều khiển MG để kết nối các luồng từ ngoài.
Megaco/H.248 tƣơng tự với MGCP về mặt cấu trúc và mối liên hệ giữa bộ điều khiển và cổng gateway, tuy nhiên Megaco/H248 hỗ trợ đa dạng hơn các loại mạng (ví dụ ATM).
Hình 2.17 Megaco/H.248 kết nối điều khiển Gateway
Trong phân hệ IMS, giao thức này hoạt động trên điểm tham chiếu Mn, Mp giao tiếp MRFC với MRFP và MGCF với IMS-MGW
2.4.2 Cấu trúc Gateway trong Megaco/H.248
Hình 2.18 Cấu trúc Gateway trong Megaco/H.248
MGC: cung cấp báo hiệu SIP hoặc H.323 và thực hiện ánh xạ giữa các giao thức báo hiệu mạng chuyển mạch kênh truyền thống và giao thức báo hiệu IP.
MG: cung cấp sự ánh xạ media và chức năng chuyển mã. Nó kết thúc tín hiệu chuyển mạch kênh và tín hiệu media gói và thực hiện chuyển địa chỉ
SG: cung cấp môi trƣờng báo hiệu giữa miền IP và miền chuyển mạch kênh truyền thống.
2.4.3 Termination và Context 2.4.3.1 Termination 2.4.3.1 Termination
Termination là một thực thể luận lý trên MG nhƣ là các nguồn hoặc các luồng điều khiển, … Termination có duy nhất một số nhận dạng (Termination ID) đƣợc phân phối bởi MG ở thời điểm chúng đƣợc tạo ra.
Termication còn biểu hiện cho các thực thể vật lý có thời gian tồn tại bán thƣờng trú nhƣ một kênh TDM
Termination cũng biểu diễn cho các luồng thông tin ngắn hạn nhƣ là các luồng RTP, thƣờng tồn tại trong thời gian chúng đƣợc sử dụng.
Các tín hiệu có thể áp dụng lên các Termination, các tín hiệu này nhƣ là các thông báo. Các Termination cũng có thể đƣợc lập trình để phát hiện các sự kiện.
2.4.3.2 Context
Context là một sự kết hợp giữa một số Termination. Có một Context đặc biệt đƣợc gọi là Context rỗng. Nó chứa các Termination không kết hợp với các
Termination khác. Các Termination rỗng có thể có các tham số đƣợc khảo sát hoặc sửa đổi và có thể có các sự kiện xảy ra trên chúng.
Số lƣợng Termination lớn nhất trong một Context phụ thuộc vào MG. Chẳng hạn, MG chỉ đƣa ra kết nối điểm điểm thì có thể chỉ cho phép hai Termination trên một Context. Các MG hỗ trợ các cuộc hội nghị đa điểm có thể cho phép 3 hoặc nhiều Termination trên một Context.
* Thuộc tính của context
Mô hình (topology): Mô hình của context mô tả luồng media giữa các Termination trong một context. Ngƣợc lại, chế độ của Termination (nhận/ gửi) mô tả luồng media ở ngõ vào/ra của MG.
Sự ƣu tiên đƣợc sử dụng cho một context để cung cấp cho MG thông tin về việc điều khiển ƣu tiên. MGC cũng có thể điều khiển sự ƣu tiên lƣu lƣợng trong MG khi nhiều context phải đƣợc điều khiển đồng thời.
Bộ chỉ thị (indicator) cho cuộc gọi khẩn cấp cũng đƣợc cung cấp để cho phép việc điều khiển ƣu tiên trong MG.
* Tạo, xóa và sửa đổi context
Megaco có thể đƣợc dùng để tạo context và sửa đổi các giá trị tham số của context đang tồn tại. Megaco có các lệnh để thêm Termination vào context, bỏ Termination ra khỏi context và di chuyển termination giữa các context. context bị xóa hoàn toàn khi Termination còn lại sau cùng bị xóa bỏ hoặc di chuyển khỏi Context.
2.4.4 Một số lệnh của Megaco/H.248
Add: lệnh add dùng để thêm một termination vào một context. Lệnh Add trên Termination đầu tiên trong context đƣợc dùng để tạo context.
Modify: dùng để sửa đổi các thuộc tính, các sự kiện và các tín hiệu của termination
Subtract: dùng để ngắt một Termination từ một Context. Lệnh này trên Termination sau cùng trong một Context dùng để xóa Context đó.
Move: dùng để chuyển Termination trong Context này đến Context khác.
Auditvalue: trả lại trạng thái hiện tại của các đặc tính, các sự kiện, các tín hiệu thống kê của Terminination.
Auditcapabilities: trả lại tất cả các giá trị đối với tính chất của Termination, các sự kiện và các tính hiệu đƣợc cho phép bởi MG
Notify: cho phép MG thông báo cho MGC biết các sự kiện xảy ra trong MG.
Service Change: cho phép MG thông báo cho MGC rằng một Termination hoặc một nhóm Termination chuẩn bị rời khỏi hoặc trả lại dịch vụ. Lệnh này cũng đƣợc dùng bởi MG để thông báo cho MGC sự sẵn sàng của nó. MGC cũng có thể thông báo chuyển giao tới MG bằng các lệnh gửi Service Change.
2.4.5 Hoạt động của Megaco/H.248
Quá trình hoạt động của luồng giao thức Megaco/H.248 nhƣ hình 2.19
Hình 2.19 Luồng giao thức của Megaco/H248
Bước 1: MGC gửi bản tin Modify đến MG A và MG B để yêu cầu Termination phát hiện nhấc máy.
Bước 2: Lệnh Modify đƣợc công nhận
Bước 4: Xác nhận việc nhấc máy
Bước 5: MGC ghi nhận sự kiện và gửi bản tin đến MG để xác nhận sự kiện này.
Bước 6, 7: GW A tích lũy các chữ số đƣợc quay từ ngƣời dùng và gửi các số này đến MGC trong lệnh Notify.
Bước 8: MGC công nhận việc nhận các chữ số.
Bước 9: MGC quyết định chuỗi số đúng và tạo cuộc gọi. Nó gửi lệnh Add đến MGA để tạo Context.
Bước 10: GW A trả lời MGC và đặt tên Context, định bộ nhận dạng Termination RTP (RTP/ID).
Bước 11: dựa vào thông tin nhận đƣợc từ GWA, MGC gửi lệnh Add chứa thông tin về số bên gọi, bộ mã hóa, … đến GWB.
Bước 12: GWB trả lời lại lệnh Add với một Context mới gửi đến MGC.
Bước 14: MGC dùng lệnh Modify để yêu cầu chuông. Bản tin cũng yêu cầu GWA tìm kiếm sự nhấc máy.
Bước 15: User B nhấc máy, cuộc gọi đã đƣợc thiết lập, RTP Streaming đƣợc truyền 2 chiều từ A sang B.
Bước 16: Khi một trong hai bên gác máy ( ở đây ví dụ là bên A), bản tin Modify yêu cầu kết thúc cuộc gọi đƣợc gửi đến MGC
Bước 17: MGC nhận đƣợc yêu cầu và gửi bản tin Rely đáp ứng.
Bước 18, 19: Lệnh Subtract đƣợc gửi từ MGC đến hai GW yêu cầu hủy kết nối (hủy Termination từ một Context). Sau khi nhận đƣợc bản tin Rely từ hai Gateway thì kết thúc hoàn toàn một phiên gọi.