转发报文的方法和网络设备的制作方法

文档序号:7657626阅读:128来源:国知局
专利名称:转发报文的方法和网络设备的制作方法
技术领域
本发明涉及数据通信领域,尤其涉及转发报文的方法和网络设备。
背景技术
下一代网络(Next Generation Network,NGN)在全球得到快速发展,在NGN网络中广泛使用会话初始协议(Session Initiation Protocol,SIP)。拒绝服务(Denial Of Service,DoS)攻击是常见的网络攻击方式,其中循环攻击(Loop)是DoS攻击的一种具体形式。SIP Loop循环攻击指,一个SIP注册请求消息(Register)被路由到SIP代理服务器,该SIP代理服务器对该SIP注册请求消息进行处理并转发,之后该消息再次到达该SIP代理服务器,并且此次代理服务器对该SIP注册请求消息的处理与上次完全一样。比如,用户user1@domain1.com将user2@domain2.com注册为自己联系域(Contact)地址,用户user2@domain2.com将user1@domain1.com注册为自己Contact地址;当发往domain2.com的注册请求消息到达SIP代理服务器2时,SIP代理服务器2查询数据库,发现user2@domain2.com的Contact地址是user1@domain1.com,把Request-URI(请求统一资源标识符)中的user2@domain2.com替换为user1@domain1.com,然后将该消息发向domain1.com的SIP代理服务器1。SIP代理服务器1接收到该消息后,把Request-URI中的user1@domain1.com替换为user2@domain2.com,将该消息发向domain2.com的代理服务器2。该SIP注册请求消息不断地在两个SIP代理服务器之间循环。如果SIP代理服务器采用分发机制(Forking),则会进一步扩大Loop循环攻击的范围;Forking分发机制指,当SIP服务器查询数据库发现Request-URI对应有多个Contact地址时,则将相应的SIP消息发向每一个Contact地址。
为解决SIP Loop循环攻击的问题,现有技术对SIP注册请求消息定义了一个Max-Forwards域,该域值规定了SIP注册请求消息在网络中的最大跳数;SIP代理服务器接收到SIP注册请求消息后,获取Max-Forwards值,判断Max-Forwards值是否为0,如果是,丢弃该消息,否则,将Max-Forwards值减1,转发该消息;当存在SIP Loop循环攻击时,SIP消息循环Max-Forwards次后,SIP代理服务器可以丢弃该消息。
在实现本发明过程中,发明人发现现有技术中至少存在如下问题,为避免正常报文到达目的地址之前被丢弃,Max-Forwards值不能太小,当存在SIPLoop循环攻击时,SIP Loop循环进行Max-Forwards次,直到Max-Forwards值为0,循环攻击才会停止,这个循环过程损耗了SIP代理服务器的资源。

发明内容
本发明实施例要解决的技术问题是提供转发报文的方法和网络设备,以实现预防SIP Loop循环攻击。
为解决上述技术问题,本发明实施例的目的是通过以下技术方案实现的一种转发报文的方法,包括接收携带联系地址的会话初始协议注册请求消息;获取会话初始协议注册请求消息携带的联系地址;确定联系地址为预先保存的网络中的会话初始协议代理服务器地址,则对会话初始协议注册请求消息进行异常处理。
一种网络设备,包括代理服务器地址保存单元,用于保存网络中的会话初始协议代理服务器地址;注册请求消息接收单元,用于接收携带联系地址的会话初始协议注册请求消息;联系地址获取单元,用于获取注册请求消息接收单元接收到的会话初始协议注册请求消息携带的联系地址;注册请求消息处理单元,用于确定联系地址获取单元获取的联系地址为代理服务器地址保存单元保存的会话初始协议代理服务器地址后,对会话初始协议注册请求消息进行异常处理。
从以上的技术方案可以看出,在本发明实施例中,接收携带联系地址的SIP注册请求消息;获取SIP注册请求消息携带的联系地址;确定联系地址为预先保存的网络中的SIP代理服务器地址,则对SIP注册请求消息进行异常处理;本技术方案可以预防SIP Loop循环攻击,提高SIP代理服务器的处理性能。


