CN104363149B - 基于sip协议实现voip网络状态监测的系统及方法 - Google Patents

基于sip协议实现voip网络状态监测的系统及方法 Download PDF

Info

Publication number
CN104363149B
CN104363149B CN201410742542.6A CN201410742542A CN104363149B CN 104363149 B CN104363149 B CN 104363149B CN 201410742542 A CN201410742542 A CN 201410742542A CN 104363149 B CN104363149 B CN 104363149B
Authority
CN
China
Prior art keywords
network state
network
processing module
session initiation
initiation protocol
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201410742542.6A
Other languages
English (en)
Other versions
CN104363149A (zh
Inventor
刘莎
赵培超
裴渊飞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Gongjin Communication Technology Co Ltd
Original Assignee
Shanghai Gongjin Communication Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanghai Gongjin Communication Technology Co Ltd filed Critical Shanghai Gongjin Communication Technology Co Ltd
Priority to CN201410742542.6A priority Critical patent/CN104363149B/zh
Publication of CN104363149A publication Critical patent/CN104363149A/zh
Application granted granted Critical
Publication of CN104363149B publication Critical patent/CN104363149B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Telephonic Communication Services (AREA)

Abstract

本发明涉及一种基于SIP协议实现VOIP网络状态监测的系统及方法,其中包括SIP协议栈模块、呼叫控制模块、网络状态处理模块和应用层模块。采用该种结构的基于SIP协议实现VOIP网络状态监测的系统及方法,可以在不影响协议栈的情况下对协议栈发出的正常消息请求包通过网络状态管理模块进行SIP消息包的组装,形成包含网络状态的消息请求包,并发出携带该网络状态的SIP信令包,对于接收到的带有网络状态的SIP响应消息后,可以正确的进行解析提取出网络状态,并且进行消息包的重新组装,恢复协议栈可以正常识别的包,向下传递,可以通过抓包直接定位网络状态,避免通过其它方式去查找定位网络情况,具有更广泛的应用范围。

Description

基于SIP协议实现VOIP网络状态监测的系统及方法
技术领域
本发明涉及网络监测技术领域,尤其涉及网络电话的网络监测技术领域,具体是指一种基于SIP协议实现VOIP网络状态监测的系统及方法。
背景技术
随着光网络的飞速发展和数字传输技术的应用,原来在数据通信网中被视为应用“瓶颈”的带宽和服务质量等问题一一得到解决,推动了IP技术的飞速发展,带动各种应用向IP靠拢,VOIP(Voice over Internet Protocol)电话/VOIP网络电话(又称IP PHONE或VoIP)业务就是其中一个典型的应用。
SIP(Session Initiation Protocol,即初始会话协议),SIP是IETF制定的多媒体通信协议,它是一个基于文本的应用层控制协议,独立于底层协议,用于建立、修改和终止IP网上的双方或多方的多媒体会话。SIP是一个客户/服务器协议。协议消息分为两类:请求和响应;SIP易于扩展和伸缩-具有灵活的可扩展性和极强的能力协商机制,新方法、新消息头及功能的增加,对协议没有影响。
目前现网测试当中遇到的很多问题,都是由于网络状态影响的,基于SIP协议的VOIP系统获取的网络状态并不是直接显示在SIP信令包中,而是我们根据其它进程或者模块发过来的网络状态(WAN连接的connected状态)消息去获取并且显示最终SIP的注册效果,并不能真正的反馈网络的状态。这就造成了现网对接测试中,不能正确获取网络状态,终端从而产生了各种难以理解的现象。例如:现网对接测试当中,网络是可以ping通,但是VOIP的注册状态就是显示网络不可达。由于现网的对接测试当中包里完全看不出任何网络原因,所以只能通过telnet方式去抓取相应的log,根据抓取的log进行分析,这样就导致解决问题的效率比较低。
发明内容
本发明的目的是克服了上述现有技术的缺点,提供了一种能够实现的基于SIP协议实现VOIP网络状态监测的系统及方法。
为了实现上述目的,本发明的基于SIP协议实现VOIP网络状态监测的系统及方法具有如下构成:
该基于SIP协议实现VOIP网络状态监测的系统,其主要特点是,所述的系统包括:
SIP协议栈模块,用以生成请求消息和接收响应信息包;
呼叫控制模块,用以将所述的SIP协议栈模块生成的请求消息发送至网络状态处理模块并根据所述的网络状态处理模块返回的响应信息包进行语音注册状态调整;
网络状态处理模块,用以对所述的呼叫控制模块发送的请求消息进行处理和对应用层模块返回的响应信息包进行还原;
应用层模块,用以将处理后的请求消息发送至特定网络服务器并接收所述的特定网络服务器返回的包含网络状态信息的响应信息包。
较佳地,所述的网络状态处理模块用以对所述的呼叫控制模块发送的请求消息添加网络状态头域和对应用层模块返回的响应消息包去除头域。
本发明还涉及一种根据所述的系统基于SIP协议实现VOIP网络状态监测的方法,其主要特点是,所述的方法包括以下步骤:
(1)所述的呼叫控制模块将所述的SIP协议栈模块发送的请求消息发送至所述的网络状态处理模块;
(2)所述的网络状态处理模块对所述的请求消息进行处理后发送至所述的呼叫控制模块;
(3)所述的应用层模块将所述的呼叫控制模块转发的处理后的请求消息发送至特定网络服务器;
(4)所述的特定网络服务器自动获取当前网络状态信息并将其包含在响应信息包中;
(5)所述的网络状态处理模块提取所述的应用层模块转发的响应信息包中的网络状态信息;
(6)所述的网络状态处理模块对所述的响应信息包进行还原后发送至所述的呼叫控制模块;
(7)所述的呼叫处理模块根据网络状态信息处理语音注册状态并将该还原后的响应信息包发送至所述的SIP协议栈模块。
较佳地,所述的网络状态处理模块对所述的请求消息进行处理后,具体为:
所述的网络状态处理模块对所述的呼叫控制模块发送的请求消息添加网络状态头域。
较佳地,所述的网络状态处理模块对所述的响应信息包进行还原,具体为:
所述的网络状态处理模块对所述的响应信息包进行去除网络状态头域处理。
更佳地,所述的步骤(5)和(6)之间,还包括以下步骤:
(5-1)所述的应用层模块将所述的响应信息包中的网络状态信息保存至系统新网络状态中。
更进一步地,所述的呼叫处理模块根据网络状态信息处理语音注册状态,包括以下步骤:
(7-1)所述的呼叫处理模块接收到还原后的响应信息包后判断系统旧网络状态与系统新网络状态是否一致,如果是,则继续步骤(7-2),否则继续步骤(7-3);
(7-2)所述的呼叫处理模块根据新网络状态修改语音注册状态;
(7-3)所述的呼叫处理模块不进行语音注册状态调整。
采用了该发明中的基于SIP协议实现VOIP网络状态监测的系统及方法,具有如下有益效果:
该发明的系统和方法可以在不影响协议栈的情况下对协议栈发出的正常SIP消息请求包通过网络状态管理模块进行SIP消息包的组装,形成包含网络状态的SIP消息请求包,并发出携带该网络状态的SIP信令包,对于接收到的带有网络状态的SIP响应消息后,可以正确的进行解析提取出网络状态,并且通过网络状态管理模块进行消息包的重新组装即去除带有网络状态的头域,恢复协议栈可以正常识别的包,向下传递,可以通过抓包直接定位网络状态,避免通过其它方式去查找定位网络情况,具有更广泛的应用范围。
附图说明
图1为本发明的基于SIP协议实现VOIP网络状态监测的系统的结构示意图。
图2为本发明的携带网络状态信息的SIP协议信令包格式。
图3为本发明的基于SIP协议实现VOIP网络状态监测的方法的信令交互图。
图4为本发明的基于SIP协议实现VOIP网络状态监测的方法的流程图。
具体实施方式
为了能够更清楚地描述本发明的技术内容,下面结合具体实施例来进行进一步的描述。
如图1所示,该基于SIP协议实现VOIP网络状态监测的系统包括:
SIP协议栈模块,用以生成请求消息和接收响应信息包;
呼叫控制模块,用以将所述的SIP协议栈模块生成的请求消息发送至网络状态处理模块并根据所述的网络状态处理模块返回的响应信息包进行语音注册状态调整;
网络状态处理模块,用以对所述的呼叫控制模块发送的请求消息进行处理和对应用层模块返回的响应信息包进行还原;
应用层模块,用以将处理后的请求消息发送至特定网络服务器并接收所述的特定网络服务器返回的包含网络状态信息的响应信息包。
在一种较佳的实施方式中,所述的网络状态处理模块用以对所述的呼叫控制模块发送的请求消息添加网络状态头域和对应用层模块返回的响应消息包去除头域。
如图4所示,本发明还涉及一种根据所述的系统基于SIP协议实现VOIP网络状态监测的方法,包括以下步骤:
(1)所述的呼叫控制模块将所述的SIP协议栈模块发送的请求消息发送至所述的网络状态处理模块;
(2)所述的网络状态处理模块对所述的请求消息进行处理后发送至所述的呼叫控制模块;
(3)所述的应用层模块将所述的呼叫控制模块转发的处理后的请求消息发送至特定网络服务器;
(4)所述的特定网络服务器自动获取当前网络状态信息并将其包含在响应信息包中;
(5)所述的网络状态处理模块提取所述的应用层模块转发的响应信息包中的网络状态信息;
(6)所述的网络状态处理模块对所述的响应信息包进行还原后发送至所述的呼叫控制模块;
(7)所述的呼叫处理模块根据网络状态信息处理语音注册状态并将该还原后的响应信息包发送至所述的SIP协议栈模块。
在一种较佳的实施方式中,所述的网络状态处理模块对所述的请求消息进行处理后,具体为:
所述的网络状态处理模块对所述的呼叫控制模块发送的请求消息添加网络状态头域。
在一种较佳的实施方式中,所述的网络状态处理模块对所述的响应信息包进行还原,具体为:
所述的网络状态处理模块对所述的响应信息包进行去除网络状态头域处理。
在一种更佳的实施方式中,所述的步骤(5)和(6)之间,还包括以下步骤:
(5-1)所述的应用层模块将所述的响应信息包中的网络状态信息保存至系统新网络状态中。
在一种更进一步的实施方式中,所述的呼叫处理模块根据网络状态信息处理语音注册状态,包括以下步骤:
(7-1)所述的呼叫处理模块接收到还原后的响应信息包后判断系统旧网络状态与系统新网络状态是否一致,如果是,则继续步骤(7-2),否则继续步骤(7-3);
(7-2)所述的呼叫处理模块根据新网络状态修改语音注册状态;
(7-3)所述的呼叫处理模块不进行语音注册状态调整。
下面以一具体实施例来进一步介绍本发明的系统及方法。
本发明涉及SIP协议、VOIP网络电话、特定网络服务器即能够识别网络状态头(NWSTATE)具有DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)和DNS(Domain Name System,域名系统)解析的软交换服务器功能等技术,其就是一种能够监测到网络状态的VOIP系统及方法。
本发明就是为了克服现有VOIP技术当中不能正确有效地反馈网络状态至VOIP系统中从而导致在对接测试过程当中引起很多问题而提供的一种可以直接在SIP信令包中反馈网络状态的方法,直接有效的定位和排除网络问题。
为了实现上述目的,本发明一种基于SIP协议监测VOIP网络状态的系统及方法具体实现包括以下步骤:
VOIP系统包括SIP协议栈模块,呼叫控制模块、底层驱动模块、SIP业务模块、应用层模块和网络状态处理模块。
(1)家庭网关上电启动完成后,配置了注册服务器、代理服务器、外部代理服务器、电话号码、用户名、密码。
(2)VOIP系统协议栈组装正常的SIP请求消息包,并发送该消息给呼叫控制模块,呼叫控制模块将该消息发送给网络状态处理模块,网络状态处理模块添加网络状态头域(Nwstate),组装NWSTATE包成功,并将其发送给呼叫控制模块,呼叫控制模块将该消息传递到应用层,应用层把该消息发至特定网络服务器。
即(2-1)在SIP协议栈当中添加扩展的请求消息(NWSTATE),该消息包含的头域有TO,FROM,Cseq,Call-ID,Max-Forwards,Via、Nwstate。如图2所示。
NWSTATE SIP消息是一个SIP请求消息,60s发一次。
(2-2)VOIP系统的SIP协议栈发送NWSTATE SIP请求消息至呼叫控制模块,呼叫控制模块发送该消息至网络状态处理模块。
(2-3)VOIP系统的网络状态处理模块对该消息进行处理后发送该消息至应用层模块。
(2-4)VOIP系统通过发送NWSTATE SIP请求消息至特定网络服务器检测网络状态。
(3)VOIP系统发起的NWSTATE请求包至特定网络服务器,特定网络服务器可以正常的处理收到的请求包。
(4)特定网络服务器收到该请求包后会自动的获取当前网络状态并将其包含在200OK响应消息包中。如图3所示。
即特定网络服务器即可以正确获取网络状态并具有DNS解析、DHCP、ping、SIP软交换功能,并且可以处理收到的NWSTATE SIP包,并且回复的200 OK响应包中携带TO,FROM,Cseq,Call-ID,Max-Forwards,Via、Nwstate。
(5)VOIP系统收到该响应消息后,应用层模块调用网络状态处理模块提取SIP消息中的网络状态,并将其保存至全局变量new_NwState中,即用来控制网络状态变化。其需要跟呼叫控制模块定义的old_NwState进行比较。该模块还有一个关键的地方就是,会将SIP消息进行还原,即去除200OK响应消息中的Nwstate头域,并将去除NWstate头的消息发送给呼叫控制模块。
(6)呼叫控制模块处理来自于网络状态处理模块的SIP消息,直接将该消息进行向下传递,协议栈收到该消息后不做任何处理,呼叫处理模块收到该消息时,会将new_NwState和old_NwState进行比较,如果状态有改变,会修改语音注册状态。如果状态没有改变,不会做任何处理。这样就可以通过抓包直接定位网络状态,避免通过其它方式去查找定位网络情况。
采用了该发明中的基于SIP协议实现VOIP网络状态监测的系统及方法,具有如下有益效果:
该发明的系统和方法可以在不影响协议栈的情况下对协议栈发出的正常SIP消息请求包通过网络状态管理模块进行SIP消息包的组装,形成包含网络状态的SIP消息请求包,并发出携带该网络状态的SIP信令包,对于接收到的带有网络状态的SIP响应消息后,可以正确的进行解析提取出网络状态,并且通过网络状态管理模块进行消息包的重新组装即去除带有网络状态的头域,恢复协议栈可以正常识别的包,向下传递,可以通过抓包直接定位网络状态,避免通过其它方式去查找定位网络情况,具有更广泛的应用范围。
在此说明书中,本发明已参照其特定的实施例作了描述。但是,很显然仍可以作出各种修改和变换而不背离本发明的精神和范围。因此,说明书和附图应被认为是说明性的而非限制性的。

