期刊在线咨询服务,发表咨询:400-888-9411 订阅咨询:400-888-1571股权代码(211862)

期刊咨询 杂志订阅 购物车(0)

sip协议模板(10篇)

时间:2023-03-10 15:05:29

sip协议

sip协议例1

The Application Research of SIP Protocol

FU Cheng-biao

(Department of Computer Science and Engineering Qujing Nomal University,Qujing Yunnan 655011,China)

【Abstract】With the rapid development of NGN network, as a peer-to-peer protocol SIP of NGN technology has been widely used in contemporary NGN network, has been a hotspot in current researches, this paper based on the analysis of the SIP protocol, it is studied on the application of softswitch.

【Key words】SIP;Network;NGN

1 SIP协议分析

SIP是Internet工程任务组(IETF)推出的一种用于建立、修改和终止多媒体会话的应用层控制协议,通过组播或单播联系的网络进行通信[1]。SIP支持会话描述,允许参与者在兼容媒体类型上协商达成一致。它还可以通过和重定向请求来支持用户移动性[2]。

SIP协议中定义:SIP消息是客户机和服务器之间通信的基本信息单元。它是一个基于UTF-8的文本编码协议,语法消息描述如下:

1.1 通用格式

SIP消息分为两大类:请求消息(Request)和响应消息(Response),其格式遵循RFC2822 Internet文本消息格式标准。

通用消息格式定义如下:

Start-line //起始行

Message-header //头域字段

CRLF //空行

[message-body] //消息体

1.2 请求消息

请求消息的定义如下:

Request = Request-Line //请求行

*(general-header | request-header | entity-header) //头

CRLF //空行

[message-body] //消息体

1.3 响应消息

当服务器收到一个SIP请求消息,对其分析理解后,服务器需要根据具体请求要返回一个或多个消息,这就是SIP响应消息。SIP响应消息格式定义如下:

Response=Status-Line //状态行

*(general-header | response-header | entity-header) //头

CRLF //空行

[message-body] //消息体

SIP响应消息的状态行由SIP版本开始,接着是一个状态码,最后是一个与状态码相关的描述性短语(Reason-Phrase),然后由一个CRLF行结束符结束。

响应消息中的响应状态码用来区分各种不同的SIP响应。状态码是一个3位十进制整数,用来表示服务器对客户机所发请求的理解和执行结果。

由于在实际应用中,对请求消息的处理结果会因为情况的不同而不同,而且还会不断发展。因此,SIP协议中对各种可能的响应情况进行了分类和编码。比如:1xx:标识临时消息,其含义是请求消息已收到,请等待对该请求的处理。

1.4 SIP消息头域字段

SIP的消息头域在语法和语义上都与HTTP的头域非常相似,其格式如下:

Header=“header-name”:header-value

SIP的头域由头域名字和头域值组成,两者之间以冒号“:”分隔。允许一个头域有多个头域值,多个值之间以都以“;”分隔,我们也可以根据需要增加头域以支持新的特性。

2 SIP协议应用研究

作为NGN中的核心控制协议,SIP协议的应用主要有三个方面:一是用于软交换与软交换之间;二是用于软交换与SIP终端之间;三是用于软交换与应用服务器之间实现增值业务。

SIP协议作为软交换中的对等协议,有着自身不取代的优势:其一,它最突出的特点是具有很强的灵活性和可扩充性,要让SIP支持各项新业务,只需将它已有的消息头字段进行简单的扩展。其二,SIP具有动态注册机制,以至它具有对移动业务的支持具有天然的优势。其三,SIP协议为实现固定和移动业务的无缝融合创造了条件。SIP已经被3GPP选定作为第三代移动通信的多媒体领域的重要协议,用来实现基于IP的移动语音和多媒体通信[3]。SIP这些优越特征使其在下一代网络中占据很重要的主导地位。如下图1所示。

图1 软交换协议应用

SIP能控制多个参与者,能动态调整和修改会话属性,控制它们参加的多媒体会话的建立和终止。例如传输的媒体类型、媒体的编解码格式、会话带宽要求、对组播和单播的支持等等都可以进行动态的调整。从SIP的实质内容来看,它提供以下功能[4]:

第一,呼叫过程中实现呼叫特征改变。例如,一个呼叫过程首先被设置为只有语音模式,但是在呼叫过程中,用户可以按需开启视频功能。

第二,呼叫过程中参与者能够进行管理。比如能够把其它用户加入呼叫、取消其连接、呼叫转移或设为呼叫保持。

第三,SIP协议具有特征协商功能。例如多方通话中,每一方均支持相同的语音编码,但视频编码不能取得一致,则视频可以根据需要选择支持或不支持。

第四,SIP协议具有用户定位和名字翻译功能。由于SIP协议本身含有向注册服务器注册的功能,因此无论被呼叫方在哪里,都能确保呼叫到达被叫方。

从SIP的设计上来看,它充分考虑了对其他协议的扩展性和适应性。它支持多种地址描述和寻址。比如地址可以描述为:“被叫号码@网关地址”、“用户名字@主机地址”或“Tel:0874-3258547”等多种形式。

3 结论

本文分析SIP协议的基础上,研究了SIP在现网中的应用,并对其在软交换应用过程中的应用作了分析。本文所阐述的SIP协议在软交换中的应用分析,在现网中的应用有一定的现实意义。

【参考文献】

[1]曾欣旖,陈名松,盖晓娜.SIP协议测试研究[J].电子设计工程,2010,18(4):83-84.

sip协议例2

中图分类号:TN915.04 文献标识码:A文章编号:1007-9599 (2011) 09-0000-01

SIP Protocol and Application Analysis in The IMS

Zheng Zhijun

(China Tietong Telecommunications Corporation,Hengshui Branch,Hengshui053000,China)

Abstract:IMS is a 3GPP Release 5 version of the proposed support for IP Multimedia Subsystem services,SIP is an application layer control protocol for creating,modifying and terminating one or many of the multimedia sessions,SIP is the basic control of IMS agreement.This paper briefly describes IMS and SIP protocol,SIP protocol and then introduce the basic IMS applications and extended application.

Keywords:SIP;IMS;Application

一、SIP介绍

SIP(Session Initiation Protocol)是一个会话层的信令控制协议,它独立于底层协议,用于建立、修改和终止IP网上的双方或多方的多媒体会话。1999年由IETF组织提出,它是一个在基于IP网络中,实现实时通信应用的一种协议。SIP支持、重定向、登记定位用户等功能,支持用户移动,与RTP/RTCP、SDP、RTSP、DNS等协议配合,可支持和应用于语音、视频、数据等多媒体业务,同时可以应用于presence(呈现)、instant message(即时消息)等特色业务。它的应用非常灵活。

SIP有下面五个基本功能:

