CN103067294B - 多下一跳转发路由器中基于流保序的数据流均衡处理的方法 - Google Patents

多下一跳转发路由器中基于流保序的数据流均衡处理的方法 Download PDF

Info

Publication number
CN103067294B
CN103067294B CN201210593572.6A CN201210593572A CN103067294B CN 103067294 B CN103067294 B CN 103067294B CN 201210593572 A CN201210593572 A CN 201210593572A CN 103067294 B CN103067294 B CN 103067294B
Authority
CN
China
Prior art keywords
stream
flow
list item
business
current
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.)
Expired - Fee Related
Application number
CN201210593572.6A
Other languages
English (en)
Other versions
CN103067294A (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.)
HUANYU MOBILE SCIENCE-TECHNOLOGY Co Ltd DALIAN
PLA Information Engineering University
Original Assignee
HUANYU MOBILE SCIENCE-TECHNOLOGY Co Ltd DALIAN
PLA Information Engineering University
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 HUANYU MOBILE SCIENCE-TECHNOLOGY Co Ltd DALIAN, PLA Information Engineering University filed Critical HUANYU MOBILE SCIENCE-TECHNOLOGY Co Ltd DALIAN
Priority to CN201210593572.6A priority Critical patent/CN103067294B/zh
Publication of CN103067294A publication Critical patent/CN103067294A/zh
Application granted granted Critical
Publication of CN103067294B publication Critical patent/CN103067294B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种多下一跳转发路由器中基于流保序的数据流均衡处理的方法,具有如下步骤:S100.获取业务流数据报文,进行TCP流和UDP流分类;在SDRAM中建立业务流流管理表项;S200.对TCP流进行逐包解析,得出每个包的至少包含五元组和TCP标志的信息;记录该包的到达时间;S300.对所述TCP流的报文数据的五元组扩展成128位带入编码器进行Hash计算,得出流ID;S400.根据步骤S300中得出的当前业务流的流ID,在流管理表中进行匹配查找:判定当前流ID是否有效;S500.若当前流ID有效,则进一步比对当前业务流的五元组信息和业务流管理表项存储的业务信息:S500a.若相等,表示命中,将业务流按业务流管理表项中的路径信息转发输出。

Description

