05 H323速成 - 图文

更新时间:2024-03-19 00:18:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

H323和SIP协议快速入门手册

H323协议和SIP协议速成

yuanfei

第 1 页

2013-8-4第 1 页

适用对象:测试人员和技术支持人员

H323和SIP协议快速入门手册

刚看完H323v4版,发现是越看越糊涂,究其原因:H323协议太博大精深了,包含许多的协议,命令和各种控制状态,说真的,写的是详细就是看不懂。

第一次亲密接触:公司给了我一堆H323v3英文版的资料,还没看头就大了,过了好长时间还没有找到大门在哪里。问同事,大家也不是很热情,没办法,慢慢看吧,终于有一天知道了一些常用命令,算是入门了。

工作的时间久了,积累的多了,分析问题时算是稍微的容易一点了,遗憾的是到现在为止还没有把整个H323协议族完整地看完,每次都是浏览一下完事。这次拿到了中文版的H323协议,本以为看起来会很轻松,没想到看到最后还是没有记住什么东西,看一点忘一点,太枯燥了。

一直就有一个想法:大家把自己会的东西都贡献出来,经验共享,于人于己都有好处,对己:写东西时提升了熟练度,进行了一次系统的总结,同时也便于以后查找;于人:对于初学者能够快速入门,少走弯路,节省时间。

这次终于把H323协议从头看到尾了,不管成效如何,总算是看完了,趁着现在还没有全忘记,把我所理解的H323作一些整理,希望能使初学者有所收益。

SIP协议看了一些入门,也一并输出,对没有接触过SIP的人相信会有一些帮助。 你将看到的内容是我从许多资料中剽窃来的,不过没关系,有用就行,说错了请大家体谅,我也不过是刚入门而已!!

废话太多,下面开始正题!!这么多废话,目的只有一个:希望大家都能毫不吝啬的把自己会的东西写出来,与大家共勉,共提高!我这里先抛砖引玉了。

yuanfei 第 2 页 2013-8-4第 2 页

H323和SIP协议快速入门手册

目录

H323协议和SIP协议速成 ............................................................................................................ 1 VoIP介绍 .......................................................................................................................................... 4

什么是VoIP .............................................................................................................................. 4 H323、SIP、MGCP、H.248协议的地位区别 ...................................................................... 4 H323介绍 ......................................................................................................................................... 5

H323的基本特点 ..................................................................................................................... 5 H323协议族和相关协议介绍 ................................................................................................. 6

H.323协议的结构图 ........................................................................................................ 6 H.225.0协议 ..................................................................................................................... 6 H.245协议 ........................................................................................................................ 6 H.450协议 ........................................................................................................................ 6 H.261和H.263协议 ........................................................................................................ 7 T.120、T.30和T.38协议 ................................................................................................ 7 G.7xx系列语音编码协议 ................................................................................................ 7 DTMF音的传送与RFC2833 .......................................................................................... 7 RTP和RTCP协议 ........................................................................................................... 7

H323的一些信令处理过程 ............................................................................................................. 8

准备工作—常用命令简述 ....................................................................................................... 8

H225 RAS常用命令: .................................................................................................... 8 H225 Q931信令: ........................................................................................................... 9 H245信令: ..................................................................................................................... 9 无GK的两个终端间的慢速呼叫信令建立过程 ................................................................. 10 注册在同一GK下的两个终端的慢速呼叫过程 ................................................................. 11 注册在同一GK下的两个终端之间的快速呼叫过程 ......................................................... 11 H323常用命令内容调试说明 ....................................................................................................... 13

RRQ/RCF/RRJ ........................................................................................................................ 13 ARQ/ACF/ARJ ....................................................................................................................... 14 Setup ....................................................................................................................................... 15 Callproceeding/Alerting .......................................................................................................... 18 Connect ................................................................................................................................... 19 H245 Tunneling....................................................................................................................... 21 DRQ/DCF/ReleaseComplete .................................................................................................. 22 SIP协议介绍 .................................................................................................................................. 24

SIP概述 .................................................................................................................................. 24 SIP信令处理过程及命令状态码 .................................................................................................. 25 SDP协议介绍 ................................................................................................................................ 26

yuanfei 第 3 页 2013-8-4第 3 页

H323和SIP协议快速入门手册

VoIP介绍

什么是VoIP

VoIP是Voice over IP的缩写,意思是指:通过现有的IP网络来传送语音包,以节省电

话通信中的长途费用。语音包的传送依靠许多协议来维护,主要的信令协议有H323、SIP、MGCP、H.248等,语音包传送协议有RTP、RTCP。

H323、SIP、MGCP、H.248协议的地位区别

