CN102497430B - 一种分流设备实现***和方法 - Google Patents

一种分流设备实现***和方法 Download PDF

Info

Publication number
CN102497430B
CN102497430B CN201110415126.1A CN201110415126A CN102497430B CN 102497430 B CN102497430 B CN 102497430B CN 201110415126 A CN201110415126 A CN 201110415126A CN 102497430 B CN102497430 B CN 102497430B
Authority
CN
China
Prior art keywords
network interface
buffering area
interface card
contract
project
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
CN201110415126.1A
Other languages
English (en)
Other versions
CN102497430A (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.)
Dawning Information Industry Beijing Co Ltd
Dawning Information Industry Co Ltd
Original Assignee
Dawning Information Industry Beijing 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 Dawning Information Industry Beijing Co Ltd filed Critical Dawning Information Industry Beijing Co Ltd
Priority to CN201110415126.1A priority Critical patent/CN102497430B/zh
Publication of CN102497430A publication Critical patent/CN102497430A/zh
Application granted granted Critical
Publication of CN102497430B publication Critical patent/CN102497430B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明提供一种分流设备实现***和方法,其包括插多块网卡的通用服务器,服务器采用SMP架构,收包在网卡上采用多队列实现,每个网卡对应一个线程发包。一种基于多网卡的汇聚分流方法,使网卡i将hash值按照配置的比例分成m*n份,每份对应一个CPU分配的收包缓冲区,网卡将报文上传到每个缓冲区中;主机每个收发包线程j轮流从每个网卡i的收包缓冲区j*n到(j+1)*n-1中接收报文,并从发包缓冲区j发送出去;对于需要处理的报文,收发包线程将报文提交处理线程处理;对于无需转发的报文,直接丢弃。本发明提供一种基于多网卡的汇聚分流设备和方法,减少了网络带宽使用,同时减少了中间网络设备,降低了用户的投入成本。

Description

