首页 >> 技术深度文章 >> 分类技术 >> 正文
H.323-SIP信令网关的实现
2008年2月15日 10:26    通信世界网    评论()    
作 者:陈亮

    对于SIP而言,所有的消息都采用文本编码,所以SIP消息非常简单,这样开发时通过简单的网络检测就可以调试。反观H.323协议采用了误码率(PER)或者误包率(BER)的二进制编码方式,信令不是非常直观。

    系统资源的消耗上,SIP可以说是开销惊人,每次服务器发出通告的时候,都需要建立一个监听套接字,这样的结果势必造成大量的闲置套接字,假设在建立一个完整的代理/注册/流网关三者合而为一的园区出口网关的时候,资源上势必会非常的紧张,这个是不能不予以考虑的问题。相反H.323在打开逻辑通道的情况下,只建立一个套接字。

    SIP没有会议控制能力,所以只能做到点对点的媒体通讯。而H.323一开始就考虑了会议功能,其中还包含了H.332会议控制协议。

    基于无线的网络而言,H.323有很大优势,由于其信令采用二进制编码,所以比较适合手持设备的实现,而SIP由于采用文本方式就没有这样的能力。

    3  H.323与SIP网络互通的实现

    尽管H.323和SIP作为多媒体通信应用层控制协议实现的信令功能基本相同,都是用RTP/RTCP作为媒体传输的协议,但是从本质上看,这两个协议之间还存在着较大的区别。

    通过表1的比较可以知道,要实现H.323与SIP网络之间的互通,必须解决地址格式的转换、消息映射和终端能力协商等方面的问题[2]。

    图1为H.323-SIP信令网关的框架结构, H.323和SIP信令网关包含一个H.323协议栈和一个SIP协议栈,同时包含一个H.323-SIP翻译单元。H.323协议栈负责接收和发送呼叫信令以及控制消息与H.323网络通信,SIP协议栈负责接收和发送SIP消息同时与SIP网络通信。H.323-SIP翻译单元则实现H.323消息和SIP消息的翻译与地址映射。在整个通信过程中H.323-SIP信令网关将提供呼叫流程的信令转换。

    3.1H.323与SIP之间的地址转换

    在H.323与SIP的互通中,H.323和SIP各自所支持的地址格式不同。SIP系统中地址典型格式是SIP:User@Host,而H.323系统中地址格式不受限制,可以是E.164标识、各种URL格式、H.323 ID、Email ID等。在跨越不同的系统时必须对地址进行转换,这就要求H.323-SIP信令网关不但能够识别消息中所包含的地址类型,而且还可以根据地址映射的规则将其变换为对端地址类型,实现一致和唯一的SIP URL到H.323地址或者H.323地址到SIP URL的映射[3]。

    (1) H.323到SIP的地址映射

    H.323别名地址转换为SIP地址,要尽可能把别名地址中的URL ID转换为”SIP:User@Host”格式;在SIP URL中,Host是必须的。如果H.323的E.l64 ID格式中不含有Host部分信息,该Host可以用H.323-SIP信令网关的IP地址代替;如果是传输端口标识,则将该传输端口标识映射为SIP URL的Host部分。SIP URL的user部分可以是H.323 ID和E.l64 ID,若端口号没有指定可以使用默认的5060端口;如果是Email ID格式,则在该地址前加上“SIP:”后直接当作SIP URL。

    (2) SIP到H.323的地址映射

    将SIP地址转换为H.323地址较简单,如果SIP URL为电话号码形式的话,则可以将其映射为H.323的E.164标识,并且将SIP电话用户部分的“+”、“-”、“.”都去掉;如果SIP URL的形式是User@Group的话,则可直接映射为H.323的Email ID,并将SIP字段去掉;如果SIP URL的格式是SIP:User@IP address,那么该地址就可以映射为一个传输端口标识,并在这之前加上“IP:”。

    3.2消息的转换

    在呼叫控制和相关消息等方面,H.323和SIP存在很大的区别。H.323中H.225呼叫控制信令主要包括RAS消息和Q391呼叫信令消息两个部分,而SIP消息包括请求和响应两种。这就需要H.323-SIP信令网关中将其转换成SIP网络的OK响应消息;而H.323网络发出的呼叫振铃消息则被转换成SIP网络的180振铃响应消息。

    通常消息映射是一对一映射,但有时也可能是一个消息到多个消息的映射。例如SIP网络的INVIITE消息,被转换成H.323网络发出的呼叫建立SETIP消息(网络中不存在网守)或接入请求ARQ消息(网络中存在网守)。

    此外,还存在消息参数的转换,如:H.225.0的Display-Info参数对应于SIP中的From字段,而DestinationCallsignalAdderss参数对应于TO字段。

    在信令消息的转换中,H.323-SIP信令网关还需考虑以下问题:

    一个给定协议的信令消息或参数可能没有一个完全匹配的另一协议的响应信令消息或参数,这时需要由H.323-SIP信令网关创建消息信令之间的映射或者H.323-SIP信令网关做一定的处理以在共同理解的基础上产生统一的标准。

    两个协议对信令消息的理解出现错误时,H.323-SIP信令网关能够产生基于共同理解统一标准基础上的错误信息。

    3.3媒体能力协商

    H.323采用H.245协议来描述主、被叫方能力的协商,而SIP中媒体信息描述则由会话描述协议(SDP)完成,因此媒体协商的过程就是SDP协议与H.245的交互过程。媒体能力协商的关键在于媒体能力的交换和媒体能务的解释。

    (1) 媒体能力交换

    SIP会话请求过程和媒体协商过程等是一起进行的,因此呼叫建立时间短;而H.323中呼叫建立过程和媒体参数协商的信令控制过程是分开进行的。当进行媒体能力协商的时候, H.323-SIP信令网关将SIP转换到H.323,只需把SIP的INVITE消息进行拆分就能实现;反之就很复杂,必须随H.323进程一步一步地叠加。

    由于H.323的呼叫建立存在快速连接和非快速连接两种模式,H.323到SIP的转换过程中媒体能力交换方式也有所不同。

    H.323终端在支持快速连接时,H.323的SETUP消息中实际上包含了快速启动单元,该单元携带了媒体能力参数。因此,H.323-SIP信令网关只需将SETUP消息中的快速启动单元所指明的信息用SDP描述,并加载在INVITE消息中发送给SIP用户,SIP用户就能获得媒体交换能力。而SIP用户在收到主叫的INVITE消息后,可以通过SIP的OK消息传递SIP的媒体交换能力。

    H.323终端不支持快速连接时,由于建立呼叫、协商能力和RTP端口号是分开的,而SIP要求这两种信息在一个INVITE消息中发出,因此SIP只有等到H.323-SIP信令网关与H.323终端建立起H.245逻辑信道后才能获得媒体交换能力。

[1]  [2]  [3]  编 辑:张翀
关键字搜索:H.323  SIP  网关  实现  
  [ 发 表 评 论 ]     用户昵称:   会员注册
 
 
  推 荐 新 闻
  技 术 动 态
  通 信 圈