目前,构建IP电话体系结构的标准有两种:H.323建议和SIP协议。这二者是完全平行的,它们所要达到的目的一致——构建IP电话网,但使用的方法不同,因此它们是不可能互相兼容的,二者之间只是存在互通的问题。

H.323建议是为多媒体会议系统而提出,并不是为IP电话专门提出的,只是IP电话,特别是电话到电话经由网关的这种IP电话工作方式,可以采用H.323建议来完成它要求的工作,因而H.323建议被“借”过来作为IP电话的标准。对IP电话来说,它不只用H.323建议,而且用了一系列建议,其中有H.225、 H.245、H.235、H.450、H.341等。只是H.323建议是“总体技术要求”,因而通常把这种方式的IP电话称为H.323 IP电话。H.323建议是一个较为完备的建议书,它提供了一种集中处理和管理的工作模式。这种工作模式与电信网的管理方式是适配的,尤其适用于从电话到电话的IP电话网的构建。

----SIP协议则提出了另一套IP电话的体系结构,是一个与 H.323并列的协议。SIP协议具有简单、扩展性好以及和现有的Internet应用紧密的特点。 SIP协议的出发点是想以现有的Internet为基础来构架IP电话业务网。因此,SIP有着与 H.323完全不同的设计思想,它是一个分散式的协议,它将网络设备的复杂性向网络边缘推,与以H.323协议为基础的IP电话相比, SIP协议需要相对智能的终端。对于用户终端是非智能终端的场合,也可以使用SIP协议作为呼叫信令,但这将大大削弱SIP协议特有的优势,因此SIP协议更适用于智能用户终端。

----另外两种协议MGCP和H.248与前二者不是同一层面的事,它们不涉及IP电话的体系结构,只涉及网关分解问题,因而它们不仅可以用于H.323 IP电话系统,也可以用于SIP IP电话系统。H.248建议从基本思路来说与MGCP是一致的,但H.248将MGCP大大推进了一步。

yuanfei

第 4 页

2013-8-4第 4 页

H323和SIP协议快速入门手册

应该说H.248建议已经取代了MGCP,而成为 MGC与MG之间的协议标准了。

H323介绍

H323协议的庞大和复杂性使得很难用比较简单的语言把它表述清楚,我原本以为只要用几个命令和几幅图就能把问题说明,但是经过一翻整理,发现不同知识背景的人在理解上会有很大的差距,要理解H323需要有很多的专业知识和通信常识,考虑到初学者的不同背景和差异,我尽量用通俗易懂的语言来表述,并且从基础开始叙述。为此,我将从自己作为一名技术支持人员对H323协议的认识和熟练过程来讲述。

H323的基本特点

入门前首先要明白H323协议是做什么用的,有什么特点?

1) 编码、解码标准。H.323提出了标准的编解码方案,从不同厂家购买的符合H.323

的设备都支持这些方案。

2) 互操作性。H.323提供了一个共同的协议标准使得不同厂商的客户终端可以互通,

H.323还建立了一个基本的呼叫建立和控制协议。

3) 网络独立性。H.323描述了一个共同的网络结构,并提供了网络带宽管理。 4) 平台和应用独立性。H.323跟硬件和使用的操作系统无关,因此,H.323使用于尺

寸不同的各种终端上,如PC机、Unix、特定平台或电视机置顶盒中。

5) 多点支持。H.323支持三点或多点会议。

6) 带宽管理。H.323提供了带宽管理,保证了音视频传送的质量。

7) 多址支持。H.323既支持点对点通讯,也支持多址广播方式,这对多点会议的支

持很方便。

8) 裁减方便(伸缩灵活)。H.323提供了灵活的裁减方案,终端可以仅支持声音传送,

也可支持视频和数据传送。

9) 支持网络内和网络间会议。H.323可以支持网络内及远程联网的会议,同时还支

持异种网间的网络会议。

yuanfei 第 5 页 2013-8-4第 5 页

H323和SIP协议快速入门手册

H323协议族和相关协议介绍 H.323协议的结构图

H323协议的结构图如下所示:

H.225.0协议

H.225.0协议,由国际电信联盟提出的基于分组的多媒体通信系统的呼叫信令协议和媒体流分组。主要包括:H.225RAS控制部分和H.225 呼叫控制部分,作用在于:设备的注册、认证、呼叫的建立等方面。其中H.225 呼叫控制部分采用ISDN的Q.931用户到网络侧信令协议子集,协议端口采用TCP1720端口;H.225RAS控制部分采用UDP1719端口传送数据。

H.245协议

H.245建议(2000),由国际电信联盟提出的多媒体通信的控制协议。主要实现:设备

能力交换、主从确定、逻辑信道的打开和确定、逻辑信道的关闭等。

H.450协议

