Upload
buon-ari
View
41
Download
2
Embed Size (px)
Citation preview
GVHD: ThS. Phù Trần Tín Tìm hiểu các giao thứcSIP,MGCP,SIGTRAN
BỘ CÔNG THƯƠNG TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP TPHCM
KHOA CÔNG NGHỆ ĐIỆN TỬ-------***-------
BÁO CÁO MÔN HỌCMẠNG THẾ HỆ MỚI
NGN
ĐỀ TÀI 10: TÌM HIỂU CÁC GIAO THỨC SIP, MGCP,SIGTRAN
Giáo viên hướng dẫn: ThS.PHÙ TRẦN TÍN Sinh viên thực hiện: 1 Nguyễn CaoThắng 11375781
2 Hồ Thanh Thiện 113677613 Đỗ Văn Thuần 11368941
4 Bùi Minh Tuấn 11364131
Lớp : DHDT7DLT
DHDT7DLT – Nhóm 10 1
GVHD: ThS. Phù Trần Tín Tìm hiểu các giao thứcSIP,MGCP,SIGTRAN
NHẬN XÉT CỦA GIÁO VIÊN BỘ MÔN
…………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………
Điểm: ........ (bằng chữ ………………..)
Ngày 11 Tháng 07 Năm 2013
DHDT7DLT – Nhóm 10 2
GVHD: ThS. Phù Trần Tín Tìm hiểu các giao thứcSIP,MGCP,SIGTRAN
MỤC LỤC
CHƯƠNG 1. GIAO THỨC KHỞI TẠO PHIÊN SIP....................................................41.1 Các đặc điểm và chức năng của SIP....................................................................4
1.1.1 Tổng quan về SIP..........................................................................................41.1.2. Các đặc điểm của giao thức SIP...................................................................6
1.1.2.1 Thông điệp SIP (SIP messages).............................................................61.1.2. Các chức năng của giao thức SIP.................................................................9
1.2. Các khái niệm và các thành phần của hệ thống SIP..........................................101.2.1. Các khái niệm.............................................................................................101.2.2. Các thành phần của hệ thống SIP...............................................................14
1.3. Khái quát về hoạt động của SIP........................................................................161.3.1. Địa chỉ SIP.................................................................................................171.3.2. Quá trình định vị tới máy chủ SIP..............................................................171.3.3. Giao dịch SIP.............................................................................................191.3.4. Lời mời SIP................................................................................................201.3.5. Định vị người dùng....................................................................................211.3.6. Thay đổi một phiên hiện tại.......................................................................21
1.4. Các loại bản tin của SIP....................................................................................221.4.1. Bản tin yêu cầu (Request)..........................................................................221.4.2. Bản tin phúc đáp (Response)......................................................................231.4.3. Cấu trúc bản tin SIP...................................................................................25
1.5. Đánh giá SIP.....................................................................................................26CHƯƠNG 2. GIAO THỨC ĐIỀU KHIỂN CỔNG PHƯƠNG TIỆN MGCP.............30
2.1 Tổng quan về MGCP.........................................................................................302.2 Kiến trúc và các thành phần...............................................................................302.3 Các khái niệm cơ bản........................................................................................332.4 Các lệnh sử dụng trong MGCP..........................................................................332.5 Thiết lập cuộc gọi thông qua MGCP.................................................................352.6 So sánh giữa MGCP, SIP VÀ H.323.................................................................362.7 Đánh giá giao thức MGCP.................................................................................36
CHƯƠNG 3. BÁO HIỆU SỐ 7 QUA MẠNG IP – SIGTRAN..................................383.1. Giới thiệu chung................................................................................................383.2. Giới thiệu về SIGTRAN...................................................................................403.3 Mô hình chức năng.............................................................................................413.3. Động lức phát triển giao thức truyền tải mới....................................................423.4. Giao thức điều khiển luồng truyền tải – SCTP.................................................42
3.4.1. Tổng quan về kiến trúc của SCTP..............................................................423.4.2. Tổng quan về chức năng của SCTP...........................................................433.4.3. Khuôn dạng tiêu đề chung của SCTP........................................................44
3.5. M2PA................................................................................................................443.6. M2UA...............................................................................................................463.7 So sánh M2PA và M2UA.................................................................................473.8. M3UA...............................................................................................................473.9. SUA...................................................................................................................503.10. So sánh M3UA và SUA..................................................................................52
DHDT7DLT – Nhóm 10 3
GVHD: ThS. Phù Trần Tín Tìm hiểu các giao thứcSIP,MGCP,SIGTRAN
3.11 KẾT LUẬN......................................................................................................53TÀI LIỆU THAM KHẢO............................................................................................54
CHƯƠNG 1. GIAO THỨC KHỞI TẠO PHIÊN SIP
1.1 Các đặc điểm và chức năng của SIP
1.1.1 Tổng quan về SIPGiao thức khởi tạo phiên SIP (Secssion Initiation Protocol) là giao thức
điều khiển báo hiệu thuộc lớp ứng dụng được sử dụng để thiết lập, duy trì và kết
thúc các phiên multimedia hay các cuộc gọi qua mạng nền IP. SIP được sử dụng
để thiết lập điều khiển và xoá bỏ cuộc gọi. SIP liên kết với các giao thức IETF
khác như SAP (giao thức thông báo phiên), SDP (giao thưc mô tả phiên), RSVP
(giao thức giữ trước tài nguyên), RTP (giao thức truyền tải thời gian thực), RTSP
(giao thức phân phối dòng tin đa phương thức) cung cấp một số lượng lớn các
dịch vụ VoIP. Cấu trúc SIP tương tự như cấu trúc HTTP (Giao thức Client -
Server) bao gồm tập hợp các yêu cầu được gửi từ SIP client tới SIP server.
Server xử lý các yêu cầu này và trả lời client, một bản tin trả lời cùng với các
bản tin liên kết với nó gọi là một SIP transaction.
SIP cũng có thể kết hợp với các giao thức báo hiệu và thiết lập cuộc gọi
khác. Theo cách đó, một hệ thống đầu cuối dùng SIP để xác định địa chỉ hợp lệ
của một hệ thống và giao thức từ một địa chỉ gửi đến là giao thức độc lập. Ví dụ,
SIP có thể dùng để chỉ ra rằng người tham gia có thể thông qua H.323, cổng
H.245, địa chỉ người dùng rồi dùng H.245 để thiết lập cuộc gọi.
SIP hỗ trợ 5 dịch vụ trong việc thiết lập và kết thúc các phiên truyền
thông:
Định vị người dùng: xác định vị trí của người dùng tiến hành hội
thoại.
Năng lực người dùng: xác định các phương thức và các tham số
tương ứng trong hội thoại.
Xác định những người sẵn sàng tham gia hội thoại.
Thiết lập các tham số cần thiết cho cuộc gọi.
DHDT7DLT – Nhóm 10 4
GVHD: ThS. Phù Trần Tín Tìm hiểu các giao thứcSIP,MGCP,SIGTRAN
Điều khiển cuộc gọi: bao gồm cả quá trình truyền và kết thúc cuộc
gọi.
SIP là một giao thức chuẩn do IETF đưa ra nhằm mục đích thực hiện một
hệ thống có khả năng truyền qua môi trường mạng IP. SIP được định nghĩa như
một
Client-Server trong đó các yêu cầu được bên gọi (bên Client) đưa ra và
bên bị gọi (Server) trả lời nhằm đáp ứng yêu cầu của bên gọi. SIP sử dụng một
số kiểu bản tin và trường giống HTTP, xác định thông tin cụ thể giống như giao
thức được sử dụng trên Web.
DHDT7DLT – Nhóm 10 5
GVHD: ThS. Phù Trần Tín Tìm hiểu các giao thứcSIP,MGCP,SIGTRAN
1.1.2. Các đặc điểm của giao thức SIP
1.1.2.1 Thông điệp SIP (SIP messages)Các thành phần tham gia vào một hệ thống dựa trên SIP để báo hiệu cho nhau
bằng trao đổi các thông điệp SIP. Đây là đặc điểm dễ nhận thấy nhất của giao
thức SIP. Bằng cách phân tích cấu trúc các thông điệp . Chúng ta có thể quản lý
các cuộc gọi dễ dàng . Các thông điệp SIP dựa trên text có cấu trúc chung gồm 3
phần: Request line, header, body, mô tả hình 1.1 sau:
Hình 1.1 Cấu trúc một thông điệp SIP
SIP có 6 phương thức chính cho việc quản lý một phiên cơ bản:
INVITE: Đây là phương thức được gửi đi để khởi động báo hiệu cuộc gọi
yêu cầu để khởi động để mời một user kết nối cuộc gọi. Thông điệp này
chứa thông tin cơ bản như định danh người gọi và người được gọi…
ACK: Một phiên SIP đơn giản bắt đầu từ phương thức INVITE. Khi
người được gọi xác nhận rằng đã nhận được lời gọi INVITE, sẽ có một
thông điệp trả lời với phương thức ACK. Thông điệp này chứa đặc tả
SDP về các thông số để thiết lập phiên truyền thông
OPTIONS: Thông điệp được gửi để truy vấn các khả năng của hai bên.
BYE: Kết thúc cuộc gọi giữa hai người sử dụng.thông điệp này không cần
có trả lời từ đối tác
REGISTER: Cung cấp sự ánh xạ phân giải địa chỉ. Ví dụ như server biết
vị trí của người sử dụng khác.
CANCEL: Kết thúc một yêu cầu sắp xảy ra nhưng không kết thúc cuộc
gọi
DHDT7DLT – Nhóm 10 6
GVHD: ThS. Phù Trần Tín Tìm hiểu các giao thứcSIP,MGCP,SIGTRAN
INFO: Được sử dụng mang thông tin giữa cuộc gọi. INFO không được
dùng để thay đổi trạng thái của một cuộc gọi đã ổn định.
Có hai loại thông điệp SIP: Yêu cầu và đáp ứng. Tương ứng với thông điệp UAC
(user Agent client) gửi đến UAS ( User Agent Server) và thông điệp UAS trả lời
UAC. Hai thông điệp này hoàn toàn khác nhau. Thông điệp yêu cầu được gửi để
thông tin cho thành phần nhận thưc hiện các tác vụ cụ thể. Thông điệp đáp ứng
được gửi trả các báo cáo về kết quả thực hiện các tác vụ đó.
Về cấu trúc hai thông điệp khác nhau ở dòng bắt đầu thông điệp yêu cầu
cho các phương thức và URI mà yêu cầu được gửi đến. Thông điệp đáp ứng có
dòng bắt đầu chứa mã trả lời mà không có URI vì nó chỉ cần trả lại đúng địa chỉ
của yêu cầu.
Các mã trả lời thông dụng nhất:
100 trying. Yều cầu đã nhận tại một server ở chặng kế tiếp. Mã này được
trả về từ proxy server hoặc server trung gian khác trên đường báo hiệu
cuộc gọi.
180 Ringing
181 call forwarding. Nếu một proxy server trả về mã này, cũng có thể
nhận diện nơi mà nó đang chuyển cuộc gọi trong phần thân của thông
điệp này.
182 Queued for services. Các ứng dụng có thể truy hoãn trả lời cuộc gọi
cho đến khi nó đã phục vụ các cuộc gọi đang xếp hạng.
183 session progress
200 OK, yêu cầu được thực thi thành công
400 Bad request. Lỗi cú pháp thông điệp
401 User yêu cầu xác thực trước khi thực hiện yêu cầu này
403 forbidden. Nhận được khi cố gắng gọi một số không được chấp nhận
từ thuê bao của chúng ta
404 không tìm thấy user
408 Request time – out
500 lỗi server
600 Buy
DHDT7DLT – Nhóm 10 7
GVHD: ThS. Phù Trần Tín Tìm hiểu các giao thứcSIP,MGCP,SIGTRAN
603 decline
604 does not exist
phần đầu header mang các thông tin cần thiết cho chuyển tiếp củng như xử lý
thông điệp . Phần header chỉ hoặc xuất hiện ở thông điệp yêu cầu hoặc yêu cầu
đáp ứng
phần thân body của thông điệp có thể có hoặc không. Khi thông điệp có phần
thân thì phần này được mô tả trong phần header trường content- type. Phần thân
có nghĩa khác nhau.
Thông thường trong trình xử lý thiết lập phiên, các thành phần có liên quan trao
đổi thông tin của phiên trong phần thân của thông điệp SIP. Các thông tin này
thường mô tả bằng thông điệp SDP.
Theo định nghĩa của IETF, “Giao thức khởi tạo phiên” SIP (Session Initiation
Protocol) là “giao thức báo hiệu lớp ứng dụng mô tả việc khởi tạo, thay đổi và
giải phóng các phiên kết nối tương tác đa phương tiện giữa những người sử
dụng”. SIP có thể sử dụng cho rất nhiều dịch vụ khác nhau trong mạng IP như
dịch vụ thông điệp thoại, hội nghị thoại, E-mail, dạy học từ xa, quảng bá
(MPEG, MP3...), truy nhập HTML, XML, hội nghị video...
SIP dựa trên ý tưởng và cấu trúc của HTTP (HyperText Transfer Protocol) –
giao thức trao đổi thông tin của World Wide Web. Nó được định nghĩa như một
giao thức Client-Server, trong đó các yêu cầu được chủ gọi (Client) đưa ra và
bên bị gọi (Server) trả lời. SIP sử dụng một số kiểu bản tin và các trường mào
đầu của HTTP, xác định nội dung luồng thông tin theo mào đầu thực thể (mô tả
nội dung - kiểu loại) và cho phép xác nhận các phương pháp sử dụng giống nhau
được sử dụng trên Web. Kinh nghiệm trong sử dụng các giao thức Internet mail
(SMTP) đã cung cấp rất nhiều cho việc phát triển SIP, trong đó tập trung vào khả
năng thích ứng của báo hiệu trong tương lai.
SIP định nghĩa các bản tin INVITE và ACK giống như bản tin Setup và Connect
trong H.225, trong đó cả hai đều định nghĩa quá trình mở một kênh đáng tin cậy
mà thông qua đó cuộc gọi có thể đi qua. Tuy nhiên khác với H.225, độ tin cậy
của kênh này không phụ thuộc vào TCP. Việc tích hợp độ tin cậy vào lớp ứng
dụng này cho phép kết hợp một cách chặt chẽ các giá trị điều chỉnh để ứng dụng,
DHDT7DLT – Nhóm 10 8
GVHD: ThS. Phù Trần Tín Tìm hiểu các giao thứcSIP,MGCP,SIGTRAN
có thể tối ưu hoá VoIP.
Cuối cùng, SIP dựa vào giao thức mô tả phiên SDP, một tiêu chuẩn khác của
IETF, để thực hiện sự sắp xếp tương tự theo cơ cấu chuyển đổi dung lượng của
H.245.
SDP được dùng để nhận dạng mã tổng đài trong những cuộc gọi sử dụng một mô
tả nguyên bản đơn. SDP cũng được sử dụng để chuyển các phần tử thông tin của
giao thức báo hiệu thời gian thực RTSP để sắp xếp các tham số hội nghị đa điểm
và định nghĩa khuôn dạng chung cho nhiều loại thông tin khi được chuyển trong
SIP.
Giao thức SIP được thiết kế với những tiêu chí hỗ trợ tối đa cho các giao thức
khác đã ra đời trước đó. Giao thức SIP nó được tích hợp với các giao thức đã có
của tổ chức IETF, nó có khả năng mở rộng, hỗ trợ đầu cuối và với SIP thì việc
cung cấp dịch vụ mới trở nên dễ dàng và nhanh chóng khi triển khai. SIP có 5
tính năng sau:
Tích hợp với các giao thức đã có của IETF.
Đơn giản và có khả năng mở rộng.
Hỗ trợ tối đa sự di động của đầu cuối.
Dễ dàng tạo tính năng mới cho dịch vụ và dịch vụ mới.
Khả năng liên kết hoạt động với mạng điện thoại hiện tại.
1.1.2. Các chức năng của giao thức SIPSIP là một giao thức điều khiển lớp ứng dụng mà nó có thể thiết lập, sửa đổi và
kết thúc các phiên truyền thông đa phương tiện (các hội nghị) hay các cuộc gọi
điện thoại qua Internet. SIP có thể mời các thành viên tham gia vào các phiên
truyền thông đơn hướng hoặc đa hướng; bên khởi tạo phiên không nhất thiết phải
là thành viên của phiên đó. Phương tiện và các thành viên có thể được bổ sung
vào một phiên đang tồn tại.
SIP hỗ trợ việc ánh xạ tên và các dịch vụ chuyển tiếp một cách trong suốt, vì thế
nó cho phép thực hiện các dịch vụ thuê bao điện thoại của mạng thông minh và
mạng ISDN. Những tiện ích này cũng cho phép thực hiện các dịch vụ của các
thuê bao di động. SIP hỗ trợ 5 khía cạnh của việc thiết lập và kết thúc các truyền
thông đa phương tiện sau:
DHDT7DLT – Nhóm 10 9
GVHD: ThS. Phù Trần Tín Tìm hiểu các giao thứcSIP,MGCP,SIGTRAN
Định vị người dùng (User location): xác định hệ thống đầu cuối được sử
dụng trong truyền thông.
Các khả năng người dùng (User capabilities): xác định phương tiện và các
thông số phương tiện được sử dụng.
Tính khả dụng người dùng (User Availability): xác định sự sẵn sàng của bên
được gọi để tiến hành truyền thông.
Thiết lập cuộc gọi (Call setup): “đổ chuông”, thiết lập các thông số của cuộc
gọi tại cả hai phía bị gọi và chủ gọi.
Xử lý cuộc gọi (Call handling): bao gồm chuyển tải và kết thúc cuộc gọi.
1.2. Các khái niệm và các thành phần của hệ thống SIP
1.2.1. Các khái niệmPhần này đưa ra một số thuật ngữ liên quan đến các quy tắc được sử dụng bởi
các
thành viên trong các truyền thông SIP:
Call: Một cuộc gọi bao gồm tất cả các thành viên sử dụng một tài nguyên chung
trong
một hội nghị. Một cuộc gọi SIP được nhận dạng bởi một nhận dạng cuộc gọi
(call – ID) duy nhất. Do đó, một ví dụ là nếu một người sử dụng được mời vào
phiên truyền thông đa hướng bởi đồng thời một vài người, thì mỗi một lời mời
này sẽ là một cuộc gọi duy nhất.
Call leg: Một call leg được nhận dạng bằng sự kết hợp của trường mào đầu Call
– ID và địa chỉ xác định, thẻ của các trường mào đầu “To” và “From”.
Client: là một chương trình ứng dụng gửi các yêu cầu SIP. Các Client có thể
hoặc không thể tương tác một cách trực tiếp với một người sử dụng. Các User
agent (UA) và các Proxy chứa các client (và các Server).
Conference (hội nghị): là một phiên truyền thông đa phương tiện được nhận biết
bởi một sự mô tả phiên chung. Một hội nghị có thể không có hoặc có nhiều
thành viên và bao gồm những trường hợp của một hội nghị đa phương, hội nghị
nhiều mắt lưới (full – mesh) và một “cuộc gọi điện thoại” hai bên, cũng như các
hỗn hợp của các trường hợp này. Bao nhiêu cuộc gọi cũng có thể được sử dụng
DHDT7DLT – Nhóm 10 10
GVHD: ThS. Phù Trần Tín Tìm hiểu các giao thứcSIP,MGCP,SIGTRAN
để tạo ra một hội nghị.
Downstream (luồng xuống): gồm các yêu cầu được gửi trực tiếp từ phía chủ gọi
đến phía bị gọi (nghĩa là từ UA Client đến UA Server).
Final response (phúc đáp cuối cùng): là một phúc đáp kết thúc một phiên giao
dịch SIP, trái lại một phúc đáp tạm thời không kết thúc một phiên giao dịch SIP.
Tất cả các phúc đáp: 2xx, 3xx, 4xx, 5xx và 6xx đều là các phúc đáp cuối cùng.
Initiator, calling party, caller (Bên khởi tạo, bên đang gọi, người gọi): Là bên
khởi tạo một lời mời phiên. Chú ý rằng bên đang gọi không phải là bên tạo ra hội
nghị.
Invitation (lời mời): Là một yêu cầu được gửi đến một người sử dụng (hay một
dịch vụ) để yêu cầu tham gia vào một phiên. Một lời mời SIP thành công gồm 2
giao dịch: một yêu cầu INVITE được theo sau bởi một yêu cầu ACK.
Invitee, invited user, called party, callee (bên được mời, người bị gọi): Là
người hay dịch vụ mà bên đang gọi đang mời tham gia vào một hội nghị.
Yêu cầu hay phúc đáp đồng hình: Hai yêu cầu hoặc hai phúc đáp được định
nghĩa là đồng hình theo các ý đồ của tài liệu này nếu chúng có cùng các giá trị
trong các trường mào đầu của Call – ID, To, From và Cseq. Thêm vào đó,
các yêu cầu đồng hình phải có cùng Request – URI và cùng thông số nhánh
trong trường mào đầu Via của chúng.
Location server (máy chủ định vị): phần dịch vụ định vị.
Location service (dịch vụ định vị): Một dịch vụ định vị được sử dụng bởi một
SIP redirect hay proxy server để có được thông tin về các vị trí có thể có của
người bị gọi. Các ví dụ về các tài nguyên của thông tin định vị gồm các đăng ký
SIP, các cơ sở dữ liệu hay các giao thức đăng ký di động. Các dịch vụ định vị
được đưa ra bởi các máy chủ định vị. Các máy chủ định vị có thể là một phần
của một máy chủ SIP, nhưng cách thức mà một máy chủ SIP yêu cầu các dịch vụ
định vị nằm ngoài phạm vi của tài liệu này. Outbound proxy: Là một proxy
nằm gần nơi tạo ra các yêu cầu. Nó nhận tất cả các yêu cầu đi ra từ một UAC cụ
thể, các Request – URL của các yêu cầu này nhận dạng một host không phải là
outbound proxy. Sau bất kỳ một xử lý cục bộ nào, outbound proxy sẽ gửi
những yêu cầu này đến các địa chỉ được chỉ ra trong Request – URL. (Tất cả các
DHDT7DLT – Nhóm 10 11
GVHD: ThS. Phù Trần Tín Tìm hiểu các giao thứcSIP,MGCP,SIGTRAN
proxy server khác đều được xem xét một cách đơn giản như là các proxy, chứ
không phải là các inbound proxy).
Parallel search (tìm kiếm song song): Trong một tìm kiếm song song, một
proxy đưa ra một vài yêu cầu đến các vị trí có thể có của người sử dụng trong
khi nhận một yêu cầu đầu vào. Hơn là đưa ra một yêu cầu và sau đó đợi cho đến
khi nhận được phúc đáp cuối cùng trước khi đưa ra một yêu cầu kế tiếp như
trong một tìm kiếm tuần tự, một tìm kiếm song song đưa ra các yêu cầu mà
không cần đợi kết quả của các yêu cầu trước đó.
Provisional response (phúc đáp tạm thời): Là một phúc đáp được sử dụng bởi
máy chủ để chỉ thị tiến trình nhưng nó không kết thúc một giao dịch SIP. Phúc
đáp 1xx là phúc đáp tạm thời, các phúc đáp khác là các phúc đáp cuối cùng.
Proxy, proxy server: Là một chương trình trung gian hoạt động cả như là một
máy chủ và một máy khách cho mục đích tạo ra các yêu cầu với tư cách của các
máy khách khác. Các yêu cầu được cung cấp một cách nội bộ hoặc đưa chúng
qua các máy chủ khác sau những biên dịch cần thiết. Một proxy biên dịch và nếu
cần thiết nó ghi lại một bản tin yêu cầu trước khi chuyển tiếp bản tin đó. Ví dụ,
các proxy server được sử dụng để định tuyến các yêu cầu, thực thi các chính
sách, điều khiển các tường lửa.
Redirect server: Một redirect server là một máy chủ mà nó nhận một yêu cầu
SIP, ánh xạ địa chỉ hiện có thành một số địa chỉ mới và gửi trả lại các địa chỉ
này cho máy khách. Không giống như một proxy server, nó không khai báo yêu
cầu SIP của bản thân nó. Không giống như một UA Server, nó không chấp nhận
các cuộc gọi.
Registrar (trạm đăng ký): Một trạm đăng ký là một máy chủ mà nó nhận các
yêu cầu
REGISTER. Một trạm đăng ký được định vị chung với một proxy hoặc redirect
server và có thể tạo ra sẵn sàng thông tin của nó thông qua máy chủ định vị
(location server).
Ringback (hồi âm chuông): Hồi âm chuông là chuông báo hiệu được tạo ra bởi
ứng dụng của máy khách phía gọi để chỉ ra rằng bên bị gọi đang được thông báo
(đổ chuông).
DHDT7DLT – Nhóm 10 12
GVHD: ThS. Phù Trần Tín Tìm hiểu các giao thứcSIP,MGCP,SIGTRAN
Server (máy chủ): Một máy chủ là một chương trình ứng dụng mà nó nhận các
yêu cầu để xử lý và gửi trả lại các đáp ứng cho những yêu cầu đó. Các máy chủ
là các proxy, redirect, UAS hoặc registrar.
Session (phiên): Từ định nghĩa SDP: “Một phiên truyền thông đa phương tiện là
một tập các phía gửi và nhận đa phương tiện và các luồng dữ liệu từ phía gửi đến
phía nhận. Một hội nghị đa phương tiện là một ví dụ của một phiên truyền thông
đa phương tiện.” Như được định nghĩa, một bên bị gọi có thể được mời tham gia
cùng 1 phiên một vài lần bởi các cuộc gọi khác nhau. Nếu SDP được sử dụng,
một phiên được định nghĩa bằng sự ghép nối của các phần tử: tên người dùng, ID
của phiên, kiểu mạng, kiểu địa chỉ và địa chỉ trong các trường gốc.
(SIP) transaction (giao dịch SIP): Một giao dịch SIP xuất hiện giữa một máy
khách và một máy chủ và bao gồm tất cả các bản tin từ yêu cầu đầu tiên được
gửi từ máy khách đến máy chủ cho đến phúc đáp cuối cùng được gửi từ máy
chủ về máy khách. Một giao dịch được nhận biết bởi chuỗi số Cseq trong một
call leg đơn lẻ. Yêu cầu ACK có cùng chuỗi số Cseq với yêu cầu INVITE tương
ứng, nhưng bao gồm một giao dịch của riêng nó.
Stateless Proxy (proxy phi trạng thái): Là một thực thể logic mà nó không duy
trì trạng thái của một phiên giao dịch SIP. Một proxy phi trạng thái chuyển tiếp
tất cả các yêu cầu nó nhận ở đường xuống và tất cả các phúc đáp nó nhận ở
đường lên.
Stateful Proxy (proxy trạng thái): Là một thực thể logic duy trì thông tin trạng
thái
của ít nhất một giao dịch SIP.
Upstream (đường lên): Các phúc đáp được gửi trực tiếp từ máy chủ UA đến
máy khách UA.
URL – encoded (mã URL): Là một chuỗi ký tự được mã hoá theo RFC 1738.
User agent client (UAC): Một UAC là một ứng dụng khách khởi đầu một yêu
cầu SIP
User agent server (UAS): Một UAS là một ứng dụng chủ mà nó giao tiếp với
người sử dụng khi một yêu cầu SIP được nhận và nó gửi trả lại một phúc đáp
cho người sử dụng đó. Phúc đáp đó chấp nhận, từ chối hoặc chuyển tiếp yêu cầu
DHDT7DLT – Nhóm 10 13
GVHD: ThS. Phù Trần Tín Tìm hiểu các giao thứcSIP,MGCP,SIGTRAN
đó.
User agent (UA): Một ứng dụng hoạt động cả như UAC và UAS.
Các Proxy, Redirect, Location và Registrar Server được định nghĩa ở trên là các
thực thể logic; các sự thực thi có thể kết hợp chúng thành một chương trình ứng
dụng đơn nhất. Các thuộc tính của các kiểu máy chủ SIP khác nhau được cho
trong bảng 4.1.
Bảng 4.1. Các thuộc tính của các kiểu máy chủ SIP khác nhau
1.2.2. Các thành phần của hệ thống SIPXét trên quan điểm Client / Server, các thành phần chính của một hệ thống SIP
bao gồm (Hình 4.1):
Đầu cuối SIP (UAC/UAS).
Proxy server.
Location server.
Redirect server.
Registrar server.
DHDT7DLT – Nhóm 10 14
GVHD: ThS. Phù Trần Tín Tìm hiểu các giao thứcSIP,MGCP,SIGTRAN
Hình 1.2 Cấu trúc của hệ thống SIP
User Agent là thiết bị đầu cuối trong mạng SIP, nó có thể là một máy điện thoại
SIP hay một máy tính chạy phần mềm đầu cuối SIP. UA có thể khởi tạo, thay
đổi haygiải phóng cuộc gọi. Trong đó phân biệt hai loại UA: UAC (User Agent
Client) và UAS (User Agent Server). UAC là một thực thể thực hiện việc khởi
tạo một cuộc gọi còn UAS là một thực thể thực hiện việc nhận cuộc gọi. Nhưng
cả UAC và UAS đều có thể giải phóng cuộc gọi.
Proxy Server là phần mềm trung gian hoạt động cả như Server và cả như Client
để thực hiện các yêu cầu thay thế cho các đầu cuối khác. Tất cả các yêu cầu được
xử lý tại chỗ bởi Proxy Server (nếu có thể) hoặc nó chuyển đến cho các máy chủ
khác. Trong trường hợp Proxy Server không trực tiếp đáp ứng các yêu cầu này
thì Proxy Server sẽ thực hiện khâu chuyển đổi hoặc dịch sang khuôn dạng thích
hợp trước khi chuyển đi.
Location Server là phần mềm định vị thuê bao, cung cấp thông tin về những vị
trí có thể của phía bị gọi cho các phần mềm Proxy Server và Redirect Server.
Redirect Server là phần mềm nhận yêu cầu SIP và chuyển đổi địa chỉ SIP sang
một số địa chỉ khác và gửi lại những địa chỉ này cho đầu cuối. Không giống như
Proxy Server, Redirect Server không bao giờ hoạt động như một đầu cuối, tức là
không gửi đi bất cứ một yêu cầu nào. Redirect Server cũng không thực hiện việc
chấp nhận hay huỷ cuộc gọi.
DHDT7DLT – Nhóm 10 15
GVHD: ThS. Phù Trần Tín Tìm hiểu các giao thứcSIP,MGCP,SIGTRAN
Registrar Server là phần mềm nhận các yêu cầu đăng ký Register. Trong nhiều
trường hợp Registrar Server đảm nhiệm luôn một số chức năng an ninh như xác
nhận người sử dụng. Thông thường Registrar Server được cài đặt cùng với
Proxy hoặc Redirect Server hoặc cung cấp dịch vụ định vị thuê bao. Mỗi lần đầu
cuối được bật lên (thí dụ máy điện thoại hoặc phần mềm SIP) thì đầu cuối lại
đăng ký với Server.
Nếu đầu cuối cần thông báo với Server về địa điểm của mình thì bản tin Register
được gửi đi. Nói chung các đầu cuối đều thực hiện việc đăng ký lại một cách
định kỳ.
1.3. Khái quát về hoạt động của SIPTrong hội thoại SIP, mỗi bên tham gia (bên chủ gọi và bên bị gọi) được gắn một
địa chỉ SIP hay còn gọi là SIP URL. Người sử dụng phải đăng ký vị trí của họ
với SIP Server. Để tạo một cuộc gọi SIP, phía chủ gọi định vị tới máy phục vụ
thích ứng và sau đó gửi một yêu cầu SIP. Hoạt động SIP thường xuyên nhất là
lời mời các thành
viên tham gia hội thoại. Thành phần Register đóng vai trò tiếp nhận các yêu cầu
đăng ký từ UA và lưu trữ các thông tin này tại một dịch vụ phi SIP (Non-SIP).
1.3.1. Địa chỉ SIPCác đối tượng được đánh địa chỉ bởi SIP là các người sử dụng tại các trạm,
những người sử dụng này dược định danh bằng một SIP URL. SIP URL có dạng
user@host. Phần user là một tên của người sử dụng hay tên của một máy điện
thoại. Phần host có thể là một tên miền hoặc một địa chỉ mạng.
SIP URL được dùng trong các bản tin SIP để thông báo về nơi gửi (From), đích
hiện thời (Request URI) và nơi nhận cuối cùng (To) của một yêu cầu SIP và chỉ
rõ địa chỉ gián tiếp. Một SIP URL có thể gắn vào một trang Web hoặc những
siêu liên kết (Hyperlink) khác để thông báo rằng người dùng hoặc dịch vụ có thể
gọi thông qua SIP. Một địa chỉ SIP URL có thể chỉ rõ một cá nhân (có thể được
định vị tại một trong
các hệ thống đầu cuối), người khả dụng đầu tiên từ một nhóm các cá nhân hoặc
toàn bộ một nhóm. Ví dụ, khuôn dạng địa chỉ: sip: [email protected] nói
DHDT7DLT – Nhóm 10 16
GVHD: ThS. Phù Trần Tín Tìm hiểu các giao thứcSIP,MGCP,SIGTRAN
chung là khôngđủ để quyết định mục đích của người gọi.
1.3.2. Quá trình định vị tới máy chủ SIPKhi một Client muốn gửi đi một yêu cầu, Client sẽ gửi bản tin yêu cầu đó tới SIP
Proxy Server (như trong HTTP), hoặc tới địa chỉ IP và cổng tương ứng trong địa
chỉ của yêu cầu SIP (Request-URI). Trường hợp đầu, yêu cầu được gửi tới SIP
Proxy Server không phụ thuộc vào địa chỉ của yêu cầu đó là như thế nào. Với
trường hợp sau, Client phải xác định giao thức, cổng và địa chỉ IP của Server mà
yêu cầu được gửi đến.
Một Client thực hiện các bước tiếp theo để có được những thông tin này. Tại mỗi
bước, trừ các trạng thái khác, Client cố gắng liên lạc với Server theo số cổng
được chỉ ra trong địa chỉ yêu cầu SIP (Request-URI). Nếu không có số cổng nào
chỉ ra trong Request-URI, Client sẽ sử dụng địa chỉ cổng mặc định là 5060. Nếu
Request-URI chỉ rõ là sử dụng giao thức TCP hay UDP, Client sẽ làm việc với
Server theo giao thức đó.
Nếu không có giao thức nào được chỉ ra thì Client cố gắng dùng giao thức UDP
(nếu không hỗ trợ TCP) hoặc sử dụng giao thức TCP cho hoạt động của mình
(chỉ được hỗ trợ TCP mà không được hỗ trợ UDP).
Client cố gắng tìm một hay nhiều địa chỉ cho SIP Server bằng việc truy vấn DNS
(Domain Name System) theo các thủ tục sau:
- Nếu địa chỉ Host trong địa chỉ Request-URI là một địa chỉ IP thì Client làm
việc với Server bằng địa chỉ được đưa ra. Nếu đó không phải là một địa chỉ IP,
Client thực hiện bước tiếp theo.
- Client đưa ra câu hỏi tới DNS Server về bản ghi địa chỉ cho địa chỉ Host trong
địa chỉ Request-URI. DSN sẽ trả về một bản ghi danh sách các địa chỉ. Lúc đó
việc lựa chọn một trong các địa chỉ này là tùy ý. Còn nếu DNS Server không đưa
ra bản ghi địa chỉ, Client sẽ kết thúc hoạt động, có nghĩa nó không thực hiện
được việc định vị máy chủ. Nhờ bản ghi địa chỉ, sự lựa chọn tiếp theo cho giao
thức mạng của Client có nhiều khả năng thành công hơn. Một quá trình thực
hiện thành công là quá trình có một bản ghi chứa trong phần trả lời và Server
làm việc ở một trong những địa chỉ chứa trong trả lời đó.
DHDT7DLT – Nhóm 10 17
GVHD: ThS. Phù Trần Tín Tìm hiểu các giao thứcSIP,MGCP,SIGTRAN
1.3.3. Giao dịch SIP Khi có địa chỉ IP của SIP Server thì yêu cầu sẽ được gửi đi theo tầng vận
chuyển giao thức TDP hay UDP. Client gửi một hoặc nhiều yêu cầu SIP đến
máy chủ đó và nhận lại một hoặc nhiều các phúc đáp từ máy chủ. Một yêu cầu
cùng với các phúc đáp được tạo ra bởi yêu cầu đó tạo thành một giao dịch SIP.
Tất cả các phúc đáp cho một yêu cầu mang cùng các giá trị trong các trường:
Call – ID, Cseq, To, và From. Yêu
cầu ACK xác định sự nhận một phúc đáp INVITE không là một phần của giao
dịch vì nó có thể di chuyển giữa một tập các host khác nhau. Mỗi cuộc gọi trong
SIP được định danh bởi một trường định danh cuộc gọi (Call-ID).
Một yêu cầu phải cần có thông tin gửi đi từ đâu (From) và tới đâu (To). Trường
From và To đều có cấu trúc theo khuôn dạng SIP-URL. Trường CSeq lưu trữ
thông tin về phương thức sử dụng trong phiên, trường CSeq có dạng:
CSeq = “CSeq”: “DIGIT Method”
Trong đó DIGIT là số nguyên không dấu 32 bit.
Nếu một giao thức điều khiển luồng tin cậy được sử dụng, yêu cầu và các phúc
đáp trong một giao dịch đơn lẻ được mang trên cùng kết nối. Một vài yêu cầu
SIP từ cùng máy khách đến cùng máy chủ có thể sử dụng cùng kết nối hoặc có
thể sử dụng một kết nối mới cho mỗi yêu cầu.
Nếu một client gửi yêu cầu thông qua một giao thức datagram đơn hướng như
UDP thì các UA thu sẽ định hướng phúc đáp theo thông tin chứa trong các
trường mào đầu Via. Mỗi proxy server trong tuyến chuyển tiếp của yêu cầu
chuyển tiếp phúc đáp sử dụng các trường mào đầu Via này.
1.3.4. Lời mời SIP Một lời mời SIP thành công gồm hai yêu cầu INVITE và ACK. Yêu cầu
INVITE thực hiện lời mời một thành viên tham gia hội thoại. Khi phía bị gọi
đồng ý tham gia, phía chủ gọi xác nhận đã nhận một bản tin đáp ứng bằng cách
gửi đi một yêu cầu ACK. Nếu phía chủ gọi không muốn mời thành viên tham gia
cuộc gọi nữa nó sẽ gửi yêu cầu BYE thay cho ACK.
Thông điệp INVITE chứa thành phần mô tả phiên (SDP) và phương thức tiến
hành trao đổi ứng với phiên đó. Với các phiên đa hướng, phần mô tả phiên liệt
DHDT7DLT – Nhóm 10 18
GVHD: ThS. Phù Trần Tín Tìm hiểu các giao thứcSIP,MGCP,SIGTRAN
kê kiểu và khuôn dạng của các phương tiện (Media) để phân phối cho phiên hội
thoại. Với một phiên đơn hướng, phần mô tả phiên liệt kê kiểu và khuôn dạng
của các phương tiện mà phía chủ gọi muốn sử dụng và nơi những dữ liệu muốn
gửi đi.
Trường hợp máy phục vụ ủy quyền (Proxy Server):
- Proxy Server (PS) tiếp nhận lời mời INVITE.
- PS tra cứu thông tin ở dịch vụ định vị ngoài SIP.
- PS nhận thông tin để tạo ra địa chỉ chính xác.
- PS tạo lại INVITE trong trường Request URI và chuyển tiếp.
-UAS thông báo bị gọi.
-PS nhận đáp ứng chấp nhận 200 OK từ UAS.
- PS trả về kết quả thành công cho chủ gọi.
- Chủ gọi gửi thông báo xác nhận ACK.
- Yêu cầu xác nhận được chuyển tiếp qua PS.
Chú ý: Một ACK có thể được gửi trực tiếp đến User được gọi qua Proxy. Tất cả
các yêu cầu và đáp ứng phải có cùng Call-ID.
Trường hợp máy phục vụ gián tiếp (Redirect Server):
- PS tiếp nhận lời mời INVITE.
-Liên lạc với dịch vụ định vị.
- Trả lời địa chỉ chủ gọi.
- Chủ gọi gửi thông báo xác nhận ACK đến PS.
- Chủ gọi tạo một yêu cầu mới cùng một Call-ID nhưng có CSeq cao
hơn tới địa chỉ trả lời bởi Server đầu tiên.
- Bị gọi gửi đáp ứng chấp nhận 200 OK.
- Chủ gọi gửi thông báo xác nhận ACK.
1.3.5. Định vị người dùng Một đối tượng bị gọi có thể di chuyển giữa một số các hệ thống đầu cuối
khác nhau theo thời gian. Một máy chủ định vị cũng có thể sử dụng một hay
nhiều giao thức khác nhau để xác định hệ thống đầu cuối mà tại đó một người sử
dụng có thể liên lạc. Một máy chủ định vị có thể đưa ra một vài vị trí vì người sử
dụng được đăng nhập vàotại một vài host đồng thời hoặc bởi vì máy chủ định vị
DHDT7DLT – Nhóm 10 19
GVHD: ThS. Phù Trần Tín Tìm hiểu các giao thứcSIP,MGCP,SIGTRAN
lỗi. Máy chủ SIP kết hợp cáckết quả để đưa ra một danh sách các vị trí.
Đối với từng kiểu SIP Server thì hoạt động sau khi nhận được danh sách các vị
trí khác nhau là khác nhau. Một SIP Redirect Server sẽ trả lại danh sách địa chỉ
cho Client với các mào đầu Contact. Một SIP proxy server có thể thử lần lượt
hoặc song song các địa chỉ cho đến khi cuộc gọi thành công (phúc đáp 2xx) hoặc
bên bị gọi từ chối cuộc gọi (phúc đáp 6xx).
Nếu một proxy server chuyển tiếp một yêu cầu SIP, nó phải bổ sung địa chỉ của
nó vào vị trí bắt đầu của danh sách các trạm chuyển tiếp được ghi trong các mào
đầu Via. Dấu vết Via đảm bảo rằng các trả lời có thể đi theo cùng tuyến đó theo
hướng ngược lại, việc đảm bảo hoạt động chính xác nhờ tuân theo các tường lửa
và tránh lặp lại yêu cầu. Ở hướng phúc đáp, mỗi host phải xoá bỏ Via của nó, do
đó thông tin định tuyến nội bộ được che khuất đối với phía bị gọi và các mạng
bên ngoài.
1.3.6. Thay đổi một phiên hiện tại Trong một vài trường hợp, cần phải thay đổi các thông số của phiên hội
thoại hiện tại. Việc đó được thực hiện bởi việc phát lại các yêu cầu INVITE. Các
yêu cầu INVITE đó có cùng trường Call-ID nhưng có trường mào đầu và trường
bản tin khác với yêu cầu ban đầu để mang thông tin mới. Các bản tin INVITE đó
phải có chỉ số CSeq cao hơn các yêu cầu trước. Ví dụ: có hai thành viên đang hội
thoại và muốn có thêm một người thứ ba tham gia. Một trong hai thành viên sẽ
mời thành viên thứ ba tham gia với một địa chỉ đa hướng (Multicast) mới và
đồng thời gửi một bản tin INVITE đến thành viên thứ hai với trường miêu tả
phiên đa hướng nhưng có trường Call-ID cũ.
1.4. Các loại bản tin của SIP SIP là giao thức dạng Text sử dụng bộ ký tự ISO 10646 trong mã hoá
UTF-8 (RFC 2279). Điều này tạo cho SIP tính linh hoạt, mở rộng và dễ thực thi
các ngôn ngữ lập trình cấp cao như Java, Tol, Perl. Cú pháp của SIP gần giống
với giao thức HTTP, nó cho phép dùng lại mã và đơn giản hóa sự liên kết của
các máy phục vụ SIP với các máy phục vụ Web. Tuy nhiên, SIP không phải là
một dạng mở rộng của HTTP. Khác với HTTP, SIP có thể sử dụng giao thức
DHDT7DLT – Nhóm 10 20
GVHD: ThS. Phù Trần Tín Tìm hiểu các giao thứcSIP,MGCP,SIGTRAN
UDP. Bản tin SIP được chia làm hai loại: Bản tin yêu cầu từ Client tới Server và
bản tin đáp ứng từ Server trả lời cho Client:
SIP-message = Request/ Response
1.4.1. Bản tin yêu cầu (Request) Bản tin Request có khuôn dạng gồm hai phần cơ bản: Request-line và
phần màođầu-header (với 3 loại header):
Request=Request-line*(General-header/Request-header/ Entity-header)
CLRF [message-body]
Trong đó thành phần Request-line chứa tên phương thức, một Request – URI và
số phiên bản của giao thức. Các thành phần được ngăn cách với nhau bằng một
khoảng trắng (SP). Cũng như các dòng khác, dòng khởi đầu được kết thúc bằng
một ký tự xuống dòng (CRLF).
Request-line = Method SP Request-URI SP SIP-Version
Trong đó:
Method (Phương thức SIP) : SIP định nghĩa 6 phương thức cơ bản như trong
bảng 4.2.
Request- URI: Tr ường Request-URI có khuôn dạng theo SIP URL. Nó thông
báo cho User hoặc dịch vụ về địa chỉ hiện tại. Khác với trường “To”, Request-
URI có thể được ghi lại bởi Proxy (trường hợp máy phục vụ ủyquyền).
SIP Version: Phiên bản SIP là các bản SIP được đưa ra các lần khác nhau. Cả
hai bản tin Request và Response đều chứa phiên bản của SIP được sử dụng SIP
Version. Hiện tại phiên bản SIP là 2.0.
Bảng 1.1. Các phương thức SIP
INVITE Mời thành viên tham gia hội thoại.
ACK Yêu cầu xác nhận đã nhận được đáp ứng chập nhận (OK)
cho yêu cầu INVITE.
OPTION Hỏi khả năng của máy phục vụ SIP.
BYE Yêu cầu giải phóng cuộc gọi
CANCEL
Hủy bỏ yêu cầu sắp được thực hiện với cùng giá trị trong các
trường Call_ID, From, To, Cseq của yêu cầu đó bằng cách
ngừng quá trình tìm kiếm báo hiệu.
DHDT7DLT – Nhóm 10 21
GVHD: ThS. Phù Trần Tín Tìm hiểu các giao thứcSIP,MGCP,SIGTRAN
REGISTER Đăng ký danh sách địa chỉ liên hệ của người dùng với
máy phục vụ.
1.4.2. Bản tin phúc đáp (Response) Sau khi nhận và thông dịch một bản tin yêu cầu, phía nhận thực hiện trả lời
bằng một bản tin phúc đáp.
Khuôn dạng bản tin cũng gồm hai phần cơ bản: Status-line và phần mào đầu
header (với 3 loại header):
Response = Status-line *(General-header/ Response-header/
Entity-header)
CLRF
[message-body]
Trong đó thành phần Status-line có cấu trúc sau: (SP là ký tự phân cách):
Status-line = SIP-Version SP status-code SP Reason-phrase
SIP Version: Cũng giống như trong bản tin Request.
Status-code và Reason-phrase: Status-code là một mã kết quả nguyên gồm 3
digit, chỉ ra kết quả của việc cố gắng thực hiện và mức độ thỏa mãn yêu cầu.
Reason-Phrase thì dung để đưa ra một lời giải thích ngắn cho Status-code.
Status-code mục đích là để sử dụng cho Server còn Reason-phrase là dung cho
User. Client không thể yêu cầu hiển thị hay kiểm tra Reason phrase.
Status-code gồm 3 digit. Digit đầu tiên định nghĩa loại đáp ứng, hai digit sau
không có vai trò phân loại. SIP 2.0 định nghĩa 6 giá trị của digit đầu tiên như
sau:
Bảng 1.2. Các mã trạng thái SIP
1xx Tìm kiếm, báo hiệu, sắp hàng đợi
2xx Thành công
3xx Chuyển tiếp yêu cầu
4xx Lỗi phía người dùng
5xx Lỗi phía Server
6xx Lỗi chung: đường dây đang bận, từ chối,
….
DHDT7DLT – Nhóm 10 22
GVHD: ThS. Phù Trần Tín Tìm hiểu các giao thứcSIP,MGCP,SIGTRAN
Mã đáp ứng SIP có thể mở rộng được. Các ứng dụng SIP không yêu cầu phải
hiểu rõ về ý nghĩa của tất cả mã đáp ứng được đăng ký mà chỉ cần hiểu các loại
mã đáp ứng, ý nghĩa của digit đầu tiên.
1.4.3. Cấu trúc bản tin SIPCả hai loại bản tin trên đều sử dụng chung một định dạng cơ bản được quy định
trong RFC 2822 với cấu trúc gồm một dòng khởi đầu (start – line), một số
trường tiêu đề và một phần thân bản tin tuỳ chọn (hình 4.2). Cấu trúc này được
tóm tắt như sau:
generic-message = start-line
*message-header
CRLF
[ message-body ]
Với
start-line = Request-Line / Status-Line
Hình 1.3. Cấu trúc bản tin SIP
Trong đó, dòng bắt đầu, các dòng tiêu đề hay các dòng trắng phải được kết
thúc bằng một ký tự xuống dòng (CRLF) và phải lưu ý rằng dòng trắng vẫn phải
có để ngăn cách phần tiêu đề và phần thân của bản tin ngay cả khi phần thân bản
tin là rỗng.
Start line: Mỗi bản tin SIP được bắt đầu với một Start Line, Start Line vận
chuyển loại bản tin (phương thức trong các Request, và mã đáp ứng trong các
bản tin đáp ứng) và phiên bản của giao thức. Start line có thể là Request-Line
(trong các request) hoặc là Status-Line (trong các response).
Headers: Các trường Hearder của SIP được sử dụng để vận chuyển các
thuộc
DHDT7DLT – Nhóm 10 23
GVHD: ThS. Phù Trần Tín Tìm hiểu các giao thứcSIP,MGCP,SIGTRAN
tính của bản tin và để thay đổi ý nghĩa của bản tin. Chúng tương tự như các
trường tiêu để của bản tin HTTP theo cả cú pháp và ngữ nghĩa (thực tế có một
vài tiêu đề được mượn từ HTTP) cho nên chúng luôn có khuôn dạng như sau:
<Name>:< Value>.
Thứ tự các trường tiêu đề khác tên là không quan trọng (nhưng các tiêu đề mà
được sử dụng để tuyến bởi các proxy sẽ được đặt trước). Thứ tự các tiêu đề có
cùng tên là quan trọng.
Tiêu đề bản tin bao gồm bốn loại:
-Tiêu đề chung.
-Tiêu đề Request.
-Tiêu đề Response.
-Tiêu đề thực thể.
Body: Thân bản tin được sử dụng để mô tả phiên được khởi tạo (ví dụ: trong
một phiên multimedia phần này sẽ mang loại mã hóa audio và video, tốc độ lấy
mẫu …), hoặc nó có thể được sử dụng để mang dữ liệu dưới dạng text hoặc nhị
phân (không được dịch) mà liên quan đến phiên đó. Phần thân bản tin có thể xuất
hiện trong cả bản tin yêu cầu và đáp ứng. Các loại Body bao gồm:
-SDP: Session Description Protcol.
-MIME: Multipurpose Internet Mail Extentions.
-Các phần khác: được định nghĩa trong IETF.
1.5. Đánh giá SIPSIP là giao thức đề cử được tổ chức IETF đưa ra. Nó ra đời với mục đích đơn
giản hoá cơ chế báo hiệu và điều khiển cuộc gọi cho VoIP. SIP là giao thức dạng
text, các lệnh SIP có cấu trúc đơn giản để các thiết bị đầu cuối dễ dàng phân tích
và sửa đổi.
Các ưu điểm nổi bật của SIP là:
-Tính mở rộng một cách tự nhiên của giao thức cho phép dễ dàng định nghĩa và
thi hành trong tương lai.
-Cho phép tạo các thiết bị đầu cuối một cách đơn giản và dễ dàng mà vẫn đảm
bảo chi phí thấp.
DHDT7DLT – Nhóm 10 24
GVHD: ThS. Phù Trần Tín Tìm hiểu các giao thứcSIP,MGCP,SIGTRAN
Tuy nhiên SIP vẫn còn có các nhược điểm:
- SIP là giao thức rất mới, cần được tiếp tục hoàn thiện.
- Nó chỉ đề cập tới một phạm vi hẹp trong toàn bộ phiên truyền thông nên cần
phải được kết hợp với các giao thức khác trong quá trình xây dựng một hệ thống
hoàn chỉnh.
- Khả năng giao tiếp với mạng chuyển mạch kênh kém.
Thiết lập cuộ gọi thông qua SIP:
Mô hình thực hiện việc gọi điện giữa hai máy sử dùng một proxy server.
Hình 1.4 Mô hình thực hiện cuộc gọi giữa hai UAC thông qua proxy server
Bước 1: User ở UAC1 muốn kết nối đến đối tượng gọi. tại thời điểm
này.ứng dụng chạy trên UAC1 tạo ra một thông điệp INVITE và gửi đến
proxy. Địa chỉ proxy được cấu hình trước trong chương trình.
Bước 2: Proxy nhận yêu cầu bằng cách lắng nge trên cổng 20050/UDp.
Nó trả lời ngay lập tức một đáp ứng 100 ( TRYING) yêu câu đợi client
DHDT7DLT – Nhóm 10 25
GVHD: ThS. Phù Trần Tín Tìm hiểu các giao thứcSIP,MGCP,SIGTRAN
kết nối . sau đó chuyển qua bước 3.
Bước 3: Proxy kiểm tra yêu cầu INVITE. Xác định máy nơi mà đối tượng
gọi đăng nhập vào va chuyên INVITE đến máy đó.
Bước 4: UAC2 trả lời lại proxy với một đáp ứng 100 ( TRYING).
Bước 5: UAC2 gửi 1 đáp ứng 180 (RINGING) đến proxy cho biết tình
trạng đang đổ chuông
Bước 6: Proxy chuyển 180 (RINGING) đến UAC1
Bước 7: UAC1 nhận 180 (RINGING), lập tức phất ra tín hiệu chuông chờ
Bước 8: Đối tượng gọi ở UAC2 bắt máy. UAC2 báo proxy tín hiệu bắt
máy với 200 (OK).
Bước 9: proxy chuyền 200(OK) đến UAC1
Bước 10: UAC1 gửi yêu câu ACK đến proxy xác nhận rằng đã nhân 200
(OK)
Bước 11: proxy chuyển ACK đến UAC2
Bước 12: UAC1 phất ra luồng RTP với UAC2 và bắt đầu truyền âm thânh
Bước 13,14: Đối tượng gọi tại UAC1 cúp máy trước .UAC1 phất ra yêu
cầu BYE và gửi đến UAC2 thông qua proxy
Bước 15:,16: UAC2 nhận được yêu cầu BYE của UAC1 .nó phản hồi
200( OK) .kết thúc cuộc gọi.
DHDT7DLT – Nhóm 10 26
GVHD: ThS. Phù Trần Tín Tìm hiểu các giao thứcSIP,MGCP,SIGTRAN
CHƯƠNG 2. GIAO THỨC ĐIỀU KHIỂN CỔNG PHƯƠNG TIỆN MGCP
2.1 Tổng quan về MGCP MGCP là giao thức ở mức ứng dụng dùng để điều khiển hoạt động của
MG. Đây là một giao thức sử dụng phương thức master/slave. Trong đó MGC
đóng cai trò mà master, hay MGC là yếu tố quyết định chính trong quá trình liên
lạc với MG, còn MG là slave là thục thể thụ động thực hiện mọi lệnh do MGC
yêu cầu.
“MGCP- Media Gateway Controll Protocol là giao thức điều khiển các cổng
VoIP từ các thiết bị điều khiển cuộc gọi như MGC hay Call Agent”. Đây là định
nghĩa về MGCP trích từ IETF RFC 2705 - Media Gateway Control 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 hóa kiến trúc GW. MGCP là sự bổ sung của cả
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 GW. 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 GK hoặc SIP Server và với mạng chuyển
mạch kênh qua một GW 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 GK. 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 GW. 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.
2.2 Kiến trúc và các thành phầnCó 2 thành phần cơ bản sử dụng giao thức MGCP là MGC và MG. Mỗi MGC có
một số nhận dạng riêng gọi là Call Agent Identifier.
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ể điểm
cuối (Endpoint-E) và các kết nối (Connection-C). E là các nguồn dữ liệu có thể
là vật lý hoặc logic. Việc tạo nguồn vật lý đòi hỏi phải thiết lập phần cứng,
DHDT7DLT – Nhóm 10 27
GVHD: ThS. Phù Trần Tín Tìm hiểu các giao thứcSIP,MGCP,SIGTRAN
chẳng hạn như giao tiếp qua một GW và kết thúc một kết nố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 mang trê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 (hay CA)
được thể hiện trên hình 5.1:
Hình 2.1. Quan hệ giữa MG và MGC
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 CreatConnection tới GW đầu tiên. GW sẽ định vị các tài nguyên
cần thiết và gửi trả các 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.
MGC gửi CreatConnection tới GW thứ hai chứa các thông tin chuyển tiếp ở
trên. GW này trả về các thông tin mô tả phiên của nó.
MGC gửi lệnh ModifyConnection 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.
DHDT7DLT – Nhóm 10 28
GVHD: ThS. Phù Trần Tín Tìm hiểu các giao thứcSIP,MGCP,SIGTRAN
MGCP định nghĩa 3 báo hiệu:
Bảng 1.1. Các báo hiệu trong MGCP
Khai báo (Notify) Các sự kiện được quan sát trên Gateway
Xoá kết nối (DeleteConnection) Xóa một kết nối, giải phóng tài nguyên
Khởi động lại trong quá trình
( RestartInProcess )
Xóa mọi dịch vụ tại đầu cuối, khởi tạo lạitiến trình kết nối.
MGCP cũng định nghĩa 8 lệnh trao đổi thông tin giữa các MGC với các đầu
cuối:
Bảng 5.2. Các lệnh trao đổi thông tin trong MGCP
Cấu hình kết cuối (EndpointConfiguration)
MGC cho Gateway biết tên luật mã hoá tín hiệu. Trong trường hợp tiếng nói là luật – hoặc luật – A.
Yêu cầu khai báo
(NotificationRequest)
Yêu cầu Gateway gửi các thông báo về
các
sự kiện diễn ra ở một đầu cuối nào đó.
Tạo kết nối (CreatConnection) Mở một kết nối giữa hai đầu cuối.
Sửa đổi kết nối
(ModifyConnection)
Thay đổi các tham số trong một kết nối
đã được mở trước đó.
Xoá kết nối (DeleteConnection) Đóng một kết nối. Lệnh này có thể được
gửi
bởi MGC, Gateway. Đápứng của lệnh
này
trả vể các thông tin tổng hợp trong suốt
quá
trình kết nối.Kiểm toán đầu cuối (AuditEndpoint)
MGC tìm kiếm các thông tin về trạng
thái tại một đầu cuối nào đó.
DHDT7DLT – Nhóm 10 29
GVHD: ThS. Phù Trần Tín Tìm hiểu các giao thứcSIP,MGCP,SIGTRAN
Kiểm toán kết nối
(AuditConnection)
MGC gửi yêu cầu trả về các thông số
trong một kết nối đã được mở.
Thông báo thăm dò(PollNotify) Đưa sự kiện thông báo.
2.3 Các khái niệm cơ bản- Điểm cuối (Endpoint) : là những nơi thu và nhận dữ liệu . Ví dụ về một số
điểm cuối: cổng kênh DS0, cổng analog, giao diện trung kế ATM OS3, điểm
truy nhập IVR (Interactive Voice Response),…
- Kết nối ( Connection) : là sự kết nối để truyền thông tin giữa các điểm cuối.
Mỗi kết nối có một số nhận dạng được tạo bởi MG. MGCP dùng giao thức
Session Description Protocol(SDP) để mô tả một kết nối.
- Tín hiệu (Signal) : Đó là tín hiệu sử dụng trong quá trình báo hiệu để thực hienj
một cuộc gọi. Ví dụ : dial tone, ringing tone, busy tone….
Sự kiện (Event) : Đó là các sự việc xảy ra và làm thay đổi trạng thái của thuê
bao . Ví dụ nhấc máy (off hook), gác máy (on hook), phát hiện số DTMF hay
các số được nhấn…
-Gói (Pakage) : Là một nhóm các tín hiệu và sự kiện được sử dụng trong quá
trình thực hiện một cuộc gọi. Một số gói cơ bản : thông tin chung (generic media
– G), số DTMF (D), handset(H),….
2.4 Các lệnh sử dụng trong MGCPĐịnh dạng của một lệnh gồm 2 phần: header và tiếp theo sau là thông tin mô tả
phiên ( Session description). Trong đó header gồm các dòng sau:
- 1 dòng lệnh: Action + Trans ID + Endpoint + Version
- Các dòng thông số :Parameter name : Value
Lưu ý : Tên thông số phải viết hoa.
Một số thông số cơ bản:
N: Notifi Entity
X: Request Indentifier
R: Request Events
DHDT7DLT – Nhóm 10 30
GVHD: ThS. Phù Trần Tín Tìm hiểu các giao thứcSIP,MGCP,SIGTRAN
D: Digit Map
O: Observed Event
C: CallID
L: Local Connection Options
M: Mode
I: Connection Indentifier
Mỗi lệnh có một đáp ứng. Và định dạng của đáp ứng cũng tương tự như lệnh
nhưng các thông số tùy chọn , có thể hoặc không. Định dạng của đáp ứng như
sau:
- 1 dòng lệnh : Response + TransID+Commentary
- Các dòng thông số : Parameter name : Value
Ghi chú: Một lênh hay một đáp ứng được gọi chung là một tương tác .
Các lệnh sử dụng MGCP là:
- CRCX(Create Connection): là lệnh MGC truyền đến MG yêu cầu tạo kết nối
giữa các endpoint.
- MDCX(Modify Connection): truyền từ MGC đến MG. Lệnh này được sử dụng
khi đặc tính của kết nối cần thay đổi.
- DLCX(Delete Connection): cả MGC và MG có thể dử dụng lệnh này để yêu
cầu xóa kết nối. MG sử dụng lệnh này khi kết nối bị hư hỏng.
- EPCF(Endpoint Configuration): truyền từ MGC sang MG . Được dung để cấu
hình điểm cuối.
- RQNT(Request Notification): truyền từ MGC đến MG. MGC yêu cầu MG chú
ý đến một sự kiện nào đó.
- NTFY(Notify) : truyền từ MG đến MGC nhằm thông báo cho MGC khi có một
sự kiện xảy ra.
- AUCX(Audit Connection): đây là lệnh MGC gửi đến MG để lấy các thông số
liên quan đến kết nối.
- AUEP(Audit Endpoint): MGC gửi lệnh này đến MG để xác định trạng thái của
điểm cuối .
- RSIP(Restart in Progress): đây là yêu cầu của MG gửi đến MGC để báo hiệu
cho MGC biết điểm cuối đã không hoạt động.
DHDT7DLT – Nhóm 10 31
GVHD: ThS. Phù Trần Tín Tìm hiểu các giao thứcSIP,MGCP,SIGTRAN
2.5 Thiết lập cuộc gọi thông qua MGCP
Hình2.2. Thiết lập cuộc gọi giữa A và B
Trình tự thiết lập cuộc gọi giữa hai máy điện thoại A điện thoại B như sau:
Khi máy điện thoại A được nhấc lên 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 xác định định tuyến cuộc gọi như thế nào:
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.
DHDT7DLT – Nhóm 10 32
GVHD: ThS. Phù Trần Tín Tìm hiểu các giao thứcSIP,MGCP,SIGTRAN
2.6 So sánh giữa MGCP, SIP VÀ H.323MGCP khác với SIP và H.323 ở một số điểm như sau:
MGCP là giao thức kiểu chủ/tớ, trong khi SIP và H.323 là giao thức ngang
cấp.
MGCP được sử dụng giữa MG và MGC.
Bảng 2.3. So sánh H.323 và MGCP
H.323 MGCP
1. Thuê bao nhấc máy và quay số
2. Gateway phân tích định tuyến cuộc
gọi
3. Hai Gateway trao đổi thông tin
4. Gateway bị gọi đổ chuông ở số máy
bị gọi
5. Hai Gateway thiết lập phiên kết nối
RTP/RTCP
1. Thuê bao nhấc máy và quay số
2. Gateway thông báo cho MGC
3. MGC phân tích số, định tuyến và
gửi lệnh cho Gateway bị gọi để đổ
chuông ở số máy
bị gọi
4. MGC gửi lệnh cho 2 Gateway để
thiết lập phiên kết nối RTP/RTCP
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 (hay CA, 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 2 đầu cuối.
Trong hình 5.2 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.
2.7 Đánh giá giao thức MGCPCác ưu điểm của MGCP là:
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 tiện cho quátrình
DHDT7DLT – Nhóm 10 33
GVHD: ThS. Phù Trần Tín Tìm hiểu các giao thứcSIP,MGCP,SIGTRAN
điều khiển và xử lý các 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ó 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 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.
DHDT7DLT – Nhóm 10 34
GVHD: ThS. Phù Trần Tín Tìm hiểu các giao thứcSIP,MGCP,SIGTRAN
CHƯƠNG 3. BÁO HIỆU SỐ 7 QUA MẠNG IP – SIGTRAN
3.1. Giới thiệu chung Công nghiệp truyền thông đang trải qua một giai đoạn bùng nổ theo hướng
hội tụ của các dịch vụ. Dữ liệu đã trở nên có ý nghĩa hơn trong toàn bộ lưu lượng
truyền tải trên mạng so với lưu lượng thoại. Các nhà khai thác đang tìm cách kết
hợp giữa lưu lượng thoại và lưu lượng dữ liệu, giữa các mạng lõi và các dịch vụ.
Trong số các giải pháp công nghệ được lựa chọn, công nghệ IP hiện đang được
quan tâm với tư cách là giải pháp hứa hẹn cho hỗ trợ đa phương tiện để xây dựng
các dịch vụ tích hợp mới.
Hiện nay đang diễn ra sự tích hợp giữa mạng chuyển mạch kênh truyền thống
với mạng IP mới. Các nhà khai thác đang thay thế các mạng điện thoại cố định
và di động theo kiến trúc toàn IP và có cả hỗ trợ giao thức báo hiệu số 7. Công
nhệ IP cho phép các nhà khai thác mạng có thể mở rộng mạng và xây dựng các
dịch vụ mới một cách có hiệu quả. Thành phần các dịch vụ bổ sung thông dụng
như SMS, … góp phần vào sự phát triển nhanh chóng của các mạng báo hiệu.
DHDT7DLT – Nhóm 10 35
GVHD: ThS. Phù Trần Tín Tìm hiểu các giao thứcSIP,MGCP,SIGTRAN
Hình 3.1 Truyền tải báo hiệu đơn giản qua môi trường IP
Mạng IP có các ưu điểm nổi bật so với mạng trên cơ sở TDM như sau:
Dễ triển khai: Với việc sử dụng gateway báo hiệu sẽ không cần gỡ bỏ mạng
SS7 hiện có và các tính năng nâng cao trong tương lai là “trong suốt”.
Giá thành thiết bị thấp hơn: Không cần đầu tư nhiều đối với các phần tử báo
hiệu hiện có.
Hiệu quả tốt hơn: Sử dụng SIGTRAN qua IP không yêu cầu các luồng vật lý
E1/T1 qua mạng truyền tải SDH. Sử dụng công nghệ truyền tải IP qua SDH, IP
qua cáp quang, … có thể đạt thông lượng cao hơn nhiều.
Băng thông cao hơn: Thông tin SIGTRAN qua IP không buộc phải có liên
kết như trong SS7 và mạng IP linh động hơn rất nhiều so với mạng TDM.
Các dịch vụ nâng cao: Triển khai mạng lõi IP tạo điều kiện dễ dàng cho sự
phát triển hàng loạt các giải pháp mới và các dịch vụ giá trị gia tăng phong phú.
Các nhà khai thác mạng đang muốn chuyển dần mạng viễn thông tiến đến kiến
trúc mạng IP. Trong khi chưa thể chuyển ngay lên kiến trúc mạng toàn IP thì cả
mạng IP và các mạng chuyển mạch kênh truyền thống đều song song tồn tại và
cần phải được kết hợp lại vào cơ sở hạ tầng mạng thống nhất. Chắc chắn rằng
mạch chuyển mạch kênh sẽ còn tồn tại trong nhiều năm nữa cùng với các dịch
vụ IP. Kiến trúc kết hợp có thể là giải pháp tốt nhất cho hầu hết các nhà khai thác
vì nó đảm bảo mức độ rủi ro thấp trong quá trình phát triển mạng hiện tại trong
khi vẫn cho phép đáp ứng được các dịch vụ mới. Đây là mục đích của nhiều
nhóm nghiên cứu chuẩn hóa mà SIGTRAN của IETF là một trong số đó.
SIGTRAN đưa ra mô hình kiến trúc cho phép mạng phát triển tiến đến mạng
toàn IP. Mô hình kiến trúc này gồm hai thành phần mới: SCTP và một số các
giao thức tầng thích ứng người sử dụng (như M2UA, M2PA, M3UA, SUA) –
cho phép đáp ứng các phương thức yêu cầu để hội tụ hai mạng này.
DHDT7DLT – Nhóm 10 36
GVHD: ThS. Phù Trần Tín Tìm hiểu các giao thứcSIP,MGCP,SIGTRAN
Hình 3.2. Kiến trúc mạng sử dụng SIGTRAN
3.2. Giới thiệu về SIGTRANSigtran là một nhóm công tác thuộc tổ chức chuẩn hóa quốc tế cho lĩnh vực
Internet – IETF. Mục đích chính của nhóm là đưa ra giải pháp truyền tải báo
hiệu dạng gói trên mạng PSTN qua mạng IP, đảm bảo được các yêu cầu về chức
năng và hiệu năng của báo hiệu PSTN. Nhằm phối hợp được với PSTN, các
mạng IP cần truyền tải các bản tin báo hiệu như báo hiệu đường ISDN (Q.931)
hay SS7 (như ISUP, SCCP, …) giữa các nút IP như gateway báo hiệu (SG), bộ
điều khiển cổng phương tiện (MGC) và cổng phương tiện (MG) hoặc cơ sở dữ
liệu IP. Nhóm công tác Sigtran xác định mục tiêu là:
Các yêu cầu về chức năng và hiệu năng: Nhóm đưa ra một số các luận điểm
(trong các RFC) xác định các yêu cầu tính năng và hiệu năng để hỗ trợ báo hiệu
qua các mạng IP. Các bản tin báo hiệu (nhất là SS7) có yêu cầu về độ trễ và mất
gói rất cao phải được đảm bảo như trong mạng điện thoại hiện tại.
Các vấn đề về truyền tải: Nhóm công tác đã đưa ra RFC định nghĩa các giao
thức truyền tải báo hiệu được sử dụng và định nghĩa mới các giao thức truyền tải
trên cơ sở các yêu cầu xác định ở trên.
DHDT7DLT – Nhóm 10 37
GVHD: ThS. Phù Trần Tín Tìm hiểu các giao thứcSIP,MGCP,SIGTRAN
3.3 Mô hình chức năngMô hình chức năng của Sigtran bao gồm 3 thành phần được thể hiện trong hình
sau:
Hình 3.3. Mô hình chức năng của SIGTRAN
Mô hình này thể hiện chức năng chính của Sigtran là truyền bản tin báo hiệu số 7
giữa Signaling Getway và Media Getway Controller qua mạng IP.
SIGTRAN là một tập các tiêu chuẩn mới do IETF đưa ra nhằm cung cấp một mô
hình kiến trúc để truyền tải báo hiệu số 7 qua mạng IP. Kiến trúc giao thức
SIGTRANđược định nghĩa gồm ba thành phần chính (Hình 3.3):
Chuẩn IP.
Giao thức truyền tải báo hiệu chung SCTP: Giao thức hỗ trợ một tập chung
các tính năng truyền tải tin cậy cho việc truyền tải báo hiệu. Đặc biệt, SCTP là
một giao thức truyền tải mới do IETF đưa ra.
Các phân lớp thích ứng: Hỗ trợ các hàm nguyên thủy xác định được yêu cầu
bởi một giao thức ứng dụng báo hiệu riêng. Một vài giao thức phân lớp thích ứng
mới được định nghĩa bởi IETF như: M2UA, M2PA, M3UA, SUA.
DHDT7DLT – Nhóm 10 38
GVHD: ThS. Phù Trần Tín Tìm hiểu các giao thứcSIP,MGCP,SIGTRAN
3.3. Động lức phát triển giao thức truyền tải mớiNhư chúng ta đã biết, giao thức truyền tải dữ liệu tin cậy chính đi kèm giao thức
IP thường là TCP. Tuy nhiên, do TCP ra đời đã khá lâu và được thiết kế theo
kiểu giao thức hướng gói nên TCP cũng gặp một số hạn chế khi sử dụng cho
những ứng dụng mới. Với số lượng ứng dụng mới đang tăng lên ngày càng nhiều
hiện nay đã cho thấy TCP có quá nhiều hạn chế. Các vấn đề giới hạn của TCP
thể hiện gồm:
Cơ chế tin cậy: TCP cung cấp cả hai kiểu chuyển giao dữ liệu là cơ chế hỏi
đáp và cơ chế tuần tự. Một vài ứng dụng yêu cầu chuyển giao thông tin tin cậy
mà không cần duy trì thứ tự gói tin, trong khi một số khác lại yêu cầu đáp ứng cả
về thứ tự của gói dữ liệu. Đối với TCP, cả hai trường hợp này đều gặp phải hiện
tượng “nghẽn đầu dòng” gây nên các trễ không cần thiết.
Vấn đề thời gian thực: Cơ chế hỏi đáp trong TCP yêu cầu có một độ trễ để
xác nhận gói tin, điều này làm cho TCP không đáp ứng được các ứng dụng thời
gian thực.
Các vấn đề bảo mật: TCP rất dễ bị tấn công do cơ chế bảo mật trong TCP
không cao.
Những giới hạn đề cập trên đây của TCP là rất đáng phải quan tâm khi muốn
truyền báo hiệu số 7 qua mạng IP và do đó, đây là một động lực trực tiếp cho sự
ra đời của giao thức SCTP – một giao thức truyền tải mới của SIGTRAN. SCTP
không chỉ giải quyết được vấn đề truyền tải báo hiệu trong SIGTRAN mà còn có
khả năng đáp ứng cho nhiều ứng dụng khác.
3.4. Giao thức điều khiển luồng truyền tải – SCTPSCTP là một giao thức truyền tải qua IP mới, tồn tại đồng mức với TCP và UDP.
SCTP hiện cung cấp các chức năng tầng truyền tải cho nhiều ứng dụng trên cơ
sở Internet. SCTP được IETF đưa ra và đặc tả trong RFC 2960.
3.4.1. Tổng quan về kiến trúc của SCTP Về kiến trúc, SCTP nằm giữa tầng tương thích người dùng SCTP và tầng mạng
chuyển gói phi kết nối như IP, … Dịch vụ cơ bản của SCTP là chuyển giao tin
cậy các bản tin của người dùng giữa các người dùng SCTP đồng mức. SCTP là
DHDT7DLT – Nhóm 10 39
GVHD: ThS. Phù Trần Tín Tìm hiểu các giao thứcSIP,MGCP,SIGTRAN
giao thức hướng kết nối vì vậy, SCTP thiết lập kết nối giữa hai điểm đầu cuối
(gọi là liên hệ trong phiên SCTP) trước khi truyền dữ liệu người dùng của nó.
3.4.2. Tổng quan về chức năng của SCTPDịch vụ truyền tải SCTP có thể được phân thành một số chức năng. Các chức
năng này được mô tả như sau (Hình 3.5):
Thiết lập và hủy bỏ liên kết: Một liên hệ được tạo ra bởi một yêu cầu từ
người dùng SCTP. Cơ chế cookie được dùng trong quá trình khởi tạo để cung
cấp sự hỗ trợ bảo vệ chống lại sự tấn công.
Phân phối tuần tự theo các luồng: Người dùng SCTP có thể xác định số
lượng các luồng được hỗ trợ trong liên hệ tại thời điểm thiết lập liên hệ đó.
Phân mảnh dữ liệu người dùng: SCTP hỗ trợ phân mảnh và tái hợp các bản
tin dữ liệu người dùng để đảm bảo cho các gói tin SCTP truyền xuống các tầng
thấp hơn phù hợp với MTU.
Phát hiện và tránh tắc nghẽn: SCTP gán cho mỗi bản tin dữ liệu người dung
(được phân mảnh hoặc không) một số tuần tự truyền dẫn (TSN). Đầu cuối thu sẽ
xác nhận toàn bộ các TSN và ngắt đoạn (nếu có) thu được.
Chunk bundling: Gói tin SCTP được phân phối đến tầng thấp hơn bao gồm
hai thành phần là tiêu đề chung và theo sau là một hoặc nhiều chunk. Hình vẽ
sau đây mô tả kiến trúc chung của một gói SCTP:
Hình 3.4. Cấu trúc gói SCTP
Hợp thức hóa gói tin: Trường Tag là bắt buộc và 32 bit của trường
CheckSum nằm trong tiêu đề của SCTP.
Quản lý tuyến: Chức năng quản lý tuyến SCTP chọn địa chỉ truyền tải đích
cho mỗi gói tin SCTP đầu ra trên cơ sở chỉ dẫn của người dùng SCTP và trạng
DHDT7DLT – Nhóm 10 40
GVHD: ThS. Phù Trần Tín Tìm hiểu các giao thứcSIP,MGCP,SIGTRAN
thái hiện thời của các địa chỉ đích hiện tại.
Hình 3.5. Các chức năng SCTP
3.4.3. Khuôn dạng tiêu đề chung của SCTP Hình vẽ sau đây mô tả khuôn dạng chung của tiêu đề gói tin SCTP:
Hình 3.6. Khuôn dạng tiêu đề SCTP
Trường số thứ tự cổng nguồn/đích: 16 bít. Chỉ thị số thứ tự cổng của SCTP
gửi/nhận.
Trường Tag: 32 bít. Phía thu sử dụng trường này để xác nhận với phía gửi về
gói tin SCTP này.
Trường CheckSum: 32 bit. Chứa tổng kiểm tra của gói tin SCTP. SCTP sử
dụng thuật toán Adler-32 để tính toán tổng kiểm tra.
3.5. M2PA M2PA định nghĩa giao thức hỗ trợ truyền tải các bản tin MTP3 của SS7 qua IP
sử
DHDT7DLT – Nhóm 10 41
GVHD: ThS. Phù Trần Tín Tìm hiểu các giao thứcSIP,MGCP,SIGTRAN
dụng các dịch vụ của SCTP. M2PA cho phép quản lý các bản tin MTP3 và khả
năng
quản lý mạng giữa hai nút SS7 bất kỳ truyền thông với nhau thông qua mạng IP.
M2PA hỗ trợ:
Hoạt động của các thực thể giao thức MTP3 đồng mức qua kết nối mạng IP.
Ranh giới giao tiếp MTP2/MTP3, quản lý các liên hệ truyền tải SCTP và lưu
lượng liên kết MTP2.
Thông báo không đồng bộ để quản lý sự thay đổi trạng thái.
Đặc tả MTP yêu cầu mỗi nút có tầng MTP3 phải có một mã điểm SS7. Vì vậy,
mỗi điểm báo hiệu IP cũng cần phải có mã điểm SS7 của nó.
Hình 3.7. Vai trò và vị trí của M2PA
DHDT7DLT – Nhóm 10 42
GVHD: ThS. Phù Trần Tín Tìm hiểu các giao thứcSIP,MGCP,SIGTRAN
Hình 3.8. Vai trò và vị trí M2PA trong mạng toàn IP
Hình 3.7 mô tả một điểm báo hiệu SS7 kết nối thông qua một SG, được trang bị
hỗ trợ cho cả mạng SS7 và IP, kết nối đến một điểm báo hiệu IP. Hình 3.8 là một
ví dụ khác, trong đó MTP3 được thích ứng với lớp SCTP nhờ sử dụng M2PA
trong kiến trúc toàn IP.
Ở đây, các điểm báo hiệu IP MTP3 sử dụng lớp M2PA bên dưới nó thay cho
MTP2. Giao tiếp giữa hai lớp – MTP3 hoặc M2PA được định nghĩa bởi cùng các
hàm nguyên thuỷ như trong giao tiếp MTP3/MTP2. M2PA thực hiện các chức
năng tương tự như MTP2.
3.6. M2UA M2UA định nghĩa một giao thức để truyền tải các bản tin báo hiệu của ứng dụng
MTP2 SS7 (ví dụ MTP3) qua IP sử dụng SCTP. Chỉ có ứng dụng của MTP2 là
MTP3. M2UA cung cấp sự hỗ trợ cho:
Ranh giới giao tiếp giữa MTP2/MTP3.
Truyền thông giữa các modul quản lý tầng.
Hỗ trợ cho quản lý các association tích cực.
Hình 3.9. Vai trò và vị trí của M2UA
SG mong muốn nhận được báo hiệu SS7 qua một thiết bị kết cuối mạng SS7
chuẩn, sử dụng MTP SS7 để cung cấp truyền tải các bản tin báo hiệu SS7 đến và
DHDT7DLT – Nhóm 10 43
GVHD: ThS. Phù Trần Tín Tìm hiểu các giao thứcSIP,MGCP,SIGTRAN
từ một điểm dầu cuối báo hiệu SS7. Sau đó, SG cung cấp sự phối hợp hoạt động
giữa các chức năng truyền tải với IP SIGTRAN nhằm truyền tải các bản tin báo
hiệu MTP3 đến điểm báo hiệu IP của MTP3 sử dụng MTP2 của SG với tư cách
là tầng thấp hơn của nó để sử dụng các hàm nguyên thủy tương ứng được định
nghĩa giữa các tầng. Truyền thông MTP3/MTP2 được định nghĩa là các bản tin
M2UA và gửi qua kết nối IP.
3.7 So sánh M2PA VÀ M2UAHình 3.7 và 3.9 minh họa một kiến trúc để mô tả sự khác nhau giữa hai giao
thức.
Bảng 2.1. So sánh M2PA và M2UA
Đặc điểm so sánh M2PA M2UA
Bản tin dữ liệu MTP3 Truyền tải bản tin MTP3
Giao tiếp với MTP3 Đưa ra giao diện phía trên với MTP3Các hàm nguyên thủy Điểm báo hiệu IP xử lý
các hàm nguyên thủy
MTP3
đến MTP2
Điểm báo hiệu IP truyền
tải các hàm nguyên thủy
MTP3 MTP2 đến SG của
MTP2 để xử lý (thông
qua chức năng phối hợp
hoạt động)Kiểu liên kết Kết nối điểm báo hiệu IP
với SG là liên kết báo hiệuSS7
Kết nối điểm báo hiệu IP và SGkhông phải là kết nối báo
hiệu số 7. Nó là mở rộng
của MTP2 đến một node
từ xa.
Mã điểm SG là một node SS7 và có mã điểm
SG không phải là một node SS7và không có mã điểm
Các tầng cao hơn SG có các tầng SS7 cao hơnnhư SCCP,…
SG không có tầng SS7 cao hơn vì nó không có MTP3
Quản lý Các thủ tục quản lý dựa vàoMTP3
Sử dụng các thủ tục quản lý củaM2UA
DHDT7DLT – Nhóm 10 44
GVHD: ThS. Phù Trần Tín Tìm hiểu các giao thứcSIP,MGCP,SIGTRAN
3.8. M3UA M3UA định nghĩa giao thức hỗ trợ truyền tải báo hiệu người dùng MTP3 (ví dụ
như các bản tin ISUP/SCCP,…) qua IP sử dụng các dịch vụ của SCTP. Giao
thức này
thường được dùng giữa một SG và một MGC hoặc cơ sở dữ liệu thường trú IP.
M3UA
thích hợp với việc chuyển giao các bản tin của bất kỳ phần người dùng MTP3
nào.
Danh sách các giao thức này là không giới hạn và bao gồm ISUP, SCCP và
TUP. Chú
ý rằng các bản tin của giao thức TCAP và RANAP được M3UA truyền tải trong
suốt
dưới dạng tải SCCP bởi vì đó là các giao thức người dùng của SCCP
Tầng M3UA cung cấp một tập các hàm nguyên thủy tương đương tại tầng trên
của nó đến các người dùng MTP3 giống như MTP3 cung cấp cho các người
dùng của
nó tại các đầu cuối báo hiệu số 7. Theo cách này, tầng ISUP và/hoặc SCCP
không biết
được rằng các dịch vụ MTP3 yêu cầu được cung cấp từ xa bởi tầng MTP3 ở SG
hay là
bởi chính tầng MTP3 dưới nó. Tầng MTP3 tại một SG cũng có thể không biết
được
rằng người dùng của nó thực ra là người dùng trên nó hay là thành phần người
dùng từ
xa qua M3UA. Thực tế thì M3UA mở rộng truy nhập đến các dịch vụ MTP3
thành
ứng dụng trên cơ sở IP từ xa.
DHDT7DLT – Nhóm 10 45
GVHD: ThS. Phù Trần Tín Tìm hiểu các giao thứcSIP,MGCP,SIGTRAN
Hình 3.10. Vai trò và vị trí của M3UA
ASP – MGC, IP SCP hay IP HLR
Ví dụ, hình 3.10 mô tả một SG chứa một thực thể của tầng giao thức SS7 SCCP
thực hiện chức năng biên dịch tiêu đề toàn cục SCCP (GTT) đối với các bản tin
đánh địa chỉ đến SG SCCP. Nếu kết quả của GTT cho một mã điểm SS7 đích
(DPC) hoặc DPC/địa chỉ số phân hệ (SSN) của một SCCP đồng mức đặt trong
miền IP, kết quả là yêu cầu gửi đến M3UA để định tuyến ra ngoài đến IP đích sử
dụng các dịch vụ của tầng SCTP/IP.
Hình 3.11 là ví dụ trong mạng toàn IP, các bản tin SCCP được trao đổi trực tiếp
giữa hai điểm báo hiệu IP bằng các thực thể giao thức người dùng SCCP như
RANAP
hoặc TCAP. Ở đây không có kết nối với mạng SS7 do đó không quan tâm đến
thông
tin quản lý trạng thái mạng MTP3 cho SCCP và các giao thức người dùng
SCCP.
ASP – MGC, IP SCP hay IP HLR
Ví dụ, hình 3.10 mô tả một SG chứa một thực thể của tầng giao thức SS7 SCCP
thực hiện chức năng biên dịch tiêu đề toàn cục SCCP (GTT) đối với các bản tin
đánh
địa chỉ đến SG SCCP. Nếu kết quả của GTT cho một mã điểm SS7 đích (DPC)
DHDT7DLT – Nhóm 10 46
GVHD: ThS. Phù Trần Tín Tìm hiểu các giao thứcSIP,MGCP,SIGTRAN
hoặc
DPC/địa chỉ số phân hệ (SSN) của một SCCP đồng mức đặt trong miền IP, kết
quả là yêu cầu gửi đến M3UA để định tuyến ra ngoài đến IP đích sử dụng các
dịch vụ của tầng SCTP/IP.
Hình 3.11 là ví dụ trong mạng toàn IP, các bản tin SCCP được trao đổi trực tiếp
giữa hai điểm báo hiệu IP bằng các thực thể giao thức người dùng SCCP như
RANAP hoặc TCAP. Ở đây không có kết nối với mạng SS7 do đó không quan
tâm đến thông tin quản lý trạng thái mạng MTP3 cho SCCP và các giao thức
người dùng SCCP.
Hình 3.11. Vai trò và vị trí của M3UA trong kiến trúc toàn IP
3.9. SUA
Hình 3.12. Vai trò và vị trí của SUA
DHDT7DLT – Nhóm 10 47
GVHD: ThS. Phù Trần Tín Tìm hiểu các giao thứcSIP,MGCP,SIGTRAN
SUA định nghĩa giao thức truyền tải báo hiệu người dùng SCCP SS7 (ví dụ như
RANAP, TCAP,…) qua mạng IP sử dụng các dịch vụ của SCTP. Giao thức này
được thiết kế dạng modul hóa và đối xứng nên cho phép làm việc được trong các
kiến trúc khác nhau như kiến trúc một SG đến điểm báo hiệu IP cũng như kiến
trúc điểm đầu cuối báo hiệu IP đồng mức. SUA hỗ trợ các chức năng sau:
Chuyển giao các bản tin phần người dùng SCCP (TCAP, RANAP,…).
Dịch vụ phi kết nối SCCP.
Dịch vụ hướng kết nối SCCP.
Quản lý các liên hệ truyền tải SCTP giữa các SG và một hay nhiều nút báo
hiệu IP.
Các nút báo hiệu IP phân tán.
Thông báo không đồng bộ để quản lý sự thay đổi trạng thái.
ASP-MGC, IP SCP hoặc IP HLR
Trong kiến trúc này, các tầng SUA và SCCP giao tiếp trong SG. Nhu cầu của
chúng là phối hợp giữa các tầng SCCP và SUA để cung cấp ranh giới chuyển
giao các bản tin người dùng và bản tin quản lý. Đối với bản tin đến ASP, có hai
trường hợp:
SG là điểm đầu cuối: Trong trường hợp này, các bản tin SCCP phi kết nối
được định tuyến theo mã điểm và SSN. Phân hệ xác định bởi SSN và phía
ngoài mạng SS7 được xem như thuộc SG. Điều này nghĩa là nhìn từ điểm SS7,
người dùng SCCP được đặt tại SG.
SG là điểm chuyển tiếp: Một GTT phải được thực hiện tại SG trước khi có
thể
xác định được đích của bản tin. Vị trí thực tế của người dùng SCCP không liên
quan đến mạng SS7.
Trong kiến trúc toàn IP có thể dùng cho một giao thức sử dụng các dịch vụ
truyền tải của SCCP trong một mạng toàn IP. Điều này cho phép các mạng phát
triển linh động hơn, đặc biệt là khi không cần tương tác giữa các báo hiệu hiện
thời. Hình 3.13 mô tả trường hợp này.
DHDT7DLT – Nhóm 10 48
GVHD: ThS. Phù Trần Tín Tìm hiểu các giao thứcSIP,MGCP,SIGTRAN
Hình 3.13. Vai trò và vị trí của SUA trong kiến trúc toàn IP
3.10. So sánh M3UA và SUANhìn chung, chồng giao thức sử dụng SUA là không phức tạp và hiệu quả hơn so
với chồng giao thức sử dụng SCCP và M3UA. Bởi vậy, SUA có thể nâng cao
hiệu quả của mạng lõi và có thể cung cấp các phương tiện để triển khai dễ dàng
hơn.
Bảng 2.2. So sánh giữa M3UA và SUA
M3UA SUA
SCCPYêu cầu điểm báo hiệu để hỗ trợ cho các ứng dụng khác nhau của SCCP khi phải phối hợp với các hệ thống quốc gia khác nhau.
Vấn đề là không được hỗ trợ
khi
dùng SUA.
Độ phức tạp trong triển khai
M3UA cần các dịch vụ SCCP. Ít nhất có một giao thức tầng
trên. Giảm độ phức tạp của nút
mạng (trong triển khai cũng
như trong quản lý), do đó, giảm
chi phí.
Về mặt định tuyến
Trong M3UA, các bản tin đượcđiều khiển từ mà điểm đến mã
điểm.
SUA cho phép mạng IP định tuyến bản tin theo thông tin trường tiêu đề toàn cục.
Về mặt địa chỉ Để sử dụng M3UA, mỗi nút IP cần được gán cả mã điểm và địa
Sử dụng SUA, mỗi nút IP không
DHDT7DLT – Nhóm 10 49
GVHD: ThS. Phù Trần Tín Tìm hiểu các giao thứcSIP,MGCP,SIGTRAN
chỉ IP. cần có mã điểm.
Các dịch vụ ISUP Có hỗ trợ. Không thể hỗ trợ được.
3.11 KẾT LUẬNGiao thức Sigtran là một giao thức mới ứng dụng cho mạng NGN, nó cho phép
các nút phía mạng IP giao tiếp với các nút phía mạng SS7 nhằm nâng cao hiệu
suất sử dụng mạng và phối hợp hoạt động giữa mạng PSTN hiện có với mạng
NGN trong tương lai. Vì vậy, việc nghiên cứu giao thức Sigtran cùng các tính
năng kỹ thuật và phương pháp đo kiểm các tính năng kỹ thuật trong đó cho phép
triển khai mạng NGN được dễ dàng hơn trong tương lai và đặc biệt hỗ trợ phối
hợp tương tác hoạt động giữa mạng hiện đang tồn tại với mạng NGN.
DHDT7DLT – Nhóm 10 50
GVHD: ThS. Phù Trần Tín Tìm hiểu các giao thứcSIP,MGCP,SIGTRAN
TÀI LI U THAM KH OỆ Ả Các trang web:
– http://www.tailieu.vn
– http://www.luanvan.in
– http://www.bogiaoduc.edu.vn
– http://www.baigiang.violet.vn
– http://www.ebook.edu.vn
Giáo Trình Công Nghệ Truy Nhập Trong Mạng NGN,
Nguyễn Việt Hùng - Học Viện Công Nghệ Bưu Chính Viễn
Thông.
DHDT7DLT – Nhóm 10 51