图1为本发明实施例一的转发报文方法流程图;图2为本发明实施例二的转发报文方法流程图;图3为本发明实施例三的网络设备示意图;图4为本发明实施例四的网络设备示意图。
具体实施例方式
本发明实施例提供转发报文的方法和网络设备。转发报文的方法为,获取网络中的SIP代理服务器地址,保存SIP代理服务器地址,接收到携带联系地址的SIP注册请求消息,判断联系地址是否为保存的SIP代理服务器地址,如果是,对SIP注册请求消息进行异常处理,否则,对SIP注册请求消息进行正常转发;从而实现预防SIP Loop循环攻击。
实施例一请参考图1,为本发明实施例一的转发报文方法流程图。
步骤101.SIP代理服务器在系统初始化的时候,设置网络中的SIP代理服务器地址;其中,SIP代理服务器地址可以为域名地址和/或因特网(InternetProtocol,IP)地址。
SIP代理服务器向其它SIP代理服务器发送广播消息或者直接向核心控制设备发送请求消息,获取网络中的SIP代理服务器地址,将获取的SIP代理服务器地址保存到合法代理服务器数据库中。
当SIP代理服务器A发生故障或退出时,可以向其它SIP代理服务器发送状态信息或错误信息;其它SIP代理服务器接收到该状态信息或错误信息后,从合法代理服务器数据库中删除SIP代理服务器A的地址信息。每个SIP代理服务器可以与网络中其它SIP代理服务器共享自身的合法代理服务器数据库,SIP代理服务器在初始化的时候,只需向与自己直接通信的SIP代理服务器发送注册请求消息即可,而不需要向所有SIP代理服务器发送广播消息,从而为不支持广播的网络提供兼容。SIP代理服务器之间的信息交互可以采用已有的通信协议,或采用自定义协议。
可以理解的是,在系统初始化的时候,可以手工设置网络中的SIP代理服务器地址,而不需要从其它设备获取。
合法代理服务器数据库能够以表格的形式保存,表1为本实施例的格式