一种分流设备实现***和方法
技术领域
本发明属于计算机网络通信领域,具体涉及一种分流设备实现***和方法。
背景技术
本发明解决现有技术中专用的网络汇聚分流设备造价昂贵、功耗过大且不提供计算能力的问题。
现有技术中,实现多根网络流量汇聚之后在进行同源同宿分流功能时,所采用的方案是专用设备。该设备有背板和线卡组成,线卡实现流量接入,背板做数据的汇聚和分流。该方案的缺点是成本太高,且耗电量较大,造成资源浪费。同时,专用设备不提供计算能力,也就是说,如果需要对某些流量进行进一步的处理的话,需要将流量转发到处理机上,不但造成了网络带宽的浪费,也造成了中间网联络设备的浪费。
申请号为20091007660.0的专利公开了“一种多网卡服务器的接入方法和***”以及申请号为20041000011.7的专利公开了“一种基于多网卡的网络设备的数据传输方法和装置”,这两个专利中,都只是涉及到服务器上多网卡的负载均衡或者主备切换等功能,并不涉及流量的汇聚和分发。
发明内容
本发明克服现有技术不足,涉及计算机网卡发包技术。
本发明提供了一种基于多网卡的汇聚分流设备,其包括插多块网卡的通用服务器,服务器采用SMP架构,收包在网卡上采用多队列实现,每个网卡对应一个线程发包。
本发明提供的基于多网卡的汇聚分流设备,每块网卡网口数目不一样。
本发明提供的基于多网卡的汇聚分流设备,对于有m块具有网口数n的网卡构成的***,CPU为每块网卡分配m*n个收包缓冲区和1个发包缓冲区,并启动m个收发包线程,每个线程对应m*n个收包缓冲区和1个发包缓冲区。
本发明提供的基于多网卡的汇聚分流设备,各个网卡实现流量接入,并根据配置计算报文组的hash值,其中,所述报文组是一元组、二元组、三元组、四元组、五元组或者七元组。
本发明提供的基于多网卡的汇聚分流设备,报文七元组分别为源目IP、源目端口、传输层协议、源目mac地址的组合。
本发明提供的基于多网卡的汇聚分流设备,主机每个收发包线程轮流从每个网卡的收包缓冲区中接收报文,并从发包线程对应的发包缓冲区发送出去。
本发明还提供一种基于多网卡的汇聚分流方法,其包括如下步骤:
1)CPU为每块网卡分配m*n个收包缓冲区和1个发包缓冲区,并启动m个收发包线程,每个线程对应m*n个收包缓冲区和1个发包缓冲区。其中m为网卡的块数,n为每个网卡的网口数;
2)每块网卡i对应收包缓冲区0到m*n-1和1个发包缓冲区。网卡i实现流量接入,并根据配置计算报文组的hash值。其中,所述报文组是一元组、二元组、三元组、四元组、五元组或者七元组;i(i=0,1,2…m-1)。
3)网卡i将hash值按照配置的比例分成m*n份,每份对应一个CPU分配的收包缓冲区,网卡将报文上传到每个缓冲区中。
4)主机每个收发包线程j轮流从每个网卡i的收包缓冲区j*n到(j+1)*n-1中接收报文,并从发包缓冲区j发送出去。
5)对于需要处理的报文,收发包线程将报文提交处理线程处理;对于无需转发的报文,直接丢弃。
本发明还提供一种基于多网卡的汇聚分流方法,报文七元组是源目IP、源目端口、传输层协议、源目mac地址的组合。
本发明还提供一种基于多网卡的汇聚分流方法,m为3,n为4。
与现有技术相比,本发明的有益效果在于:
1)通用服务器的价格比专用分流设备低很多;
2)该方案可以对流量进行进一步处理,而不需要将流量转发到其他处理机处理,减少了网络带宽使用,同时减少了中间网络设备,降低了用户的投入成本。
附图说明
图1为本发明的结构示意图。
具体实施方式
本发明提出一种基于多网卡的汇聚分流设备的实现方法。该方法是采用通用服务器插多块网卡实现,同时考虑服务器的SMP架构,优化网卡的收发包接口,使得收包在网卡上采用多队列实现,发包也每个网卡对应一个线程,尽量避免线程之间数据交互,影响性能。对于有m块具有网口数n(每块网卡网口数目可以不一样)的网卡构成的***,方法具体实现流程如下:
1)CPU为每块网卡分配m*n个收包缓冲区和1个发包缓冲区,并启动m个收发包线程,每个线程对应m*n个收包缓冲区和1个发包缓冲区。
下边以一块网卡i(i=0,1,2…m-1)为例:
2)每块网卡i对应收包缓冲区0到m*n-1和1个发包缓冲区。网卡i实现流量接入,并根据配置计算报文七元组hash值(源目IP、源目端口、协议、源目mac地址的组合)。
3)网卡i将hash值按照配置的比例分成m*n份,每份对应一个CPU分配的收包缓冲区,网卡将报文上传到每个缓冲区中。
4)主机每个收发包线程j轮流从每个网卡i的收包缓冲区j*n到(j+1)*n-1中接收报文,并从发包缓冲区j发送出去。
5)对于需要处理的报文,收发包线程将报文提交处理线程处理;对于无需转发的报文,直接丢弃。
图1是本发明以3块网卡,每块网卡4个端口为例的结构示意图。
以上实施例仅用以说明本发明的技术方案而非对其限制,尽管参照上述实施例对本发明进行了详细的说明,所述领域的普通技术人员应当理解:依然可以对本发明的具体实施方式进行修改或者同等替换,而未脱离本发明精神和范围的任何修改或者等同替换,其均应涵盖在本发明的权利要求范围当中。

Claims (4)

