【文章內(nèi)容簡介】
uupdu中的h245Control字段,此過程就是H.245消息的“封裝”或“隧道”過程。利用隧道技術可以將一個或多個H.245消息封裝在呼叫信令消息中,這時,需要置“h245Tunneling”字段為”True”,如果沒有可用的呼叫信令消息傳送H.245消息,可用Facility消息進行傳送??焖龠B接和隧道技術是不能同時進行的,因為隧道傳送的H.245消息會強制覆蓋快速連接過程。但為了主被叫雙方盡早地進行能力交換和主從確定,可以允許兩者并行進行,其方法是將能力集交換消息和主從確定消息封裝在Setup消息的“parallelH245Control”字段。 訊息的時段中, 訊息, 則有兩種處理方式:1. 的Facility 訊息.2. control channel. Endpoint element, control channel. 同樣的, 訊息, 就可利用Facility 來設定h245address element, FacilityReason 會設為start245. 接下來h245Tunneling 就會設為false.當快速連接失敗,需要切換到獨立的H.245連接時,由于先前的H.245消息已經(jīng)部分交互,也可加快媒體信道的建立。Normal Setup + h245Control Facility + h245ControlFaststart Setup + parallelH245ControlEmpty + h245Control 快速連接與慢速連接的比較媒體信道的慢速連接過程是傳統(tǒng)的利用H.245媒體控制信道打開媒體信道的過程,這個過程需要呼叫控制過程為其打開媒體控制信道。從下圖可以看出,慢速連接需要進行多個往返的H.245消息進行交互,進而才能打開媒體信道。而同樣打開媒體信道,快速連接過程需要往返交互的消息要少得多。慢速連接快速連接在局域網(wǎng)內(nèi),慢速連接雖然要多打開一個媒體控制信道,并且往返的消息也較多,但整個過程還是非??斓摹H绻贗nternet上,環(huán)境變得復雜,可能需要途經(jīng)的路由器較多,消息的往返需要的時間就比較長,這時,快速連接的優(yōu)勢是不言而喻的。 快速建立媒體信道的設計與實現(xiàn)慢速連接是H.323協(xié)議棧軟件要實現(xiàn)的一個基本功能,如果協(xié)議棧軟件設計一個專門的模塊處理快速連接,顯然不經(jīng)濟。最直接的辦法就是由支持慢速連接的協(xié)議棧軟件的各個實體,在實現(xiàn)慢速連接的基礎上擴展其功能,根據(jù)收到的消息決定采取何種方法?! ?下圖所示的協(xié)議棧軟件結(jié)構中,除了接口實體與公共服務實體外,其它都屬于協(xié)議棧軟件的任務實體。慢速連接需要經(jīng)過呼叫控制和呼叫連接2個過程,是由H.323主控實體通過分別控制H.225和H.245實體來實現(xiàn)的。本方案中快速連接也由這些實體來完成。在慢速連接中,H.323主控通過原語與H.225和H.245實體進行交互。作為主叫端,H.323主控給H.225實體發(fā)送一個Setup request原語,讓其向被叫端請求建立呼叫。H.225實體經(jīng)過處理,將編碼后的Setup消息發(fā)往被叫端。被叫端的H.225實體收到Setup消息之后,經(jīng)過處理,將解碼后的Setup消息用Setup indication原語發(fā)給被叫的H.323主控。隨后,被叫端可以利用Call proceeding,Alerting,Connect等消息與主叫進行交互,建立媒體控制信道。媒體控制信道打開后,H.323主控通過Request,Response , Command和Indication四種原語與H.245實體進行交互,通過H.245的能力集交換、主從確定、打開邏輯信道等消息建立媒體信道?! ≡诳焖龠B接中,主叫端的H.323主控將首先與H.245實體進行消息交互,讓其處理應由他來處理的消息。然后,H.323主控將編碼后的H.245消息作為字節(jié)串,在原語中帶給H.225實體。H.225實體對其內(nèi)容并不關心,經(jīng)過編碼后透明傳輸。被叫端的H.225實體將收到的封裝了H.245消息的呼叫信令消息,經(jīng)過處理后,直接發(fā)給H.323主控,對封裝的H.245消息也不做任何處理。H.323收到后,將H.245消息轉(zhuǎn)發(fā)給H.245實體。 由此可以看出,在快速連接中,H.225實體只是對編碼后的H.245消息作為字節(jié)串,封裝在H.225消息中,對于他來說,H.245消息是透明的。而H.323主控和H.245實體還是各自完成其任務,只是在快速連接這種情況下,對消息做了一些有別于慢速連接的處理。 Ad Hoc這是一個不透過gatekeeper, 由endpoints 建立起Ad Hoc Conference 的范例:a. Endpoint 1 (含有MC 功能) 送一個Setup 的訊息給Endpoint 2, 想要建立電話. 在Setup 訊息中代有Conference ID (CID), 其值為N.b. 省略中間call proceeding, altering, Endpoint 2 送回Connect, 內(nèi)含相同的CID=N.c. d. e. 建立media 聯(lián)機的過程中, 同時決定誰是master(Endpoint 1), 誰是slave (Endpoint 2).f. 開始通話.g. Master (Endpoint 1) 決定邀請Endpoint 3 加入會談, 因此送一個帶有CID=N 的Setup 訊息給Endpoint 3, 想要建立電話. 這時參數(shù)conferencegoal 會設為invite.g. h. i. j. k. 與ae 相同的建立電話程序.l. MC (Endpoint 1) Multipoint Conference 的命令給Endpoints 2 amp。 . 開始三方通話.5 RAS 說明l RAS 中讓gatekeeper 管理endpoints 的相關信令. RAS 透過不可靠的UDP 來傳送.Note: 由于gatekeeper 是optional, 所以RAS 也是optional. 如果endpoint 找不到gatekeeper, 則相關RAS 的工作就要在endpoint 上自行管理.l RAS 主要的十個功能1 Gatekeeper Discovery: 詢問那一臺gatekeeper 來控制它.2 Registration: Endpoint 向gatekeeper 注冊.3 Unregistration: 取消對gatekeeper 的注冊.4 Admission: 獲得打電話的許可.5 Bandwidth Change: 在通話中的endpoint 向gatekeeper 要求改變使用的頻寬, 或是相反讓gatekeeper 下令改變通訊所使用的頻寬. Endpoint Location: 要求gatekeeper 將alias 轉(zhuǎn)成network address.6 Endpoint Location: 要求gatekeeper 將alias 轉(zhuǎn)成network address.7 Disengage: 當通話結(jié)束后, endpoint 會送出訊息給gatekeeper, 表示終止聯(lián)機. Disengage 可以讓gatekeeper 強制終止通話.8 Status: Gatekeeper 向endpoint 要求得到一些關于endpoint 或calls 的訊息9 Resource availability: 用于讓endpoint 告知gatekeeper, 或gatekeeper 通知gatekeeper, 目前可用的resource 狀況, 例如現(xiàn)在可用的頻寬的量. 特別是endpoint 用來通知gatekeeper, 自己的resource 快要用完了.10 Nonstandard: 若有廠商有一些自定的信息要在endpoint 與gatekeeper 間互傳, 就可使用此訊息. 并無定義.??RAS的作用有–發(fā)現(xiàn)網(wǎng)守–注冊網(wǎng)守–名字解析( alias與IP地址)–許可控制–帶寬控制–狀態(tài)請求–?UDP 端口1718(搜尋網(wǎng)守)/1719(Registration, Admission and Status) is the protocol between endpoints (terminals and gateways) and gatekeepers. The RAS is used to perform registration, admission control, bandwidth changes, status, and disengage procedures between endpoints and gatekeepers. An RAS channel is used to exchange RAS messages. This signaling channel is opened between an endpoint and a gatekeeper prior to the establishment of any other channels 格式1 2 3 4 8bits Protocol Discriminator 0 0 0 0 Length of call reference bits Call reference value 0 Message type Information Elements Protocol discriminator Distinguishes messages for usernetwork call control from other messages.Length of call ref The length of the call reference value.Call reference value Identifies the call or facility registration/cancellation request at the local usernetwork interface to which the particular message applies. May be up to 2 octets in length.Message type Identifies the function of the message sent. Information elements Two categories of information elements are defined: single octet information elements and variable length information elements. Key RAS messages: Message Function RegistrationRequest (RRQ) Request from a terminal or gateway to register with a gatekeeper. Gatekeeper either confirms or rejects (RCF or RRJ). AdmissionRequest (ARQ) Request for access to packet network from terminal to gatekeeper. Gatekeeper either confirms or rejects (ACF or ARJ). BandwidthRequest (BRQ) Request for changed bandwidth allocation, from terminal to gatekeeper. Gatekeeper either confirms or rejects (BCF or BRJ). DisengageRequest (DRQ) If sent from endpoint to gatekeeper, DRQ informs gatekeeper that endpoint is being dropped。 if sent from gatekeeper to endpoint, DRQ forces call to be dropped. Gatekeeper either confirms or rejects (DCF or DRJ). If DRQ sent by gatekeeper, endpoint must reply with DCF. InfoRequest (IRQ) Request for status information from gatekeeper to terminal. InfoRequestResponse (IRR) Response to IRQ. May be sent unsolicited by terminal to gatekeeper at predetermined intervals. RAS timers and Request in Progress (RIP) Remended default timeout values for response to RAS messages and subsequent retry counts if response is not received. 流程 網(wǎng)守發(fā)現(xiàn)過程:GatekeeperRequest ::= SEQUENCE (GRQ)GatekeeperConfirm ::= SEQUENCE (GCF)GatekeeperReject