表1步骤102.接收到携带联系地址的SIP注册请求消息,获取该SIP注册请求消息携带的联系地址。联系地址指,SIP注册请求消息中的联系域(Contact)的统一资源标识符(URI)的地址。联系地址可以为域名地址和/或因特网IP地址。
SIP注册请求消息中的Contact域的URI地址包括域名地址,比如格式为alice@client.example.com;IP地址,比如格式为,alice@10.110.225.23。IP地址可以包括第4版本因特网协议地址(Ipv4)和第6版本因特网协议地址(Ipv6),本实施例不仅可以支持Ipv4,也可以支持Ipv6。当接收到SIP注册请求消息时,提取该SIP注册请求消息的Contact域值,获得该域值的@字符之后的地址信息。
步骤103.查询合法代理服务器数据库,将获取的联系地址与合法代理服务器数据库进行匹配,判断该联系地址是否为预先保存的SIP代理服务器地址,如果是,继续步骤104;否则继续步骤105。
在进行匹配的时候,如果匹配串为IP地址,按照字符匹配原则在数据库中IP地址栏查找匹配串,然后根据匹配结果进行相应处理;如果匹配串为域名地址,而数据库中未保存该域名地址,只有其它IP地址,这时可以向域名服务器提出域名查询请求,获取域名地址相对应的IP地址,然后按照字符匹配原则在数据库中IP地址栏进行查找匹配串,如果查到了匹配的IP地址,则将域名地址存入该IP地址对应的域名地址栏,从而可以使得下次匹配串为同一域名地址时,无需再次查找域名服务器。
步骤104.对该SIP注册请求消息进行异常处理。异常处理可以为丢弃该SIP注册请求消息。可以存储异常处理产生的告警信息。
步骤105.对该SIP注册请求消息进行正常转发。
实施例二请参考图2,为本发明实施例二的转发报文方法流程图。
步骤201.SIP代理服务器接收携带路径地址的SIP响应消息;获取该SIP响应消息携带的路径地址,把该路径地址作为网络中的SIP代理服务器地址,判断合法代理服务器数据库中是否已经存在该SIP代理服务器地址,如果是,不需要将该SIP代理服务器地址保存到合法代理服务器数据库中;如果否,则将该SIP代理服务器地址保存到合法代理服务器数据库中。路径地址指,SIP响应消息中的路由域(Via)的链接地址。
为保证SIP响应消息的合法性,可以配合会话事务检测机制来避免攻击者伪造SIP响应消息。会话事务检测机制能检测出SIP响应消息是否符合正常会话流程,如果攻击者发送响应消息而没有注册请求消息的话,该响应消息不符合正常的会话流程,将会被过滤。入侵检测系统(Intrusion DetectionSystem,IDS)可以实现会话事务检测机制。可以理解的是,获取SIP响应消息携带的路径地址前,可以使用会话事务检测机制来检测SIP响应消息是否合法,以保证路径地址的合法性。
步骤202.接收到携带联系地址的SIP注册请求消息,获取该SIP注册请求消息携带的联系地址。
步骤203.查询合法代理服务器数据库,将获取的联系地址与合法代理服务器数据库进行匹配,判断该联系地址是否为预先保存的SIP代理服务器地址,如果是,继续步骤204;否则继续步骤205。
步骤204对该SIP注册请求消息进行异常处理。
步骤205.对该SIP注册请求消息进行正常转发。
上述实施例一在系统初始化时配置合法代理服务器信息,可以看成静态的配置方式;上述实施例二在系统运行时通过获取路由地址不断更新合法代理服务器信息,可以看成动态的配置方式。需要指出的是,在具体实施本技术方案的时候,可以采用静态和动态相结合的方式,在系统初始化时配置合法代理服务器信息,在系统运行时,不断更新合法代理服务器信息;这样,不仅可以在运行前保存完整的网络中SIP代理服务器地址,还可以在运行时使得保存的SIP代理服务器地址随着网络的变化而变化。
从以上实施例一和实施例二可以看出,接收携带联系地址的SIP注册请求消息;获取SIP注册请求消息携带的联系地址;确定联系地址为预先保存的网络中的SIP代理服务器地址,则对SIP注册请求消息进行异常处理;从而预防SIP Loop循环攻击,提高SIP代理服务器的处理性能。本技术方案通过检测用户的SIP注册请求消息中的联系地址是否为代理服务器地址,即在预准备阶段对Loop循环攻击行为进行检测,一旦发现Loop循环攻击行为,则对用户的SIP注册请求消息进行异常处理,从而在预准备阶段即排除Loop循环攻击行为,真正做到防患于未然。
实施例三请参考图3,为本发明实施例三的网络设备示意图。该网络设备300包括代理服务器地址获取单元301,用于从其它网络设备获取网络中的SIP代理服务器地址,向代理服务器地址保存单元发送SIP代理服务器地址;代理服务器地址保存单元302,用于保存网络中的SIP代理服务器地址;注册请求消息接收单元303,用于接收携带联系地址的SIP注册请求消息;联系地址获取单元304,用于获取注册请求消息接收单元303的话初始协议注册请求消息携带的联系地址;注册请求消息处理单元305,用于确定联系地址获取单元304获取的联系地址为代理服务器地址保存单元302保存的SIP代理服务器地址,对SIP注册请求消息进行异常处理;告警日志单元306,用于当注册请求消息处理单元305对SIP注册请求消息进行异常处理时,存储异常处理的信息。
其中,上述联系地址可以为域名地址和/或因特网地址;上述SIP代理服务器地址可以为域名地址和/或因特网地址;上述网络设备300可以为,SIP代理服务器或入侵检测系统。
代理服务器地址获取单元301从其它网络设备获取网络中的SIP代理服务器地址,向代理服务器地址保存单元302发送SIP代理服务器地址。代理服务器地址保存单元302保存网络中的SIP代理服务器地址。注册请求消息接收单元303接收携带联系地址的SIP注册请求消息。联系地址获取单元304获取注册请求消息接收单元303的SIP注册请求消息携带的联系地址。注册请求消息处理单元305确定联系地址获取单元304获取的联系地址为代理服务器地址保存单元302保存的SIP代理服务器地址,对SIP注册请求消息进行异常处理。当注册请求消息处理单元305对SIP注册请求消息进行异常处理时,告警日志单元306存储异常处理的信息。
从以上实施例三可以看出,代理服务器地址获取单元从其它网络设备获取网络中的SIP代理服务器地址,代理服务器地址保存单元保存网络中的SIP代理服务器地址,注册请求消息接收单元接收携带联系地址的SIP注册请求消息,联系地址获取单元获取SIP注册请求消息携带的联系地址,注册请求消息处理单元305确定获取的联系地址为保存的SIP代理服务器地址,对SIP注册请求消息进行异常处理;从而预防SIP Loop循环攻击,提高SIP代理服务器的处理性能。
实施例四请参考图4,为本发明实施例四的网络设备示意图。该网络设备400包括响应消息接收单元401,用于接收携带路径地址的SIP响应消息;代理服务器地址获得单元402,用于获取响应消息接收单元401接收到的SIP响应消息携带的路径地址,把路径地址作为网络中的SIP代理服务器地址,向代理服务器地址保存单元发送SIP代理服务器地址;代理服务器地址保存单元403,用于保存网络中的SIP代理服务器地址;注册请求消息接收单元404,用于接收携带联系地址的SIP注册请求消息;联系地址获取单元405,用于获取注册请求消息接收单元404的SIP注册请求消息携带的联系地址;注册请求消息处理单元406,用于确定联系地址获取单元405获取的联系地址为代理服务器地址保存单元403保存的SIP代理服务器地址,对SIP注册请求消息进行异常处理;告警日志单元407,用于当注册请求消息处理单元406对SIP注册请求消息进行异常处理时,存储异常处理的信息。
其中,上述联系地址可以为域名地址和/或因特网地址;上述SIP代理服务器地址可以为域名地址和/或因特网地址;上述网络设备400可以为,SIP代理服务器或入侵检测系统。
响应消息接收单元401接收携带路径地址的SIP响应消息。代理服务器地址获得单元402获取响应消息接收单元401接收到的SIP响应消息携带的路径地址,把路径地址作为网络中的SIP代理服务器地址,向代理服务器地址保存单元403发送SIP代理服务器地址。代理服务器地址保存单元403保存网络中的SIP代理服务器地址。注册请求消息接收单元404接收携带联系地址的SIP注册请求消息。联系地址获取单元405获取注册请求消息接收单元404的SIP注册请求消息携带的联系地址。注册请求消息处理单元406确定联系地址获取单元405获取的联系地址为代理服务器地址保存单元403保存的SIP代理服务器地址,对SIP注册请求消息进行异常处理。当注册请求消息处理单元406对SIP注册请求消息进行异常处理时,告警日志单元407存储异常处理的信息。
从以上实施例四可以看出,响应消息接收单元接收携带路径地址的SIP响应消息,代理服务器地址获得单元获取SIP响应消息携带的路径地址,把路径地址作为网络中的SIP代理服务器地址,代理服务器地址保存单元保存网络中的SIP代理服务器地址,注册请求消息接收单元接收携带联系地址的SIP注册请求消息;联系地址获取单元获取SIP注册请求消息携带的联系地址,注册请求消息处理单元确定联系地址为SIP代理服务器地址,对SIP注册请求消息进行异常处理;从而预防SIP Loop循环攻击,提高SIP代理服务器的处理性能。
结合实施例三和实施例四的另一个实施例如下该实施例的网络设备包括,代理服务器地址获取单元,代理服务器地址保存单元,响应消息接收单元,代理服务器地址获得单元,注册请求消息接收单元,联系地址获取单元,注册请求消息处理单元和告警日志单元。该网络设备的工作过程如下代理服务器地址获取单元从其它网络设备获取网络中的会话初始协议代理服务器地址,向代理服务器地址保存单元发送获取的会话初始协议代理服务器地址。代理服务器地址保存单元保存网络中的会话初始协议代理服务器地址。响应消息接收单元接收携带路径地址的会话初始协议响应消息。代理服务器地址获得单元获取响应消息接收单元接收到的会话初始协议响应消息携带的路径地址,把路径地址作为网络中的会话初始协议代理服务器地址,向代理服务器地址保存单元发送会话初始协议代理服务器地址。代理服务器地址保存单元保存网络中的会话初始协议代理服务器地址。注册请求消息接收单元接收携带联系地址的会话初始协议注册请求消息。联系地址获取单元获取注册请求消息接收单元接收到的会话初始协议注册请求消息携带的联系地址。注册请求消息处理单元确定联系地址获取单元获取的联系地址为代理服务器地址保存单元保存的会话初始协议代理服务器地址,对会话初始协议注册请求消息进行异常处理。当注册请求消息处理单元对会话初始协议注册请求消息进行异常处理时,告警日志单元存储异常处理的信息。上述的网络设备不仅可以在运行前保存完整的网络中SIP代理服务器地址,还可以在运行时使得保存的SIP代理服务器地址随着网络的变化而变化。
需要指出的是,本发明实施例可以应用在基于软交换为核心的NGN网络,可以应用在基于IP多媒体子系统(IP Multimedia System,IMS)的NGN网络。
以上对本发明实施例所提供的转发报文的方法和网络设备进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式
及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
权利要求
1.一种转发报文的方法,其特征在于,包括接收携带联系地址的会话初始协议注册请求消息;获取所述会话初始协议注册请求消息携带的联系地址;确定所述联系地址为预先保存的网络中的会话初始协议代理服务器地址,则对所述会话初始协议注册请求消息进行异常处理。
2.根据权利要求1所述的方法,其特征在于,所述接收携带联系地址的会话初始协议注册请求消息的步骤之前,所述方法还包括从其它网络设备获取网络中的会话初始协议代理服务器地址;保存所述网络中的会话初始协议代理服务器地址。
3.根据权利要求1所述的方法,其特征在于,所述接收携带联系地址的会话初始协议注册请求消息的步骤之前所述方法还包括;接收携带路径地址的会话初始协议响应消息;所述路径地址作为网络中的会话初始协议代理服务器地址,保存所述会话初始协议代理服务器地址。
4.根据权利要求1至3任意一项所述的方法,其特征在于,所述联系地址为域名地址和/或因特网地址;所述会话初始协议代理服务器地址为域名地址和/或因特网地址。
5.一种网络设备,其特征在于,包括代理服务器地址保存单元,用于保存网络中的会话初始协议代理服务器地址;注册请求消息接收单元,用于接收携带联系地址的会话初始协议注册请求消息;联系地址获取单元,用于获取所述注册请求消息接收单元接收到的会话初始协议注册请求消息携带的联系地址;注册请求消息处理单元,用于确定所述联系地址获取单元获取的联系地址为所述代理服务器地址保存单元保存的会话初始协议代理服务器地址后,对所述会话初始协议注册请求消息进行异常处理。
6.根据权利要求5所述的网络设备,其特征在于,所述的网络设备进一步包括代理服务器地址获取单元,用于从其它网络设备获取网络中的会话初始协议代理服务器地址,向所述代理服务器地址保存单元发送所述获取的会话初始协议代理服务器地址。
7.根据权利要求5所述的网络设备,其特征在于,进一步包括响应消息接收单元,用于接收携带路径地址的会话初始协议响应消息;代理服务器地址获得单元,用于获取所述响应消息接收单元接收到的会话初始协议响应消息携带的路径地址,把所述路径地址作为网络中的会话初始协议代理服务器地址,向所述代理服务器地址保存单元发送所述会话初始协议代理服务器地址。
8.根据权利要求5所述的网络设备,其特征在于,进一步包括告警日志单元,用于当所述注册请求消息处理单元对所述会话初始协议注册请求消息进行异常处理时,存储异常处理的信息。
9.根据权利要求5所述的网络设备,其特征在于,所述联系地址为域名地址和/或因特网地址;所述会话初始协议代理服务器地址为域名地址和/或因特网地址。
10.根据权利要求5至9任意一项所述的网络设备,其特征在于,所述网络设备具体为,会话初始协议代理服务器或入侵检测系统。
全文摘要
本发明公开了转发报文的方法,包括,接收携带联系地址的会话初始协议注册请求消息;获取所述会话初始协议注册请求消息携带的联系地址;确定所述联系地址为预先保存的网络中的会话初始协议代理服务器地址,则对所述会话初始协议注册请求消息进行异常处理。本发明进一步公开了网络设备。本技术方案可以预防SIP Loop循环攻击。
文档编号H04L29/06GK101079818SQ20071012752
公开日2007年11月28日 申请日期2007年6月28日 优先权日2007年6月28日
发明者辛阳, 刘利锋, 郑志彬, 朱洪亮, 赵凯, 杨义先 申请人:华为技术有限公司, 北京邮电大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1