1.一种基于多网卡的汇聚分流方法,其包括如下步骤:
1)CPU为每块网卡分配m*n个收包缓冲区和1个发包缓冲区,并启动m个收发包线程,每个线程对应m*n个收包缓冲区和1个发包缓冲区;其中m为网卡的块数,n为每个网卡的网口数;
2)每块网卡i对应收包缓冲区0到m*n-1和1个发包缓冲区;网卡i实现流量接入,并根据配置计算报文组的hash值;其中,所述报文组是一元组、二元组、三元组、四元组、五元组或者七元组;i=0,1,2…m-1;
3)网卡i将hash值按照配置的比例分成m*n份,每份对应一个CPU分配的收包缓冲区,网卡将报文上传到每个缓冲区中;
4)主机的每个收发包线程j轮流从每个网卡i的收包缓冲区j*n到(j+1)*n-1中接收报文,并从发包缓冲区j发送出去;
5)对于需要处理的报文,收发包线程将报文提交处理线程处理;对于无需转发的报文,直接丢弃;
采用所述方法的一种基于多网卡的汇聚分流设备,其包括插多块网卡的通用服务器,服务器采用SMP架构,收包在网卡上采用多队列实现,每个网卡对应一个线程发包;
每块网卡网口数目不一样;
对于有m块具有网口数n的网卡构成的***,CPU为每块网卡分配m*n个收包缓冲区和1个发包缓冲区,并启动m个收发包线程,每个线程对应m*n个收包缓冲区和1个发包缓冲区。
2.如权利要求1所述的方法,其特征在于,报文七元组为源目IP、源目端口、传输层协议和源目mac地址的组合。
3.如权利要求1-2任一项所述的方法,其特征在于,主机的每个收发包线程轮流从每个网卡的收包缓冲区中接收报文,并从发包线程对应的发包缓冲区发送出去。
4.如权利要求1所述的方法,其特征在于,m为3,n为4。
CN201110415126.1A 2011-12-13 2011-12-13 一种分流设备实现***和方法 Active CN102497430B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201110415126.1A CN102497430B (zh) 2011-12-13 2011-12-13 一种分流设备实现***和方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110415126.1A CN102497430B (zh) 2011-12-13 2011-12-13 一种分流设备实现***和方法

Publications (2)

Publication Number Publication Date
CN102497430A CN102497430A (zh) 2012-06-13
CN102497430B true CN102497430B (zh) 2014-12-03

Family

ID=46189215

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110415126.1A Active CN102497430B (zh) 2011-12-13 2011-12-13 一种分流设备实现***和方法

Country Status (1)

Country Link
CN (1) CN102497430B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103516749A (zh) * 2012-06-21 2014-01-15 浙江大华技术股份有限公司 一种采用多卡发送数据的方法以及装置
CN104734993B (zh) * 2013-12-24 2018-05-18 杭州华为数字技术有限公司 数据分流方法及分流器
CN105337888B (zh) * 2015-11-18 2018-12-07 华为技术有限公司 基于多核转发的负载均衡方法、装置及虚拟交换机
CN112788158A (zh) * 2020-12-25 2021-05-11 互联网域名***北京市工程研究中心有限公司 基于dpdk的dns发包***
CN114884882B (zh) * 2022-06-16 2023-11-21 深圳星云智联科技有限公司 一种流量可视化方法、装置、设备及存储介质
CN116094840B (zh) * 2023-04-07 2023-06-16 珠海星云智联科技有限公司 一种智能网卡和汇聚分流***

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101488918A (zh) * 2009-01-09 2009-07-22 杭州华三通信技术有限公司 一种多网卡服务器的接入方法和***
CN101540727A (zh) * 2009-05-05 2009-09-23 曙光信息产业(北京)有限公司 一种ip报文的硬件分流方法
CN102098215A (zh) * 2010-12-17 2011-06-15 天津曙光计算机产业有限公司 一种多应用收包的优先级管理方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050002389A1 (en) * 2003-07-02 2005-01-06 Intel Corporation Method, system, and program for processing a packet to transmit on a network in a host system including a plurality of network adaptors
CN100452753C (zh) * 2006-04-28 2009-01-14 腾讯科技(深圳)有限公司 一种数据传输***及方法
CN101442446A (zh) * 2007-11-20 2009-05-27 英业达股份有限公司 服务器及服务器群组
CN201813388U (zh) * 2010-07-07 2011-04-27 南京烽火星空通信发展有限公司 线速分流设备

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101488918A (zh) * 2009-01-09 2009-07-22 杭州华三通信技术有限公司 一种多网卡服务器的接入方法和***
CN101540727A (zh) * 2009-05-05 2009-09-23 曙光信息产业(北京)有限公司 一种ip报文的硬件分流方法
CN102098215A (zh) * 2010-12-17 2011-06-15 天津曙光计算机产业有限公司 一种多应用收包的优先级管理方法