(一)确定用户位置:确定被叫SIP用户所在的位置。SIP的最强大之处就是用户定位功能,它可以利用SIP终端在注册服务器上的注册信息实现用户定位,也可以利用其他定位服务器,如DNS、LDAP等提供的定位服务来增强其定位功能。

(二)确定用户可用性:确定被叫会话终端是否可以参加此会话。SIP支持多种地址描述和寻址方式,包括SIP-URI、Tel-URL和SIPS-URI。这样,SIP主叫根据被叫地址,就可以识别出被叫是否在传统电话网上,然后通过一个与传统电话网相连的网关向被叫发起并建立呼叫。

(三)确定用户能力:确定被叫终端可用于参加会话的媒体类型及媒体参数。SIP终端在消息交互过程中携带自身的媒体类型和媒体参数,这使得会话双方都可以明确对方的会话能力。

(四)建立会话:建立主被叫双方的会话。SIP会话双方通过协商媒体类型和媒体参数,最终选择双方都具有的能力建立起会话。

(五)管理会话:可以更改会话参数或中止会话。SIP本身已经从最初致力于P2P通信发展成为了下一代网络(NGN)综合协议体系的核心。

二、IMS系统

IMS(IP Multimedia Subsystem)是IP多媒体子系统,本质上说是一种网络结构。核心思想是在3G核心网中支持多媒体会话及其他基于SIP协议的业务,目的将蜂窝移动通信和互联网技术结合起来,能提供综合业务的下一代通信网络,它独立于接入和承载技术,即IMS的核心特点是采用SIP协议和与接入的无关性。

三、SIP协议在IMS中的应用

IMS的主要功能实体包括呼叫/会话功能实体(CSCF)、原籍用户服务器(HSS)、媒体网关控制实体(MGCF)和媒体网关(MGW)等。其中最重要的实体是CSCF和HSS。CSCF主要负责对多媒体会话进行处理,其功能包括多媒体会话控制、地址翻译以及对业务协商进行服务转换等,相当于SIP服务器。CSCF分为CSCF(P-CSCF)、查询CSCF(I-CSCF)和服务CSCF(S-CSCF)。P-CSCF是IMS系统中用户的第一个接触点,所有的SIP信令都必须通过P-CSCF。I-CSCF提供到归属网络的入口,将归属网络的拓扑隐藏起来,并可通过归属用户服务器HSS灵活选择S-CSCF,并将SIP信令路由到S-CSCF。S-CSCF是IMS的核心,它位于归属网络,提供UE会话控制和注册服务。在SIP会话中他是SIP的服务器。HSS类似于现在移动网络的HLR,它是IMS中所有与用户和服务相关的数据的主要存储器。存储在HSS中的数据主要包括用户身份、注册信息、接入参数和服务触发信息等。

SIP信令消息从移动用户发起,经UMTS(通用移动通信系统)陆地无线接入网络进入核心网,通过SGSN(GPRS服务支持节点)和GGSN(GPRS网关支持节点)到达CSCF,经过处理后送往其他IMS网络、MGCF/MGW网络或外部IP网络。在此过程中,SGSN和GGSN仅查看消息的目的IP地址,不分析消息的内容,起到路由器的作用。

当3GPP RS在规划IMS时,由于SIP的灵活性和可扩展性,决定采用SIP机制作为IMS网络的会话初始化协议。3G网络被分为3个不同的域:电路交换域、分组交换域和IP多媒体交换域。其中IP多媒体子系统域是3G中最重要的域,这个域采用SIP作为主要的信令协议向用户提供基于因特网的多媒体服务。从逻辑上讲,所有的3G终端都包含一个SIP用户,IP多媒体网络节点就是SIP规范中所提到的。

sip协议例3

中图分类号:TN915

SIP协议作为应用层信令控制协议,其连同其他协议为用户提供服务。SIP协议运用UDP传输,利用自身应用层可靠性机制确保传输信息的准确性和可靠性。SIP协议是当前使用较为广泛的VoIP协议,控制实现IP网络信令。SIP协议设计之初将协议灵活性和易用性考虑在内,却忽略了SIP协议安全性的重要性,致使,目前SIP协议安全性存在缺陷。

1 SIP协议存在的安全隐患

1.1 注册劫持

SIP协议注册指的是用户终端将自己信息注册到某个注册服务器上,在这个注册服务器上,根据address-of-record能找到该用户地址,该注册服务器可查看Register消息From字段确定消息能否修改注册用户的注册地址。但From字段可能被UA拥有者修改,这就为恶意修改注册信息提供了可能。比如,恶意攻击者可模拟UA,以检查的名义修改address-of-record相关联系地址,恶意攻击者首先注销原有合法用户注册信息,接着,修改From字段,让自己设备地址成为“合法注册用户”,通过这种修改,可让自己设备成功访问当前合法用户可访问的位置。这种形式的攻击是对无请求发送数字签名的攻击,通常情况下,大概所有的SIP UAs希望认证收到的请求,从而控制对自身资源的访问。正是这种恶意威胁的存在让SIP实体对原始请求做安全认证成为了一种必然。

1.2 伪装服务器

伪装服务器是攻击者实现攻击的一种手段,恶意攻击者常常将自己伪装成远端服务器,用户终端UA错误地被截获。例如,恶意攻击者在区域,重定向服务器在区域,恶意攻击者常将自己伪装成为在区域,一旦用户UA向区域发送消息,在区域的恶意攻击者便截获用户发往区域的请求,并假冒区域的重定向服务器向用户回答伪造的应答。这种恶意攻击严重地威胁着相当大一部分成员,一旦用户发送给区域的信息被区域截获,同时应答给用户一个伪造的应答,这样一来,以后用户UA所有的Register请求会发到区域。攻击者将应答From字段改为重定向服务器就可实现伪装服务器的目的,这就需要用户UA认证接受请求的服务器安全性[1]。

1.3 篡改消息

篡改消息分为篡改SIP消息体和篡改SIP消息头字段两种类型。篡改SIP消息体是指攻击者修改SIP消息的加密密钥,SIP UA路由必然请求通过信任的proxy服务器,UA信任proxy服务器转发请求,虽然,proxy服务器被信任,但它不希望proxy服务器得到会话密钥,这是因为,一旦proxy服务器有恶意的存在,其就会像中间人一样修改会话密钥,从而破坏原始请求UA安全。篡改消息带来的威胁不只是针对会话密钥,其对SIP端到端的内容都有一定的威胁,比如,对SDP、向用户展示的MIME包体以及电话信令等等。如果攻击者修改SDP包体,比如在RTP媒体流中安装窃听设备,那么就可以达到窃听语音通信的目的。为了保护一些重要的SIP消息头字段,UA要加密SIP包体,同时对端端之间的头字段做限制,比如对于Subject主题字段,可能出现攻击者将Subject重要请求改为次要请求,对于这种篡改SIP消息头字段的恶意攻击必须有一种安全机制来保护。但并非所有的头字段需要保护,有一部分头字段在proxy服务器处理请求的过程中合法更改的[2]。