多下一跳转发路由器中基于流保序的数据流均衡处理的方法
技术领域
本发明涉及一种多下一跳转发路由器中基于流保序的数据流均衡处理的方法。涉及专利分类号中H04电通信技术H04L数字信息的传输,例如电报通信H04L12/00数据交换网络H04L12/54存储转发交换系统H04L12/56分组交换系统。
背景技术
伴随着互联网规模的飞速发展,各种新型网络业务不断涌现,网络用户数目不断攀升。与此同时,EverythingoverIP的思想推动了各种异构网络向互联网的融合,互联网已经成为各种通信基础设施的同一平台,承载业务越来越多。新兴业务迅猛增长导致了对网络带宽的需求越来越大,但仅仅依靠网络基础设施的增加无法从根本上解决网络资源需求的问题。另一方面网络资源利用率在空间分布上的不均衡造成全网范围内的贷款使用效率更加抵消。在局部网络资源链路成为人点链路的同时,还有大量链路产期处于空闲状态。通过分析发现单下一跳最有路径数据传输时当前网络资源利用不均衡、产生局部拥塞的重要根源。
多路径并行数据传输允许多条路径参与数据的传送,有效聚合了网络带宽,最终使得网络中各链路资源利用率趋于均衡,减少网络拥塞放生的概率,提高网络的安全性和可用性。当前多路径路由算法按其协议类型主要分为两类:
一、基于链路状态ECMP算法将报文路由到想的代价的多条路径上,MPA算法进找到满足条件的五环路由的一个子集,MPDA/QMPDA考虑了拓扑变化和链路故障的情况
二、基于距离矢量的DSPA用于减小传输时延,CRA用于最大化吞吐量,MDVA使用了DBF算法,MPATH使用了距离响亮算法并结合倒数第二条确认机制。
上述提到的多路径路由是从端到端的数据传输角度来讲的,端到端之间建立了多条路由;而多下一跳路由是从单个路由节点数据传输来讲的,每个路由节点通过多个下一跳路径传输数据。
发明内容
针对以上问题的提出,本发明提出了一种多下一跳转发路由器中基于流保序的数据流均衡处理的方法,具有如下步骤:
S100.获取业务流数据报文,进行TCP流和UDP流分类;在SDRAM中建立业务流流管理表项;
S200.对TCP流进行逐包解析,得出每个包的至少包含五元组和TCP标志的信息;记录该包的到达时间;
S300.对所述TCP流的报文数据的五元组扩展成128位带入编码器进行Hash计算,得出当前TCP流的流ID;
S400.根据步骤S300中得出的当前业务流的流ID,在流管理表中进行匹配查找:判定当前流ID是否有效;
S500.若当前流ID有效,则进一步比对当前业务流的五元组信息和业务流管理表项存储的业务信息:
S500a.若相等,表示命中,将业务流按业务流管理表项中的路径信息转发输出;
S500b.若不相等,表示未命中,按下一流号在SDRAM中继续寻址,直到五元组信息和业务流管理表项存储的业务信息一致为止;
S600.若当前流号无效,则选择当前负载最轻的链路输出当前业务流。
所述流管理表项中至少包含:流五元组、路径、。下一流号地址和有效位四个属性空间,对经过的报文数据进行上述四个属性的记录。
所述流管理表项中存储的每一条表项均有一个生存周期:当任意表项存储时间达到生存周期时,将该表项有效位清零。
所述步骤S300具体算法如下:
已知序列P的CRC32哈希运算的结果为A[31:0],8比特序列Q([q7,q6,…q0])的CRC32哈希运算的结果为Y[31:0],而序列A[31:24]的CRC32哈希运算的结果为X[31:0];
则拓展序列{P,Q}的CRC32哈希运算的结果为{Y[31:24]+X[31:24]+A[23:16],Y[23:16]+X[23:16]+A[15:8],Y[15:8]+X[15:8]+A[7:0],Y[7:0]+X[7:0]};
上式中的符号“+”表示模2运算,符号{,}表示将两个序列链接起来;进行匹配查找。
所述步骤S600中,路径的选择计算由FPGA内的distributedram承担。
所述步骤S600还包括:S601.将TCP报文数据流表项写入当前SDRAM的位置,将其有效位置为0。
由于采用了上述技术方案,本发明所公开的多下一跳转发路由器中基于流保续的数据流均衡处理的方法,为保证报文的顺序到达,采用了基于流的调度机制,为了快速查找流,采用hash存储,为减少运算时间,充分利用FPGA,采用了128位并行CRC32级联结构的hash运算。
附图说明
为了更清楚的说明本发明的实施例或现有技术的技术方案,下面将对实施例或现有技术描述中所需要使用的附图做一简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施提供系统模块图:
图2为本发明实施例提供的一种基于流保序的多下一均路由均衡处理流程图;
图3为本发明实施例提供的SDAM表项图;
图4为本发明实施例提供的128位并行CRC32级联结构编码器图;
图5为本发明实施例提供的端口/链路负载统计结构;
具体实施方式
为使本发明的实施例的目的、技术方案和优点更加清楚,下面结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚完整的描述:
如图1-图5所示:
一种多下一跳转发路由器中基于流保序的数据流均衡处理的方法,具有如下步骤:
S100.获取业务流数据报文,进行TCP流和UDP流分类;在DDRIISDRAM中建立业务流管理表项;所述业务流管理表项中至少包含:流五元组、路径、。下一流号地址和有效位四个属性空间,对经过的报文数据进行上述四个属性的记录。
进一步的,所述流管理表项中存储的每一条表项均有一个生存周期:当任意表项存储时间达到生存周期时,将该表项有效位清零。
S200.对TCP流进行逐包解析,得出每个包的至少包含五元组和TCP标志;记录该包的到达时间。
S300.对所述TCP流的报文数据的五元组扩展成128位带入编码器进行Hash计算,得出流ID。对于五元组信息进行128位CRC计算,128位CRC计算可在8位并行CRC32编码器基础上扩展,得到报文流ID,hash运算基于FPGA来实现,FPGA采用的是Xilinx[104]XC5VLX110;
扩展算法如下:已知序列P的CRC32哈希运算的结果为A[31:0],8比特序列Q([q7,q6,…q0])的CRC32哈希运算的结果为Y[31:0],而序列A[31:24]的CRC32哈希运算的结果为X[31:0]。那么拓展序列{P,Q}的CRC32哈希运算的结果为{Y[31:24]+X[31:24]+A[23:16],Y[23:16]+X[23:16]+A[15:8],Y[15:8]+X[15:8]+A[7:0],Y[7:0]+X[7:0]}。上式中的符号“+”表示模2运算,符号{,}表示将两个序列链接起来;进行匹配查找。
S400.根据步骤S300中得出的当前业务流的流ID,在流管理表中进行匹配查找:找到DDRIISDRAM中存储的流表项,如图2所示,在DDRIISDRAM芯片中,DDRII选用的是MT16HTF51264HZ,容量为4GB。
S500.若当前流ID有效,查找的过程中,先看所述业务流表项的有效位指示,若为“1”,表示有效。然后进一步比对当前业务流的五元组信息和业务流管理表项存储的业务信息。
S500a.若相等,表示命中,将业务流按业务流管理表项中的路径信息转发输出;
S500b.若不相等,表示未命中,表明哈希冲突存在,按下一业务流流号在SDRAM(即业务流表项中)中继续寻址,直到五元组信息和业务流管理表项存储的业务信息一致为止。
S600.若当前流号无效,则选择当前负载最轻的链路输出当前业务流。
将报文数据输入端口/链路负载统计结构中,输出结果为最轻负载链路路径。统计结构是利用FPGA内的distributedram资源设计的下一跳端口负载统计结构。和FPGA内的Slice资源和BlockRAM资源的高利用率相比,distributedram资源经常处于闲置状态,往往被设计人员所忽视。通过这样的统计结构设计,可以平衡FPGA片内的资源使用,为输出端口的判决提供帮助。统计结构如图4所示。
步骤S600还包括:S601.将TCP报文数据流表项写入当前SDRAM的位置,将其有效位置为0。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,根据本发明的技术方案及其发明构思加以等同替换或改变,都应涵盖在本发明的保护范围之内。

