Các thủ tục báo hiệu
Việc thiết lập cuộc gọi sử dụng các bản tin được định nghĩa trong khuyến nghị H.225.0. Có thể xảy ra 6 trường hợp, đó là: Cuộc gọi cơ bản – Cả hai thiết bị đầu cuối đều không đăng ký. Cả hai thuê bao đều đăng ký tới một ...
Việc thiết lập cuộc gọi sử dụng các bản tin được định nghĩa trong khuyến nghị H.225.0. Có thể xảy ra 6 trường hợp, đó là:
- Cuộc gọi cơ bản – Cả hai thiết bị đầu cuối đều không đăng ký.
- Cả hai thuê bao đều đăng ký tới một Gatekeeper.
- Chỉ có thuê bao chủ gọi có đăng ký với Gatekeeper.
- Chỉ có thuê bao bị gọi có đăng ký với Gatekeeper.
- Hai thuê bao đăng ký với hai Gatekeeper khác nhau.
- Thiết lập cuộc gọi qua Gateway.
Trong hầu hết giao thức/báo hiệu phục vụ các ứng dụng thời gian thực, yêu cầu về ngưỡng thời gian xử lý cho phép (Tout – Time out) của từng tín hiệu và của cả quá trình báo hiệu là bắt buộc. Ở phương thức báo hiệu trực tiếp, quá trình báo hiệu diễn ra nhanh hơn dẫn đến xác xuất thời gian xử lý báo hiệu vượt quá Tout ít, làm cho tỷ lệ lỗi cuộc gọi giảm, hơn nữa việc báo hiệu trực tiếp giúp cho quá trình đồng bộ mạng chính xác. Tuy nhiên, ở phương thức này, yêu cầu các đầu cuối tham gia vào cuộc gọi phải có sự tính tương thích về báo hiệu. Ở phương thức báo hiệu gián tiếp thông qua Gatekeeper, quá trình báo hiệu diễn ra chậm hơn dẫn đến xác xuất thời gian xử lý báo hiệu vượt quá Tout lớn hơn, và vì thế tỷ lệ lỗi cuộc gọi cũng nhiều hơn. Vì phải thông qua (các) Gatekeeper nên cấu trúc mạng sẽ phức tạp, vấn đề tổ chức và đồng bộ mạng cần phải quan tâm hơn. Ở phương thức này, vì báo hiệu thông qua Gatekeeper trung gian, vì thế vấn đề tương thích báo hiệu chỉ liên quan đến đầu cuối và Gatekeeper, làm tăng khả năng lựa chọn đầu cuối cho người dùng.
Dưới đây là chi tiết các thủ tục thiết lập cuộc gọi, một số trường hợp sử dụng báo hiệu trực tiếp giữa các đầu cuối, các trường hợp còn lại sử dụng báo hiệu gián tiếp qua Gatekeeper.
Cuộc gọi cơ bản – Cả hai thiết bị đầu cuối đều không đăng ký
Cuộc gọi cơ bản không có Gatekeeper
Khi cả hai thiết bị đầu cuối đều không đăng ký với Gatekeeper, thì chúng sẽ trao đổi trực tiếp các bản tin với nhau như hình . Khi đó chủ gọi sẽ gửi bản tin thiết lập cuộc gọi tới lớp TSAP trên kênh báo hiệu đã biết trước địa chỉ của thuê bao bị gọi.
Cả hai thuê bao đều đăng ký tới một Gatekeeper
Tình huống này có 2 trường hợp xảy ra là báo hiệu trực tiếp (được trình bày dưới đây) và báo hiệu gián tiếp thông qua Gatekeeper.
Cả hai thuê bao đầu cuối đều đăng ký tới một Gatekeeper và Gatekeeper chọn phương thức truyền báo hiệu trực tiếp giữa 2 thuê bao (). Đầu tiên, thuê bao chủ gọi trao đổi với Gatekeeper thông qua cặp bản tin ARQ (1)/ACF (2) để thiết lập báo hiệu. Trong bản tin ACF do Gatekeeper trả lời cho thuê bao chủ gọi có chứa địa chỉ kênh báo hiệu của thuê bao bị gọi. Sau đó thuê bao chủ gọi sẽ căn cứ vào địa chỉ này để gửi bản tin Set-up (3) tới thuê bao bị gọi. Nếu thuê bao bị gọi chấp nhận yêu cầu, nó sẽ trao đổi căpj bản tin ARQ (5)/ACF (6) với Gatekeeper. Nếu thuê bao bị gọi nhận được ARJ (6) thì nó sẽ gửi bản tin Release Complete tới thuê bao chủ gọi.
Hai thuê bao đều đăng ký với một Gatekeeper – báo hiệu trực tiếp
Chỉ có thuê bao chủ gọi có đăng ký với Gatekeeper
Khi các bản tin báo hiệu cuộc gọi do Gatekeeper định tuyến, thì thủ tục thiết lập cuộc gọi được thể hiện trên hình 3.21. Trong trường hợp này các thứ tự bản tin của thủ tục giống hệt trường hợp trên, chỉ khác duy nhất một điểm đó là tất cả các bản tin báo hiệu gửi từ thuê bao này tới thuê bao kia đều thông qua phần tử trung gian là Gatekeeper 1.
Chỉ có thuê bao chủ gọi đăng ký – Gatekeeper định tuyến báo hiệu
Chỉ có thuê bao bị gọi có đăng ký với Gatekeeper
Trường hợp báo hiệu do Gatekeeper định tuyến, thủ tục báo hiệu được thể hiện trên hình 3.22. Đầu tiên, thuê bao chủ gọi sẽ gửi bản tin Set-up (1) trên kênh báo hiệu đã biết trước địa chỉ tới thuê bao bị gọi. Nếu thuê bao bị gọi chấp nhận cuộc gọi nó sẽ trao đổi bản tin ARQ (3)/ARJ (4) với Gatekeeper. Trong bản tin ARJ mà Gatekeeper trả lời cho thuê bao bị gọi chứa mã yêu cầu định tuyến cuộc gọi qua Gatekeeper (Route Call To Gatekeeper). Khi đó, thuê bao bị gọi sẽ gửi bản tin Facility (5) có chứa địa chỉ kênh báo hiệu của Gatekeeper tới thuê bao chủ gọi. Sau đó, thuê bao chủ gọi gửi bản tin Release Complete (6) tới thuê bao chủ gọi và căn cứ vào địa chỉ kênh báo hiệu thuê bao chủ gọi sẽ gửi bản tin Set-up (7) tới Gatekeeper, Gatekeeper gửi bản tin Set-up (8) tới thuê bao bị gọi. Sau đó, thuê bao bị gọi sẽ trao đổi bản tin ARQ (9)/ACF (10) với Gatekeeper, thuê bao bị gọi gửi bản tin Connect (12) có chứa địa chỉ kênh điều khiển H.245 tới Gatekeeper. Gatekeeper sẽ gửi bản tin Connect (13) có chứa địa chỉ kênh điều khiển H.245 của thuê bao bị gọi.
Chỉ có thuê bao bị gọi đăng ký – Gatekeeper định tuyến báo hiệu
Hai thuê bao đăng ký với hai Gatekeeper khác nhau
Tình huống này có 4 trường hợp xảy ra: (1) Cả hai Gatekeeper đều chọn cách định tuyến báo hiệu trực tiếp giữa hai thuê bao, (2) Gatekeeper 1 phía chủ gọi truyền báo hiệu theo phương thức trực tiếp còn Gatekeeper 2 phía bị gọi định tuyến báo hiệu cuộc gọi qua nó, (3) Gatekeeper 1 phía chủ gọi định truyền báo hiệu qua nó còn Gatekeeper 2 phái bị gọi chọn phương thức truyền báo hiệu trực tiếp, và (4) hai TB đăng ký với 2 Gatekeeper và cả hai Gatekeeper này đều chọn phương thức định tuyến báo hiệu cuộc gọi qua chúng. Dưới đây là chi tiết về trường hợp (4).
Hai TB đăng ký với 2 Gatekeeper và cả hai Gatekeeper này đều chọn phương thức định tuyến báo hiệu cuộc gọi qua chúng. Thủ tục báo hiệu của trường hợp này được thể hiện ở hình dưới.
Đầu tiên TB chủ gọi trao đổi ARQ (1)/ACF (2) với Gatekeeper 1, trong bản tin ACF có chứa địa chỉ kênh báo hiệu của Gatekeeper 1. Căn cứ vào địa chỉ này TB chủ gọi gửi bản tin Set-up (3) tới Gatekeeper 1. Gatekeeper 1 sẽ gửi bản tin Set-up (4) tới địa chỉ kênh báo hiệu của TB bị gọi, nếu chấp nhận TB bị gọi sẽ trao đổi ARQ (6)/ARJ (7) với Gatekeeper 2, trong bản tin ARJ (7) mà Gatekeeper 2 trả lời cho TB bị gọi chứa địa chỉ kênh báo hiệu của nó và mã chỉ thị báo hiệu định tuyến cuộc gọi qua.
Hai thuê bao đều đăng ký – Định tuyến qua hai Gatekeeper
Gatekeeper 2 (Route Call To Gatekeeper). TB bị gọi trả lời Gatekeeper 1 bản tin Facility (8) chứa địa chỉ kênh báo hiệu của Gatekeeper 2. Tiếp đó Gatekeeper 1 gửi bản tin Release Complete tới TB bị gọi và gửi bản tin Setup (10) tới địa chỉ kênh báo hiệu của Gatekeeper 2 và Gatekeeper 2 gửi Setup (11) tới TB bị gọi. TB bị gọi trao đổi ARQ (12)/ACF (13) với Gatekeeper 2 và trả lời Gatekeeper 2 bằng bản tin Connect (15) chứa địa chỉ kênh điều khiển H.245 của nó để sử dụng báo hiệu H.245. Gatekeeper 2 gửi Connect (16) tới Gatekeeper 1, bản tin này chứa địa chỉ kênh điều khiển H.245 của TB bị gọi hoặc địa chỉ kênh điều khiển H.245 của Gatekeeper 2 tùy thuộc vào Gatekeeper 2 có chọn định tuyến kênh điều khiển H.245 hay không. Sau đó Gatekeeper 1 gửi Connect (17) tới TB chủ gọi, bản tin này chứa địa chỉ kênh điều khiển mà Gatekeeper 1 nhận được từ Gatekeeper 2 hoặc là địa chỉ kênh điều khiển H.245 của Gatekeeper 1 nếu có chọn định tuyến kênh điều khiển H.245.
Thiết lập cuộc gọi qua Gateway
Như đã trình bày ở trên, một cuộc gọi chỉ liên quan đến Gateway khi cuộc gọi đó có sự chuyển hướng từ mạng PSTN sang mạng LAN hoặc ngược lại. Vì vậy về cơ bản có thể phân biệt cuộc gọi qua Gateway thành 2 loại: cuộc gọi từ một thuê bao điện thoại vào mạng LAN và cuộc gọi từ một thuê bao trong mạng LAN ra một thê bao trong mạng thoại.
Khi kết thúc giai đoạn 1 tức là cả chủ gọi lẫn bị gọi đã hoàn thành việc trao đổi các bản tin thiết lập cuộc gọi, thì các đầu cuối sẽ thiết lập kênh điều khiển H.245. Bản tin đầu tiên được trao đổi giữa các đầu cuối là Terminal Capability Set để các bên thông báo cho nhau khả năng làm việc của mình. Mỗi một thiết bị đầu cuối đều có đặc tính riêng nói lên khả năng chế độ mã hóa, truyền, nhận và giải mã các tín hiệu đa dịch vụ. Kênh điều khiển này có thể do thuê bao bị gọi thiết lập sau khi nó nhận được bản tin Set-up hoặc do thuê bao chủ gọi thiết lập khi nó nhận được bản tin Alerting hoặc Call Proceeding. Trong trường hợp không nhận được bản tin Connect hoặc một đầu cuối gửi Release Complete, thì kênh điều khiển H.245 sẽ được giải phóng.
Sau khi trao đổi khả năng (tốc độ nhận tối đa, phương thức mã hóa…) và xác định quan hệ master-slave trong giao tiếp ở giai đoạn 2, thủ tục điều khiển kênh H.245 sẽ thực hiện việc mở rộng kênh logic để truyền số liệu. Các kênh này là kênh H.225. Sau khi mở kênh logic để truyền tín hiệu là âm thanh và hình ảnh thì mỗi đầu cuối truyền tín hiệu sẽ truyền đi một bản tin h2250MaximumSkewIndication để xác định thông số truyền.
Thay đổi chế độ hoạt động
Trong giai đoạn này các thiết bị đầu cuối có thể thực hiện thủ tục thay đổi cấu trúc kênh, thay đổi khả năng và chế độ truyền cũng như nhận (Chế độ truyền và nhận là thông báo và ghi nhận của các đầu cuối để xác định khả năng làm việc giữa chúng).
Trao đổi các luồng tín hiệu video
Việc sử dụng chỉ thị VideoIndicateReadyToActive được định nghĩa trong khuyến nghị H.245 là không bắt buộc, nhưng khi sử dụng thì thủ tục của nó như sau.
Đầu tiên thuê bao chủ gọi sẽ không được phép truyền video cho đến khi thuê bao bị gọi chỉ thị sẵn sàng để truyền video. Thuê bao chủ gọ sẽ truyền bản tin VideoIndicateReadyToActive sau khi kết thúc quá trình trao đổi khả năng, nhưng nó sẽ không truyền tín hiệu video cho đến khi nhận được bản tin VideoIndicateReadyToActive hoặc nhận được luồng tín hiệu video đến từ phía thuê bao bị gọi.
Phân phối các địa chỉ luồng dữ liệu
Trong chế độ một địa chỉ, một đầu cuối sẽ mở một kênh logic tới MCU hoặc một đầu cuối khác. Địa chỉ của các kênh chứa trong bản tin OpenLogicalChannel và OpenLogicalChannelAck.
Trong chế độ địa chỉ nhóm, địa chỉ nhóm sẽ được xác định bởi MC và được truyền tới các đầu cuối trong bản tin CommunicationModeCommand. Một đầu cuối sẽ báo cho MC việc mở một kênh logic với địa chỉ nhóm thông qua bản tin OpenLogicalChannel và MC sẽ truyền bản tin đó tới tất cả các đầu cuối trong nhóm.
Có một số dịch vụ cuộc gọi được thực hiện trên mạng H.323 như: thay đổi độ rộng băng tần, giám sát trạng thái hoạt động, hội nghị đặc biệt, các dịch vụ bổ xung, ở đây xin được trình bày hai loại dịch vụ là “thay đổi độ rộng băng tần” và “giám sát trạng thái hoạt động”.
Thay đổi độ rộng băng tần
Độ rộng băng tần của một cuộc gọi được Gatekeeper thiết lập trong khoảng thời gian thiết lập trao đổi. Một đầu cuối phải chắc chắn rằng tổng tất cả luồng truyền, nhận âm thanh và hình ảnh đều phải nằm trong độ rộng băng tần đã thiết lập.
Tại mọi thời điểm trong khi hội thoại, đầu cuối hoặc Gatekeeper đều có thể yêu cầu tăng hoặc giảm độ rộng băng tần. Một đầu cuối có thể thay đổi tốc độ truyền trên một kênh logic mà không yêu cầu Gatekeeper thay đổi độ rộng băng tần nếu như tổng tốc độ truyền và nhận không vượt quá độ rộng băng tần hiện tại. Trong trường hợp ngược lại thì đầu cuối phải yêu cầu Gatekeeper mà nó đăng ký thay đổi độ rộng băng tần.
Yêu cầu thay đổi độ rộng băng tần – Thay đổi thông số truyền
Thủ tục thay đổi độ rộng băng tần – thay đổi thông số truyền được thể hiện trên hình. Khi đầu cuối 1 muốn tăng tốc độ truyền trên kênh logic trước hết nó phải xác định xem có thể vượt quá độ rộng băng tần của cuộc gọi hiện tại không. Nếu có thể thì nó sẽ gửi bản tin BRQ (1) tới Gatekeeper 1. Khi nhận được bản tin BCF (2) có nghĩa là có đủ độ rộng băng tần cho yêu cầu, đầu cuối 1 sẽ gửi bản tin CloseLogicalChannel (3) để đóng kênh logic. Sau đó nó sẽ mở lại kênh logic bằng cách gửi bản tin openLogicalChannel (4) có chứa giá trị tốc độ mới tới đầu cuối 2. Trước hết nó phải xác định xem giá trị đó có vượt quá độ rộng băng tần của kênh hay không; nếu chấp nhận giá trị này thì nó sẽ trao đổi bản tin yêu cầu thay đổi độ rộng băng tần BRQ (5)/BCF (6) với Gatekeeper 2. Nếu độ rộng băng tần đủ cho yêu cầu thay đổi thì đầu cuối 2 sẽ trả lời đầu cuối 1 bằng bản tin openLogicChannelAck (7); trong trường hợp ngược lại nó sẽ từ chối bằng bản tin openLogicChannelReject.
Thủ tục thay đổi độ rộng băng tần – Thay đổi thông số nhận được thể hiện trên hình 3.25. Khi đầu cuối 1 muốn tăng tốc độ nhận trên kênh logic của mình, trước hết nó phải xác định xem có thể vượt quá độ rộng băng tần của cuộc gọi hiện tại không. Nếu có thể nó sẽ gửi BRQ (1) tới Gatekeeper 1. Khi nhận được BCF (2) thì nó sẽ gửi bản tin flowControlCommand (3) có chứa giới hạn tốc độ mới của kênh tới thiết bị đầu cuối 2. Trước hết đầu cuối 2 phải xác định xem băng tần mới có vượt quá khả năng của kênh không; nếu chấp nhận được thì nó sẽ gửi bản tin yêu cầu thay đổi độ rộng băng tần BRQ (4) tới Gatekeeper 2. Khi nhận được BCF (5) thì đầu cuối 2 sẽ gửi bản tin closeLogicChannel (6) để đóng kênh logic sau đó mở lại kênh logic bằng bản tin openLogicalChannel (7) có chứa tốc độ bit mới tới đầu cuối 1. Đầu cuối 1 sẽ xác định tốc độ mới và trả lời đầu cuối 2 bằng bản tin openLogicalChannelAck (6).
Yêu cầu thay đổi độ rộng băng tần – Thay đổi thông số nhận
Giám sát trạng thai
Để giám sát trạng thái hoạt động của đầu cuối, Gatekeeper liên tục trao đổi cặp bản tin IRQ/IRR với các đầu cuối do nó kiểm soát. Khoảng thời gian đều đặn giữa các lần trao đổi các bản tin có thể lớn hơn 10 giây và giá trị của nó do nhà sản xuất quyết định.
Gatekeeper có thể yêu cầu một thiết bị đầu cuối gửi cho nó bản tin IRR một cách đều đặn nhờ giá trị của trường irrFrequency trong bản tin ACF gửi cho thiết bị đầu cuối đó để xác định tốc độ truyền bản tin IRR. Khi xác định được giá trị của trường irrFrequency, thiết bị đầu cuối sẽ gửi bản tin IRR với tốc độ đó trong suốt khoảng thời gian của cuộc gọi. Trong khi đó, Gatekeeper có thể vẫn gửi IRQ tới thiết bị đầu cuối và yêu cầu trả lời theo cơ chế như đã trình bày ở trên.
Trong khoảng thời gian diễn ra cuộc gọi, một đầu cuối hoặc Gatekeeper có teher đều đặn hỏi trạng thái từ đầu cuối bên kia bằng cách sử dụng bản tin StatusEnquiry. Đầu cuối nhận được bản tin StatusEnquiry sẽ trả lời bằng bản tin chỉ thị trạng thái hiện thời. Thủ tục hỏi đáp này có thể được Gatekeeper sử dụng để kiểm tra một cách đều đặn xem cuộc gọi có còn đang hoạt động không. Có một lưu ý là các bản tin này là bản tin H.225.0 được truyền trên kênh báo hiệu cuộc gọi không ảnh hưởng đến các bản tin IRR được truyền trên kênh RAS.
Một thiết bị đầu cuối có thể kết thúc cuộc gọi theo các bước của thủ tục sau:
Dừng truyền luồng tín hiệu video khi kết thúc truyền một ảnh, sau đó giải phóng tất cả các kênh logic phục vụ truyền video.
Dừng truyền dữ liệu và đóng tất cả các kênh logic dùng để truyền dữ liệu.
Dừng truyền audio sau đó đóng tất cả các kênh logic dùng để truyền audio.
Truyền bản tin H.245 endSessionCommand trên kênh điều khiển H.245 để báo cho thuê bao đầu kia biết nó muốn kết thúc cuộc gọi. Sau đó nó dừng truyền các bản tin H.245 và đóng kênh điều khiển H.245.
Nó sẽ chờ nhận bản tin endSessionCommand từ thuê bao đầu kia và sẽ đóng kênh điều khiển H.245
Nếu kênh báo hiệu cuộc gọi đang mở, thì nó sẽ truyền đi bản tin Release Complete sau đso đóng kênh báo hiệu.
Nó cũng có thể kết thúc cuộc gọi theo các thủ tục sau đây.
Một đầu cuối nhận bản tin endSessionCommand mà trước đó nó không truyền đi bản tin này, thì nó sẽ lần lượt thực hiện các bước từ 1 đến 6 ở trên chỉ bỏ qua bước 5.
Chú ý:Kết thúc một cuộc gọi không có nghĩa là kết thúc một hội nghị (cuộc gọi có nhiều đầu cuối tham gia). Một hội nghị sẽ chắc chắn kết thúc khi sử dụng bản tin H.245 dropConference. Khi đó các đầu cuối sẽ chờ MC kết thúc cuộc gọi theo thủ tục trên.
Thiết bị đầu cuối kết thúc cuộc gọi có sự tham gia của Gatekeeper
Trong một cuộc gọi không có sự tham gia của Gatekeeper thì chỉ cần thực hiện các bước từ 1 đến 6.
Trong cuộc gọi có sự tham gia của Gatekeeper thì cần có hoạt động giải phóng băng tần. Thủ tục được thể hiện trên hình 3.26. Vì vậy sau khi thực hiện các bước từ 1 đến 6, mỗi đầu cuối sẽ truyền đi bản tin DRQ (3) tới Gatekeeper. Sau đó, Gatekeeper sẽ trả lời bằng bản tin DCF (4). Sauk hi gửi DRQ, đầu cuối sẽ không gửi bản tin IRR tới Gatekeeper nữa và khi đó cuộc gọi kết thúc.
Trên đây là thủ tục kết thúc cuộc gọi có sự tham gia của Gatekeeper do đầu cuối thực hiện. Thủ tục kết thúc cuộc gọi do Gatekeeper thực hiện được thể hiện trên hình 3.27. Đầu tiên, Gatekeeper gửi bản tin DRQ tới đầu cuối. Khi nhận được bản tin này, đầu cuối sẽ lần lượt thực hiện các bước từ 1 đến 6, sau đó trả lời Gatekeeper bằng gửi tin DCF. Thuê bao đầu kia khi nhận được bản tin endSessionCommand sẽ thực hiện thủ tục giải phóng cuộc gọi giống trường hợp đầu cuối chủ động kết thúc cuộc gọi (hình 3.26). Nếu cuộc gọi là một hội nghị thì Gatekeeper sẽ gửi DRQ tới tất cả các đầu cuối tham gia hội nghị.
Kết thúc cuộc gọi bắt đầu từ Gatekeeper