H.450协议包含H.450.1-8,主要实现的功能有:在H.323中支持增补服务的一般功能协

议、H.323的呼叫转移增补服务、H.323的呼叫保持增补服务、H.323的呼叫转向增补服务、H.323的呼叫搁置和呼叫拾起增补服务、H.323的呼叫等待增补服务、H.323的消息等待指

yuanfei

第 6 页

2013-8-4第 6 页

H323和SIP协议快速入门手册

示增补服务和H.323的名称识别增补服务等。

H.261和H.263协议

H.261和H.263协议为视频电话协议,H.261协议是指视听业务的p?64kbit/s视频编解

码器,H.263协议是指低比特率通信的视频编码。

T.120、T.30和T.38协议

T.120协议为多媒体会议的数据传输协议,提供数据的传输;T.30协议为普通电话交换网中文件传真发送过程;T.38协议为IP网络上的实时三类传真通信过程。

G.7xx系列语音编码协议

? G.711协议,音频信号的脉冲编码调制(PCM),3.1 kHz 64 kbit/s音频编码。 ? G.722协议,7 kHz 的64 kbit/s音频编码。

? G.723.1协议,语音编解码器:多媒体通信中以5.3和6.3 kbit/s发送的双速率语音

编码器。

? G.728协议,使用低延时代码激励线性预测(LD-CELP)的3.1 kHz 16 kbit/s语音

编码。

? G.729协议,使用共轭结构代数代码激励线性预测(CS-CELP)的8 kbit/s语音编

码。

DTMF音的传送与RFC2833

DTMF音可以通过带内和带外来传送,带内一般通过RTP载荷传送,带外一般通过信

令方式来传送。RFC 2833是一种把DTMF数字、电话音和电话信号通过RTP载荷来传播的一种协议。

RTP和RTCP协议

RTP是IETF定义的用以传送音频、视频流的协议,RTP建立在UDP上,在RTP的头部,

yuanfei 第 7 页 2013-8-4第 7 页

H323和SIP协议快速入门手册

定义了一个时间戳(Time Stamp),使得音视频的实时传送及同步得到保证。RTCP则是控制和监视RTP及其QoS的协议。H.323是建立在RTP基础上的。RTP/RTCP和RSVP一起共用保证了Internet上视频会议的QoS。

H323的一些信令处理过程

准备工作—常用命令简述

为了方便大家观看H323信令流程,在此对一些常用命令进行说明,知道这些命令是干什么用的,这有助于从宏观上来理解H323的工作过程。

从总体上讲,H323呼叫过程分为: 呼叫建立—〉通信—〉呼叫拆除三部分。 从协议方面来讲,H323呼叫过程分为:

H.225.0呼叫建立—〉H.245逻辑信道建立—〉RTP流建立—〉H245、H225拆线 对于测试和支持人员必须掌握的命令有:RRQ/RCF/RRJ、ARQ/ACF/ARJ、DRQ/DCF/DRJ、Setup/CallProceeding/Alerting/Connect/ReleaseComplete 。

H.225.0信令包含两部分:H225 RAS和H225呼叫信令或者称其为H225 Q931。下面从信令角度来对常用H225、H245命令进行说明,具体的解释在“H323常用命令内容调试说明”中进行说明:

H225 RAS常用命令:

GRQ/GCF/GRJ:关守请求/关守确认/关守拒绝 RRQ/RCF/RRJ:注册请求/注册确认/注册拒绝

URQ/UCF/URJ:撤销注册请求/撤销注册确认/撤销注册拒绝 LRQ/LCF/LRJ:端点定位请求/端点定位确认/端点定位拒绝 ARQ/ACF/ARJ:允许接入请求/ 允许接入确认/允许接入拒绝

DRQ/DCF/DRJ:脱离请求/脱离确认/脱离拒绝,挂机后发出的拆线申请信令

yuanfei 第 8 页 2013-8-4第 8 页

H323和SIP协议快速入门手册

H225 Q931信令:

Setup:主叫发出的呼叫信令,包含了主叫信息和被叫信息

CallProceeding:系统或者是被叫返回的信令,说明这个呼叫正在处理当中 Alerting:被叫返回的信令,表示被叫正在振铃中 Connect:被叫返回的连接信令,带有被叫的所有信息

Release Complete:释放连接信令,H225连接的释放,关闭整个通话

H245信令:

TerminalCapabilitySet:终端能力设置,协商主被叫编码能力 TerminalCapabilitySetAck:终端能力设置确认

MasterSlaveDetermination:主从设置,确定主被叫的主从关系,决定由谁来发起逻

辑信道的建立

MasterSlaveDeterminationAck:主从设置确认