Claims (5)

1.一种多下一跳转发路由器中基于流保序的数据流均衡处理的方法,具有如下步骤:
S100.获取业务流数据报文,进行TCP流和UDP流分类;在SDRAM中建立业务流流管理表项;
S200.对TCP流进行逐包解析,得出每个包的至少包含五元组和TCP标志的信息;记录该包的到达时间;
S300.对所述TCP流的报文数据的五元组扩展成128位带入编码器进行Hash计算,得出当前TCP流的流ID;
S400.根据步骤S300中得出的当前业务流的流ID,在流管理表中进行匹配查找:判定当前流ID是否有效;
S500.若当前流ID有效,则进一步比对当前业务流的五元组信息和业务流管理表项存储的业务信息:
S500a.若相等,表示命中,将业务流按业务流管理表项中的路径信息转发输出;
S500b.若不相等,表示未命中,按下一流号在SDRAM中继续寻址,直到五元组信息和业务流管理表项存储的业务信息一致为止;
S600.若当前流号无效,则选择当前负载最轻的链路输出当前业务流;
所述步骤S300具体算法如下:
已知序列P的CRC32哈希运算的结果为A[31:0],8比特序列Q([q7,q6,…q0])的CRC32哈希运算的结果为Y[31:0],而序列A[31:24]的CRC32哈希运算的结果为X[31:0];
则拓展序列{P,Q}的CRC32哈希运算的结果为{Y[31:24]+X[31:24]+A[23:16],Y[23:16]+X[23:16]+A[15:8],Y[15:8]+X[15:8]+A[7:0],Y[7:0]+X[7:0]};
上式中的符号“+”表示模2运算,符号{,}表示将两个序列链接起来;进行匹配查找。
2.根据权利要求1所述的多下一跳转发路由器中基于流保序的数据流均衡处理的方法,其特征还在于:所述流管理表项中至少包含:流五元组、路径、下一流号地址和有效位四个属性空间,对经过的报文数据进行上述四个属性的记录。
3.根据权利要求2所述的多下一跳转发路由器中基于流保序的数据流均衡处理的方法,其特征还在于:所述流管理表项中存储的每一条表项均有一个生存周期:当任意表项存储时间达到生存周期时,将该表项有效位清零。
4.根据权利要求1所述的多下一跳转发路由器中基于流保序的数据流均衡处理的方法,其特征还在于:所述步骤S600中,路径的选择计算由FPGA内的distributedram承担。
5.根据权利要求1所述的多下一跳转发路由器中基于流保序的数据流均衡处理的方法,其特征还在于:所述步骤S600还包括:S601.将TCP报文数据流表项写入当前SDRAM的位置,将其有效位置为0。
CN201210593572.6A 2012-12-30 2012-12-30 多下一跳转发路由器中基于流保序的数据流均衡处理的方法 Expired - Fee Related CN103067294B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210593572.6A CN103067294B (zh) 2012-12-30 2012-12-30 多下一跳转发路由器中基于流保序的数据流均衡处理的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210593572.6A CN103067294B (zh) 2012-12-30 2012-12-30 多下一跳转发路由器中基于流保序的数据流均衡处理的方法

Publications (2)