Claims (7)

1.一种基于SIP协议实现VOIP网络状态监测的系统,其特征在于,所述的系统包括:
SIP协议栈模块,用以生成请求消息和接收响应信息包;
呼叫控制模块,用以将所述的SIP协议栈模块生成的请求消息发送至网络状态处理模块并根据所述的网络状态处理模块返回的响应信息包进行语音注册状态调整;
网络状态处理模块,用以通过添加网络状态头域Nwstate对所述的呼叫控制模块发送的请求消息进行处理,并通过去除网络状态头域Nwstate对应用层模块返回的响应信息包进行还原;
应用层模块,用以将处理后的请求消息发送至特定网络服务器并接收所述的特定网络服务器返回的包含网络状态信息的响应信息包。
2.根据权利要求1所述的基于SIP协议实现VOIP网络状态监测的系统,其特征在于,所述的网络状态处理模块用以对所述的呼叫控制模块发送的请求消息添加网络状态头域和对应用层模块返回的响应消息包去除头域。
3.一种根据权利要求1或2所述的系统基于SIP协议实现VOIP网络状态监测的方法,其特征在于,所述的方法包括以下步骤:
(1)所述的呼叫控制模块将所述的SIP协议栈模块发送的请求消息发送至所述的网络状态处理模块;
(2)所述的网络状态处理模块通过添加网络状态头域Nwstate对所述的请求消息进行处理后发送至所述的呼叫控制模块;
(3)所述的应用层模块将所述的呼叫控制模块转发的处理后的请求消息发送至特定网络服务器;
(4)所述的特定网络服务器自动获取当前网络状态信息并将其包含在响应信息包中;
(5)所述的网络状态处理模块提取所述的应用层模块转发的响应信息包中的网络状态信息;
(6)所述的网络状态处理模块通过去除网络状态头域Nwstate对所述的响应信息包进行还原后发送至所述的呼叫控制模块;
(7)所述的呼叫处理模块根据网络状态信息处理语音注册状态并将该还原后的响应信息包发送至所述的SIP协议栈模块。
4.根据权利要求3所述的基于SIP协议实现VOIP网络状态监测的方法,其特征在于,所述的网络状态处理模块对所述的请求消息进行处理后,具体为:
所述的网络状态处理模块对所述的呼叫控制模块发送的请求消息添加网络状态头域。
5.根据权利要求3所述的基于SIP协议实现VOIP网络状态监测的方法,其特征在于,所述的网络状态处理模块对所述的响应信息包进行还原,具体为:
所述的网络状态处理模块对所述的响应信息包进行去除网络状态头域处理。
6.根据权利要求5所述的基于SIP协议实现VOIP网络状态监测的方法,其特征在于,所述的步骤(5)和(6)之间,还包括以下步骤:
(5-1)所述的应用层模块将所述的响应信息包中的网络状态信息保存至系统新网络状态中。
7.根据权利要求6所述的基于SIP协议实现VOIP网络状态监测的方法,其特征在于,所述的呼叫处理模块根据网络状态信息处理语音注册状态,包括以下步骤:
(7-1)所述的呼叫处理模块接收到还原后的响应信息包后判断系统旧网络状态与系统新网络状态是否一致,如果是,则继续步骤(7-2),否则继续步骤(7-3);
(7-2)所述的呼叫处理模块根据新网络状态修改语音注册状态;
(7-3)所述的呼叫处理模块不进行语音注册状态调整。
CN201410742542.6A 2014-12-08 2014-12-08 基于sip协议实现voip网络状态监测的系统及方法 Active CN104363149B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410742542.6A CN104363149B (zh) 2014-12-08 2014-12-08 基于sip协议实现voip网络状态监测的系统及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410742542.6A CN104363149B (zh) 2014-12-08 2014-12-08 基于sip协议实现voip网络状态监测的系统及方法