OpenLogicalChannel:打开逻辑信道请求命令,用来打开H245的逻辑控制信道 OpenLogicalChannelAck:打开逻辑信道确认,表示同意对方提出的建立逻辑信道 CloseLogicalChannel:关闭逻辑信道,通话完成后首先关闭H245逻辑信道 CloseLogicalChannelAck:关闭逻辑信道确认

EndSessionCommand:结束会话命令,关闭逻辑信道后必需关闭H245会话最后再

关闭H225连接

知道了上述命令,现在可以看懂呼叫是怎么接续的了。下面将对一些典型的呼叫流程进行说明,最后再对我们系统支持的H323快速呼叫流程进行详细的分析和说明,以便帮助我们配置、调试和测试系统。

yuanfei 第 9 页 2013-8-4第 9 页

H323和SIP协议快速入门手册

无GK的两个终端间的慢速呼叫信令建立过程

TCP connectionSETUPH.323CONNECT(H245 Address)Q.931TCP connectionH.245 MessagesOpen Logical Channels(RTCP address)(RTCP & RTP addresses)(RTCP address)(RTCP & RTP addresses)H.245RTP streamRTP streamRTCP stream

Media上图表示两台终端之间不通过GK注册认证而直接发起呼叫的信令结构图。呼叫中首先发起H.225.0的呼叫控制信令,即Q.931信令;然后发起H.245逻辑信道建立信令;最后是RTP媒体流的建立。

yuanfei 第 10 页 2013-8-4第 10 页

H323和SIP协议快速入门手册

注册在同一GK下的两个终端的慢速呼叫过程

H.323 Terminal #2H.323GatekeeperH.323 Terminal #1H.225: Admission Request (ARQ)H.225: Admission Confirm (ACF)Open TCP Channel For Q.931Q.931 SetupH.225: Admission Request (ARQ)H.225: Admission Confirm (ACF)Q.931 ConnectOpen TCP Channel For H.245H.245 Term CapH.245 Term CapH.245 Term CapH.245 Term CapExchange Of Master Slave Termination Messages.H.245 open audio logical channelH.245 open audio logical channel AckH.245 open audio logical channelH.245 open audio logical channel AckFull Duplex Audio Sent In Both Directions With Transcoding In The Gateway

上图表示的是:注册在同一GK下的两个终端发起的慢速呼叫的信令,包括了H.225.0

的RAS认证过程、H.225.0的呼叫控制建立过程、H.245的终端能力、主从确认、逻辑信道打开和最终的逻辑信道关闭等过程。

注册在同一GK下的两个终端之间的快速呼叫过程

此过程以我们的SubSwitch3.0为例进行说明,下图描述了从EndPoint1发起呼叫到EndPoint2的全过程。此流程为快速呼叫过程,没有专门的H245信令包,而是通过H245 Tunneling来传送H245信令,都包含在H225信令中。

yuanfei

第 11 页

2013-8-4第 11 页

H323和SIP协议快速入门手册

yuanfei

第 12 页

2013-8-4第 12 页

H323和SIP协议快速入门手册

H323常用命令内容调试说明

为了简单的讲解H323,使初学者快速掌握此协议的精髓,同时要便于理解,我下面将以SubSwitch3.0的呼叫过程为例加以介绍。讲解的信令流程以“注册在同一GK下的两个终端之间的快速呼叫过程”里面的为例。

RRQ/RCF/RRJ

图中的命令1、2、3、4是两个注册包和系统的回应包。在此不得不提一下关守发现命令GRQ(Gatekeeper discovery),其工作方式如下:

Endpoint GRQ GCF/GRJ Gatekeeper

T1521260-96

端点可以对一个关守请求(GRQ - Gatekeeper Request)消息进行多播,询问“谁是我的关守?”。这个消息送到关守的共识的发现多播地址(well-known Discovery Multicast Address)。一个或多个关守可以用关守确认(GCF - Gatekeeper Confirmation)消息响应,指示“我可以是你的关守”,并且返回关守的RAS信道的传输地址。如果一个关守不希望该端点在其上注册,它必须返回关守拒绝(GRJ - Gatekeeper Reject)。如果不止一个关守作出响应,端点可以选择它想使用的关守。此时,端点就知道它注册在哪一个关守上。如果端点通过某种先验方法知道关守的位置,端点仍将选择单播GRQ到关守的方法进行H.225.0密码交换。现在,端点就可以在选择的关守注册。

EndpointRRQGatekeeperRCF or RRJURQEndpoint initiatedUnregister RequestUCF/URJURQGatekeeper initiatedUnregister RequestT1524050-96UCF

上图表示端点发起注册、端点发起注销和系统发起注销的信令结构图。端点应发送一个

yuanfei

第 13 页

2013-8-4第 13 页