1.4 恶意修改或结束对话

SIP根据BYE请求结束会话,有的恶意攻击者会伪造这种请求,如果伪造的请求被接收到,会话会提前被结束。比如,非会话方的恶意攻击者获得初始信息,这些初始信息包括会话双方在会话过程中的参数,一旦恶意攻击者在会话过程中发送BYE请求,当BYE请求被接收到后,会话会提前结束。除了会话终止还有恶意修改等,比如,发送re-INVITE请求改变会话。恶意攻击者之所以能恶意修改会话或者提前终止会话都是因为其在会话双方建立会话阶段捕获了一些初始消息,获取了一些重要的会话参数,比如,From字段、To字段等等,如果这些重要的会话参数被加密传输,恶意攻击者就不能伪造请求了。

1.5 拒绝服务

拒绝服务是指攻击者通过转发网络通讯堵塞其网络接口,从而使某个特定的网络节点不能正常工作,因攻击受害的可能是网络、联网主机或路由器等。常见的拒绝服务有以下两种[3]:(1)对SIP中间服务器的攻击;(2)对SIP终端系统的攻击。

2 SIP协议安全对策

2.1 网络层和传输层的安全保护

为确保消息的安全性和可靠性,要对消息进行完全加密,理论上,SIP协议由其自身底层安全机制确保自身安全,比如利用网络层IPSec、传输层TLS等加密SIP消息。但基于IPSec网络的复杂性,这种方法的成本较高,所以,考虑TLS,TLS可能遭受IP欺骗,但其作为一个能确保会话安全性的手段,可以考虑采用TLS加密SIP消息。TLS工作在应用程序和TCP层之间,面向TCP以上传输层的安全,在传输过程中,得益于其TLS套接口,消息的可靠性和机密性得到了保证。然而,对SIP服务器来说,不能维持过量的TLS负荷,其的扩展性是应该考虑的问题。

2.2 HTTP摘要认证

SIP协议常采用HTTP摘要认证机制来完成身份的认证,HTTP摘要认证可有唯一确定的用户名及密码认证一个用户,其认证机制主要有Proxy-to-User和User -to-User两种模式。其中,User -to-User只实现Register-to-User情况,因此,通过ser -to-User实现UA之间认证的可靠性并不能保证。目前,HTTP摘要认证只能实现Server在本区域UA认证,不能实现Proxy对域外UA认证、Proxy之间的认证以及UA对Server的认证。

2.3 应用层端到端加密

SIP协议可利用PGP加密方式和S/MIME加密方式来完成应用层端到端的加密,这是因为PGP和S/MIME均是公私钥和单向散列算法相结合的加密体系,均能提供数字签名、鉴别以及保密的功能,这样可确保被加密信息的机密性和真实性。但考虑到一些SIP消息头域只有对Proxy可见才行,所以,端到端的加密不一定能完成对SIP消息的完全加密。

3 结束语

本文详细地阐述了当前SIP协议存在的安全威胁,并提出了提高SIP协议安全性的一些认证机制,但这些提出的安全策略都存在一定的弊端,随着信息网络技术的不断发展,对SIP协议及其安全性要进行更深入地探讨。

参考文献:

[1]俞志春,方滨兴,张兆心.SIP协议的安全性研究[J].计算机应用,2007(11):2124-2125.

[2]司端锋,潘爱民.IP电话中的安全性研究[J].计算机工程,2007(03):105-107.

[3]黄元飞,金丽萍.网络与信息安全标准化现状及下一步研究重点[J].电信科学,2008(01):23-26.

[4]薛晓飞,陈璐等.RTP基于SIP和RTP的VOIP通信[J].指挥信息系统与技术,2012(01):68-71.

sip协议例4

中图分类号:TP302.1 文献标识码:A 文章编号:1007-9416(2013)02-0051-01

当今社会是信息爆炸的社会,随着网络业务的飞速发展,电信网中的数据业务量越来越大。而目前许多的数据业务还在传统的公众交换电话网(PSTN)上传送,这些数据量很大的数据业务给并不适合传送数据业务的电话网造成了巨大的压力。因此,基于分组技术的数据网与电路交换网最终必将走向融合,产生下一代由业务驱动的网络即下一代网络。软交换是下一代网络交换的核心,如果说传统电信网络是基于程控交换机的网络,而下一代网络则是基于软交换的网络。

1 软交换

软交换的概念最早起源于美国。当时在企业网络环境下,用户采用基于以太网的电话,通过一套基于PC服务器的呼叫控制软件(Call Manager、Call Server),实现PBX(Private Branch eXchange,用户级交换机)功能(IP PBX)。对于这样一套设备,系统不需单独铺设网络,而只通过与局域网共享就可实现管理与维护的统一,综合成本远低于传统的PBX。由于企业网环境对设备的可靠性、计费和管理要求不高,主要用于满足通信需求,设备门槛低,许多设备商都可提供此类解决方案,因此IP PBX应用获得了巨大成功。受到IP PBX成功的启发,为了提高网络综合运营效益,网络的发展更加趋于合理、开放,更好的服务于用户。业界提出了这样一种思想:将传统的交换设备部件化,分为呼叫控制与媒体处理,二者之间采用标准协议(MGCP、H248)且主要使用纯软件进行处理,于是,Soft Switch(软交换)技术应运而生。软交换概念一经提出,很快便得到了业界的广泛认同和重视,ISC(International Soft Switch Consortium)的成立更加快了软交换技术的发展步伐,软交换相关标准和协议得到了IETF、ITU-T等国际标准化组织的重视。

2 SIP协议介绍

会话初始化协议SIP(Session Initiation Protocol)是一个面向Internet 会议和电话的简单信令协议。SIP协议是应用层信令协议,定义了用户间交互式媒体会话的发起,修改和终止过程,它的主要目的是为了解决IP网中的信令控制,以及同软交换机的通信,从而构成新一代的通信平台。SIP协议最早由是由MMUSIC IETF工作组在1995年研究的,由IETF组织在1999年提议成为的一个标准。 SIP主要借鉴了Web网的HTTP和SMTP两个协议。目前仍在不断的发展之中。

SIP协议可用于发起会话,也可以用于邀请成员加入已经用其它方式建立的会话,同时SIP协议的编码采用的是最基本的文本编码,使得它的通用性和保密性得到了很大的提升。同时SIP协议在信息交互时采用事务机制,每一个请求触发Server的操作方法,请求和响应构成一个事务,事务间彼此独立。在传输方面SIP协议承载在IP网,网络层协议为IP,传输层协议可用TCP或UDP,推荐首选UDP。