Publication Number Publication Date
CN103067294A CN103067294A (zh) 2013-04-24
CN103067294B true CN103067294B (zh) 2015-12-23

Family

ID=48109762

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210593572.6A Expired - Fee Related CN103067294B (zh) 2012-12-30 2012-12-30 多下一跳转发路由器中基于流保序的数据流均衡处理的方法

Country Status (1)

Country Link
CN (1) CN103067294B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015010307A1 (zh) 2013-07-25 2015-01-29 华为技术有限公司 业务路径分配方法、路由器和业务执行实体
CN103401801A (zh) * 2013-08-07 2013-11-20 盛科网络(苏州)有限公司 动态负载均衡的实现方法及装置
CN104469846B (zh) * 2013-09-18 2018-10-30 华为技术有限公司 一种报文处理方法及设备
CN105871573A (zh) * 2015-01-20 2016-08-17 国家计算机网络与信息安全管理中心 一种报文分析过滤方法及装置
CN105791173B (zh) * 2015-12-30 2019-03-08 北京锐安科技有限公司 一种转发报文的方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1744563A (zh) * 2004-08-31 2006-03-08 杭州华为三康技术有限公司 在以太网交换机上实现策略路由的方法
CN101404612A (zh) * 2008-11-20 2009-04-08 杭州华三通信技术有限公司 实现数据流硬件转发的方法和系统以及网络路由设备
CN101577705A (zh) * 2008-05-08 2009-11-11 北京东华合创数码科技股份有限公司 一种多核并行的网络业务流负载均衡方法及其系统
CN101938399A (zh) * 2009-06-30 2011-01-05 华为技术有限公司 一种路由方法、装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1503548A1 (en) * 2003-08-01 2005-02-02 fg microtec GmbH Distributed Quality of Service Management System

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1744563A (zh) * 2004-08-31 2006-03-08 杭州华为三康技术有限公司 在以太网交换机上实现策略路由的方法
CN101577705A (zh) * 2008-05-08 2009-11-11 北京东华合创数码科技股份有限公司 一种多核并行的网络业务流负载均衡方法及其系统
CN101404612A (zh) * 2008-11-20 2009-04-08 杭州华三通信技术有限公司 实现数据流硬件转发的方法和系统以及网络路由设备
CN101938399A (zh) * 2009-06-30 2011-01-05 华为技术有限公司 一种路由方法、装置

Also Published As

Publication number Publication date
CN103067294A (zh) 2013-04-24

Similar Documents

Publication Publication Date Title
EP2911348B1 (en) Control device discovery in networks having separate control and forwarding devices
CN102594664B (zh) 流量转发方法和装置
JP5935572B2 (ja) 基地局装置及びパケット振分け方法
KR101317969B1 (ko) 링크 애그리게이션 방법 및 노드
CN107959633A (zh) 一种工业实时网络中基于价格机制的多路径负载均衡方法
CN103067294B (zh) 多下一跳转发路由器中基于流保序的数据流均衡处理的方法
CN106533960A (zh) 一种基于Fat‑Tree结构的数据中心网络路由方法
CN107579923A (zh) 一种sdn网络的链路负载均衡方法和sdn控制器
CN109842574B (zh) 一种基于可编程网络技术的多宿主网络路由转发方法
CN106209669A (zh) 面向sdn数据中心网络最大概率路径流调度方法及装置
CN102263697A (zh) 一种聚合链路流量分担方法和装置
Roy et al. An overview of queuing delay and various delay based algorithms in networks
CN109804581A (zh) 协同通信
CN112350949A (zh) 软件定义网络中基于流调度的重路由拥塞控制方法及系统
CN108400936A (zh) 基于mpls的空间信息网络路由方法
CN105471747A (zh) 一种智能路由器选路方法和装置
CN103746886A (zh) 一种FiWi节点和一种FiWi融合组网方法
CN111132236B (zh) 基于改进olsr协议的多无人机自组织网络mpr节点选择方法
Vanamoorthy et al. Congestion-free transient plane (CFTP) using bandwidth sharing during link failures in SDN
Zhu et al. Efficient hybrid multicast approach in wireless data center network
CN109286563A (zh) 一种数据传输的控制方法和装置
Nguyen et al. An evolvable, scalable, and resilient control channel for software defined wireless access networks
CN1787475B (zh) 接入网络系统及移动内部网络中继设备的方法
WO2022052800A1 (zh) 一种通信系统、数据处理方法以及相关设备
Jabbar et al. An Оverview of the Мultipath Тechnologies, their Importance and Types

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
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20151223

Termination date: 20181230