H323和SIP协议快速入门手册

注册请求(RRQ - Registration Request)给关守,这个请求被送到关守的RAS 信道传输地址。端点从关守发现的过程中得到关守的网络地址,并使用共识的RAS信道TSAP标识符。关守必须以注册确认(RCF - Registration Confirmation)或注册拒绝(RRJ - Registration Reject)进行响应。RRQ中带有端点的RAS地址和信令地址,RCF中带有网关的信令地址,到此中端可以和网关开始通信了。

下面为重量注册包和它的回应包内容,蓝色文字是重点信息:

1. registrationRequest

callSignalAddress (TransportAddress) Item 0 (ipAddress) ipAddress

ip: 172.16.195.154 (172.16.195.154) port: 1720 rasAddress (TransportAddress) Item 0 (ipAddress) ipAddress

ip: 172.16.195.154 (172.16.195.154) port: 1024 terminalType (EndpointType) Item 0 (h323_ID) h323_ID: 1020 gatekeeperIdentifier: ASOUT keepAlive: False willSupplyUUIEs: False maintainConnection: False

2. registrationConfirm

requestSeqNum: 22773

protocolIdentifier: 0.0.8.2250.0.4 callSignalAddress (TransportAddress) Item 0 (ipAddress) ipAddress

ip: 172.16.195.195 (172.16.195.195) port: 1720

endpointIdentifier: C3C310AC9AC310AC4091BE1917050155 timeToLive: 60

willRespondToIRR: False maintainConnection: False

ARQ/ACF/ARJ

命令5、6、13、14为允许呼入请求和其回应。ARQ命令包含了主被叫的信息,当系统收到此包后会对被叫号码进行解析,如果被叫号码存在并为空闲则对主叫返回ACF,否则

yuanfei

第 14 页

2013-8-4第 14 页

H323和SIP协议快速入门手册

返回ARJ。 例:

3. admissionRequest

callModel (gatekeeperRouted) gatekeeperRouted: gatekeeperRouted

endpointIdentifier: F6C310AC9AC310AC40A2EB41HCFFCBPM destinationInfo (AliasAddress) Item 0 (e164) e164: 2105 srcInfo (AliasAddress) Item 0 (h323_ID) h323_ID: 1012 Item 1 (h323_ID)

h323_ID: 00502d002d4e Item 2 (e164) e164: 302

srcCallSignalAddress (ipAddress) ipAddress

ip: 172.16.195.154 (172.16.195.154) port: 1037

gatekeeperIdentifier: 1000 willSupplyUUIEs: False

4. admissionConfirm

bandWidth: 640

callModel (gatekeeperRouted)

gatekeeperRouted: gatekeeperRouted destCallSignalAddress (ipAddress) ipAddress

ip: XUHAO_TEST (172.16.195.246) port: 1720 irrFrequency: 60

Setup

Setup命令8、11是由主叫发起的呼叫建立信息包,它包含了:主被叫信息、快速呼叫信道信息、主叫支持的编码、主叫的RTP/RTCP端口号等前向信道和反向信道信息。 Setup消息体中包含的主要内容有:

5. Q.931

Protocol discriminator: Q.931 Message type: SETUP (0x05)

Sending complete

yuanfei

第 15 页

2013-8-4第 15 页

H323和SIP协议快速入门手册

Calling party number

Information element: Calling party number Length: 4

Type of number: National number

Numbering plan: E.164 ISDN/telephony numbering Number: 302 Called party number

Information element: Called party number Length: 5

Type of number: National number

Numbering plan: E.164 ISDN/telephony numbering Number: 2105 User-user

Information element: User-user Length: 262

Protocol discriminator: X.208 and X.209 coded user information ITU-T Recommendation H.225.0 h323_uu_pdu (H323-UU-PDU) h323_message_body (setup) setup

protocolIdentifier: 0.0.8.2250.0.3 h245Address (ipAddress) ipAddress

ip: 172.16.195.154 (172.16.195.154) port: 1038

sourceAddress (AliasAddress) Item 0 (h323_ID) h323_ID: 1012 Item 1 (h323_ID)

h323_ID: 00502d002d4e Item 2 (e164) e164: 302

sourceInfo (EndpointType)

destinationAddress (AliasAddress) Item 0 (e164) e164: 2105

destCallSignalAddress (ipAddress) ipAddress

ip: XUHAO_TEST (172.16.195.246) port: 1720

sourceCallSignalAddress (ipAddress) ipAddress

ip: 172.16.195.154 (172.16.195.154)

yuanfei 第 16 页 2013-8-4第 16 页

H323和SIP协议快速入门手册

port: 1037

callIdentifier (CallIdentifier)