用SIP来建立通讯通常需要有六个步骤(如图1所示):

(1)登记,发起和定位用户;

(2)进行媒体协商--通常采用SDP方式来携带媒体参数;

(3)由被叫方来决定是否接纳该呼叫;

(4)呼叫媒体流建立并交互;

(5)呼叫更改或处理;

(6)呼叫终止。

这六个步骤需要会话发起者A与服务器,服务器与会话接受者B之间进行11次会话协商,分别为:

(1)用户摘机发起一路呼叫,终端A向该区域的服务器发起lnvitc请求;

(2)服务器通过认证/计费中心确认用户认证已通过后,检查请求消息中的Via头域中是否已包含其地址。若已包含,说明发生环回,返回指示错误的应答;如果没有问题,服务器在请求消息的Via头域插入自身地址,并向lnvitc消息的To域所指示的被叫终端B转送lnvitc请求;

(3)服务器向终端A送呼叫处理中的应答消息,100Trying;

(4)终端B向服务器送呼叫处理中的应答消息,100Trying;

(5)终端B指示被叫用户振铃,用户振铃后,向服务器发送180Ringing振铃信息;

(6)服务器向终端A转发被叫用户振铃信息;

(7)被叫用户摘机,终端B向服务器返回表示连接成功的应答(2000K);

(8)服务器向终端A转发该成功指示(2000K);

(9)终端A收到消息后,向服务器发ACK消息进行确认;

(10)服务器将ACK确认消息转发给终端B;

(11)主被叫用户之间建立通信连接,开始通话。

3 结语

SIP协议在软交换网络中的应用范围非常广泛。但是现在SIP对许多传统业务的支持能力还是有限,所以对SIP协议的研究也是任重而道远。由于SIP易于扩展的特性,不同厂家的实现难免有许多自己的发挥,也加大了SIP协议互通的难度。但是无论如何,SIP的诸多优点还是有目共睹的,SIP在软交换网络中的应用必然越来越广泛。

sip协议例5

引言

目前传统的公众交换电话网(pstn)上传送着许多数据业务,由于快速增长的数据业务给并不适合传送数据业务的电话网造成了很大的压力。因此,基于分组技术的数据网与电路交换网最终必将走向融合,产生下一代由业务驱动的网络。软交换是下一代网络交换的核心,如果说传统电信网络是基于程控交换机的网络,而下一代网络则是基于软交换的网络。

1系统开发的技术基础

1.1软交换的概念

我国信息产业部电信传输研究所对软交换的定义是:“软交换是网络演进以及下一代分组网络的核心设备之一,它独立于传送网络,主要完成呼叫控制、资源分配、协议处理、路由、认证、计费等主要功能,同时可以向用户提供现有电路交换机所能提供的所有业务,并向第三方提供可编程能力。”

1.2 sip协议介绍

会话初始化协议sip(session initiation protocol)是一个面向internet 会议和电话的简单信令协议,sip最初由ietf mmusic (multiparty multimedia session control) 工作组提出。Www.133229.coM它的主要目的是为了解决ip网中的

信令控制,以及同软交换机的通信,从而构成新一代的通信平台。

2 系统的总体设计和实现

2.1系统的层次结构

软交换采用业务与交换分离的设计思想,在系统设计结构上将软交换技术应用设计为三层结构,底层为用户接入层,中间为交换支撑层,最上面是业务实现层。系统的层次结构如图1所示。

2.2呼叫管理服务器的设计与实现

呼叫管理服务器处于该体系结构中的网络控制层,它是软交换系统的核心部分。呼叫管理服务器除了完成呼叫控制、连接控制和协议处理功能外,还将提供原来由网守设备提供的资源管理、路由以及认证、计费等功能。

软交换系统的运行需要sip协议栈和sdp协议栈。客户端应该能够产生invite和ack请求,能够产生和解析call-id,content-length,content-type,cseq,from和to头部字段。呼叫管理服务器应该能够接收invite,ack,bye,cancel和register请求,应该能够产生和解析call-id,content-length,content-type,cseq,expires,from,max-forwards,via和to头部字段。为了能够使客户端和服务端能够使用rtp传输语音流,sdp协议应该能够产生和解析v,o,s,c,t,m和a头部字段。

本系统以面向对象的方法设计了一个满足系统要求的最小sip和sdp协议栈。sip协议栈支持invite,ack,bye,register和cancel请求,支持100,180,200,300,400,500和600状态应答,支持subject,contact,call-id,content-length,content-type,cseq,expires,from,max-forwards,via和to头部字段。sdp协议栈支持v,o,s,c,t,m和a头部字段。sip和sdp中的头部字段都是以类的形式实现的,所支持的头部字段都是从一个抽象类header继承而来。抽象类header的定义如下:

class header

{

public:

header();

virtual ~header() = 0;

virtual string encode() const = 0;

virtual void decode(const string& headerstring) = 0;

virtual string getname() const = 0;

};

其中最主要的方法为decode,主要用来对相应的头部字段进行解析,getname方法返回当前的头部字段类的类名,encode方法用来产生相应的头部字段的字符串。

其中sip协议栈的结构如图2所示:

解析层是对sip消息进行解析和构造。解析层实现的关键在于各个头部字段类的设计及其相应decode方法的实现。解析层的实现借鉴了vocal开放源码中sipstack的头部字段类的设计方法,vocal的sipstack对rfc2543完全支持,但协议栈非常的庞大,设计的过程中参考了vocal的sipstack的头部字段类的设计形式实现了一个简洁,实用的sip协议栈,sip协议栈的大小还不到vocal的sipstack的1/10。

3 结束语

总之,基于sip协议软交换系统的前景非常广阔,在这个领域,有许多技术难题等待人们去解决。相信在大家的共同推动之下,软交换系统的应用将得到快速的发展。

参考文献

[1]强磊等编著.基于软交换的下一代网络组网技术[m].人民邮电出版社,2005

sip协议例6

1 引言

IP电话通常被称为Internet电话或网络电话,是指利用Internet作为传输载体进行语音通信的技术。IP传真就是指利用Internet实现传真业务的技术。在SIP协议中,Internet的实时传真业务的运行模式主要分为两类:T.38协议的Fax Relay模式和Fax Pass through模式。

本文描述了基于SIP T.38和Fax Pass through模式的实时传真传送,对于T.38模式主要使用了媒体传输协议UPD/UDPTL,虽然是使用UDP来实现,但使用TCP传送T.38传真数据包的SIP会话建立可以从UDP方式演变出,本文描述的呼叫信息流是flow Internet-draft的实现。

2 基于SIP协议的实时传真业务原理