Publications (2)

Publication Number Publication Date
CN104363149A CN104363149A (zh) 2015-02-18
CN104363149B true CN104363149B (zh) 2017-12-29

Family

ID=52530376

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410742542.6A Active CN104363149B (zh) 2014-12-08 2014-12-08 基于sip协议实现voip网络状态监测的系统及方法

Country Status (1)

Country Link
CN (1) CN104363149B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104702602B (zh) * 2015-03-04 2018-01-02 南京邮电大学 基于sip实现集群网关动态创建通道和扩容的系统和方法
CN106714199B (zh) * 2015-11-13 2020-05-19 中兴通讯股份有限公司 获取承载网的网络状态信息的方法及装置
CN107835327B (zh) * 2017-10-30 2020-01-07 北京佳讯飞鸿电气股份有限公司 信令网关的协议栈队列的维护方法、装置及系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101098242A (zh) * 2007-05-28 2008-01-02 华为技术有限公司 一种网络连接信息的获取方法以及网络边界实体
EP2179549A1 (en) * 2007-08-09 2010-04-28 Markport Limited Network resource management
CN103155508A (zh) * 2010-09-30 2013-06-12 瑞典爱立信有限公司 在基于ip的通信网络中检查目的地网络状态的方法和网络实体

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101098242A (zh) * 2007-05-28 2008-01-02 华为技术有限公司 一种网络连接信息的获取方法以及网络边界实体
EP2179549A1 (en) * 2007-08-09 2010-04-28 Markport Limited Network resource management
CN103155508A (zh) * 2010-09-30 2013-06-12 瑞典爱立信有限公司 在基于ip的通信网络中检查目的地网络状态的方法和网络实体

