嵌入式多协议移动网络数据采集探针设备制造技术

技术编号:9599424 阅读:203 留言:0更新日期:2014-01-23 04:11
本发明专利技术公开了一种嵌入式多协议移动网络数据采集探针设备,包括数据包并行分配处理模块,所述数据包并行分配处理模块连接若干CPU,各CPU都独立配有TCP协议栈模块,各TCP协议栈模块都独立配有应用层协议模块,各CPU都独立连接数据采集模块;所述数据包并行分配处理模块包括:报文收取子模块,报文分流子模块,报文重处理子模块。本发明专利技术提供的嵌入式多协议移动网络数据采集探针设备,其能对数据包进行并行分配处理。

【技术实现步骤摘要】
嵌入式多协议移动网络数据采集探针设备
本专利技术涉及嵌入式多协议移动网络数据采集探针设备。
技术介绍
在实际环境中,未经优化的linux或window都是单TCP协议栈,也就是在多核收取报文时,公用同一个协议栈,这样在临界区要存在很多锁,系统性能受制于互斥,即使增加硬件成本,也不能显著提高系统性能。共用同一个IP/TCP协议栈,多个CPU同时收包,在临界区内会发生互斥,高负载的情况下会出现CPU等待,多核并行处理能力大打折扣。同一个网卡产生的报文会被不同的CPU接收,丧失CPU亲和性,这样同一条流的数据会跨越CPU,CPU会不断冲刷cache,单个CPU效率只能发挥到原来的一半。
技术实现思路
本专利技术的目的在于提供一种嵌入式多协议移动网络数据采集探针设备,其能对数据包进行并行分配处理。为实现上述目的,本专利技术的技术方案是设计一种嵌入式多协议移动网络数据采集探针设备,包括数据包并行分配处理模块,所述数据包并行分配处理模块连接若干CPU,各CPU都独立配有TCP协议栈模块,各TCP协议栈模块都独立配有应用层协议模块,各CPU都独立连接数据采集模块;所述数据包并行分配处理模块包括:报文收取子模块,用于收取IP报文,并裁判网络负载,轻负载时候使用中断处理,重负载时候使用轮询处理;报文分流子模块,用于预抽取IP报文中的源/目地址和源/目端口及协议,并以IP报文的源/目地址和源/目端口及协议作hash索引,把该IP报文挂入hash索引所指向CPU的IP报文队列;报文重处理子模块,用于处理CPU的IP报文队列,触发该CPU上软中断,由该CPU做进一步处理。优选的,所述嵌入式多协议移动网络数据采集探针设备分布式部署在移动运营商IP网内的SGSN和GGSN之间。优选的,所述应用层协议模块为http协议模块、SMTP协议模块、POP3协议模块或FTP协议模块。在实际应用的以太网内,绝大多数都是IP报文。依据这个特点,采用由CPU0从网卡收到报文,以IP报文的源/目地址,和源/目端口,及协议(五元组),作hash索引(该索引具有源目的无关性),由该hash索引定位有相同源/目地址和源/目端口及协议的数据包,视为一个数据“流”,并把一条流,指向到同一个CPU内核处理。因为一个流的所有报文,具有相同的hash索引,所以一条流的所有数据包必然能分到同一个CPU上,这样增加了CPU亲和性,充分利用多核CPU架构中每个CPU拥有独立cache的特性,为每个CPU上运行独立协议栈提供数据支持。同时,在每一个CPU上运行多个独立协议栈,减少报文间的互斥操作,充分利用多核CPU的特点,处理性能与CPU个数类线性增长。此外,分配报文的CPU,轻负载时候使用中断处理,重负载时候使用轮询处理,增加CPU的有效利用率。所述嵌入式多协议移动网络数据采集探针设备分布式部署在移动运营商IP网内的SGSN和GGSN之间,从而具备实时采集多种网络应用流量数据的能力,支持分布式采集,集中式管理的应用模式。能够高效处理并关联移动网及互联网的数据,如移动用户的手机/智能终端的型号/提供服务的运营商/接入点,使用的互联网应用/使用时长/流量等等,并可将处理后数据信息输出至第三方的智能分析管理系统。附图说明图1是传统Linux系统架构下的示意图;图2是本专利技术的示意图。具体实施方式如图1所示,为传统Linux系统架构下的示意图,其有如下两个问题:共用同一个IP/TCP协议栈,多个CPU同时收包,在临界区内会发生互斥,高负载的情况下会出现CPU等待,多核并行处理能力大打折扣。同一个网卡产生的报文会被不同的CPU接收,丧失CPU亲和性,这样同一条流的数据会跨越CPU,CPU会不断冲刷cache,单个CPU效率只能发挥到原来的一半。下面结合附图和实施例,对本专利技术的具体实施方式作进一步描述。以下实施例仅用于更加清楚地说明本专利技术的技术方案,而不能以此来限制本专利技术的保护范围。本专利技术具体实施的技术方案是:如图2所示,一种嵌入式多协议移动网络数据采集探针设备,包括数据包并行分配处理模块,所述数据包并行分配处理模块连接若干CPU,各CPU都独立配有TCP协议栈模块,各TCP协议栈模块都独立配有应用层协议模块,各CPU都独立连接数据采集模块;所述数据包并行分配处理模块包括:报文收取子模块,用于收取IP报文(如由网卡发来的IP报文),并裁判网络负载,轻负载时候使用中断处理,重负载时候使用轮询处理;报文分流子模块,用于预抽取IP报文中的源/目地址和源/目端口及协议,并以IP报文的源/目地址和源/目端口及协议作hash索引,把该IP报文挂入hash索引所指向CPU的IP报文队列;报文重处理子模块,用于处理CPU的IP报文队列,触发该CPU上软中断,由该CPU做进一步处理。所述应用层协议模块为http协议模块、SMTP协议模块、POP3协议模块或FTP协议模块。在实际应用的以太网内,绝大多数都是IP报文。依据这个特点,采用由CPU0从网卡收到报文,以IP报文的源/目地址,和源/目端口,及协议(五元组),作hash索引(该索引具有源目的无关性),由该hash索引定位有相同源/目地址和源/目端口及协议的数据包,视为一个数据“流”,并把一条流,指向到同一个CPU内核处理。因为一个流的所有报文,具有相同的hash索引,所以一条流的所有数据包必然能分到同一个CPU上,这样增加了CPU亲和性,充分利用多核CPU架构中每个CPU拥有独立cache的特性,为每个CPU上运行独立协议栈提供数据支持。同时,在每一个CPU上运行多个独立协议栈,减少报文间的互斥操作,充分利用多核CPU的特点,处理性能与CPU个数类线性增长。此外,分配报文的CPU,轻负载时候使用中断处理,重负载时候使用轮询处理,增加CPU的有效利用率。所述嵌入式多协议移动网络数据采集探针设备可分布式部署在移动运营商IP网内的SGSN和GGSN之间,从而具备实时采集多种网络应用流量数据的能力,支持分布式采集,集中式管理的应用模式。能够高效处理并关联移动网及互联网的数据,如移动用户的手机/智能终端的型号/提供服务的运营商/接入点,使用的互联网应用/使用时长/流量等等,并可将处理后数据信息输出至第三方的智能分析管理系统。以上所述仅是本专利技术的优选实施方式,应当指出,对于本
的普通技术人员来说,在不脱离本专利技术技术原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本专利技术的保护范围。本文档来自技高网
...
嵌入式多协议移动网络数据采集探针设备