支持T.38的Internet电话网关可以在RTP语音流被检测到之前通过他们,一旦这些流被DSP资源监测到,T.38传真设备将从语言模式转换到传真模式,并初始化T.38传真数据包的传送。这些实例可以被用于“网络网关”,“企业网关”和传真设备及终端。SIP T.38 Fax Relay传输过程包括:呼叫的建立,数据传输和信号的发出,体系结构如图1所示。

2.1 Internet语音网关及传真检测

Internet语音网关有两种方式来检测传真传送:一是在发送端网关检测到T.30呼叫语音。二是在接收端网关检测到V.21初始标志序列。当CED可用时,该序列一直跟随着CED。

CED语音可以被接受方网关检测到,它不能作为传真的触发信号。Internet语音网关要支持T.38实时传真必须支持对V.21初始标识序列的监测。

2.2 Internet电话网关和T.38传真媒体连接

通过成功的传真监测,媒体连接的描述将使用SDP协议进行修改。将传真媒体连接加入到现有的语音连接上,在传真检测后,修改SDP T.38媒体属性时要特别注意到T.38 MaxBitRate(媒体连接最大T.38速率)。在回应最大速率请求时,要遵循以下原则:如果远端的SDP描述包括最大传真速度X,本地主机最大速率设置为Y,则本地主机将在SIP回应中发送最大传真速度为Min(X,Y)的Re-invite请求进行协商。

2.3 SIP会话和传真结束

完成传真传送时,任何在传真检测前成功建立的语音连接将被恢复,即传真会话结束,语音会话恢复。

2.4 Internet电话网关和传真pass-through模式

Fax pass-through模式对防止呼叫错误十分重要,例如对SIP通信不支持T.38的情况。对于支持PCM/G.711而不支持T.38实时传真的Internet电话网关,最好采用pass-through模式来转换会话。Internet电话网关可以通过识别SDP T.38连接回退到pass-through模式,以便转向到一个新的语音连接。新的语音连接应该具有如下特点:传输速率最小,PCM G.711编码,静音抑制,回应关闭。产生T.38 Re-invite失败的电话网关,转而初始化Re-invite消息为pass-through模式。

3 基于SIP协议的传真呼叫流程

会话由语音描述开始,然后会话修改为T.38传真模式。Internet传真终端之间呼叫流程如图2所示,具体流程为:

step1:SIP invite消息发送到被叫方请求语音连接,这里使用一个SIP,语音连接建立;

step2:终端网关检测到初始序列,SIP Re-invite请求被发送到发出端网关来修改会话参数,这样建立起T.38传真连接;

step3:成功的认证后,T.38 IFP传真数据报通过UDP端口发送/接收;

step4:只有传真传送结束,语音性能恢复,呼叫结束。

4 结论

本文对SIP系统中实时传真业务进行了细致的分析,充分利用SIP中的T.38协议提供的实时传真功能,设计了基于SIP T.38协议的实时传真业务。在今后的开发工作中,将会对SIP中的实时传真业务进行进一步的完善,使实时传真业务得到更广泛的应用。

[参考文献]

sip协议例7

中图分类号:TP393文献标识码:A文章编号:1009-3044(2011)14-3249-02

SIP Protocol Design Based on Integrated Access Device

JIANG Guo-song

(Huanggang Normal University,Huanggang 438000, China)

Abstract: IAD SIP module is part of the upper layer application software system to coordinate, control board SIP protocol stack and hardware between the work and information exchange process. In this paper, functional requirements IAD integrated access devices designed to SIP protocol module structure, and integrated access devices and software based on the exchange interaction between the media gateway controller, developed a way of processing interface and interfaces to achieve a comprehensive Access device and the seamless connection between the MGC.

Key words: soft switch; IAD; SIP; UA

随着三网合一的发展,基于TDM的PSTN话音网必将和分组交换数据网融合,形成可以传递话音和数据等综合业务的新一代网络。如何灵活,有效地实现现有的PSTN网与分组交换网的互通,将PSTN逐步的向IP网络演进,其很重要的一点就是如何接入,即如何将PSTN信号转化为能在IP网络上传送的信号。由于软交换是多种功能实体的的集合,是下一代电信网中语音/数据/视频业务呼叫、控制、业务提供的核心设备,也是目前电路交换网向分组网演进的主要设备之一。

1 SIP协议模型

IAD设备可以建立、修改和释放多媒体会话,这些会话包括基本的电话呼叫、多媒体会议等。作为一个终端接入设备,IAD可以检测到来自硬件板卡的交互信息,如设置物理端口的参数,打开、关闭一个物理端口,设置RTP会话的参数,打开、关闭一个RTP会话,在物理端口上发信号(如振铃音),播放语音(可选功能),在物理端口上检测事件(如DTMF),设置编码方案,接收RTCP报告。IAD收到硬件板卡的交互信息后,控制SIP协议栈建立、修改和释放呼叫,并接收对端IAD设备发送过来的呼叫指示信息。作为支持SIP协议的IAD设备,既可以作为主叫发起呼叫,也可以作为被叫接受呼叫。因此,SIP IAD的UA既具有UAC的功能,也应具有UAS的功能。

分层次模型:采用层次化的组织方法,每一层向其上层提供服务,并利用下层的服务。在一些分层系统中,内部层次全部被隐藏起来,只有外部层次和一部分精心选择的功能可以被系统外部所见。在这种系统中,软件部分是实现在层次结构中的一些虚拟机,连接是层次与层次之间交互的协议。其主要优点是它支持基于抽象程度递增的系统设计,使得设计者可以把一个复杂系统按递增的步骤分解开;细节屏蔽,每层对其上层而言,都是一个比其下层更适用、更高效的虚拟存在。这使得其实现和调试可按层组织、功能扩展也很方便,适用于多人分工、协作开发;支持功能增强,功能的改变最多影响相邻的上下层;支持软件复用。但是,并不是每个系统都可以很容易地划分为分层次模型,甚至即使一个系统地逻辑结构是层次化地,出于对系统性能地考虑,不得不把一些低级或高级地功能耦合起来。另外,很难找到一个合适地、正确地层次抽象方法。分层次模型最广泛应用于分层通信协议。

客户/服务器模型:将软件对资源的使用分成需者(客户)和供者(服务器)两个部分。服务器代表一个进程,它对其他的进程(客户机)提供服务,它接收客户的请求消息,然后发送响应消息给客户机。客户/服务器模型的特点是各系统构成部件小且自含,实现单一、可靠。另外,由于服务器可运行在各种地方,使该结构有很好的硬件结构适应能力,特别适合于多处理系统的分散处理。客户/服务器模型用于人机界面与系统的关系和资源管理。

2 设计思想

从软件工程的角度来分析,我们首先必须进行结构设计,确定软件系统由哪些模块组成,以及这些模块之间的关系。软件系统结构是以选取最佳的软件模型来实现的。软件模型是将系统所提供的特性、服务以及系统所执行的任务统一成一体的概括框架。软件模型选择和建立的适当与否直接影响到软件实现的难易和系统性能的高低。软交换呼叫处理系统的设计和实现采用了分层次模型、客户/服务器模型和面向对象模型,以保证系统设计的高效性、可靠性、可扩展性。