Also Published As

Publication number Publication date
CN102497430A (zh) 2012-06-13

Similar Documents

Publication Publication Date Title
CN102497430B (zh) 一种分流设备实现***和方法
WO2021164398A1 (zh) 报文处理***、方法、机器可读存储介质以及程序产品
CN109787921B (zh) Cdn带宽调度方法、采集及调度服务器和存储介质
CN108476177B (zh) 支持用于处理功能可扩展性的数据平面的装置及相关方法
US10313768B2 (en) Data scheduling and switching method, apparatus, system
US20130287038A1 (en) Synchronization of traffic multiplexing in link aggregation
WO2018165009A1 (en) Vertical packet aggregation using a distributed network
WO2015027739A1 (zh) 一种sdn中流表下发的方法和***、of控制器和of交换机
EP2208322B1 (en) A grid router
WO2018219100A1 (zh) 数据传输的方法和设备
CN103095600A (zh) 一种基于Trill网络的负载均衡的方法及路由设备
US11070386B2 (en) Controlling an aggregate number of unique PIM joins in one or more PIM join/prune messages received from a PIM neighbor
US20130003748A1 (en) Relay apparatus and relay control method
US9118494B2 (en) Method for group-based multicast with non-uniform receivers
WO2021203985A1 (zh) 一种拥塞信息同步的方法以及相关装置
Das et al. Broadcom smart-buffer technology in data center switches for cost-effective performance scaling of cloud applications
US20240080276A1 (en) Path selection for packet transmission
CN107317759A (zh) 一种网卡的线程级动态均衡调度方法
US9160665B2 (en) Method and system of transmission management in a network
CN104009928A (zh) 一种对数据流进行限速的方法及装置
US20160241462A1 (en) Data distribution method, data aggregation method, and related apparatuses
WO2016008399A1 (en) Flow control
CN106301844A (zh) 一种实现日志传输的方法及装置
CN107820218B (zh) 报文传输方式的设定方法及设备
CN102035743A (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
C14 Grant of patent or utility model
GR01 Patent grant
C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20151112

Address after: 100084 Beijing Haidian District City Mill Street No. 64

Patentee after: Dawning Information Industry (Beijing) Co.,Ltd.

Patentee after: WUXI CITY CLOUD COMPUTING CENTER CO.,LTD.

Address before: 100084 Beijing Haidian District City Mill Street No. 64

Patentee before: Dawning Information Industry (Beijing) Co.,Ltd.

TR01 Transfer of patent right

Effective date of registration: 20220118

Address after: 100193 Shuguang building, Zhongguancun Software Park, 8 Dongbeiwang West Road, Haidian District, Beijing

Patentee after: Dawning Information Industry (Beijing) Co.,Ltd.

Address before: 100084 Beijing Haidian District City Mill Street No. 64

Patentee before: Dawning Information Industry (Beijing) Co.,Ltd.

Patentee before: WUXI CITY CLOUD COMPUTING CENTER CO.,LTD.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20220729

Address after: 100193 No. 36 Building, No. 8 Hospital, Wangxi Road, Haidian District, Beijing

Patentee after: Dawning Information Industry (Beijing) Co.,Ltd.

Patentee after: DAWNING INFORMATION INDUSTRY Co.,Ltd.

Address before: 100193 Shuguang building, Zhongguancun Software Park, 8 Dongbeiwang West Road, Haidian District, Beijing

Patentee before: Dawning Information Industry (Beijing) Co.,Ltd.

TR01 Transfer of patent right