Also Published As

Publication number Publication date
CN104363149A (zh) 2015-02-18

Similar Documents

Publication Publication Date Title
KR100728280B1 (ko) Sip를 이용한 통신 시스템에서 호 해제 요청/응답메시지를 이용한 네트워크 상태 관리 방법
EP2805476B1 (en) Ice based nat traversal
EP3292675A2 (en) Establishing media paths in real time communications
EP3145129A1 (en) Method and gateway for communication between browser and telecommunication network
US9736316B2 (en) Network address translation traversal system and method for real-time communications
JP4695457B2 (ja) 関係者識別データの収集及び分配システム及び方法
US20160308930A1 (en) Method and System to Add Video Capability to any Voice over Internet Protocol (Vo/IP) Session Initiation Protocol (SIP) Phone
KR101705440B1 (ko) 미디어 통신용 하이브리드 클라우드 미디어 아키텍쳐
EP2056556A1 (en) An intercommunication method and a communication system between different networks
EP2472984A1 (en) Method for realizing end-to-end call, end-to-end call terminal and system
JP3698698B2 (ja) Dmzを介したイントラネットおよび外部ネットワーク上の呼の確立
US11228623B2 (en) Method for transmitting media streams between RTC clients
CN100574474C (zh) 一种通讯系统中建立通讯业务连接的方法
CN104363149B (zh) 基于sip协议实现voip网络状态监测的系统及方法
CN107786509A (zh) 会话消息处理方法和相关装置
CN100466641C (zh) 基于sip支持多itsp的系统及实现方法
JP2011515980A (ja) 通信システムにおけるピアツーピアマルチメディア接続の状態を問い合わせるシステムおよび方法
JP2006345231A (ja) Sip−alg方法
Manjur et al. Conference gateway for heterogeneous clients: Real time switching clients and interasterisk exchange clients
CN102546644B (zh) 实现sip呼叫的方法、设备和系统
WO2015131466A1 (zh) 基于会话初始协议sip的数据业务处理方法及装置
JP2004254010A (ja) Sip通信制御装置
US11102268B2 (en) RTP monitoring device and RTP monitoring method
EP2059001B1 (en) Multitype SIP processing element
CN107547483B (zh) 精准传真协商的方法及接入网关

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant