信令流分发方法及信令分发处理单元技术

技术编号:3545918 阅读:203 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种信令流分发方法及信令分发处理单元,用于将控制信令流负荷分发到信令处理模块,其中该方法包括:使用信令处理模块的连接配置的传输地址四元组信息为原始索引创建哈希索引表和负荷分担表;获取IP报文的源IP地址和源端口号、目的IP地址和目的端口号,并分别对源IP地址和源端口号、目的IP地址和目的端口号进行硬件哈希运算,根据运算结果取出查表的哈希键值和原始索引,在哈希索引表和负荷分担表中查找所述信令处理模块的地址信息;根据信令处理模块的地址信息分发所述控制信令流。应用本发明专利技术,不仅提高了信令流转发的速度和效率,而且具有数据配置灵活、适合多种组网方式、适用于任何传输方式的消息分发的优点。

【技术实现步骤摘要】

本专利技术涉及网络通信领域的流分发方法,尤其是基于网络处理器使用长索引精确匹配查找实现信令流快速分发的方法及系统。
技术介绍
IP分组技术以其传输信道利用率高,传输速率灵活,适合于非对称突发性数据业务传输的特点在电信网中得到了广泛应用。传统的电信网络正在逐步IP化,网络架构上也开始将控制功能与承载分离,如信令单独组网用于呼叫等业务控制。第三代移动通信技术中分组语音承载核心网与传统电路交换网络如PSTN(Public Switched Telephone Network)、ISDN(Integrated Services Digital Network)进行互通时,一般通过信令网关SG(Signaling Gateway)完成信令的IP承载与TDM(Time Division Multiplexing)承载之间的转换。SG采用IETF(Internet Engineering Task Force)制定的SIGTRAN/SCTP(Signaling Transport/Streaming Control Transmission Protocol)协议,为SS7信令在IP网上传送提供可靠的连接。同时两个网络进行互通时由于控制信令和语音承载方面的差异,需要在关口位置完成呼叫控制信令的互通。目前一般选择SCTP、TCP(Transmission Control Protocol)等基于字节流的传输层可靠协议作为信令的传输方式。如图1所示,对于信令网关系统而言,在网络边缘通常需要有一个处于IP层的信令分发处理单元10,完成信令IP报文的接入,并分发到多个信令处理模块20及30等。对于信令分发处理单元10而言,特别相对于传统固定网而言,信令流量一般不大,大多都采用擅长控制层面处理的通用处理器实现,但在呼叫用户规模较大的多局向、多网络互通环境下,由于通用处理器处理能力限制,控制面传送带宽很难达到核心网中大容量网关信令接入的要求,选择专用的网络处理器替代通用处理器是一个比较好的解决办法。以Intel的IXP1200为例,IXP1200包括一个嵌入式核心中央处理器(ARMCore)和若干个精简指令结构的微处理器(微引擎)。嵌入式核心中央处理器用于异常处理和控制面处理,微处理器负责快速数据通路的用户IP报文处理,使用专为优化包处理而设计的指令集对微引擎编程,实现用户IP报文实时的并行处理,从而将IP报文以线速转发到下一节点。但使用网络处理器实现信令分发处理单元要求功能简单,IP报文转发时需尽量减少对上层协议的处理,特别是对于64bit以上长索引的查表处理难以实现。使用网络处理器的实现信令分发处理单元,在实现信令流的线速转发的同时,需要以适当方式将信令流以负荷分担方式分发到多个信令处理模块进行上层处理,这样需要设计并实现一种高效、灵活、适用性好的分发规则保证系统的整体性能和稳定性。一个信令端点对应一个(IP+PORT)二元组,本端和对端两个端点的IP和PORT信息共同确定一条连接(对于SCTP称为偶联)。如果简单的以连接发起端的(IP+PORT)或知名端口号作为分发依据,难以满足本端网络设备作为客户端或服务端与其他厂商设备对接多种组网方式时的流量分担要求,同时考虑对单连接(偶联)多IP的支持,此时必须实现根据三元组或四元组48bit以上索引的精确匹配算法快速进行表查找并转发IP报文。对于通用处理器而言,如果根据接收消息中的源IP地址、源端口、目的IP地址、目的端口这四个字段来判断并分发到相应的信令处理模块进行上层协议适配和处理,查表过程的延时开销很大,当有大量信令IP报文要处理时,将因为处理器负荷过高导致大量丢包甚至整个系统崩溃。目前一般采用的替代分发方式是取接收消息中的源IP地址、源端口、目的IP地址、目的端口四元组中的一个或两个作为索引进行信令处理模块的查找匹配,缺点是实际组网时,两个交换局之间建立多条连接,通常如果连接的建立可能会使用用户协议的默认端口号,尤其对于Server一侧,对外公开IP和熟知端口号用来建立连接,这时无法做到将多条连接分别配置在不同的信令处理模块以达到信令流的负荷分担和可靠传输,故这种分发方式虽然效率较高,但对于灵活组网和数据灵活配置都存在一定的局限性;另一种方法是利用某种上层协议的特性来唯一的标识一个连接,例如根据SCTP协议的验证标签字段(TAG字段),由两个对接的系统在连接建立时消息交互过程中相互确定,以后在该连接上传递的所有消息,都要携带该TAG字段,由此实现SCTP消息的分发,这种分发方式利用单一协议的特性规避了四元组分发的复杂性,但不能应用于基于其他传输协议的信令流分发。
技术实现思路
本专利技术的目的在于提供一种信令流分发方法及信令分发处理单元,通过利用网络处理器的硬件特性实现长索引精确匹配查找,在不影响性能的前提下实现基于任何传输层协议信令流的快速分发。为了实现上述目的,本专利技术提供了一种信令流分发方法,基于网络处理器实现,用于将控制信令流负荷分发到信令处理模块,其中,包括步骤1,使用所述信令处理模块的连接配置的传输地址四元组信息为原始索引创建哈希索引表和负荷分担表;步骤2,获取IP报文的源IP地址和源端口号、目的IP地址和目的端口号,并分别对所述源IP地址和源端口号、目的IP地址和目的端口号进行硬件哈希运算,根据运算结果取出查表的哈希键值和原始索引,在所述哈希索引表和负荷分担表中查找所述信令处理模块的地址信息;步骤3,根据所述信令处理模块的地址信息分发所述控制信令流。上述的信令流分发方法,其中,所述步骤1之前还包括步骤4,从所述信令处理模块获得所有信令点间连接配置信息及对应的所述信令处理模块地址信息,用于步骤1创建所述哈希索引表和负荷分担表。上述的信令流分发方法,其中,所述步骤1还包括步骤5,连接配置发生更改时,接收新的连接配置消息,并实现对所述负荷分担表的更新。上述的信令流分发方法,其中,所述哈希索引表和负荷分担表使用传输地址四元组信息作为索引。上述的信令流分发方法,其中,所述步骤2具体包括以下步骤步骤21,从外部端口循环接收IP报文,对所述IP报文作MAC、IP首部检查过滤非信令IP报文,然后送入业务IP报文处理队列;步骤22,通过查路由和判断协议类型过滤所述IP报文,然后提取所述源IP地址、目的IP地址、源端口号和目的端口号;步骤23,利用硬件哈希单元分别对所述源IP地址和所述源端口号,所述目的IP地址和所述目的端口号进行两次哈希运算,并对结果异或后得到根据运算结果取出查表的所述哈希键值和原始索引,并根据所述哈希键值和原始索引在所述哈希索引表和负荷分担表中查找所述信令处理模块的地址信息。上述的信令流分发方法,其中,所述步骤23中根据所述哈希键值和原始索引在所述哈希索引表和负荷分担表中查找所述信令处理模块的地址信息具体执行以下操作取所述键值的低16位在64K表中直接定位哈希单元,在原始索引不匹配的情况下继续查next_trieblock指向的哈希单元,使用键值的16-19位在TRIEBLOCK表中直接定位哈希单元,在原始索引不匹配仍然冲突的情况下,查next_collision_node指向的哈希单元,直到找到对应表项或查表失败。上述的信令流分发方法,其中,所述步骤2本文档来自技高网
...

【技术保护点】
一种信令流分发方法,基于网络处理器实现,用于将控制信令流负荷分发到信令处理模块,其特征在于,包括:步骤1,使用所述信令处理模块的连接配置的传输地址四元组信息为原始索引创建哈希索引表和负荷分担表;步骤2,获取IP报文的源IP地 址和源端口号、目的IP地址和目的端口号,并分别对所述源IP地址和源端口号、目的IP地址和目的端口号进行硬件哈希运算,根据运算结果取出查表的哈希键值和原始索引,在所述哈希索引表和负荷分担表中查找所述信令处理模块的地址信息;步骤3,根据 所述信令处理模块的地址信息分发所述控制信令流。

【技术特征摘要】

【专利技术属性】
技术研发人员:范超冯刚郭树波
申请(专利权)人:中兴通讯股份有限公司
类型:发明
国别省市:94[中国|深圳]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1