Các giao thức báo hiệu và điều khiển ngang hàng

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.

pdf10 trang | Chia sẻ: maiphuongtt | Lượt xem: 1829 | Lượt tải: 0download
Bạn đang xem nội dung tài liệu Các giao thức báo hiệu và điều khiển ngang hàng, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
Chương 10 CÁC GIAO THỨC BÁO HIỆU VÀ ĐIỀU KHIỂN NGANG HÀNG 4.1. GIAO THỨC KHỞI TẠO PHIÊN SIP 4.1.1. Các đặc điểm và chức năng của SIP 4.1.1.1. Các đặc điểm 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, 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. 4.1.1.2. Các chức năng SIP 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:  Đị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. 4.1.2. Các khái niệm và các thành phần của hệ thống SIP 4.1.2.1. Các khái niệm Phầ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 để 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ị): chi tiết ở 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 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). 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 đó. 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
Tài liệu liên quan