giao thức điều khiển cổng mgcp
DESCRIPTION
Tiểu luậnTRANSCRIPT
Trường Đại Học Phương Đông Khoa Công Nghệ Thông Tin
MỤC LỤC
MỤC LỤC................................................................................................................1
LỜI MỞ ĐẦU..........................................................................................................2
Media Gateway Control Protocol
(MGCP)
1. Khái niệm về MGCP...........................................................................................32. Mô hình kết nối....................................................................................................6
2.1. Nhận dạng đầu cuối (EndpointID).................................................................62.2 Nhận dạng cuộc gọi (CallID)..........................................................................72.3 Nhận dạng kết nối (ConnectionID).................................................................72.4 Tên MGC và các phần tử khác........................................................................7
3. Các lệnh điều khiển Gateway.............................................................................83.1. Sự kiện và tín hiệu..........................................................................................93.2. Mã phúc đáp và mã lỗi.................................................................................10
4. Thiết lập cuộc gọi...............................................................................................115. Đánh giá MGCP................................................................................................116. So sánh giữa MGCP, SIP và H.323..................................................................12KẾT LUẬN............................................................................................................14
TÀI LIỆU THAM KHẢO.....................................................................................15
Lê Minh Liêm 1
Trường Đại Học Phương Đông Khoa Công Nghệ Thông Tin
LỜI MỞ ĐẦU
Trong những năm gần đây, các nhà mạng ở nước ta như VNPT, Viettel,
Mobifone, Vinaphone đang nỗ lực xây dựng và triển khai mạng thế hệ mới nhằm
đáp ứng nhu cầu ngày càng tăng của khách hành về dịch vụ thoại, số liệu, video
multimedia…. Trong giai đoạn này các thiết bị NGN đang trong giai đoạn cài đặt,
chạy thử và từng bước chuyển tải lưu lượng từ mạng truyền thống. Cấu trúc mạng
NGN của VNPT đã từng bước được định hình, một số giao thức báo hiệu cho mạng
NGN cũng được lựa chọn như BICC, SIP, H323…trong đó là MGCP – đang được
phát triển.
Bằng kiến thức trên lớp và kiến thức tích lũy được, em đã nghiên cứu về để tài
“Giao thức điều khiển cổng phương tiện - MGCP”.
Do khả năng và thời gian chuẩn bị còn hạn chế nên bài tập lớn chắc chắn không
tránh khỏi những thiếu sót, em rất mong nhận được những lời góp ý chân thành của
giáo viên bộ môn – Th.S Vũ Thị Nhài.
Em chân thành cảm ơn !
Lê Minh Liêm 2
Trường Đại Học Phương Đông Khoa Công Nghệ Thông Tin
Media Gateway Control Protocol (MGCP)
1. Khái niệm về MGCPGiao thức MGCP được trình bày trong tài liệu draft-huitema-MGCP-v0r1-
00.txt vào tháng 11 năm 1998 ngay trước khi nó được đưa ra thảo luận ở nhóm
MEGACO trong cuộc họp tại Orlando của IETF. Sau đó vào tháng 10 năm 1999,
IETF ban hành RFC 2705: “Media Gateway Control Protocol (MGCP) Ver.1.0”.
Tháng 1 năm 2003, giao thức MGCP được sửa đổi và ban hành trong văn bản RFC
3435 của IRTF.
“MGCP- Media Gateway Controller Protocol: là giao thức điều khiển các
VoIP gateway từ các thiết bị điều khiển cuộc gọi, được gọi là Media Gateway
Contrroller hay Call Agent”. Đây là định nghĩa về MGCP trích từ IETF RFC 2705
– Media Gateway Protocol.
Sự phát triển của MGCP được mở rộng do ảnh hưởng của sự xung đột giữa
các phần kiến nghị cho việc tách rời hoá kiến trúc GATEWAY. MGCP là sự bổ
sung của hai giao thức SIP và H.323, được thiết kế đặc biệt như một giao thức bên
trong giữa các MG và các MGC cho việc tách hoá kiến trúc GATEWAY. Trong
đó, MGC xử lý cuộc gọi bằng việc giao tiếp với mạng IP qua truyền thông với một
thiết bị báo hiệu địa chỉ giống như H.323 Gatekeeper hoặc SIP server và với mạng
chuyển mạch kênh qua một Gateway báo hiệu tuỳ chọn. MGC thực hiện đầy đủ
chức năng của lớp báo hiệu trong H.323 và như một H.323 Gatekeeper. MG có
nhiệm vụ chuyển đổi giữa dạng tín hiệu analog từ các mạch điện thoại, với các gói
tin trong mạng chuyển mạch gói. MGCP hoàn toàn tương thích với VoIP Gateway.
Nó cung cấp một giải pháp mở cho truyền thông qua mạng và sẽ cùng tồn tại với
H.323 và SIP.
Lê Minh Liêm 3
Trường Đại Học Phương Đông Khoa Công Nghệ Thông Tin
MGCP là giao thức sử dụng để điều khiển các Gateway thoại từ các thiết bị
điều khiển cuộc gọi, được gọi là Media Gateway Controller hoặc Call Agent.
Quan hệ giữa MG và MGC (hay CA) được mô tả trên hình. MGC thực hiện
báo hiệu cuộc gọi, điều khiển MG. MGC và MG trao đổi lệnh với nhau thông qua
MGCP.
Hình 1: Quan hệ giữa MG và MGC (hay CA)
MG ở đây có thể là
- Trunking Gateway (TGW): là thiết bị cung cấp giao diện kết nối giữa mạng
PSTN và mạng VoIP. Các TGW quản lý một số lượng lớn các kênh số.
- Residential Gateway (RGW): là thiết bị cung cấp các giao diện thoại tương
tự truyền thống qua mạng VoIP. RGW có thể là một trong các thiết bị xDSL, thiết
bị vô tuyến băng rộng.
- Access Gateway (AGW): là thiết bị cung cấp các giao diện thoại tương tự
truyền thống hoặc giao diện số cho tổng đài PBX qua mạng VoIP. AGW có thể là
VoIP Gateway dung lượng nhỏ.
Lê Minh Liêm 4
Trường Đại Học Phương Đông Khoa Công Nghệ Thông Tin
- Business Gateway (BGW): là thiết bị cung cấp giao diện cho tổng đài PBX
qua mạng VoIP.
Network Access Server: là thiết bị kết nối với mạng chuyển mạch kênh thông
qua modem để cung cấp đường truy nhập số liệu qua mạng Internet. MGCP là giao
diện chủ/tớ trong đó MGC quản lý trạng thái cuộc gọi và định hướng cho MG từng
bước trong quá trình thiết lập cuộc gọi. MG sẽ không thực hiện bất cứ một hoạt
động nào có liên quan đến cuộc gọi như cung cấp âm mời quay số, chuông, ... nếu
như không có yêu cầu của MGC.
MGCP dựa trên mô hình Client/Server. Giống như các giao thức khác, MGCP
sử dụng giao thức SDP để mô tả phương thức truyền thông và sử dụng RTP/RCTP
cho việc vận chuyển và giám sát truyền tin. MGCP định nghĩa các thực thể đầu
cuối (Endpoint- E). E là nguồn dữ liệu có thể là vật lý hay logic. Việc tạo nguồn vật
lý đòi hỏi phải thiết lập phần cứng, chẳng hạn như giao tiếp qua một Gateway và
kết thúc một kết nối lại tới mạng chuyển mạch kênh PSTN, còn nguồn logic tạo ra
từ phần mềm như nguồn tiếng nói.
Kết nối có thể là kết nối điểm - điểm hoặc đa điểm có thể được thiết lập qua
rất nhiều thành phần mạng, như gói tin thoại dùng RTP trên mạng TCP/UDP, dùng
AAL2 cho mạng ATM.
Các hoạt động của MGCP là các báo hiệu (Signal- S) gửi từ MGC tới MG và
các kết quả (Event- E) do MG gửi tới MGC. Quan hệ giữa MG và MGC như hình
Quá trình thiết lập giữa hai đầu cuối tại các Gateway cùng được quản lý bởi MGC
diễn ra như sau:
MGC gửi Creat Connection tới Gateway đầu tiên. Gateway sẽ định vị các tài
nguyên cần thiết và gửi trả thông tin cần thiết cho kết nối như địa chỉ IP, cổng
UDP, các tham số cho quá trình đóng gói. Các thông tin này được chuyển tiếp qua
MGC.
Lê Minh Liêm 5
Trường Đại Học Phương Đông Khoa Công Nghệ Thông Tin
MGC gửi Creat Connection tới Gateway thứ hai chứa các thông tin chuyển
tiếp ở trên. Gateway này trả về các thông số mô tả phiên của nó.
MGC gửi lệnh Modify Connection tới đầu cuối thứ nhất. Quá trình kết nối
thành công sau khi hoàn tất các bước trên.
2. Mô hình kết nối Mô hình kết nối trong giao thức MGCP được xác định dựa trên đầu cuối và
các kết nối được nhóm trong các cuộc gọi , một cuộc gọi có thể tương ứng với một
hay nhiều kết nối. Tuy theo từng loại MG mà đầu cuối có thể là một trong các loại
sau:
- Kênh số (DS0)
- Thuê bao tương tự
- Điểm truy nhập máy chủ cáp âm thông báo
- Điểm truy nhập đáp ứng thoại tương tác (IVR)
- Cầu hội nghị
- ...
Các phần tử đầu cuối, cuộc gọi, và kết nối được xác định dựa trên các nhạn
dạng tương ứng gồm: EndpointID, CallID và ConnectionID
2.1. Nhận dạng đầu cuối (EndpointID)
Nhận dạng đầu cuối bao gồm 2 phần: tên miền của MG quản lý đầu cuối và
tên đầu cuối trong MG, nó có dạng như sau: local-endpoint-name@domain-name
Trong đó tên miền có thể là tên như được định nghĩa trong RFC 1034 ví dụ
như: mygateway.whatever.net hoặc cũng có thể là địa chỉ IP được của miền như
được định nghĩa trong RFC 821 ví dụ như: [192.168.1.2]
Lê Minh Liêm 6
Trường Đại Học Phương Đông Khoa Công Nghệ Thông Tin
Tên đầu cuối được ghép lại từ các phần tử có ưu tiên, các phần tử cách nhau
bởi dấu “/”. Ví dụ như: term1/term2/term3, trong đó phần tử đầu tiên (term1) thể
hiện loại đầu cuối.
- Khi một phần tử được thay thế bằng ký tự “*” thì nó được hiểu là: một trong
các giá trị của phần tử này trong phạm vi của MG không phụ thuộc trạng thái dịch
vụ của đầu cuối là in-service hay out-service.
- Khi một phần tử được thay thế bằng ký tự “$” thì nó được hiểu là: một trong
các giá trị của phần tử này trong phạm vi của MG và nó chỉ ứng với các đầu cuối
đang ở trạng thái in-service.
2.2 Nhận dạng cuộc gọi (CallID)
Mỗi một cuộc gọi được phân biệt bằng bộ nhận dạng cuộc gọi (CallID) là một
chuối có độ dài lớn nhất là 32 ký tự được MGC tạo ra. CallID này là duy nhất trong
hệ thống hoặc ít nhất là trong tập hợp các MGC cung điều khiển các MG. Khi
MGC tạo nhiều kết nối ứng với một cuộc gọi thì các kết nối này phải có cùng
CallID
2.3 Nhận dạng kết nối (ConnectionID)
Nhận dạng kết nối (ConnectionID) do MG tạo ra khi nó nhận được yêu cầu
tạo kết nối. Nó là một chuỗi có độ dài lớn nhất là 32 ký tự. Ít nhất là 3 phút tính từ
khi kết nối sử dụng một bộ nhận dạng được giải phóng thì MG mới được sử dụng
lại nhận dạng kết nối cho một kết nối mới cho cùng một đầu cuối.
2.4 Tên MGC và các phần tử khác
Giao thức MGCP được thiết kế cho phép triển khai MGC dự phòng để tăng độ
tin cậy của mạng. Điều đó có nghĩa là không có sự liên kết cố định giữa các phần tử
với phần cứng hệ thống hoặc giữa các giao diện mạng.
Lê Minh Liêm 7
Trường Đại Học Phương Đông Khoa Công Nghệ Thông Tin
Tương tự như nhận dạng thiết bị đầu cuối, tên MGC bao gồm hai phần tên
Local và tên miền: [email protected]. Thông thường tên MGC có đầy đủ cả hai
phần này, tuy nhiên tên miền cũng được chấp nhận.
Tăng độ tin cây được thực hiện thông qua các thủ tục sau:
- Các phần tử chẳng hạn như các đầu cuối hoặc MGC được nhận dạng thông
qua tên miền của chúng chứ không được nhận dạng thông qua địa chỉ của chúng
trong mạng. Ứng với một tên miền có thể có nhiều địa chỉ. Nếu như một lệnh hoặc
một đáp ứng không thể chuyển tiếp đến một địa chỉ mạng thì nó có sẽ được truyền
đi tới địa chỉ mạng khác.
- Các phần tử có thể chuyển sang hệ thống khác. Liên kết giữa tên logic (tên
miền và hệ thống cụ thể được lưu trong DNS. Các MGC và MG phải giám sát thời
gian hiệu lực đối với các bản tin mà chúng đọc từ DNS. Các phần tử này phải yêu
cầu DSN làm mới thông tin này nếu như quá thời gian hiệu lực.
Bên cạnh việc sử dụng tên miền và DSN, NotifiedEntity được sử dụng để làm
tăng độ tin cậy trong MGCP. NotifiedEntity của một đầu cuối chính là MGC hiện
đang điều khiển đầu cuối. Tại một thời điểm bất kỳ một đầu cuối chỉ tương ứng với
một NotifiedEntity, nó xác định đích mà đàu cuối sẽ gửi lệnh tới.
Khi khởi động, NotifiedEntity phải được thiết lập giá trị đã được khai bào và
NotifiedEntity sẽ không thay đổi cho đến khi đầu cuối nhận được tham số
NotifiedEntity có giá trị khác.
3. Các lệnh điều khiển GatewayGiao thức MGCP bao gồm 9 lệnh sau đây:
- EPCF (EndpoinConfiguration): là lệnh gửi từ MGC tới MG để đặt cấu hình
đầu cuối của MG do nó quản lý.
Lê Minh Liêm 8
Trường Đại Học Phương Đông Khoa Công Nghệ Thông Tin
- RQNT (NotificationRequest): là lệnh gửi từ MGC tới MG để yêu cầu MG
giám sát một sự kiện hoặc yêu cầu phát một tín hiệu tại đầu cuối của MG do nó
quản lý.
- NTFY (Notify): là lệnh gửi từ MG tới MGC để thông báo về việc xuất hiện
sự kiện mà MGC yêu cầu giám sát.
- CRCX (CreateConnection): là lệnh gửi từ MGC tới MG để thiết lập kết nối
tới một đầu cuối của MG mà nó quản lý.
- MDCX ModifyConnection: là lệnh gửi từ MGC tới MG để thiết lập kết nối
các tham số của một kết nối đa được thiết lập
- DLCX DeleteConnection: là lệnh gửi từ MGC tới MG hạơc từ MG tới MGC
để giải phóng một hay nhiều kết nối đã được thiết lập.
- AUEP (AuditEnpoint): là lệnh gửi từ MGC tới MG để kiểm tra trạng thái
của một đầu cuối.
- RSIP (RestarInProgress): là lệnh gửi từ MG tới MGC để thông báo việc khởi
động lại một đầu cuối để đưa đầu cuối từ trạng thái không hoạt động (Out of
service) sang trạng thái hoạt động (In service) hoặc ngược lại từ trạng thái hoạt
động sang trạng thái không hoạt động.
3.1. Sự kiện và tín hiệu
Trong giao thức MGCP,các hoạt động tại đầu cuối được chia thành hai loại là
sự kiện và tín hiệu. MGC có tín hiệuẻ yêu cầu MG thông báo việc xuất hiện một sự
kiện nào đó tại một đầu cuối(ví dụ như sự kiện nhấc máy) bằng cách đưa tên sự
kiện vào tham số RequestedEvents trong lệnh RQNT. MGC cũng có tín hiệu yêu
cầu MG cấp một tín hiệu tới đầu cuối (ví dụ như am mời quay số) băng cách đưa
tên của sự kiện vào tham số SingalRequets trong lệnh RQNT.
Lê Minh Liêm 9
Trường Đại Học Phương Đông Khoa Công Nghệ Thông Tin
MGC cũng có tín hiệuể yêu cầu MG phát hiện một nhóm sự kiện thông qua
việc sử dụng các kí tự “*” thay cho tên gói và “all” thay cho tên sự kiện: chẳng hạn
như: “foo/all”được hiểu là tất cả các sự kiện trong gói “foo” “*/bar” được hiểu là
sự kiện “bar” trong tất cả các gói do MG hỗ trợ;
3.2. Mã phúc đáp và mã lỗi
Trong giao thức MGCP tất cả các lệnh đều phải được phúc đáp xác nhận.
Trong các bản tin phúc đáp có chứa mã phúc đáp chỉ tín hiệu trạng thái của lệnh.
Mã phúc đáp là một số nguyên và có ý nghĩa như sau:
- Giá trị từ 000 đến 099 chỉ thị đáp ứng xác nhận
- Giá trị từ 100 đến 199 chỉ thị phúc đáp khai báo (provisional response)
- Giá trị từ 200 đến 299 chỉ thị lệnh được thực hiện thành công
- Giá trị từ 400 đến 499 chỉ thị phiên giao dịch lỗi
- Giá trị từ 500 đến 599 chỉ thị lỗi cố định
Sau đây là các giá trị mã phúc đáp đã được định nghĩa:
- 000 đáp ứng xác nhận
- 100 phiên giao dịch đang được thực hiện và tiếp sau là bản tin chỉ thị hoàn
thành
- 101 phiên giao dịch được giải pháp thỏa mãn SLtín hiệu bất kỳ.
Lê Minh Liêm 10
Trường Đại Học Phương Đông Khoa Công Nghệ Thông Tin
4. Thiết lập cuộc gọi
Hình 2: Thiết lập giữa điện thoại A và điện thoại B.
Trình tự thiết lập giữa điện thoại A và điện thoại B.
Khi máy điện thoại A nhấc máy Gateway A gửi bản tin cho MGC Gateway A tạo âm mời quay số và nhận số bị gọi số bị gọi được gửi cho MGC MGC gửi lệnh cho Gateway B Gateway B đổ chuông ở máy B MGC gửi lệnh cho Gateway A và B tạo phiên kết nối RTP/RTCP
5. Đánh giá MGCP
Các ưu điểm của MGCP:
MGCP đặc biệt hữu ích đối với các ứng dụng triển khai lớn, các hệ thống
phức tạp. Nó cho phép tích hợp tốt với mạng SS7 tạo sự thuận lợi cho quá trình
điều khiển và xử lý cuộc gọi.
MGCP phân tách riêng biệt hai chức năng chính là chức năng điều khiển
luồng phương thức và chức năng báo hiệu nên việc thi hành dễ dàng hơn.
Tuy nhiên nó vẫn có một số nhược điểm là trở nên quá phức tạp đối với các
ứng dụng nhỏ. Ngoài ra nó chỉ tập trung vào việc chuyển đổi giữa các luồng
Lê Minh Liêm 11
Trường Đại Học Phương Đông Khoa Công Nghệ Thông Tin
phương thức. Giao thức này được hoàn thiện trong chuẩn H.248/MEGACO tháng
11/2000 với sự hợp tác giữa hai tổ chức ITU và IETF.
6. So sánh giữa MGCP, SIP và H.323
MGCP khác với SIP và H.323 ở chỗ:
MGCP là kiểu Client/Server trong khi SIP và H.323 là giao thức ngang cấp
MGCP được sử dụng giữa MG và MGC.
MGCP ra đời nhằm tách biệt các chức năng báo hiệu và thiết lập đường truyền. MGC (softswitch) sau khi nhận được yêu cầu thiết lập cuộc gọi SIP hoặc H.323 sẽ dùng giao thức MGCP để điều khiển Gateway thiết lập phiên kết nối giữa hai đầu cuối.
Trong hình vẽ trên ta thấy chức năng báo hiệu đã được tách biệt và do MGC đảm nhiệm. Chúng ta xem xét việc thiết lập cuộc gọi trong hai trường hợp: cuộc gọi trong mạng H.323 và trong mạng MGCP.
Lê Minh Liêm 12
Trường Đại Học Phương Đông Khoa Công Nghệ Thông Tin
Hình 3: Báo hiệu thiết lập cuộc gọi trong hai mạng H.323 và MGCP
H.323 MGCP
Thuê bao nhấc máy và quay sốGateway phân tích định tuyến cuộc gọiHai Gateway trao đổi thông tinGateway bị gọi đổ chuông ở số máy bị gọiHai Gateway thiết lập phiên kết nối RTP/RTCP.
Thuê bao nhấc máy và quay sốGateway thông báo cho MGCMGC phân tích số, định tuyến và gửi lệnh cho Gateway bị gọi để đổ chuông ở thuê bao bị gọiMGC gửi lênh cho 2 Gateway để thiết lập phiên kết nối RTP/RTCP.
Bảng 4: So sánh giữa các giao thức SIP, H.323, MGCP
Lê Minh Liêm 13
Trường Đại Học Phương Đông Khoa Công Nghệ Thông Tin
KẾT LUẬN
Qua việc tìm hiểu trên, em đã nắm được tổng quan chung nhất về khái niệm,
kiến trúc và lợi ích của “Giao thức điều khiển cổng phương tiện - MGCP”.
MGCP hoạt động theo kiểu server/client, phân tách rõ ràng 2 chức năng điều
khiển luồng và chức năng báo hiệu thông qua MG và MGC (CA). Nó chỉ áp dụng
cho mạng lớn, dễ dàng tích hợp với mạng SS7 và hỗ trợ cho 2 giao thức H.323 và
SIP.
Tuy nhiên, MGCP rất phức tạp với các mạng nhỏ, nó chỉ tập trung vào chức
năng chuyển đổi giữa các luồng. Giao thức này được hoàn thiện trong chuẩn
H.248/MEGACO tháng 11/2000 với sự hợp tác giữa hai tổ chức ITU và IETF.
Lê Minh Liêm 14
Trường Đại Học Phương Đông Khoa Công Nghệ Thông Tin
TÀI LIỆU THAM KHẢO
1. Bài giảng NGN, HVCNBCVT.
2. Nghiên cứu công nghệ VoIP - Nguyễn Công Bách K43 ĐHBKHN
3. Bài giảng VoIP - Nguyễn Thanh Trà HVCNBCVT
Lê Minh Liêm 15