3 系统结构和处理流程

3.1 系统结构

根据系统描述和总体设计说明,结合SIP协议栈和硬件板卡的适配,有图1的SIP IAD系统结构图。其中SO层是SIP协议栈层,HR是RTP协议栈,PG是板卡适配层,呼叫控制层负责整个呼叫过程的控制,可以定义为SV层或者DS层(IAD SIP)。关于呼叫控制层与PG层、SO层的接口名按照Trillium的方法定义,既呼叫控制层和PG的接口名定义为Pgt,呼叫控制层与SO层的接口名定义为Sot。接口之间的原语名定义也完全按照Trillium的方式定义。

3.2 处理流程

以SIP IAD终端既可以做主叫发起呼叫,也可以做被叫接受呼叫。基于SIP的IAD和基于H.248的IAD有所不同,H.248 IAD必须有MGC的参与才能运行,而基于SIP IAD对MGC可选,只有电信级的SIP IAD才需要MGC的参与。

图2中假定IAD1为主叫,IAD2为被叫,IAD1和IAD2之间正常通信的最简单的一种情形,不设及地址解析和路由,没有MGC的参与。实际主被叫IAD通信,可能要经过MGC的控制,以便地址解析和呼叫计费。

4 接口设计

SIP IAD模块的接口分内部接口和外部接口。内部接口是指呼叫控制层SV和SIP协议栈SO层的接口Sot,外部接口是指呼叫控制层和PG层的接口Mgt以及呼叫控制层和HR的接口Hrt。对于内部接口,主要是处理SV层控制SIP协议栈发送和接收SIP消息,而对于外部接口,主要是处理SV层和PG层的消息交互,实质上是处理PG层消息和从SIP协议栈接收/发送消息的映射,同时将SIP的SDP中的媒体信息传送给HR层,打开/关闭RTP端口。内部接口和外部接口相互独立,相互没有本质的联系。此模块要设计好,比较重要的一环是设计好外部接口原语及相应的数据结构。对于外部接口,要处理好以下消息:

当SV层收到PG发送来的消息时,首先判断PG发送来的信号类型:

1)主叫摘机信号

2)被叫摘机信号

3)主叫挂机信号

4)被叫挂机信号

5)主叫电话号码(地址)

6)被叫电话号码(地址)

7)媒体通道信息(用来构建SDP消息)

根据相应的消息类型来构建响应消息来控制SIP协议栈发送相应的SIP消息。同时,当SV层收到SIP协议栈送来的消息时,根据消息的类型向PG层发送消息:

1)Alter tone消息

2)Ringing tone消息

3)挂机请求消息

由此构建SV层和PG层交互的数据结构SvEvnt如下:

struct SvEvnt

{CmMemListCp memLst;

UConnId spConnId;

UConnId suConnId;

TknStrOSXLcaller;

TknStrOSXLcallee;

PGMEDIADESC mediaDesc;

}typedef struct

{U8 pres;

U8 num;

U16port;

U8 fmt[PGMEDIA_FMT_LEN_MAX];,

}PGMEDIA_FMT;

typedef struct

{U8pres;

U8used; /* only for Pg,

TRUE=used,FALSE=nouse*/

CmInetIpAddraddr; /* sdp, c=...IPv4*/

PGMEDIA_FMT audio;/* sdp, m=audio ...*/

PGMEDIA_FMT video;/* sdp, m=video ...*/

}PGMEDIADESC;

4 结束语

本文通过对软交换系统下媒体网关控制和综合接入设备之间的信令交互方式,采用了SIP协议规范,并根据中国电信规范的要求设计了综合接入设备的SIP协议模块,实现综合接入设备的SIP协议注册以及信令处理流程,实现了综合接入设备与MGC之间的无缝对接,达到了语音的端到端数字化。

参考文献:

[1] 信息产业部,2001.软交换设备总体技术要求[S].

[2] 信息产业部,2000.IP电话网关设备技术要求[S].

[3] 信息产业部,2000.IP电话网关设备互通技术要求[S].

[4] 信息产业部,2000.IP电话网关设备测试方法[S].

[5] 信息产业部.Draft Recommendation H.248 (clean text).ITUT Study Group 16,15th June 2001.

sip协议例8

会话初始化协议凭借其简单、易于扩展、便于实现等诸多优点越来越得到了业界的青睐,逐步成为NGN和IMS中的主流协议。随着越来越多支持SIP的客户端软件、基于SIP协议的服务器和软交换设备的出现,SIP协议越来越受到电信制造商、运营商和标准组织的青睐。

SIP基于UDP协议时,网络丢包是很常见的,另外还有软终端任意退出对话等情况,这些使得缺乏保活机制的SIP服务器无法适应实际工程应用和网络部署。在标准研究中,RFC4028和RFC5626是专门针对会话保活的。RFC5626定义较为复杂,实际应用较少。RFC4028协议扩展了Session-Expires以及Min-SE两个新的头部,提出了通过服务器之间参数协商进行通话后会话检测已达到keep-alive的目的。原则上,按照该协议的实现可以解决keep-alive的问题,但是在实际部署中,对于传统网络来说,很多设备和终端都是不能完全支持RFC4028的。另外RFC4028会协商出一个周期,在周期到达之前,仍然有可能出现资源信息不一致问题。例如图1中,当dialog(对话)建立后,由于网络丢包或者其他原因导致SIP服务器端和终端或者其他设备对于用户状态不一致,后续ProxyServer再接收到终端或其他设备的呼叫请求时,由于检测周期还没有到达,ProxyServer就会直接拒绝呼叫,导致某段时间用户不可达。

1.作为UA,如果存在4028检测,那需要等待sessiontimer超时,才可以检测资源;如果没有此检测,那么需要重启终端或者其他办法才能释放资源。

2.作为PROXY,当开启4028检测时,sessiontimer定时器超时时,PROXY可以释放自己占用的资源,但是不能发送BYE,如果未开启,则会一直占用。

启发式会话检测

在实际应用中,RFC4028能够满足大部分需求,然而,由于目前企业竞争愈发激烈,用户成为决定企业生存的决策者,用户体验也就至关重要。因此,在上述分析基础上,本文提出了一种新的检测模式——启发式会话检测。

该方法利用后续新发起的呼叫请求查询资源作为一个触发条件,如果该请求触发用户资源占用导致呼叫建立失败时,SIP服务器对于先前占用资源的服务器发起会话检测,检测成功,则拒绝新的呼叫,检测失败,则释放资源,同时更新数据库中的资源状态,对呼叫进行接续。

