2.3.1 Thành phần mạng báo hiệu H.323
H.323 là bộ giao thức của ITU-T định nghĩa các dịch vụ truyền thông đa phƣơng tiện trên cơ sở mạng chuyển mạch gói. Phiên bản đầu tiên đƣợc đƣa ra vào năm 1996 và gồm 5 phiên bản. Phiên bản 1 và 2 hỗ trợ giao thức H.245 trên nền giao thức điều khiển truyền dẫn TCP (Transmision Control Protocol), Q.931 trên nền TCP và các thủ tục đăng ký, quản trị và trạng thái RAS (Registration, Admission and Status) trên nền giao thức dữ liệu ngƣời dùng UDP (User Datagram
Protocol). Các phiên bản 3 và 4 hỗ trợ thêm H.245 và Q.931 trên cả nền TCP và UDP. Phiên bản 5 hỗ trợ các kiến trúc báo hiệu đảm bảo chất lƣợng dịch vụ.
Hình 2.11: Các thành phần mạng H.323
Kiến trúc H.323 đƣợc sử dụng rộng rãi trên cả mạng cục bộ LAN hoặc mạng gói diện rộng WAN. Phiên thiết lập truyền thông đa điểm trong hệ thống H.323 đƣợc điều khiển bởi khối điều khiển đa điểm H.323. H.323 sử dụng trong mạng WAN thông qua Gatekeeper hoặc các thiết bị Gateway. Gatekeeper còn có các chức năng biên dịch địa chỉ, quản lý vùng, điều khiển băng thông, quản lý băng thông, điều khiển cuộc gọi. Mọi kết nối WAN đều đƣợc xử lý bằng một hoặc nhiều gateway H.323.Về mặt kỹ thuật, bất kể thiết bị nào nằm ngoài gateway H.323 đều không đƣợc đề cập trong khuyến nghị H.323, nhƣng các gateway H.323 có thể phối hợp hoạt động với các loại thiết bị khác nhau trong các cấu trúc mạng khác nhau. Cấu hình mạng H.323 điển hình bao gồm các thành phần sau:
(i) Đầu cuối H.323
Thiết bị đầu cuối H.323 gắn liền với với ngƣời sử dụng để thực hiện truyền thông chiều đa phƣơng tiện. Các đầu cuối H.323 cần phải hỗ trợ các chuẩn báo hiệu và thủ tục kết nối sau:
o Chuẩn H.225 cho quá trình báo hiệu và thiết lập cuộc gọi.
Đầu cuối H.323 Gateway
Mạng chuyển mạch kênh
Gatekeeper Khối đa điểm
Mạng chuyển
o Chuẩn H.245 cho việc trao đổi khả năng của đầu cuối và để tạo các kênh thông tin.
o RAS cho việc đăng ký và điều khiển các hoạt động quản lý khác với GK o RTP/RTCP đƣợc sử dụng cho việc truyền các gói tin đa phƣơng tiện. o Các chuẩn mã hoá thoại.
(ii) Gateway
Gateway thực hiện chức năng chuyển đổi báo hiệu và dữ liệu giữa mạng IP và các mạng khác. Làm cầu nối cho phép các mạng hoạt động dựa trên các giao thức khác nhau có thể phối hợp với nhau. Cấu trúc của Gateway bao gồm bộ điều khiển cổng đa phƣơng tiện MGC (Media Gateway controller), cổng đa phƣơng tiện MG (Media Gateway) và cổng báo hiệu SG (Signalling Gateway) đƣợc minh họa trong hình 2.12.
Hình 2.12: Cấu tạo của Gateway.
Các đặc tính cơ bản của một Gateway trong giao thức H.323 gồm có:
o Một Gateway phải hỗ trợ các giao thức báo hiệu hoạt động trong mạng H.323 và mạng sử dụng chuyển mạch kênh.
o Về phía H.323, Gateway phải hỗ trợ báo hiệu điều khiển H.245 cho quá trình trao đổi khả năng hoạt động của đầu cuối cũng nhƣ của Gateway, báo hiệu cuộc gọi H.225, báo hiệu RAS. Về phía mạng chuyển mạch kênh, Gateway phải hỗ trợ các giao thức hoạt động trong mạng chuyển mạch kênh (nhƣ SS7 sử dụng trong PSTN).
(iii) Gatekeeper
Một Gatekeeper đƣợc xem là khối trung tâm điều khiển cuộc gọi trong mạng sử dụng H.323. Mặc dù là thành phần tuỳ chọn, nhƣng Gatekeeper cung cấp các dịch vụ quan trọng nhƣ biên dịch địa chỉ, sự phân quyền và nhận thực cho thiết bị đầu cuối và Gateway, quản lý băng thông, thu thập số liệu và tính cƣớc. Các chức năng này đƣợc mô tả trong hình 2.13.
Hình 2.13: Chức năng của một Gatekeeper (iv) Khối điều khiển đa điểm MCU
MCU là thành phần hỗ trợ dịch vụ hội nghị điểm đa điểm nếu phiên làm việc có sự tham gia của từ 2 đầu cuối H.323 trở lên. Mọi đầu cuối tham gia vào hội nghị đều phải thiết lập một kết nối với MCU. MCU gồm hai chức năng cơ bản: Điều khiển đa điểm và nhận, xử lý các luồng dữ liệu cho phiên đa điểm.
2.3.2 Các giao thức báo hiệu cuộc gọi trong H.323
Tiêu chuẩn H.323 có tham chiếu đến một tiêu chuẩn khác của ITU-T là H.225. H.225 thực hiện báo hiệu cho việc điều khiển cuộc gọi. H.225 có quyền giống nhƣ H.323 để xác định một tập hợp các khả năng báo hiệu cuộc gọi cho luồng đa phƣơng tiện. H.225 sử dụng các bản tin đƣợc định nghĩa theo chuẩn báo hiệu điều khiển H.245 để thiết lập và giải phóng các kênh dữ liệu đa phƣơng tiện.
Gatekeeper H.225.0 RAS (server) H.225.0 Báo hiệu cuộc gọi H.245 Báo hiệu điều khiển Dịch vụ tính cƣớc Dịch vụ bảo mật Dịch vụ thƣ mục Quản lý cuộc gọi/ chính sách Các giao thức truyền tải và giao diện
Hình 2.14: Mô hình kết nối báo hiệu trong H.323
Các thủ tục H.225 cho phép chuyển các bản tin báo hiệu từ thiết bị gửi tới thiết bị nhận. Yêu cầu thiết lập cuộc gọi đƣợc thực hiện trên các kênh H.225 là đăng ký, quản lý và báo hiệu RAS (Register, Administrator and Signalling). RAS đƣợc định nghĩa nhƣ một tài nguyên mạng và sử dụng UDP nhƣ một phƣơng thức truyền tải. Kênh RAS giúp các thiết bị có thể giám sát đƣợc tín hiệu khởi tạo của các cuộc kết nối.
Khi các yêu cầu đƣợc truyền trên RAS tới Gatekeeper, Gatekeeper trả lời các thông tin về phía chủ gọi các thông tin bao gồm địa chỉ IP và số cổng TCP của thiết bị bên bị gọi, cho phép ngƣời gọi thiết lập một kết nối TCP.
Để xem xét các luồng thông tin báo hiệu trong H.323, ta xem xét một mô hình kết nối đơn giản nhƣ trên hình 2.14. Các thông tin báo hiệu điều khiển cuộc gọi đƣợc thực hiện trên các kết nối từ thiết bị đầu cuối tới Gatekeeper và gateway.
Các bản tin của Q.931 đƣợc sử dụng tiếp theo sau khi quá trình bắt tay thành công qua RAS. Nếu hệ thống không có Gatekeeper thì không cần đến RAS và Q.931 là giao thức sẽ đƣợc sử dụng để thiết lập cuộc thoại giữa các đầu cuối. Q.931 thực hiện việc trao đổi trực tiếp các thông báo giữa 2 đầu cuối với mục đích thiết lập cuộc gọi và chấm dứt cuộc gọi khi một trong các bên kết thúc hội thoại.
Khi hai bên đồng ý tham gia cuộc gọi sau quá trình bắt tay qua Q.931 thì bƣớc tiếp theo là hai bên thống nhất một cách thức hội thoại phù hợp bao gồm các công việc sau: thỏa thuận về bộ CODEC đƣợc sử dụng, mở hai cổng UDP kề nhau cho các kênh logic truyền và điều khiển dòng thông tin đa phƣơng tiện, quản lý kênh
logic thông qua việc xác lập máy chủ/máy khách, điều khiển tốc độ truyền dòng bit. Các công việc trên đƣợc thực hiện qua H.245.
2.3.3 Nguyên tắc hoạt động của thủ tục báo hiệu cuộc gọi
Trong quá trình thiết lập cuộc gọi qua H.323 gồm 5 giai đoạn theo ví dụ chỉ trên hình 2.15 trên đây gồm:
Giai đoạn 1: Giai đoạn thiết lập cuộc gọi. Trong quá trình này, đầu cuối chủ gọi thông báo cho bên bị gọi yêu cầu mở một kênh audio. Giai đoạn này cũng xác định bản tin với mục đích thông báo cho chủ gọi là bên bị gọi đã nhận đƣợc thông báo về cuộc gọi. Độ chính xác của tín hiệu thiết lập cuộc gọi tuỳ thuộc vào cấu hình mạng, cụ thể là sự tồn tại và vị trí của các Gatekeeper. Trong mọi trƣờng hợp, đầu cuối chủ gọi sẽ bắt đầu một kết nối có chƣa địa chỉ IP kênh điều khiển H245 với mục đích thiết lập kênh truyền thông bằng bản tin H.245.
Hình 2.15: Tiến trình xử lý báo hiệu một cuộc gọi đơn giản trong H.323
Giai đoạn 2: Giai đoạn truyền thông và thiết lập khả năng trao đổi. Khi hoàn thành giai đoạn thiết lập cuộc gọi, cả 2 đầu cuối sẽ bƣớc sang giai đoạn 2. Giai đoạn này
liên quan đến thiết lập kênh điều khiển H.245 thông qua việc trao đổi thông tin có liên quan đến khả năng của từng điểm trong cuộc gọi. Trong trƣờng hợp này là khả năng liên quan đến kiểu loại kênh truyền thông đƣợc hỗ trợ. Ví dụ các gateway H.323 phải hỗ trợ cho các kênh audio.
Giai đoạn 3: Giai đoạn thiết lập và truyền thông audio. Trong giai đoạn này, các đầu cuối sẽ trao đổi để thiết lập các kênh logic sẽ truyền tải các luồng thông tin. Đối với thông tin audio, mỗi đầu cuối cuộc gọi sẽ mở một kênh duy nhất bởi vì sẽ không có một yêu cầu nào có cùng mã hoặc tốc độ bit đƣợc sử dụng theo cả hai hƣớng.
Giai đoạn 4: Giai đoạn xác lập tham số cuộc gọi. Tham số cuộc gọi là những thay đổi các tham số đã đƣợc thoả thuận trong 3 giai đoạn trên. Các tham số này gồm cả việc điều chỉnh băng tần mà cuộc gọi đòi hỏi, bổ sung hoặc loại bỏ các thành phần tham gia cuộc gọi hoặc trao đổi trạng thái giữ tham số giữa gateway và đầu cuối. Giai đoạn 5: Giải phóng cuộc gọi: Thiết bị muốn giải phóng cuộc gọi H.323 có thể tiến hành đơn giản bằng cách cho phép chuyển các bản tin xoá cuộc gọi giống nhƣ chuyển các bản tin thiết lập cuộc gọi đƣợc sử dụng lúc bắt đầu cuộc gọi. Cũng giống nhƣ khi thiết lập, các thủ tục giải phóng cuộc gọi khác nhau tuỳ thuộc vào vai trò của Gatekeeper trong cuộc gọi.
Nhƣ vậy, qua mô tả một cuộc gọi điển hình trên đây cho thấy các giao thức nguyên thuỷ sử dụng điều khiển cuộc gọi trong H.323 là các giao thức H.225 và H.245. Ngoài ra, giao thức báo hiệu từ đầu cuối tới đầu cuối đƣợc hỗ trợ bởi Q.931.
2.4 GIAO THỨC KHỞI TẠO PHIÊN SIP
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 dựa trên ý tƣởng và cấu trúc của HTTP (HyperText Transfer Protocol) là giao thức trao đổi thông tin của World Wide Web. SIP đƣợc định nghĩa nhƣ một giao thức chủ/tớ (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.
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 mà có thể tích hợp vào lớp ứng dụng nhằm nâng cao khả năng tối ƣu hóa. SIP dựa vào giao thức mô tả phiên SDP (Session Description Protocol) để 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ã thiết bị chuyển mạch và can thiệp vào giao thức báo hiệu luồng thời gian thực RTSP (Real Time Stream Protocol) để sắp xếp các tham số và khuôn dạng dữ liệu chung cho nhiều loại thông tin khi chuyển trong SIP.
SIP là một giao thức điều khiển lớp ứng dụng mà 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. 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. 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ế 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. 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:
o Đị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.
o 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.
o 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.
o Thiết lập cuộc gọi (Call setup): 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.
o Xử lý cuộc gọi (Call handling): bao gồm truyền tải và kết thúc cuộc gọi.
2.4.1 Thành phần mạng báo hiệu SIP
Các thành phần chính của một hệ thống SIP bao gồm các thành phần sau: Đầu cuối SIP (UAC/UAS); Proxy server; Location server; Redirect server; Registrar server.
Hình 2.16: 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 hay giả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.
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ỳ.
2.4.2 Kiến trúc chức năng
SIP là một giao thức phân lớp cho phép nhiều module khác nhau thực hiện chức năng độc lập với sự kết nối lỏng giữa mỗi lớp. Cấu trúc của SIP trong quá trình gửi yêu cầu và nhận đáp ứng đƣợc phân lớp nhƣ trên hình 2.17.
Cú pháp và mã hóa Truyền tải Giao dịch Giao dịch người dùng Hình 2.17: Các lớp giao thức SIP
Lớp đầu tiên trong giao thức là lớp cú pháp và mã hóa. Lớp này sử dụng văn phạm ABNF (Augmented Backus-Naur Form) để đƣa ra các nguyên tắc mã hóa và
khuôn dạng cú pháp cho bản tin SIP. Khuôn dạng này đƣợc mô tả chi tiết trong RFC2234.
Lớp thứ hai trong cấu trúc SIP là lớp truyền tải. Đây là lớp chỉ thị cho client gửi yêu cầu và nhận các đáp ứng và server nhận yêu cầu và gửi các đáp ứng nhƣ thế nào. Lớp truyền tải gần giống với lớp socket của một thực thể SIP.
Lớp thứ ba trong cấu trúc SIP là lớp giao dịch. Một giao dịch trong các thuật ngữ SIP là một yêu cầu đƣợc gửi bởi một client tới một server, cùng với tất cả các đáp ứng cho yêu cầu đƣợc đó đƣợc gửi từ server về client. Lớp giao dịch xử lý việc tƣơng thích đáp ứng cho yêu cầu. Thời gian hết hạn của quá trình phát lại và giao dịch của lớp ứng dụng cũng đƣợc xử lý trong lớp này và phụ thuộc vào giao thức truyền tải đƣợc sử dụng. Các giao dịch sử dụng lớp truyền tải để gửi và nhận yêu cầu và đáp ứng.
Lớp thứ tƣ là lớp giao dịch chứa bốn cơ chế trạng thái giao dịch. Mỗi cơ chế