guid: 02134FBC-5267-6AF4-5634-343434EF0000 fastStart 0 OpenLogicalChannel forwardLogicalChannelNumber: 1 forwardLogicalChannelParameters (OpenLogicalChannel-forwardLogicalChannelParameters) dataType (audioData) audioData g7231

maxAl_sduAudioFrames: 1 silenceSuppression: False

multiplexParameters (h2250LogicalChannelParameters) h2250LogicalChannelParameters sessionID: 1

mediaControlChannel (unicastAddress) unicastAddress iPAddress

network: 172.16.195.154 (172.16.195.154) tsapIdentifier: 30019 fastStart 1 OpenLogicalChannel forwardLogicalChannelNumber: 4762 forwardLogicalChannelParameters (OpenLogicalChannel-forwardLogicalChannelParameters) dataType (nullData) nullData: nullData multiplexParameters (none) none: none

reverseLogicalChannelParameters (OpenLogicalChannel-reverseLogicalChannelParameters) dataType (audioData) audioData g7231

maxAl_sduAudioFrames: 1 silenceSuppression: False

multiplexParameters (h2250LogicalChannelParameters) h2250LogicalChannelParameters sessionID: 1

mediaChannel (unicastAddress) unicastAddress iPAddress

network: 172.16.195.154 (172.16.195.154) tsapIdentifier: 30018 mediaControlChannel (unicastAddress)

yuanfei 第 17 页 2013-8-4第 17 页

H323和SIP协议快速入门手册

unicastAddress iPAddress

network: 172.16.195.154 (172.16.195.154) tsapIdentifier: 30019 mediaWaitForConnect: False canOverlapSend: False multipleCalls: False maintainConnection: False h245Tunneling: True

user_data (H323-UserInformation-user-data) protocol_discriminator: 5 user_information: SETUP

Callproceeding/Alerting

这两个信号是被叫回给主叫的,看命令9、12、15、16,这两个命令很简单,几乎没什么内容。Callproceeding是告诉主叫被叫正在呼叫中,Alerting是被叫告诉主叫我正在振铃中,请等待。正常情况下,被叫会在Alerting中带上快速信道信息,但是我们的系统现在不支持在Alerting中返回快速信道信息,所以会把从被叫发来的Alerting中的快速信道信息扣下,在Connetc消息中再送给主叫。具体的包如下:

6. Q.931

Protocol discriminator: Q.931 Call reference value length: 2 Call reference value: EED2

Message type: CALL PROCEEDING (0x02) User-user

Information element: User-user Length: 40

Protocol discriminator: X.208 and X.209 coded user information ITU-T Recommendation H.225.0 h323_uu_pdu (H323-UU-PDU)

h323_message_body (callProceeding) callProceeding

protocolIdentifier: 0.0.8.2250.0.4 destinationInfo (EndpointType) mc: False

undefinedNode: True

callIdentifier (CallIdentifier)

guid: 02134FBC-5267-6AF4-5634-343434EF0000 multipleCalls: False maintainConnection: False h245Tunneling: True

yuanfei

第 18 页

2013-8-4第 18 页

H323和SIP协议快速入门手册

7. Q.931

Protocol discriminator: Q.931 Call reference value length: 2 Call reference value: EED2 Message type: ALERTING (0x01) User-user

Information element: User-user Length: 44

Protocol discriminator: X.208 and X.209 coded user information ITU-T Recommendation H.225.0 h323_uu_pdu (H323-UU-PDU) h323_message_body (alerting) alerting

protocolIdentifier: 0.0.8.2250.0.4 destinationInfo (EndpointType) mc: False

undefinedNode: True

callIdentifier (CallIdentifier)

guid: 02134FBC-5267-6AF4-5634-343434EF0000 multipleCalls: False maintainConnection: False

presentationIndicator (presentationAllowed) presentationAllowed: presentationAllowed screeningIndicator: userProvidedVerifiedAndFailed h245Tunneling: True

Connect

Connect命令17、20是被叫返回的连接信息,包含以后通信的H245端口号、RTP、RTCP等信息,主叫收到此信息后就可以根据被叫返回的RTP、RTCP端口号来发送RTP流了。具体包信息如下:

8. h323_message_body (connect)

connect

protocolIdentifier: 0.0.8.2250.0.4 h245Address (ipAddress) ipAddress

ip: XUHAO_TEST (172.16.195.246) port: 3489

fastStart 0 OpenLogicalChannel forwardLogicalChannelNumber: 129 forwardLogicalChannelParameters

yuanfei

第 19 页

2013-8-4第 19 页

H323和SIP协议快速入门手册

(OpenLogicalChannel-forwardLogicalChannelParameters) dataType (nullData) nullData: nullData multiplexParameters (none) none: none