图2和图3分别描述SIP服务器端和终端或者其他设备对于用户状态不一致时,新呼叫导致SIP服务器发起资源检测,通过检测结果(即检测请求的响应码)判断资源状态,从而建立呼叫和拒绝呼叫的流程图。举例的检测方法都是Re-INVITE,实际上可以使用OPTIONS、UPDATE等其他对话内方法。

sip协议例9

主要内容分析内容:不同网络之间的寻址与定位;消息的映射预处理;终端地址的转换;硬件模块的组成。

具体设计了网关会话层软件程序的结构和功能模块的划分,给出了实现互通时的外部通信流程与内部消息流程,及硬件模块化设计。

关键词:SIP;H.323;转换网关

中图分类号:TN915 文献标识码:A 文章编号:1007—9599 (2012) 14—0000—02

一、SIP与H.323的区别

(一)协议的出发点:H.323的传输从电路交换方式变更为分组交换方式;SIP协议主要是完成了基于Internet上IP电话的应用同时增加了QoS呼叫保障机制。

(二)消息编码的不同:H.323采用压缩编码规则和ASN.1的二进制方法;SIP是基于文本的协议,与H.323相比具有较强的优越性。

(三)会话能力的协商和调整方法:

H.323利用H.245进行能力协商的会话控制;

SIP采用SDP协议描述。

(四)Session管理的方式:

H.323的session由MCU执行会议控制功能,参加会议的终端全部都向MCU发送控制消息;H.323设计便于计费,对带宽的管理也比较简单。

SIP session设计为分布式,他具有分布式的多播功能,多播功能能够实现更方便的会议控制,简化用户定位、群组邀请等,节约带宽。

通过以上对比分析,从协议互通角度考虑,SIP和H.323网络互通需要解决以下问题:

H.323和SIP地址的转换;寻址定位的实现;消息映射和呼叫过程同步。

二、H.323地址与SIP地址的转换

SIP和H.323支持的地址格式不同:

H.323支持地址类型:H.323 ID、E—mail地址、IP地址和主机名,URL地址。

SIP地址由URL定义其结构,用以指示主叫、被叫、重定向和请求目的地址,在SIP消息内的From,To,Contact字段和Request—URL字段中。

因此,如果完成H.323和SIP网络之间的互通,就必须要实现H.323和SIP网络之间的地址解析和映射,当网关收到来自H.323网络或SIP网络的消息,需要在消息内解析所包含的地址单元,再按地址映射表,转换成对方网地址格式,然后封装在需要发出的消息中。

SIP 地址转换成 H.323地址的转换规则:

(一)e164部分:当SIP地址中userinfo为Tel格式例如+86—010—****@IP地址,这部分将被转化成为H.323地址中e164部分,其中的+,—号会去掉。地址被转化成H.323地址中e164部分,为“86010****”。

(二)h323—ID部分:SIP地址中的userinfo部分会直接转成为h323—ID,例如sip:terminal@IP转成h323— ID就是sip:jack@IP地址。

(三)url—ID部分:SIP地址中的存在类似的user@domain,可以直接转化成为H.323 url—ID部分。sip:terminal@bell—转为url—ID就是sip:terminal @bell—。

(四)email—ID部分:SIP地址存在user@group这中email地址格式,那么将email地址转化为h.323地址的email—ID部分,如sip:terminal@IP地址可以转 terminal @IP地址。

(五)transport—ID部分:SIP地址中存在IP地址和端口的部分,H.323地址需要用transport—ID表示,如SIP地址如果是sip:terminal@IP,那么转成H.323地址:transport—ID是IPAddress IP地址:端口号。

从H.323地址转换到SIP地址时:

1.e164部分:e164部分转换成一个电话号码的SIP地址,规则是:sip:telephone@host:user=phone.

例如e164ID为86010****转化成SIP地址就是:sip:+86—010—****@host:user=phone。

2.h323—ID部分:这部分可以转化成为SIP地址的userinfo部分, 但是如果地址是terminal @IP地址这种类型的话,需要将mailto转化成sip。

3.email—ID:需要将sip标识符加在email—ID的前面,例如email—ID 是

terminal@IP变换到SIP地址就是:sip:terminal@IP。

4.url—ID :需要将sip标识符加在url—ID的前面,如url—ID是h323:

变换成SIP地址就是:sip:.

sip协议例10

0引言

    ip多媒体子系统ims(ip multimedia subsystem)是3gpp制定的3g网络核心技术标准,在rs版本中首次提出并在r6和r7版本中进一步完善。ims是一个在基于ip的网络上提供多媒体业务的通用网络架构,即实现多媒体业务的建立、维护及管理等功能的核心网络体系架构。其核心特点是采用会话初始协议sip(session initial protocol)和与接入的无关性,并实现了会话控制实体cscf(call session control function)和承载控制实体mgcf(media gateway control function)功能上的分离。但由于基于ims的网络融合技术还不成熟,ims网络中应用sip协议产生的最主要问题就是呼叫建立的时延问题。本文首先通过仿真论证了:ims网络中用户在会话建立之前的前提准备:用户注册、鉴权,安全联盟,路由等是占用链路时间较多的步骤,也是ims中业务流程和sip会话时延过长的主要原因;其次提出了ims网络应用sip协议产生时延的改进策略,仿真论证了此策略是有效可行的。

1 ims系统介绍

    图1所示是3gpp r7中定义的ims网络结构图,所有的功能在各个逻辑节点中完成。如果在同一物理设备中实现两个逻辑节点,相关的接口就成为该设备的内部接口。图1中实线表示支持用户业务流的接口,虚线表示仅支持信令的接口,图中最重要的实体就是呼叫会话控制功能cscf和归属用户服务器hss, hss用于存储各种用户有关数据,cscf在ip多媒体子系统中,分为如下3个功能实体:

    (1) proxy cscf: p cscf是ims cn中的第一个接触点。p-cscf起类似一个的作用,接受请求并在其内部为这些请求服务或者继续将他们前转。

    (2)interrogation cscf:i cscf是运营商网络内的接触点,所有都连接到该网络运营商的签约用户,或者当前位于该网络运营商的业务区域内的漫游用户。

    (3) servingse cscf: s_ cscf为ue执行会话控制业务。为支持业务,它维持网络运营商需要的一个会话状态。在一个运营商网络内,不同的s-cscf可以有不同的功能性。

    除此之外,ims网络中还有如多媒体资源功能控制器mrfc(media resource function controller)、多媒体资源功能处理器mrfp(media resource function processor)和中断网关控制功能bgcf等网络实体,在此不做详述。