【技术保护点】
嵌入式多协议移动网络数据采集探针设备,其特征在于,包括数据包并行分配处理模块,所述数据包并行分配处理模块连接若干CPU,各CPU都独立配有TCP协议栈模块,各TCP协议栈模块都独立配有应用层协议模块,各CPU都独立连接数据采集模块;所述数据包并行分配处理模块包括:报文收取子模块,用于收取IP报文,并裁判网络负载,轻负载时候使用中断处理,重负载时候使用轮询处理;报文分流子模块,用于预抽取IP报文中的源/目地址和源/目端口及协议,并以IP报文的源/目地址和源/目端口及协议作ha?sh索引,把该IP报文挂入hash索引所指向CPU的IP报文队列;报文重处理子模块,用于处理CPU的IP报文队列,触发该CPU上软中断。

【技术特征摘要】
1.嵌入式多协议移动网络数据采集探针设备,其特征在于,包括数据包并行分配处理模块,所述数据包并行分配处理模块连接若干CPU,各CPU都独立配有TCP协议栈模块,各TCP协议栈模块都独立配有应用层协议模块,各CPU都独立连接数据采集模块;所述数据包并行分配处理模块包括:报文收取子模块,用于收取IP报文,并裁判网络负载,轻负载时候使用中断处理,重负载时候使用轮询处理;报文分流子模块,用于预抽取IP报文中的源地址、目的地址、源端口、目的端口和协议,并以IP报文的源地址、目的地址、源端口、目...

【专利技术属性】
技术研发人员:周菁郑国权
申请(专利权)人:苏州斯凯迪网络科技有限公司
类型:发明
国别省市:

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

1