reverseLogicalChannelParameters (OpenLogicalChannel-reverseLogicalChannelParameters) dataType (audioData) audioData g7231

maxAl_sduAudioFrames: 1 silenceSuppression: False

multiplexParameters (h2250LogicalChannelParameters) h2250LogicalChannelParameters sessionID: 1

mediaChannel (unicastAddress) unicastAddress iPAddress

network: XUHAO_TEST (172.16.195.246) tsapIdentifier: 30036 mediaControlChannel (unicastAddress) unicastAddress iPAddress

network: XUHAO_TEST (172.16.195.246) tsapIdentifier: 30037 fastStart 1 OpenLogicalChannel forwardLogicalChannelNumber: 1 forwardLogicalChannelParameters (OpenLogicalChannel-forwardLogicalChannelParameters) dataType (audioData) audioData g7231

maxAl_sduAudioFrames: 1 silenceSuppression: False h2250LogicalChannelParameters sessionID: 1

mediaChannel (unicastAddress) unicastAddress iPAddress

network: XUHAO_TEST (172.16.195.246) tsapIdentifier: 30036 mediaControlChannel (unicastAddress) unicastAddress iPAddress

yuanfei 第 20 页 2013-8-4第 20 页

H323和SIP协议快速入门手册

network: XUHAO_TEST (172.16.195.246) tsapIdentifier: 30037

h245Tunneling: True

H245 Tunneling

H245 Tunneling 是我自己定义的一个名称,并不是说它是一个命令。因为在快速呼叫建立过程中,没有H245的包,H245的控制信令都是通过H225信令中的Facility消息体以隧道方式来传送的。下面将列举H245控制命令是如何通过H225隧道来发送的。其传输方式可以看命令18、19、21—32。

9. Q.931

Protocol discriminator: Q.931 Call reference value length: 2 Call reference value: 0A80 Message type: FACILITY (0x62) Facility

Information element: Facility Length: 0 Data:

ITU-T Recommendation H.225.0 h323_uu_pdu (H323-UU-PDU) h323_message_body (empty) empty: empty h245Tunneling: True

h245Control 0: TerminalCapabilitySet

10.Q.931

Protocol discriminator: Q.931 Call reference value length: 2 Call reference value: 0A80 Message type: FACILITY (0x62) Facility

Information element: Facility ITU-T Recommendation H.225.0 h323_uu_pdu (H323-UU-PDU) h323_message_body (empty) empty: empty h245Tunneling: True

h245Control 0: MasterSlaveDetermination request

masterSlaveDetermination

yuanfei

第 21 页

2013-8-4第 21 页

H323和SIP协议快速入门手册

terminalType: 50

statusDeterminationNumber: 15345728

11.Q.931

Message type: FACILITY (0x62) Facility

Information element: Facility h323_uu_pdu (H323-UU-PDU) h323_message_body (empty) empty: empty h245Tunneling: True

h245Control 0: MasterSlaveDeterminationAck response

masterSlaveDeterminationAck decision (master) master: master

12.Q.931

Message type: FACILITY (0x62) Facility

Information element: Facility ITU-T Recommendation H.225.0 h323_uu_pdu (H323-UU-PDU) h323_message_body (empty) empty: empty h245Tunneling: True

h245Control 0: TerminalCapabilitySetAck response

terminalCapabilitySetAck sequenceNumber: 1

DRQ/DCF/ReleaseComplete

DRQ/DCF/ReleaseComplete命令是H225信令里的关于呼叫释放的命令。在正常的拆线过程中,一般的顺序为先挂机的一方:关闭H245逻辑控制信道、结束H245会话、通过DRQ/DCF命令请求脱离会话,再用ReleaseComplete释放H225信道;后挂机的一方:收到系统的结束H245会话、ReleaseComplete释放H225信道命令后,向系统发出关闭H245逻辑控制信道、结束H245会话和DRQ请求脱离会话命令来关闭所有的连接。看命令33—46。 具体的包如下:

yuanfei

第 22 页

2013-8-4第 22 页

H323和SIP协议快速入门手册

13.Q.931

Message type: FACILITY (0x62) Facility

Information element: Facility h323_uu_pdu (H323-UU-PDU) h323_message_body (empty) empty: empty h245Tunneling: True

h245Control 0: CloseLogicalChannel

14.Q.931

Message type: FACILITY (0x62) Facility

Information element: Facility h323_message_body (empty) empty: empty h245Tunneling: True

h245Control 0: CloseLogicalChannelAck response

closeLogicalChannelAck

forwardLogicalChannelNumber: 1

15.Q.931

Message type: FACILITY (0x62) Facility

Information element: Facility ITU-T Recommendation H.225.0 h323_uu_pdu (H323-UU-PDU) h323_message_body (empty) empty: empty h245Tunneling: True