2  sip协议在ims中的应用

    当3gpp rs在规划ims时,由于sip的灵活性和可扩展性,决定采用sip机制作为ims网络的会话初始化协议。3g网络被分为3个不同的域:电路交换域、分组交换域和ip多媒体交换域。其中ip多媒体子系统域是3g中最重要的域,这个域采用sip作为主要的信令协议向用户提供基于因特网的多媒体服务。从逻辑上讲,所有的3g终端都包含一个sip用户,ip多媒体网络节点就是sip规范中所提到的。

    sip协议在ims网络中的应用十分广泛,涉及ims网络会话的建立,媒体协商和会话修改等。在sip规范中,为了建立一个呼叫会话,ua通常发起请求,服务器服务路由请求,同时注册服务器提供ua的位置信息,因此需要将sip地址映射成ip地址来进行最后的路由。3gpp ims使用了这种机制模型架构:ims中的用户为用户设备,而ims中的服务器是指名为呼叫会话控制功能的网络实体。同时,3gppims使用了sip的扩展功能,主要包括sip压缩(主要是指媒体流的压缩)、安全、制定的cscf路由等。

3基于时延产生的ims会话仿真实现

    此次设计的仿真思路是:针对较成熟的rs标准,首先结合ims会话实际流程进行合理的环境前提设定,其次模拟设计实现一种合理简化环境中的ims会话流程,接着在仿真软件中进行网络仿真模型的建立和描述、仿真节点模型的设计和建立以及仿真进程模型的设计和建立,旨在通过仿真分析ims网络在应用sip完成会话引起的时延情况。

3.1仿真前提设定

    本节所描述的仿真前提建立在ims网络基本要求、sip会话流程和ims业务实现环境的基础上,对将要实际应用中的ims网络会话环境进行了合理的简化:

    (1)业务环境设定:设有两个用户((ue a和ue b), s cscf1作为ue a的,s一 cscf2作为ue b的,ses cscf1不需通过ies cscf2查询hss2来获得see cscf2的地址,从而在仿真环境中省略了ies cscf2和hss2。并将ggsn的功能集成到仿真网络模型图的其它各个组件中。

    (2)业务实现设定:首先,在ims网络中资源相关操作由s cscf,ies cscf.hss.ue.pwe cscf来完成,仿真环境中省去资源控制组件和策略控制组件。其次,将会话过程中所有时间都计算在内,把ggsn和as的组件在网络模型中省略,将其仿真涉及的相关功能集成到cscf中。

    以上仿真环境的简化和假设可保证都建立在合理和不影响研究主要问题的基础之上。

3.2仿真模型和会话流程的设计及建立

    根据ims网络用户会话的原理,仿真实现的会话过程是:在业务环境和链路环境假设的基础上,由ue a发起对ue b的会话,期间经历ue a在归属网络的注册、鉴权、发起会话、建立路由、会话、注销。根据仿真假设,设计了具体的ims网络模型如图2所示。

    图2中各个组件都是ims网络会话和环境的重要组件,其功能在第一节中已有介绍,不再赘述。在前述仿真前提设定的基础上,为实现用户a与用户b之间的会话,设计了与图2网络架构相对应的仿真会话流程,整个设计的仿真会话流程十分复杂(总有95个步骤),由于篇幅限制,现简化流程如图3所示。

    图3所示的ims网络流程如下:(1)ue a向附着设备发送请求。(2)附着设备响应,ue a获得ims网络入口地址的地址。(3)ue a向ims网络发送注册请求。(4)-(5)ims网络入口找到为ue a服务的呼叫控制组件。(6) ims网络入口将ue a的请求转发给为ue a服务的呼叫控制组件。(7)服务组件进行身份认证。(8)一(9)发起邀请:ue a发送invite向ue b发起会话邀请。(10)资源协商与预留:ue a发送prack进行媒体协商确认;ue b用200 ok响应;ue a收到ack后发update进行资源预留协商;ue b以180消息响应:ue a用prack响应;ue b以200 ok消息响应,摘机,示意可进行会话。(11)一(12)会话:ue a收到200后进行会话。(13)(14)会话注销:ue a发起bye进行注销请求;ueb用ack结束会话。

3.3仿真结果分析

    在opnet仿真工具中,首先进行网络仿真模型的建立和描述,其次进行仿真节点模型的设计和建立,然后进行仿真进程模型的设计和建立,最后模拟用户a和用户b之间的三次会话过程,从仿真数据中提取以时延为参数的数据,得到试验仿真的时延示意图如图4所示。

    在图4中,横轴15s之前是会话建立的时间,因此可以看出在会话建立的过程中网络端到端时延不断增大,在15s处曲线到达最高峰,会话建立起来后曲线迅速下降,网络端到端时延迅速减小。因此从整体曲线来看得到结论:ims网络中用户在会话建立之前的前提准备,包括注册、鉴权、安全联盟、路由等是占用链路时间较多的流程步骤,也是在ims中业务流程和sip协议会话时延过长的主要原因。

4 ims网络应用sip协议时延改进方案

4.1时延改进方案

    从3gpp rs中可知,不能为会话预留网络资源是会话建立的严重缺陷。为了使会话启动后失败的可能性最小,有必要在被叫方得到通知前进行资源预留。ims业务为了进行资源预留,网络需要知道被叫方的ip地址、端口及会话参数。为实现这点,没有提供/应答的交换是不行的。但是会话是在提供/应答交换之后建立,而且一般用户只有在会话建立起来后才被振铃。为了解决这个问题,引入“前提”这个概念,会话过程中有两种前提:

    第一种“前提”:会话双方必须在已经完成资源预留之后,才进行振铃提示会话可以正常开始。其优势就是可以在任何情况下,只要会话开始就可以得到资源和会话质量的保证。

    第二种“前提”:会话可以在会话双方没有完成资源预留的情况下,即会话开始和资源预留同时进行,只要资源预留能逐步满足会话的要求即可。这种“前提”在网络性能较好和用户较少时可节省时间,减少会话时延,但如果考虑全ip网络的基础上,这种情况的性能不会使用户满意,因为会话质量在某些情况下得不到保证,从而无法符合ims网络的要求。

    从对两种前提的描述可知,前提的变化会影响会话中各个步骤占用的时延。因此,如果可以综合两种“前提”来完成整个会话效果应更好。例如,在ims网络入口处设置网络性能的预判,或在ims网络注册过程中对描述网络性能的某些数据进行记录和分析,在用户发起会话之前,可根据这些数据来选择两种“前提”中的一种,从而调整会话流程的顺序和进度,减少时延。下面将通过仿真对上述解决思路进行具体实现,并验证其可行性和有效性。

4.2时延改进方案仿真结果分析

    改进后以组件间的时延为参数,重新在各个网络仿真组件中的进程模块中进行编程和相关设置,根据时延参数来选择采用第一或者第二种“前提”进行仿真,仿真环境与上面改进前的一致,从仿真数据中提取以时延为参数的数据,得到试验仿真时延示意图如图5所示。