COPS là giao thức được IETF chuẩn hóa nhằm thực hiện việc quản lý, cấu hình và áp đặt chính sách. Giao thức này hoạt động theo mô hình Client-Server. Nó định nghĩa một giao thức yêu cầu và đáp ứng một cách đơn giản trong việc trao đổi thông tin chính sách và
được xem là Client và server là điểm quyết định chính sách PDP. Và một thành phần đặc biệt là điểm quyết định chính sách cục bộ LPDP, nó thay thế cho PDP trong việc liên lạc với PEP khi PDP không được tìm thấy. COPS điều khiển chính sách theo 2 mô hình chính:
Outsourcing
PEP chỉ định một PDP bên ngoài chịu trách nhiệm xử lý những sự kiện gởi ra từ PEP. Mô hình này cho thấy sự tương quan one-to-one giữa những sự kiện ở PEP và những quyết định từ một PDP.
Configuration
Không giống như mô hình trước, là không có sự ánh xạ trực tiếp những sự kiện tại PEP và những quyết định từ PDP. PDP có thể cấu hình những sự kiện bên ngoài được khởi tạo bởi một PEP bất kỳ và sự kiện gởi từ PEP có thể được xử lý bởi PDP cùng khối với nó hoặc PDP thuộc khối khác. Xét về mặt thời gian thì mô hình này linh động hơn mô hình outsourcing.
Cops sử dụng phương thức truyền TCP để truyền những bản tin đáng tin cậy giữa PEP và PDP. Không giống như giao thức client - server khác, cặp bản tin yêu cầu - đáp ứng này phải phù hợp với cặp bản tin yêu cầu - đáp ứng khác. Ở đây, server có thể áp áp đặt chính sách cho client và xóa những chính sách trên client nếu chính sách đó không còn phù hợp nữa. PEP khởi tạo kết nối TCP đến PDP, PEP gởi yêu cầu và nhận những quyết định chính sách từ PDP và sự liên lạc giữa PEP và PDP là sự trao đổi yêu cầu, đáp ứng. Tuy nhiên PDP hoặc PEP có thể gởi đi những bản tin độc lập, ví dụ như PDP gởi những quyết định tới PEP bắt buộc PEP thay đổi những chính sách được PDP chấp nhận trước đó (không phải bản tin đáp ứng cho những yêu cầu của PEP) và PEP có thể gởi những bản tin báo cáo về trạng thái cho PDP. Sự mở rộng có thể được mô tả trong phần định dạng bản tin và những phần tử mang dữ liệu về chính sách không cần yêu cầu bất kỳ thay đổi nào trong giao thức.
COPS được sử dụng trong liên lạc giữa khối PDF và GGSN, tạo sự kết nối giữa mạng IMS và mạng GPRS nhằm cung cấp mức độ bảo mật các bản tin cho việc xác thực, bảo vệ toàn vẹn bản tin. COPS cũng có thể tái sử dụng giao thức về bảo mật như IPSEC hoặc TLS để xác thực và bảo vệ kênh truyền giữa PEP và PDP.
Hình 4.11: Mô hình COPS 4.3.2 Chức năng chính của COPS
Giao thức này giao việc cho Client hỗ trợ cho mô hình Client/Server. Trong đó Client sẽ gởi những bản tin: yêu cầu, cập nhật, và xóa tới PDP và PDP gởi trả những quyết định cho PEP.
COPS sử dụng phương thức TCP để trao đổi bản tin giữa Server và Client nên ta không cần bổ sung thêm chức năng hỗ trợ việc liên lạc có đảm bảo giữa Server và Clients.
COPS thực hiện việc quản lý, cấu hình, và thực thi các chính sách
COPS cung cấp mức độ bảo mật các bản tin cho việc xác thực, phát lại bảo vệ, và toàn vẹn bản tin.COPS cũng có thể tái sử dụng giao thức về bảo mật như IPSEC hoặc TLS để xác thực và bảo vệ kênh truyền giữa PEP và PDP.
COPS cho phép Server áp dụng chính sách cho Client hoặc xóa chính sách đang thực thi trên Client nếu nó không còn được sử dụng nữa.
4.3.2.1 Bản tin COPS
Bản tin của giao thức COPS gồm COPS Header và Object format
4.3.2.1.1 COPS Header
Hình 4.12: COPS header
Version (4bits): chỉ phiên bản của giao thức COPS đang được dùng, hiện nay đang sử dụng COPS version 1
Flags (4bits): mặc định là 0, cờ flag đặt lên 1 khi bản tin gởi đi là bản tin DEC, khi đó PDP gởi bản tin DEC đáp ứng lại yêu cầu của bản tin REQ do PEP gởi ra.
Op Code (8 bits): cho biết hoạt động của COPS.
Bảng 4.4: Các loại Op code trong COPS header Giá trị Loại Nơi chốn Tên Mô tả
1 REQ PEP→PDP Request Yêu cầu quyết định từ PDP và
thiết lập một client handle nhằm xác định tình trạng phù hợp cho PEP
2 DEC PDP→PEP Decision Trả lại một hoặc nhiều quyết định
(đáp ứng) cho một yêu cầu
3 RPT PEP→PDP Report state Báo cáo lại cho PDP biết là PEP
đã nhận được đáp ứng của PEP hay chưa và thông báo sự thay đổi trạng thái của PEP
4 DRQ PEP→PDP Delete request state
Thông báo cho PDP biết là
5 SSQ PDP→PEP Synchronize
state request
PDP gởi cho PEP để đồng bộ dữ liệu
6 OPN PEP→PDP Client-Open
7 CAT PDP→PEP Client-
Accept
8 CC PEP→PDP
PDP→PEP
Client-Close Cho biết phần tử Client-type không được hỗ trợ
9 KA PEP→PDP
PDP→PEP
Keep-Alive Kiểm tra sự tồn tại của PDP/PEP
10 SSC PEP→PDP Synchronize
complete
Thông báo sự đồng bộ thành công
Client-type (16 bits): cho biết chính sách áp dụng cho Client và xác định những thực thể liên quan. 16 bit s có giá trị trong khoảng 0x8000 - 0xFFFF. Đối với bản tin KA thì Client-type phải đặt là 0.
Message Length (32 bits): bao gồm header chuẩn và phần tử rút gọn và độ dài chỉ trong 4bytes.
Hình 4.13: Object format của bản tin COPS
Length: chiều dài của Object format
C-num (8 bits): cho biết lớp thông tin chứa đựng trong object
Bảng 4.5: Trường C-Num trong Object format của bản tin COPS C-num Tên Nơi chốn Mô tả
1 Handle Most Giá trị duy nhất để xác định trạng
thái được cài đặt
2 Context REQ, DEC Cho biết phần tử nào tạo ra những
truy vấn
3 In interface REQ Địa chỉ và giao tiếp bên trong của
PEP
4 Out interface REQ Địa chỉ và giao tiếp bên bên ngoài
của PEP
5 Reason code DRQ Cho biết lý do các yêu cầu bị xóa
6 Decision DEC Quyết định do PDP tạo ra
7 LPDP decision DEC Quyết định do LPDP tạo ra
8 Error CC Xác định giao thức bị lỗi
9 Client-specific
info
REQ, DEC, RPT, OPN
Thông tin về Client
10 Keep-Alive timer CAT Giá trị bộ đếm thời gian
11 PEP
identification
OPN Xác định PEP cho PDP
12 Report type RPT Loại báo cáo về trạng thái yêu cầu,
nó phải tương ứng với handle cụ thể
address PEP đến PDP khác
14 Last PDP address OPN Địa chỉ của PDP mà PEP kết nối
lần cuối
15 Accounting timer CAT Xác định thời gian cho việc tính phí
16 Message
integrity
Any Chuỗi số và sự kiểm bản tin chứng
thực nhằm đảm bảo sự bảo mật cho những yêu cầu
4.4 Giao thức MEGACO/H. 248
4.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/H248 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 4.14: 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
Hình 4.15: 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.
4.4.3 Termination và Context
Megaco có hai khái niệm mang tính trừu tượng là: Termination và Context
4.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
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.
4.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.
4.4.3.2.1 Thuộc tính của context
-contextID
-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 goi khẩn cấp cũng được cung cấp để cho phép việc điều khiển ưu tiên trong MG.
4.4.3.2.2 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á tri 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.
4.4.4 Một số lệnh của Megaco
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
ServiceChange:cho phép MG thông báp 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 ServiceChange
4.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ư sau:
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 3: GW A phát hiện sự nhấc máy và gửi cho MGC.
Bước 4: Xác nhận việc nhấc má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.
Chương 5: Các bước tiến lên xây dựng IMS
5.1 Giới thiệu chuyển mạch mềm (softswitch)
Chuyển mạch mềm giúp các mạng truyền thống có thể cung cấp các dịch vụ dựa trên nền mạng IP. Cấu trúc này tách riêng điều khiển dịch vụ và truy cập dịch vụ bằng cách sử dụng một lớp lõi dựa trên IP trong mạng chuyển mạch. Nó thực hiện điều khiển các cổng trung kế mở rộng, cổng truy nhập và các server truy nhập từ xa. Chuyển mạch mềm chạy trên hệ điều hành và các máy tính, nó cung cấp các giao diện lập trình ứng dụng mở. Trong giai đoạn đầu triển khai công nghệ NGN, softswitch được chọn làm thành phần điều khiển chính. Từ khi IMS được chuẩn hóa, IMS thể hiện những đặc tính vượt bậc. Do đó, IMS được chọn thay thế softswitch trong NGN.
5.2 So sánh IMS và softswitch
Những ưu điểm của IMS so với softswitch được thể hiện trong bảng sau:
Tiểu chuẩn so sánh Softswitch IMS
Tính chuẩn hóa Không có tổ chức nào đưa
ra tiêu chuẩn cụ thể, phụ thuộc vào giải pháp của các hãng thiết bị.
3GPP chuẩn hóa (Release 5, Release 6, Release 7, Release 8)
Kiến trúc mạng - Kiến trúc mạng dựa trên
sự phân tán chức năng điều khiển và chức năng chuyển mạch, mọi hoạt động điều khiển tập trung ở MGC.
- Gồm có năm lớp: lớp quản lý, lớp dịch vụ, lớp điều khiển, lớp truyền tải và lớp
- Kiến trúc phân tán theo mô hình server, chức năng điều khiển không tập trung tại một server mà phân tán thành các khối P-CSCF, I- CSCF, S-CSCF.
- Được chia thành bốn lớp: lớp dịch vụ, lớp điều khiển, lớp truyền tải và lớp truy
truy nhập.
- Sử dụng các giao diện lập trình mở API
nhập.
- Sử dụng các giao diện đã được chuẩn hóa.
Giao thức điều khiển và báo hiệu
SIP, H.323, MGCP,
MEGACO/H.248,…
Chủ yếu sử dụng SIP, DIAMETER
Khả năng cung cấp dịch vụ Khả năng cung cấp dịch vụ Khả năng cung cấp đa dịch
vụ với chất lượng cao, triển khai dịch vụ nhanh chóng và hệ thống tính cước thông minh.
Khả năng tích hợp với thiết bị của nhà cung cấp khác
Có khả năng tương thích, tuy hơi khó khăn.
Khá dễ dàng vì các thiết bị đều phải tuân theo chuẩn.
Bảo mật Có khả năng bảo mật tốt đối
với các dịch vụ VoIP.
Có nhiều cơ chế bảo mật khác nhau, đảm bảo an toàn thông tin cá nhân của người