h245Control 0: EndSessionCommand command

endSessionCommand

disconnect: disconnect

16.ITU-T Recommendation H.225.0

disengageRequest

requestSeqNum: 24555

endpointIdentifier: F6C310AC9AC310AC40A2EB41HCFFCBPM conferenceID: 02134FBC-5269-1CF8-5634-343434EF0000 callReferenceValue: 28370

yuanfei 第 23 页 2013-8-4第 23 页

H323和SIP协议快速入门手册

disengageReason (normalDrop) normalDrop: normalDrop callIdentifier (CallIdentifier)

guid: 02134FBC-5267-6AF4-5634-343434EF0000 gatekeeperIdentifier: 1000 answeredCall: False

17.ITU-T Recommendation H.225.0

disengageConfirm

requestSeqNum: 24555

18.Q.931

Message type: RELEASE COMPLETE (0x5a) Cause

Information element: Cause ITU-T Recommendation H.225.0 h323_uu_pdu (H323-UU-PDU)

h323_message_body (releaseComplete) releaseComplete

protocolIdentifier: 0.0.8.2250.0.3 reason (undefinedReason)

undefinedReason: undefinedReason callIdentifier (CallIdentifier)

guid: 02134FBC-5267-6AF4-5634-343434EF0000 h245Tunneling: True

到此所有呼叫信令结束,主被叫挂机,信令流程走完。

SIP协议介绍

SIP概述

SIP是Internet工程任务组(IETF)提出的建议中的一项协议,其目的是为了替代H.323的部分协议。由于H.323是一个协议集,因此SIP是几个共同完成呼叫任务的服务协议中的一个协议。

SIP是一种应用层控制与信令协议,用于创建、修改和结束与一个或多个参与者的会话。这些会话可以包括Internet多媒体会议、远程学习、Internet电话呼叫以及多媒体发布。SIP可以邀请人以及诸如媒体存储服务这类“机器人”来参与一次呼叫。

yuanfei

第 24 页

2013-8-4第 24 页

H323和SIP协议快速入门手册

该协议可以用于初始化会话,邀请成员参与其它方式发起的会话或利用多点控制单元来初始化多方呼叫。SIP透明地支持名字映射和重定向服务,因而可以实现像个人移动性这类ISDN和智能网络电话用户服务。

该协议不提供会议控制服务,也没对如何管理会议做出规定。SIP不分配多播地址,也不保留资源,但它可以向被邀请的系统发送完成这种功能的必要信息。SIP支持建立和结束多媒体通信的五个方面:用户定位、功能与可用性、呼叫建立以及呼叫处理。呼叫者和呼叫接收者通过SIP地址来区别。呼叫者首先定位合适的服务器,然后再发送SIP请求。在完善的条件下,SIP请求到达目的地后,目的地客户机通过返回SIP响应代码来接收呼叫。与其它TCP/IP回答代码相同,以“2”起头的响应代码表示“好”。然后呼叫发出者向接收者发送确认信息。由于呼叫初始站也要发送确认信息,因此这点有些特殊。SIP可以利用多播、单播关系网或多播与单播相结合进行通信。

SIP面对的对象是由SIP URL确定的主机用户。URL用户部分为用户名或电话号码,主机部分为域名或IP地址。 SIP使用多台服务器,每台服务器都有自己的任务。这些服务器包括用户代理服务器、代理服务器、重定向服务器以及注册服务器。此外还有一种被定位服务器的应用,它执行定位服务,该服务器可以和SIP服务器放在一起。

SIP事务由SIP请求和相应的响应组成。为了使请求与对它的响应相对应,请求和响应信息中含有几种包含不同值的域。这些域包括呼叫ID域、命令序列号、目的域、起始域以及标记(如果有的话)。可以看出,来往方向上的目的域与起始域是相同的,尽管这比较少见,但并不是没听说过,在高级数据链路控制(HDLC)中也使用这种方式。当用户使用协议分析器查找网络异常现象时,它将有助于问题的解决。 呼叫请求要求被呼叫者加入一个会议呼叫或建立一次双方呼叫,该呼叫包括列举媒体类型和格式的会话说明。如果被呼叫者同意的话,呼叫者发出一个确认信息并返回一个列举它所希望使用的媒体的说明。

IETF认为H.323不能很好地进行扩展,因此,为了进一步简化,IETF制定了SIP和相关协议。

SIP信令处理过程及命令状态码

yuanfei 第 25 页 2013-8-4第 25 页

H323和SIP协议快速入门手册

SDP协议介绍

yuanfei 第 26 页 2013-8-4第 26 页

本文来源:https://www.bwwdw.com/article/gmv8.html

Top