CN102065015B - 一种数据传输方法、网络设备以及装置 - Google Patents
一种数据传输方法、网络设备以及装置 Download PDFInfo
- Publication number
- CN102065015B CN102065015B CN201010613149A CN201010613149A CN102065015B CN 102065015 B CN102065015 B CN 102065015B CN 201010613149 A CN201010613149 A CN 201010613149A CN 201010613149 A CN201010613149 A CN 201010613149A CN 102065015 B CN102065015 B CN 102065015B
- Authority
- CN
- China
- Prior art keywords
- data
- priority
- logic interfacing
- flow control
- transmission rate
- 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
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种数据传输方法、网络设备以及装置,数据传输装置中的数据发送路径通过包括的多个对应第一数据传输速率的第一逻辑接口接收经过交换芯片处理的数据;在多个第一逻辑接口的总数据传输速率大于所述数据发送路径包括的用于向对端数据传输装置传输数据的第二逻辑接口对应的第二数据传输速率时,根据所述第二数据传输速率确定是否丢弃接收的所述数据;其中,所述第二数据传输速率大于第一数据传输速率;在确定不丢弃数据后,将该数据保存至发送数据缓存中,并在发送数据缓存中的数据满足发送条件时,通过第二逻辑接口向所述对端数据传输装置发送所述发送数据缓存中的数据。采用该技术方案,能够提高数据传输的效率。
Description
技术领域
本发明涉及数据传输技术领域,尤其涉及一种数据传输方法、网络设备以及装置。
背景技术
在数据传输领域,数据汇聚或分发是非常常见的处理流程,其中,数据汇聚是指由多个传输速率较低的接口向一个传输速率较高的接口传输数据的过程,数据分发是指由一个传输速率较高的接口向多个传输速率较低的接口传输数据的过程。数据汇聚或分发应用较多的场景是高速以太网接口之间的数据传输过程,目前高速以太网接口是指数据传输速率为40Gbps(Giga bit per second,每秒千兆比特)和100Gbps的以太网接口。
现有的数据汇聚和数据分发方案主要通过TM(Traffic Management,流量管理)模块实现,具体地,通过TM实现的数据传输系统所涉及的基本逻辑架构如图1所示,包括多个分别与第一数据传输速率的以太网接口对应的FIFO(First Input First Output,先入先出)模块、TM模块、与片外缓存连接的缓存控制器以及与第二数据传输速率的以太网接口对应的FIFO模块,其中,第二数据传输速率远大于第一数据传输速率,例如,在高速以太网应用中,第一数据传输速率可以为40Gbps,第二数据传输速率可以为100Gbps。以下以3个数据传输速率为40Gbps的以太网接口向1个数据传输速率为100Gbps的以太网接口传输数据的过程为例,对TM的基本工作原理进行详细说明。
TM模块在接收到3个数据传输速率为40Gbps的以太网接口输入的数据后,主要包括缓存处理过程以及调度发送过程,其中:
缓存处理过程,即将接收的数据通过缓存控制器进行片外缓存。TM模块在将接收的数据通过缓存控制器进行片外缓存之前,首先要对输入的数据进行数据类别识别以及分类,并缓存分类后的数据。具体地,TM模块对数据类别识别以及分类过程如下:
对输入的数据进行数据类别识别,其中包括的数据类别包括对应不同协议的数据类别、对应不同业务的数据类别、对应不同子通道的数据类别以及对应不同物理接口的数据类别等,因此,一个数据流中包括的数据流通常包括的数据类别会很多,如100Mbps的数据流,基本上可以达到几百万个分类。
在识别出数据流中包括的数据类别后,对每个类别的数据添加为该类别的数据生成的类别标识。
调度发送过程,主要对缓存的各类别的数据进行调度发送。缓存中的数据是按照其对应的数据类别进行存储,一般情况下缓存中会存在大量的数据分类,各个数据分类之间形成层次性。例如接口A传输的数据中,包含数据类别为IPV4的数据1和数据类别为IPV6的数据2,那么接口A和数据1、数据2之间就形成了父队列和子队列的层次关系,在进行数据发送时,针对接口A传输的该数据,需要分别调度缓存中数据类别为IPV4的数据1以及数据类别为IPV6的数据2。此处仅以调度2个类别的数据为例说明数据的调度发送过程,然而在实际应用中,缓存中的数据类别数目非常多,如前所述,对于100Mbps的数据量一般能够达到几百万个分类,因此,数据调度过程非常复杂。
综上所述,通过TM模块实现的数据传输过程,需要对数据进行数据类别标识、数据分类缓存以及对缓存的不同数据类别的数据进行多层次调度,处理过程复杂,从而使得数据传输的效率比较低,尤其在百兆或更高数据量的情况下,由于数据分类的类别更多,因此,数据分类、多层次调度等处理对数据传输效率的影响更为明显。
发明内容
有鉴于此,本发明实施例提供一种数据传输方法、网络设备以及装置,采用该技术方案,能够提高数据传输的效率。
本发明实施例通过如下技术方案实现:
根据本发明实施例的一个方面,提供了一种数据传输方法,包括:
数据传输装置中的数据发送路径通过包括的多个对应第一数据传输速率的第一逻辑接口接收经过交换芯片处理的数据;
在多个所述第一逻辑接口的总数据传输速率大于所述数据发送路径包括的用于向对端数据传输装置传输数据的第二逻辑接口对应的第二数据传输速率时,根据所述第二数据传输速率确定是否丢弃接收的所述数据;其中,所述第二数据传输速率大于所述第一数据传输速率;
在确定不丢弃所述数据后,将所述数据保存至发送数据缓存中,并在所述发送数据缓存中的数据满足发送条件时,通过所述第二逻辑接口向所述对端数据传输装置发送所述发送数据缓存中的数据。
根据本发明实施例的另一个方面,还提供了一种数据传输方法,包括:
数据传输装置中的数据接收路径通过包括的对应第二数据传输速率的第四逻辑接口接收对端数据传输装置发送的数据;
将接收的所述数据保存在接收数据缓存中,并在所述接收数据缓存中的数据满足发送条件时,通过所述数据接收路径包括的多个对应第一数据传输速率的第三逻辑接口将所述接收数据缓存中的数据传输给交换芯片进行处理;
其中,所述第一数据传输速率小于所述第二数据传输速率。
根据本发明实施例的另一个方面,还提供了一种数据发送装置,包括:
数据接收单元,用于通过多个对应第一数据传输速率的第一逻辑接口接收经过交换芯片处理的数据;
数据处理单元,用于在多个所述第一逻辑接口的总数据传输速率大于所述数据发送路径包括的用于向对端数据传输装置传输数据的第二逻辑接口对应的第二数据传输速率时,根据所述第二数据传输速率确定是否丢弃接收的所述数据;其中,所述第二数据传输速率大于所述第一数据传输速率;
缓存单元,用于在所述数据处理单元确定不丢弃所述数据后,将所述数据保存至发送数据缓存中;
数据发送单元,用于在所述发送数据缓存中的数据满足发送条件时,通过所述第二逻辑接口向所述对端数据传输装置发送所述发送数据缓存中的数据。
根据本发明实施例的另一个方面,还提供了一种数据接收装置,包括:
数据接收单元,用于通过包括的对应第二数据传输速率的第四逻辑接口接收对端数据传输装置发送的数据;
缓存单元,用于将接收的所述数据保存在接收数据缓存中;
数据发送单元,用于在所述接收数据缓存中的数据满足发送条件时,通过所述数据接收路径包括的多个对应第一数据传输速率的第三逻辑接口将所述接收数据缓存中的数据传输给交换芯片进行处理;其中,所述第一数据传输速率小于所述第二数据传输速率。
根据本发明实施例的另一个方面,还提供了一种网络设备,包括上述的数据接收装置以及数据发送装置。
通过本发明实施例提供的上述至少一个技术方案,数据传输装置中的数据发送路径通过包括的多个对应第一数据传输速率的第一逻辑接口接收经过交换芯片处理的数据,在多个第一逻辑接口的总数据传输速率大于数据发送路径包括的用于向对端数据传输装置传输数据的第二逻辑接口对应的第二数据传输速率时,根据第二数据传输速率确定是否丢弃接收的数据,并在确定不丢弃该数据后,将该数据保存至发送数据缓存中,并在发送数据缓存中的数据满足发送条件时,通过所述第二逻辑接口向所述对端数据传输装置发送所述发送数据缓存中的数据。根据该技术方案实现的数据传输过程,无需对数据进行分类以及多层次调度等复杂处理过程,通过在数据缓存前对数据进行丢弃判断,保证缓存中的数据量能够满足数据发送接口的数据传输速率所能传输的数据量,从而在保证数据正常传输的前提下,相对于现有技术提高了数据传输效率。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:
图1为现有技术提供的通过TM模块实现的数据传输系统示意图;
图2为本发明实施例提供的数据传输装置示意图;
图3为本发明实施例一提供的数据传输方法流程图;
图4为本发明实施例一提供的根据第二数据传输速率确定是否丢弃接收的数据的流程图;
图5为本发明实施例一提供的根据缓存中存储的对应该优先级的数据的数据量确定是否丢弃该数据的流程图;
图6为本发明实施例一提供的根据总数据量的数据传输速率判断是否丢弃该数据的流程图;
图7为本发明实施例二提供的数据传输方法流程图;
图8为本发明实施例二提供的对缓存中的数据进行优化处理的流程图;
图9为本发明实施例三提供的数据发送装置示意图一;
图10为本发明实施例三提供的数据发送装置示意图二;
图11为本发明实施例三提供的数据发送装置示意图三;
图12为本发明实施例四提供的数据接收装置示意图一;
图13为本发明实施例四提供的数据接收装置示意图二;
图14为本发明实施例四提供的数据接收装置示意图三;
图15为本发明实施例五提供的网络设备示意图;
图16为本发明实施例五提供的基于以太网的网络设备示意图;
图17为本发明实施例五提供的Meter子模块的处理流程图;
图18为本发明实施例五提供的RData Buffer子模块的结构示意图;
图19为本发明实施例五提供的数据存储过程示意图。
具体实施方式
为了给出提高数据传输效率的实现方案,本发明实施例提供了一种数据传输方法、网络设备以及装置,以下结合说明书附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。并且在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
本发明实施例提供的技术方案主要应用于数据传输装置内部,如图2所示,该数据传输装置包括数据发送路径201以及数据接收路径202;其中:
数据发送路径201,用于向对端数据传输装置发送数据,主要包括多个第一逻辑接口以及一个第二逻辑接口,该多个第一逻辑接口对应第一数据传输速率,第二逻辑接口对应第二数据传输速率,且第一数据传输速率小于第二数据传输速率;
数据接收路径202,用于接收对端数据传输装置传送的数据,主要包括多个分别与各第一逻辑接口位于同一物理接口的第三逻辑接口以及一个与第二逻辑接口位于同一物理接口的第四逻辑接口。
上述数据传输装置中,数据发送路径201以及数据接收路径202中分别包括的第一逻辑接口以及第三逻辑接口为一个物理接口,数据发送路径201以及数据接收路径202中分别包括的第二逻辑接口以及第四逻辑接口为一个物理接口,通过设定的两个接口逻辑实现数据的接收以及发送。
本发明实施中,交换芯片为用于对数据进行处理的数据处理模块。
实施例一
本发明实施例一提供了一种数据传输方法,该实施例一主要对数据发送路径的具体数据处理过程进行详细说明。基于该数据传输方法实现的数据传输过程,现对于现有技术,提高了数据传输效率。
如图3所示,本发明实施例一提供的数据传输方法,主要包括如下步骤:
步骤301、数据传输装置中的数据发送路径通过多个第一逻辑接口接收经过交换芯片处理的数据。
步骤302、判断该多个第一逻辑接口的总数据传输速率是否大于第二数据传输速率,若是,执行步骤303,若否,执行步骤305。
该步骤302中,第二数据传输速率为该数据发送路径中包括的用于向对端数据传输装置传输数据的第二逻辑接口对应的数据传输速率。
步骤303、根据第二数据传输速率确定是否丢弃接收的数据,若是,则执行步骤304,若否,执行步骤305。
步骤304、丢弃该数据,至此,对当前接收的数据的处理流程结束。
步骤305、将该数据保存至发送数据缓存中,并在发送数据缓存中的数据满足发送条件时,通过第二逻辑接口向对端数据传输装置发送该发送数据缓存的数据,至此,对当前接收的数据的传输流程结束。
该步骤305中,发送数据缓存中的数据满足发送条件即缓存中保存的数据达到一个完整的数据帧。考虑到流量控制的需求,在确定发送数据缓存中的数据是否满足发送条件时,还需要进一步确定第二逻辑接口是否收到对端数据传输装置发送的请求进行流量控制的流控帧,若未收到,则满足发送条件。
本发明实施例一还提供了上述流程中包括的步骤303的具体执行过程,如图4所示,根据第二数据传输速率确定是否丢弃接收的数据,主要包括如下步骤:
步骤401、确定当前接收的数据所对应的优先级。
步骤402、测试对应该优先级的数据的数据传输速率。
步骤403、将测试得到的数据传输速率与设定的与该优先级对应的PIR(Peak Information Rate,峰值信息速率)以及与该优先级对应的CIR(Committed Information Rate,承诺的信息速率)分别进行比较,若大于与该优先级对应的PIR,执行步骤404;若小于与该优先级对应的CIR,执行步骤405;若小于等于与该优先级对应的PIR大于等于与该优先级对应的CIR,执行步骤406。
步骤404、确定丢弃该数据,至此,判断是否丢弃当前数据的流程结束。
步骤405、确定不丢该数据,至此,判断是否丢弃当前数据的流程结束。
步骤406、根据发送数据缓存中存储的对应该优先级的数据的数据量确定是否丢弃该数据,至此,判断是否丢弃当前数据的流程结束。
上述流程中,设定的与各优先级对应的CIR分别小于第二数据传输速率,并且设定的与各优先级对应的CIR总和等于第二数据传输速率。设定的与各优先级对应的PIR根据第二数据传输速率以及缓存大小设定,具体设定值为经验值,且各优先级对应的PIR通常大于CIR。
具体地,上述步骤406中,根据缓存中存储的对应该优先级的数据的数据量确定是否丢弃该数据,如图5所示,主要包括如下步骤:
步骤501、确定发送数据缓存中存储的对应该优先级的数据的数据量。
步骤502、将确定出的数据量与针对对应该优先级的数据设定的数据量上限值以及下限值进行比较,若大于上限值,执行步骤503;若大于等于下限值小于等于上限值,执行步骤504;若小于下限值,执行步骤505。
步骤503、确定丢弃所述数据,至此,流程结束。
步骤504、根据随机早期丢弃算法确定是否丢弃所述数据,至此,流程结束。
步骤505、确定不丢弃该数据,至此,流程结束。
可以通过图4所述的流程对接收的对应不同优先级的数据进行丢弃判断,进一步地,在上述流程的基础上,若根据缓存中存储的对应该优先级的数据的数据量确定不丢弃数据,还进一步根据总数据量的数据传输速率判断是否丢弃该数据,具体流程如图6所示,包括如下步骤:
步骤601、测试总数据量的数据传输速率,其中,总数据量即所有优先级的数据。
步骤602、将测试得到的数据传输速率与设定的与总数据对应的PIR以及与总数据对应的CIR分别进行比较,若大于与总数据对应的PIR,执行步骤603;若小于与总数据对应的CIR,执行步骤604;若小于等于与总数据对应的PIR大于等于与总数据对应的CIR,执行步骤605。
步骤603、确定丢弃该数据,至此,判断是否丢弃当前数据的流程结束。
步骤604、确定不丢该数据,至此,判断是否丢弃当前数据的流程结束。
步骤605、根据发送数据缓存中存储的总数据的数据量确定是否丢弃该数据,至此,判断是否丢弃当前数据的流程结束。
上述步骤605的具体实现过程与上述步骤406的具体实现过程基本一致,即将缓存中的总数据量与针对总数据量设定的数据量上限值以及下限值进行比较,根据比较结果确定是否丢弃该数据。
图6所述流程中,设定的与总数据对应的CIR通常等于第二数据传输速率,并且设定的与总数据对应的PIR根据第二数据传输速率以及缓存大小设定,具体设定值为经验值,且该PIR通常大于CIR。
实际应用中,为了保证数据的正常传输,需要在数据传输过程中进行流量控制,流量控制即当对端数据传输装置发送数据的速度大于当前数据传输装置发送数据的速度时,当前数据传输装置在接收对端数据传输装置发送数据的过程中,可能会出现要求对端数据传输装置控制发送数据的速度或者停止发送数据的情况,从而避免数据丢失。具体地,本发明实施例提供的流量控制机制可以通过基于接口的流量控制或基于优先级的流量控制实现,具体实现过程如下:
一、基于接口流量控制机制:
本发明实施例一提供的技术方案中,基于接口的流量控制机制包括发起基于接口的流量控制以及取消基于接口的流量控制,其中,为缓存中保存的每个数据传输A对应的数据设定了数据量的上线(第一水线值)以及下线(第二水线值)。
1、发起流量控制的情况如下:
在确定发送数据缓存中通过一个第一逻辑接口接收的数据的数据量高于设定的第一水线值时,确定需要发起基于接口的流量控制的过程,即向该数据传输装置中的数据接收路径包括的与该第一逻辑接口位于同一物理接口的第三逻辑接口发送基于接口的流控帧;
或者
在数据接收路径包括的与第二逻辑接口位于同一物理接口的第四逻辑接口接收到对端数据传输装置发送的基于接口的流控帧时,确定需要发起基于接口的流量控制的过程,即分别向数据接收路径包括的多个分别与各第一逻辑接口位于同一物理接口的第三逻辑接口发送基于接口的流控帧。
2、取消流量控制的情况如下:
在确定发送数据缓存中通过一个第一逻辑接口接收的数据的数据量低于设定的第二水线值,并且在第四逻辑接口接收到对端数据传输装置发送的取消基于该第一逻辑接口的流控帧时,确定需要发起取消基于接口的流量控制的过程,即与该第一逻辑接口位于同一物理接口的第三逻辑接口发送取消基于接口的流控帧。
二、基于优先级流量控制机制:
本发明实施例一提供的技术方案中,基于优先级的流量控制机制包括发起基于优先级的流量控制以及取消基于优先级的流量控制,其中,为发送数据缓存中保存的每个优先级对应的数据设定了数据量的上线(第三水线值)以及下线(第四水线值)。
1、发起基于优先级的流量控制的情况如下:
在确定发送数据缓存中对应一个优先级的数据的数据量高于设定的第三水线值时,确定需要发起基于优先级的流量控制,即分别向数据传输装置中的数据接收路径包括的多个分别与各第一逻辑接口位于同一物理接口的第三逻辑接口发送基于该优先级的流控帧;
或者
在数据接收路径包括的第四逻辑接口接收到对端数据传输装置发送的基于设定优先级的流控帧时,确定需要发起基于优先级的流量控制的过程,即分别数据接收路径包括的多个第三逻辑接口发送基于该设定优先级的流控帧。
2、取消基于优先级的流量控制的情况如下:
在确定发送数据缓存中对应一个优先级的数据的数据量低于设定的第四水线值,并且在数据接收路径的第四逻辑接口接收到对端数据传输装置发送的取消基于该优先级的流控帧时,确定需要发起取消基于优先级的流量控制的过程,即分别向数据接收路径包括的多个第三逻辑接口发送取消基于该优先级流控帧。
实施例二
本发明实施例二提供了一种数据传输方法,该实施例二主要对数据接收路径的具体数据处理过程进行详细说明。基于该数据传输方法实现的数据传输过程,现对于现有技术,提高了数据传输效率。
如图7所示,本发明实施例二提供的数据传输方法,主要包括如下步骤:
步骤701、数据传输装置中的数据接收路径通过包括的第四逻辑接口接收对端数据传输装置发送的数据。
该步骤701中,第四逻辑接口与对端数据传输装置中的数据发送路径包括的用于输出数据的第二逻辑接口具有相同的数据传输速率。
步骤702、将接收的数据缓存至接收数据缓存中,并在接收数据缓存中的数据满足发送条件时,通过数据接收路径包括的多个第三逻辑接口将该接收数据缓存中的数据传输给交换芯片进行处理。
该步骤702中,接收数据缓存中的数据满足发送条件即缓存中保存的数据达到一个完整的数据帧。考虑到流量控制的需求,在确定发送数据缓存中的数据是否满足发送条件时,还需要进一步确定第三逻辑接口是否收到数据发送路径发送的请求进行流量控制的流控帧,若未收到,则满足发送条件
实际应用中,为了保证数据的正常传输,需要在数据传输过程中进行流量控制,以避免数据丢失。具体地,本发明实施例二提供的流量控制机制可以通过基于接口的流量控制或基于优先级的流量控制实现,具体实现过程如下:
一、基于接口流量控制机制:
本发明实施例二提供的技术方案中,基于接口的流量控制机制包括发起基于接口的流量控制以及取消基于接口的流量控制,其中,为缓存中保存的总数据量设定了数据量的上线(第五水线值)以及下线(第六水线值)。
1、发起流量控制的情况如下:
在接收数据缓存的总数据量高于设定的第五水线值,或数据传输装置中的数据发送路径包括的多个分别与各第三逻辑接口位于同一物理接口的第一逻辑接口均接收到对端数据传输装置发送的基于接口的流控帧时,确定需要发起基于接口的流量控制的过程,即向数据发送路径包括的与第四逻辑接口位于同一物理接口的第二逻辑接口发送基于接口的流控帧。
2、取消流量控制的情况如下:
在接收数据缓存的总数据量低于设定的第六水线值,并且数据发送路径包括的多个第一逻辑接口中的任意一个接收到对端数据传输装置发送的取消基于接口的流控帧时,确定需要取消基于接口的流量控制过程,即向该数据发送路径包括的第二逻辑接口发送取消基于接口的流控帧。
二、基于优先级流量控制机制:
本发明实施例二提供的技术方案中,基于优先级的流量控制机制包括发起基于优先级的流量控制以及取消基于优先级的流量控制,其中,为缓存中保存的总数据量设定了数据量的上线(第七水线值)以及下线(第八水线值)。
1、发起基于优先级的流量控制的情况如下:
在确定接收数据缓存中对应一个优先级的数据的数据量高于设定的第七水线值,或数据接收路径包括的第四逻辑接口接收到对端数据传输装置发送的基于该优先级的流控帧时,确定需要发起基于优先级的流量控制过程,即向数据发送路径包括的与第四逻辑接口位于同一物理接口的第二逻辑接口发送基于该优先级的流控帧。
2、取消基于优先级的流量控制的情况如下:
在确定接收数据缓存中对应一个优先级的数据的数据量低于设定的第八水线值,并且数据接收路径包括的第四逻辑接口接收到对端数据传输装置发送的取消基于该优先级的流控帧时,向数据发送路径包括的与第四逻辑接口位于同一物理接口的第二逻辑接口发送取消基于该优先级的流控帧。
本发明实施例二提供的优选实施例方式中,还进一步对发送数据缓存中的数据存储方式进行了优化,以减少数据包的乱序。数据包乱序是指数据传输速率高的逻辑接口向多个数据传输速率低的逻辑接口传输数据的过程中,同一个类型的数据如果在不同的数据传输速率低的逻辑接口中传输,将可能产生乱序的现象。具体地,对缓存中的数据进行优化处理,如图8所示,包括如下过程:
步骤801、确定接收数据缓存中分别用于保存对应不同第一逻辑接口的数据区域的数据量。
步骤802、将接收的数据保存至数据量最小的数据区域,或采用顺序轮转的方式将接收的数据保存至并列最小的至少两个数据区域中的一个数据区域。
上述实施例一以及实施例二中,流量控制机制可以通过Pause帧来实现。目前有两种Pause帧,分别为基于端口的Pause帧(基于接口的流控制)和基于优先级的Pause帧(基于优先级的流控帧),分别用来实现基于端口的流控机制和基于优先级的流控机制,其中,基于端口的Pause帧的帧格式可参考802.1Q的定义和说明,基于优先级的Pause帧的帧格式可参考802.3bd的定义和说明,此处不再赘述。
实施例三
本发明实施例三提供了一种数据发送装置,该数据发送装置与上述实施例一中数据传输装置包括的数据发送路径对应。基于该数据发送装置实现的数据传输过程,现对于现有技术,提高了数据传输效率。
如图9所示,本发明实施例三提供的数据发送装置,包括:
数据接收单元901、数据处理单元902、缓存单元903以及数据发送单元904;
其中:
数据接收单元901,用于通过多个对应第一数据传输速率的第一逻辑接口接收经过交换芯片处理的数据;
数据处理单元902,用于在多个所述第一逻辑接口的总数据传输速率大于所述数据发送路径包括的用于向对端数据传输装置传输数据的第二逻辑接口对应的第二数据传输速率时,根据所述第二数据传输速率确定是否丢弃数据接收单元901接收的数据;其中,第二数据传输速率大于第一数据传输速率;
缓存单元903,用于在数据处理单元902确定不丢弃该数据后,将该数据保存至发送数据缓存中;
数据发送单元904,用于在发送数据缓存中的数据满足发送条件时,通过第二逻辑接口向对端数据传输装置发送该发送数据缓存中的数据。
本发明实施例三提供的优选实施方式中,图9所示装置包括的数据处理单元902,具体用于:
确定当前接收的数据所对应的优先级,并确定对应优先级的数据的数据传输速率;在确定出的数据传输速率大于设定的与优先级对应的峰值信息速率PIR时,确定丢弃数据;在确定出的数据传输速率小于等于与优先级对应的PIR且大于设定的与优先级对应的承诺信息速率CIR,并且根据发送数据缓存中存储的对应优先级的数据的数据量确定丢弃数据时,确定丢弃数据;其中,CIR小于PIR。
本发明实施例三提供的优选实施方式中,图9所示装置包括的数据处理单元902,还用于:
在确定出的数据传输速率小于等于与优先级对应的PIR且大于与优先级对应的CIR,并且根据发送数据缓存中存储的对应优先级的数据量确定不丢弃数据时,确定对应所有优先级的总数据的数据传输速率;在数据传输速率大于设定的与总数据对应的PIR时,确定丢弃数据;在数据传输速率小于等于与总数据对应的PIR且大于与总数据对应的CIR,并且根据发送数据缓存中存储的对应所有优先级的总数据的数据量确定丢弃数据时,确定丢弃数据;其中,与总数据对应的CIR等于第二数据传输速率。
本发明实施例三提供的优选实施方式中,图9所示装置包括的数据处理单元902,具体用于:
确定发送数据缓存中存储的相应数据的数据量,并将确定出的数据量与针对相应数据设定的数据量上限值以及下限值进行比较;
若确定出的数据量大于上限值,则确定丢弃数据;若确定出的数据量大于等于下限值并且小于等于上限值,则根据随机早期丢弃算法确定是否丢弃数据。
如图10所示,本发明实施例三提供的优选实施方式中,图9所示的数据发送装置还可以进一步包括第一流量控制单元905,该第一流量控制单元905,用于:
在确定发送数据缓存中通过一个第一逻辑接口接收的数据的数据量高于设定的第一水线值时,向该数据传输装置中的数据接收路径包括的与第一逻辑接口位于同一物理接口的第三逻辑接口发送基于接口的流控帧;
在数据接收路径包括的与第二逻辑接口位于同一物理接口的第四逻辑接口接收到对端数据传输装置发送的基于接口的流控帧时,分别向数据接收路径包括的多个分别与各第一逻辑接口位于同一物理接口的第三逻辑接口发送基于接口的流控帧;
在确定发送数据缓存中通过一个第一逻辑接口接收的数据的数据量低于设定的第二水线值,并且在第四逻辑接口接收到对端数据传输装置发送的取消基于该第一逻辑接口的流控帧时,向与该第一逻辑接口位于同一物理接口的第三逻辑接口发送取消基于接口的流控帧;
其中,第一水线值大于第二水线值。
如图11所示,本发明实施例三提供的优选实施方式中,图9所示的数据发送装置还可以进一步包括第二流量控制单元906,该第二流量控制单元906,用于:
在确定发送数据缓存中对应一个优先级的数据的数据量高于设定的第三水线值时,分别向数据传输装置中的数据接收路径包括的多个分别与各第一逻辑接口位于同一物理接口的第三逻辑接口发送基于该优先级的流控帧;
在数据接收路径包括的与第二逻辑接口位于同一物理接口的第四逻辑接口接收到对端数据传输装置发送的基于设定优先级的流控帧时,分别向多个第三逻辑接口发送基于该设定优先级的流控帧;
在确定发送数据缓存中对应一个优先级的数据的数据量低于设定的第四水线值,并且在第四逻辑接口接收到对端数据传输装置发送的取消基于该优先级的流控帧时,分别向多个第三逻辑接口发送取消基于该优先级流控帧;
其中,第三水线值大于第四水线值。
实际应用中,数据发送装置可以同时包括上述的第一流量控制单元905以及第二流量控制单元906,可以通过该两个单元实现对流量控制模式的选择。
应当理解,以上数据发送装置包括的单元仅为根据该装置实现的功能进行的逻辑划分,实际应用中,可以进行上述单元的叠加或拆分。并且该实施例提供的装置所实现的功能与上述实施例一提供的数据传输方法流程一一对应,对于该装置所实现的更为详细的处理流程,在上述方法实施例一中已做详细描述,此处不再详细描述。
实施例四
本发明实施例四提供了一种数据接收装置,该数据接收装置与上述实施例一中的数据传输装置包括的数据接收路径对应。基于该数据接收装置实现的数据传输过程,现对于现有技术,提高了数据传输效率。
如图12所示,本发明实施例四提供的数据接收装置,包括:
数据接收单元1201、缓存单元1202以及数据发送单元1203;
其中:
数据接收单元1201,用于通过包括的对应第二数据传输速率的第四逻辑接口接收对端数据传输装置发送的数据;
缓存单元1202,用于将数据接收单元1201接收的数据保存在接收数据缓存中;
数据发送单元1203,用于在接收数据缓存中的数据满足发送条件时,通过数据接收路径包括的多个对应第一数据传输速率的第三逻辑接口将接收数据缓存中的数据传输给交换芯片进行处理;其中,第一数据传输速率小于第二数据传输速率。
如图13所示,本发明实施例四提供的优选实施方式中,图12所示的数据传输装置还可以进一步包括第一流量控制单元1204,用于:
在接收数据缓存的总数据量高于设定的第五水线值,或数据传输装置中的数据发送路径包括的多个分别与各第三逻辑接口位于同一物理接口的第一逻辑接口均接收到对端数据传输装置发送的基于接口的流控帧时,向数据发送路径包括的与第四逻辑接口位于同一物理接口的第二逻辑接口发送基于接口的流控帧;
在接收数据缓存的总数据量低于设定的第六水线值,并且多个第一逻辑接口中的任意一个接收到对端数据传输装置发送的取消基于接口的流控帧时,向第二逻辑接口发送取消基于接口的流控帧;
其中,第五水线值大于第六水线值。
如图14所示,本发明实施例四提供的优选实施方式中,图12所示的数据传输装置还可以进一步包括第二流量控制单元1205,用于:
在确定接收数据缓存中对应一个优先级的数据的数据量高于设定的第七水线值,或第四逻辑接口接收到对端数据传输装置发送的基于该优先级的流控帧时,向数据传输装置中的数据发送路径包括的与第四逻辑接口位于同一物理接口的第二逻辑接口发送基于该优先级的流控帧;
在确定接收数据缓存中对应一个优先级的数据的数据量低于设定的第八水线值,并且第四逻辑接口接收到对端数据传输装置发送的取消基于该优先级的流控帧时,向数据传输装置中的数据发送路径包括的与第四逻辑接口位于同一物理接口的第二逻辑接口发送取消基于该优先级的流控帧;
其中,第七水线值大于第八水线值。
实际应用中,数据接收装置可以同时包括上述的第一流量控制单元1204以及第二流量控制单元1205,可以通过该两个单元实现对流量控制模式的选择。
本发明实施例四提供的优选实施方式中,图12所示装置包括的缓存单元1202,具体用于:
确定接收数据缓存中分别用于保存对应不同第一逻辑接口的数据区域的数据量;
将接收的数据保存至数据量最小的数据区域,或采用顺序轮转的方式将接收的数据保存至并列最小的至少两个数据区域中的一个数据区域。
应当理解,以上数据接收装置包括的单元仅为根据该装置实现的功能进行的逻辑划分,实际应用中,可以进行上述单元的叠加或拆分。并且该实施例提供的装置所实现的功能与上述实施例二提供的数据传输方法流程一一对应,对于该装置所实现的更为详细的处理流程,在上述方法实施例二中已做详细描述,此处不再详细描述。
实施例五
本发明实施例五提供了一种网络设备,基于该数据传输网络设备实现的数据传输过程,现对于现有技术,提高了数据传输效率。
如图15所示,本发明实施例五提供的数据传输装置,包括:
数据接收装置1501以及数据发送装置1502:
其中:
数据接收装置1501,用于通过包括的对应第二数据传输速率的第四逻辑接口接收对端数据传输装置发送的数据;将接收的数据保存在接收数据缓存中,并在接收数据缓存中的数据满足发送条件时,通过数据接收路径包括的多个对应第一数据传输速率的第三逻辑接口将接收数据缓存中的数据传输给交换芯片进行处理;其中,第一数据传输速率小于第二数据传输速率;
数据发送装置1502,用于通过包括的多个对应第一数据传输速率的第一逻辑接口接收经过交换芯片处理的数据;在多个第一逻辑接口的总数据传输速率大于数据发送路径包括的用于向对端数据传输装置传输数据的第二逻辑接口对应的第二数据传输速率时,根据第二数据传输速率确定是否丢弃接收的数据;其中,第二数据传输速率大于第一数据传输速率;在确定不丢弃数据后,将数据保存至发送数据缓存中,并在发送数据缓存中的数据满足发送条件时,通过第二逻辑接口向对端数据传输装置发送发送数据缓存中的数据。
该实施例五提供的网络设备包括的数据接收装置1501以及数据发送装置1502所实现的功能分别与上述实施例四以及实施例三提供的数据传输装置对应,此处不再详细描述。
为了更好地理解本发明实施例提供的技术方案,以下结合高速以太网应用,对本发明实施例的优选实施方式进行详细描述,其中,以3个40Gbps以太网接口与100Gbps以太网接口之间进行数传输为例进行说明。
如图16所示,为根据本发明上述实施例实现的数据传输装置,该数据传输装置包括数据发送路径以及数据接收路径;其中:
数据发送路径包括40G TFIFO、Meter、TData Buffer、TSAT、RED、100GTFIFO以及TFC;
数据接收路径包括:2选1模块、RData Buffer、RSAT、100G RFIFO以及RFC;
100Gbps MAC RX为数据接收路径中用于接收对端数据传输装置发送的数据的以太网接口(对应上述的第四逻辑接口)、40Gbps MAC TX为数据接收路径中向交换芯片发送数据的以太网接口(对应上述的第三逻辑接口),40Gbps MAC RX为数据发送路径中用于接收交换芯片发送的数据的以太网接口(对应上述的第一逻辑接口),100Gbps MAC TX为数据发送路径中用于向对端数据传输装置发送数据的以太网接口(对应上述的第二逻辑接口)。其中,40Gbps MAC TX以及40Gbps MAC RX在同一数据传输装置中时,两两对应且位于同一物理接口,100Gbps MAC RX以及100Gbps MAC TX在同一数据传输装置中时位于同一物理接口。
一、数据发送路径包括的各子模块所实现的功能如下:
(1)40G TFIFO:数据发送路径上3个40Gbps MAC RX的数据汇聚。
(2)Meter:测量模块,可以采用RFC2698的drTCM(double rate Three ColorMarkers,双速率三色令牌桶算法)完成违约流量测量,从而作为RED(RandomEarly Drop,随机早期丢弃)的依据。
(3)TData Buffer:发送数据缓存子模块,具体在存储数据时可以根据数据的优先级进行分类存储,即分为8个数据区,分别用于存储对应8个优先级的数据。
(4)TSAT:发送统计子模块,能够实现对TData Buffer中保存的数据量的统计,如统计三个40Gbps MAC RX对应的数据的数据量以及8个优先级对应的数据的数据量。
(5)RED,拥塞避免的随机早期丢弃模块,根据Meter子模块的结果,完成对TData Buffer的丢弃操作,从而使得120Gbps带宽适应100Gbps带宽。
(6)100GTFIFO:100Gbps以太网发送FIFO,完成100Gbps MAC TX的输出数据包缓存。
(7)TFC:发送流控模块,这里完成对TData Buffer的监控,统计三个40Gbps MAC RX的缓存数据水线和统计8个优先级数据水线,从而确定向接收路径上的2选1模块发起基于接口的流控帧和基于优先级的流控帧。
具体地,上述子模块中的40G TFIFO完成的功能与上述实施例三提供的数据传输装置中包括的数据接收单元901所完成的功能一致;Meter、TSAT以及RED所完成的功能与上述实施例三提供的数据传输装置中包括的数据处理单元902所完成的功能一致;TData Buffer所完成的功能与上述实施例三提供的数据传输装置中包括的缓存单元903所完成的功能一致;100G TFIFO完成的功能与上述实施例三提供的数据传输装置中包括的数据发送单元904所完成的功能一致;TFC完成的功能与上述实施例三提供的数据传输装置中包括的第一流量控制单元905以及第二流量控制单元906所完成的功能一致。
数据发送路径包括的40G TFIFO、Meter和RED三个模块可以配合完成数据整形,即实现120Gbps带宽到100Gbps带宽的整形。通过该整形功能,3个40Gbps以太网接口实现逻辑绑定,即端口汇聚Trunk。
具体地,各模块实现上述功能的具体方式如下:
40G TFIFO:
40G TFIFO主要实现三路数据的汇聚,具体可以包含一个3选1的仲裁子模块和一个FIFO。此处,3选1的仲裁子模块可以采用轮转算法(Round Robin,简称RR算法)确定先接收来自哪个接口的数据;FIFO的输入和输出带宽大于3个40Gbps以太网接口的总带宽,也就是大于120Gbps。
Meter子模块:
Meter子模块可以采用drTCM算法,用于对来自三个40Gbps MAC RX的120Gbps数据流量根据CIR和PIR进行标记,例如,采用不同颜色标记不同的数据,如:
符合CIR,标记为绿色;
超过CIR,但是小于PIR,标记为黄色;
超过PIR,标记为红色。
Meter子模块的具体实现逻辑包括:总数据流量测量和8个优先级数据流量测量,即分为一个父队列和对应不同优先级的8个子队列,其中,父队列对应总数据流量,子队列对应不同优先级的数据流量。对于父队列,这里drTCM的CIR固定为100Gbps;对于子队列,drTCMCIR可配置,也就是8个子队列可以灵活分割100Gbps的传输带宽。
当Meter子模块从40G TFIFO接收到一个数据包时,首先进行子队列的drTCM测量,然后进行父队列的drTCM测量。如图17所示,Meter子模块的具体处理过程如下:
步骤1701、接收数据包,进行子队列的drTCM运算,得到数据颜色;
步骤1702、如果是绿色,则默认父队列也是绿色,结束测量操作。这样就保证绿色的子队列数据能够占有传输带宽;
步骤1703、如果是红色,则直接丢弃;
步骤1704、如果是黄色,则向RED模块请求判断是否丢弃;
步骤1705、如果判断为丢弃,则丢弃数据后结束;
步骤1706、如果判断为不丢弃,则继续进行父队列的drTCM运算;
步骤1707、如果是绿色,则结束测量;
步骤1708、如果是红色,则丢弃数据,结束测量;
步骤1709、如果是黄色,则向RED模块请求判断是否丢弃,从而结束测量。
通过以上处理过程,可以保证子队列的CIR的带宽占用,防止其它队列的违约流量屏蔽了子队列的CIR。
其中,RED模块的判断过程如下:
RED模块可以形成9个RED子模块分别与Meter的九个队列对应(1个父队列和8个子队列),根据TSAT的统计结果,分别对父队列和8个子队列进行RED丢弃运算。每个RED子模块可以设置如下参数:
数据量的下限值以及上限值、丢弃概率。
当数据量低于下限值,则不丢弃数据量;高于上限值,则丢弃数据;数据量介于下限值和上限值之间,则按照设定的概率丢弃,即采用RED算法。
(1)TFC的具体处理过程在上述第一流量控制单元905以及第二流量控制单元906以及相应的方法流程中已经详细描述,此处不再赘述。其中,发起流控时,发送的基于接口的Pause帧,操作参数为0hFFFF;取消流控时,发送的基于接口的Pause帧,操作参数为0h0。
二、数据接收路径包括的各子模块所实现的功能如下:
(1)2选1模块:总共有三个,分别对应三个40Gbps MAC TX。实现对来自数据发送模块中包括的TFC的流控帧Pause帧和来自RData Buffer的数据帧的2选1传输。
(2)RData Buffer:接收数据缓存,分为三个数据区,也就是三个FIFO,分别对应三个40Gbps MAC TX。同时在存储数据时,通过水线比较和仲裁操作,规避乱序问题。
(3)RSAT:接收统计模块,统计总数据量和8个优先级的数据量。
(4)100G RFIFO:100Gbps MAC RX的接收FIFO,分为8个数据区,对应8个优先级。
(5)RFC:接收流控模块,这里监控100G RFIFO,统计总的数据量和8个优先级数据量,从而向100G TFIFO发出基于接口的流控帧和基于优先级的流控帧。
具体地,上述子模块中的100G RFIFO完成的功能与上述实施例四提供的数据传输装置中包括的数据接收单元1201所完成的功能一致;RData Buffer完成的功能与上述实施例四提供的数据传输装置中包括的缓存单元1202所完成的功能一致;2选1模块与3个40Gbps MAC TX结合完成的功能与上述实施例四提供的数据传输装置中包括的数据发送单元1203所完成的功能一致;RSAT以及RFC结合完成的功能与上述实施例四提供的数据传输装置中包括的第一流量控制单元1204以及第二流量控制单元1205所完成的功能一致。
具体地,RData Buffer子模块在实现乱序规避时,其结构可如图18所示(略去2选1子模块),主要包括两个部分:Buffer和仲裁模块。其中,Buffer包含两个部分FIFO和控制模块。FIFO用于缓存对应三个40Gbps MAC TX的接收数据;而控制模块完成对FIFO的监控,输出给仲裁模块三个FIFO的数据量信息,也就是数据水线。
仲裁模块根据Buffer的控制模块提供的三个FIFO的数据水线,从而仲裁判断将接收数据发送给哪个FIFO更为合理,具体的算法如下:
(1)假设三个FIFO的数据水线为A、B和C;
(2)如果A、B和C中最小的就一个,那么那个所对应的FIFO就是仲裁结果,即将接收的数据缓存至A、B和C中最小一个对应的FIFO;
(3)如果有两个或者三个并列最小,那么从FIFO0到FIFO1进行顺序轮转。
一个具体的数据存储过程如图19所示,1522字节的长包夹杂在64字节的短包中传输,那么原本序号为2的1522字节的数据包,前面插入了序号为3~47的短包。这里插入的总数据量为2880字节。
如果一个M字节长度的长包夹杂在K字节的短包中传输,那么乱序的字节数为:
上式中N为长包进入的第N个FIFO。可见,乱序的字节数大概为2倍长包的字节数。对于以太网数据包来说(不考虑巨型包),可以控制在3K以下。这对于系统来说,完全在门限之下,从而有效规避了乱序问题。
根据以上方案,能够保证汇聚和分发数据的传输安全,能通过有效的算法,规避乱序问题;同时通过Meter和RED,完成120Gbps到100Gbps的带宽限制,有效减轻了对端模块的处理负担。
上述实施过程可以实现在FPGA(Field Programmable Gate Array,现场可编程门阵列)芯片内部,也可以实现在ASIC(Application Specific IntegratedCircuit,通用芯片器件)芯片内部。
本发明中的Data Buffer采用的是片内Ram,也可以采用片外存储介质,例如DDR2/DDR3来完成。
本发明所描述的汇聚和分发系统,运用于40Gbps和100Gbps以太网接口的转换平台。该汇聚和分发系统的有益效果有:
1自适应带宽
在发送路径上,120Gbps的传输带宽通过测量和随机早期丢弃操作,实现到100Gbps的传输带宽的合理自适应。这里提供了两级的测量操作和两级的丢弃操作,使得基于优先级的子队列的承诺带宽得到有效保证;而违约带宽的数据也能得到合理丢弃,避免网络环境(TCP协议)的恶化。
2具有安全的流控机制
本发明在发送和接收路径上,提供两种流控机制:基于接口的流控机制和基于优先级的流控机制。保证了汇聚和分发数据的传输安全。
3性价比高的乱序规避方式
通过水线比较和仲裁操作,使得乱序数据控制在整个交换机系统允许的重发门限内,这里避免了复杂的TM控制模块的使用,从而使得用简单的设计满足系统的需要。
通过本发明实施例提供的上述至少一个技术方案,数据传输装置中的数据发送路径通过包括的多个对应第一数据传输速率的第一逻辑接口接收经过交换芯片处理的数据,在多个第一逻辑接口的总数据传输速率大于数据发送路径包括的用于向对端数据传输装置传输数据的第二逻辑接口对应的第二数据传输速率时,根据第二数据传输速率确定是否丢弃接收的数据,并在确定不丢弃该数据后,将该数据保存至发送数据缓存中,并在发送数据缓存中的数据满足发送条件时,通过所述第二逻辑接口向所述对端数据传输装置发送所述发送数据缓存中的数据。根据该技术方案实现的数据传输过程,无需对数据进行分类以及多层次调度等复杂处理过程,通过在数据缓存前对数据进行丢弃判断,保证缓存中的数据量能够满足数据发送接口的数据传输速率所能传输的数据量,从而在保证数据正常传输的前提下,相对于现有技术提高了数据传输效率。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (17)
1.一种数据传输方法,其特征在于,包括:
数据传输装置中的数据发送路径通过包括的多个对应第一数据传输速率的第一逻辑接口接收经过交换芯片处理的数据;
在多个所述第一逻辑接口的总数据传输速率大于所述数据发送路径包括的用于向对端数据传输装置传输数据的第二逻辑接口对应的第二数据传输速率时,根据所述第二数据传输速率确定是否丢弃接收的所述数据;其中,根据所述第二数据传输速率确定是否丢弃接收的所述数据,包括:确定当前接收的数据所对应的优先级,并确定对应所述优先级的数据的数据传输速率,在确定出的所述数据传输速率大于设定的与所述优先级对应的峰值信息速率PIR时,确定丢弃所述数据,在确定出的所述数据传输速率小于等于与所述优先级对应的PIR且大于设定的与所述优先级对应的承诺信息速率CIR,并且根据发送数据缓存中存储的对应所述优先级的数据的数据量确定丢弃所述数据时,确定丢弃所述数据,其中,与各优先级对应的CIR分别小于所述第二数据传输速率,与各优先级对应的CIR总和等于所述第二数据传输速率,设定的与各优先级对应的PIR根据第二数据传输速率以及缓存大小设定,具体设定值为经验值,且各优先级对应的PIR大于所述CIR;所述第二数据传输速率大于所述第一数据传输速率;
在确定不丢弃所述数据后,将所述数据保存至发送数据缓存中,并在所述发送数据缓存中的数据满足发送条件时,通过所述第二逻辑接口向所述对端数据传输装置发送所述发送数据缓存中的数据。
2.如权利要求1所述的方法,其特征在于,在确定出的所述数据传输速率小于等于与所述优先级对应的PIR且大于与所述优先级对应的CIR,并且根据所述发送数据缓存中存储的对应所述优先级的数据量确定不丢弃所述数据时,还包括:
确定对应所有优先级的总数据的数据传输速率;
在所述总数据的数据传输速率大于设定的与所述总数据对应的PIR时,确定丢弃所述数据;
在所述总数据的数据传输速率小于等于与所述总数据对应的PIR且大于与所述总数据对应的CIR,并且根据所述发送数据缓存中存储的对应所有优先级的总数据的数据量确定丢弃所述数据时,确定丢弃所述数据;
其中,与所述总数据对应的CIR等于所述第二数据传输速率。
3.如权利要求1或2所述的方法,其特征在于,根据所述发送数据缓存中存储的相应数据的数据量确定是否丢弃所述数据,包括:
确定所述发送数据缓存中存储的相应数据的数据量;
将确定出的所述数据量与针对所述相应数据设定的数据量上限值以及下限值进行比较;
若确定出的所述数据量大于所述上限值,则确定丢弃所述数据;
若确定出的所述数据量大于等于所述下限值并且小于等于所述上限值,则根据随机早期丢弃算法确定是否丢弃所述数据。
4.如权利要求1所述的方法,其特征在于,还包括:
在确定所述发送数据缓存中通过一个第一逻辑接口接收的数据的数据量高于设定的第一水线值时,向该数据传输装置中的数据接收路径包括的与所述第一逻辑接口位于同一物理接口的第三逻辑接口发送基于接口的流控帧;
在所述数据接收路径包括的与所述第二逻辑接口位于同一物理接口的第四逻辑接口接收到对端数据传输装置发送的基于接口的流控帧时,分别向所述数据接收路径包括的多个分别与各第一逻辑接口位于同一物理接口的第三逻辑接口发送基于接口的流控帧;
在确定所述发送数据缓存中通过一个第一逻辑接口接收的数据的数据量低于设定的第二水线值,并且在所述第四逻辑接口接收到对端数据传输装置发送的取消基于该第一逻辑接口的流控帧时,向与该第一逻辑接口位于同一物理接口的第三逻辑接口发送取消基于接口的流控帧;
其中,所述第一水线值大于所述第二水线值。
5.如权利要求1所述的方法,其特征在于,还包括:
在确定所述发送数据缓存中对应一个优先级的数据的数据量高于设定的第三水线值时,分别向所述数据传输装置中的数据接收路径包括的多个分别与各第一逻辑接口位于同一物理接口的第三逻辑接口发送基于该优先级的流控帧;
在所述数据接收路径包括的与所述第二逻辑接口位于同一物理接口的第四逻辑接口接收到对端数据传输装置发送的基于设定优先级的流控帧时,分别向多个所述第三逻辑接口发送基于该设定优先级的流控帧;
在确定所述发送数据缓存中对应一个优先级的数据的数据量低于设定的第四水线值,并且在所述第四逻辑接口接收到对端数据传输装置发送的取消基于该优先级的流控帧时,分别向多个所述第三逻辑接口发送取消基于该优先级流控帧;
其中,所述第三水线值大于所述第四水线值。
6.一种数据传输方法,其特征在于,包括:
数据传输装置中的数据接收路径通过包括的对应第二数据传输速率的第四逻辑接口接收对端数据传输装置发送的数据;
将接收的所述数据保存在接收数据缓存中,并在所述接收数据缓存中的数据满足发送条件时,通过所述数据接收路径包括的多个对应第一数据传输速率的第三逻辑接口将所述接收数据缓存中的数据传输给交换芯片进行处理;
其中,所述第一数据传输速率小于所述第二数据传输速率;
将接收的所述数据保存在接收数据缓存中,包括:
确定所述接收数据缓存中分别用于保存对应不同第一逻辑接口的数据区域的数据量,将接收的数据保存至数据量最小的数据区域,或采用顺序轮转的方式将接收的数据保存至并列最小的至少两个数据区域中的一个数据区域,所述第一逻辑接口为分别与各所述第三逻辑接口位于同一物理接口的逻辑接口。
7.如权利要求6所述的方法,其特征在于,还包括:
在所述接收数据缓存的总数据量高于设定的第五水线值,或数据传输装置中的数据发送路径包括的多个分别与各第三逻辑接口位于同一物理接口的第一逻辑接口均接收到对端数据传输装置发送的基于接口的流控帧时,向所述数据发送路径包括的与所述第四逻辑接口位于同一物理接口的第二逻辑接口发送基于接口的流控帧;
在所述接收数据缓存的总数据量低于设定的第六水线值,并且多个所述第一逻辑接口中的任意一个接收到对端数据传输装置发送的取消基于接口的流控帧时,向所述第二逻辑接口发送取消基于接口的流控帧;
其中,所述第五水线值大于所述第六水线值。
8.如权利要求6所述的方法,其特征在于,还包括:
在确定所述接收数据缓存中对应一个优先级的数据的数据量高于设定的第七水线值,或所述第四逻辑接口接收到对端数据传输装置发送的基于该优先级的流控帧时,向数据传输装置中的数据发送路径包括的与所述第四逻辑接口位于同一物理接口的第二逻辑接口发送基于该优先级的流控帧;
在确定所述接收数据缓存中对应一个优先级的数据的数据量低于设定的第八水线值,并且所述第四逻辑接口接收到对端数据传输装置发送的取消基于该优先级的流控帧时,向数据传输装置中的数据发送路径包括的与所述第四逻辑接口位于同一物理接口的第二逻辑接口发送取消基于该优先级的流控帧;
其中,所述第七水线值大于所述第八水线值。
9.一种数据发送装置,其特征在于,包括:
数据接收单元,用于通过多个对应第一数据传输速率的第一逻辑接口接收经过交换芯片处理的数据;
数据处理单元,用于在多个所述第一逻辑接口的总数据传输速率大于数据发送路径包括的用于向对端数据传输装置传输数据的第二逻辑接口对应的第二数据传输速率时,根据所述第二数据传输速率确定是否丢弃接收的所述数据;其中,所述第二数据传输速率大于所述第一数据传输速率;
缓存单元,用于在所述数据处理单元确定不丢弃所述数据后,将所述数据保存至发送数据缓存中;
数据发送单元,用于在所述发送数据缓存中的数据满足发送条件时,通过所述第二逻辑接口向所述对端数据传输装置发送所述发送数据缓存中的数据;
其中,所述数据处理单元,具体用于:
确定当前接收的数据所对应的优先级,并确定对应所述优先级的数据的数据传输速率;
在确定出的所述数据传输速率大于设定的与所述优先级对应的峰值信息速率PIR时,确定丢弃所述数据;
在确定出的所述数据传输速率小于等于与所述优先级对应的PIR且大于设定的与所述优先级对应的承诺信息速率CIR,并且根据所述发送数据缓存中存储的对应所述优先级的数据的数据量确定丢弃所述数据时,确定丢弃所述数据;
其中,与各优先级对应的CIR分别小于所述第二数据传输速率,与各优先级对应的CIR总和等于所述第二数据传输速率,设定的与各优先级对应的PIR根据第二数据传输速率以及缓存大小设定,具体设定值为经验值,且各优先级对应的PIR大于所述CIR。
10.如权利要求9所述的装置,其特征在于,所述数据处理单元,还用于:
在确定出的所述数据传输速率小于等于与所述优先级对应的PIR且大于与所述优先级对应的CIR,并且根据所述发送数据缓存中存储的对应所述优先级的数据量确定不丢弃所述数据时,确定对应所有优先级的总数据的数据传输速率;
在所述总数据的数据传输速率大于设定的与所述总数据对应的PIR时,确定丢弃所述数据;
在所述总数据的数据传输速率小于等于与所述总数据对应的PIR且大于与所述总数据对应的CIR,并且根据所述发送数据缓存中存储的对应所有优先级的总数据的数据量确定丢弃所述数据时,确定丢弃所述数据;
其中,与所述总数据对应的CIR等于所述第二数据传输速率。
11.如权利要求9或10所述的装置,其特征在于,所述数据处理单元,具体用于:
确定所述发送数据缓存中存储的相应数据的数据量,并将确定出的所述数据量与针对所述相应数据设定的数据量上限值以及下限值进行比较;
若确定出的所述数据量大于所述上限值,则确定丢弃所述数据;若确定出的所述数据量大于等于所述下限值并且小于等于所述上限值,则根据随机早期丢弃算法确定是否丢弃所述数据。
12.如权利要求9所述的装置,其特征在于,还包括第一流量控制单元,用于:
在确定所述发送数据缓存中通过一个第一逻辑接口接收的数据的数据量高于设定的第一水线值时,向该数据传输装置中的数据接收路径包括的与所述第一逻辑接口位于同一物理接口的第三逻辑接口发送基于接口的流控帧;
在所述数据接收路径包括的与所述第二逻辑接口位于同一物理接口的第四逻辑接口接收到对端数据传输装置发送的基于接口的流控帧时,分别向所述数据接收路径包括的多个分别与各第一逻辑接口位于同一物理接口的第三逻辑接口发送基于接口的流控帧;
在确定所述发送数据缓存中通过一个第一逻辑接口接收的数据的数据量低于设定的第二水线值,并且在所述第四逻辑接口接收到对端数据传输装置发送的取消基于该第一逻辑接口的流控帧时,向与该第一逻辑接口位于同一物理接口的第三逻辑接口发送取消基于接口的流控帧;
其中,所述第一水线值大于所述第二水线值。
13.如权利要求9所述的装置,其特征在于,还包括第二流量控制单元,用于:
在确定所述发送数据缓存中对应一个优先级的数据的数据量高于设定的第三水线值时,分别向所述数据传输装置中的数据接收路径包括的多个分别与各第一逻辑接口位于同一物理接口的第三逻辑接口发送基于该优先级的流控帧;
在所述数据接收路径包括的与所述第二逻辑接口位于同一物理接口的第四逻辑接口接收到对端数据传输装置发送的基于设定优先级的流控帧时,分别向多个所述第三逻辑接口发送基于该设定优先级的流控帧;
在确定所述发送数据缓存中对应一个优先级的数据的数据量低于设定的第四水线值,并且在所述第四逻辑接口接收到对端数据传输装置发送的取消基于该优先级的流控帧时,分别向多个所述第三逻辑接口发送取消基于该优先级流控帧;
其中,所述第三水线值大于所述第四水线值。
14.一种数据接收装置,其特征在于,包括:
数据接收单元,用于通过包括的对应第二数据传输速率的第四逻辑接口接收对端数据传输装置发送的数据;
缓存单元,用于将接收的所述数据保存在接收数据缓存中;
数据发送单元,用于在所述接收数据缓存中的数据满足发送条件时,通过所述数据接收路径包括的多个对应第一数据传输速率的第三逻辑接口将所述接收数据缓存中的数据传输给交换芯片进行处理;其中,所述第一数据传输速率小于所述第二数据传输速率;
其中,所述缓存单元,具体用于:
确定所述接收数据缓存中分别用于保存对应不同第一逻辑接口的数据区域的数据量,所述第一逻辑接口为分别与各所述第三逻辑接口位于同一物理接口的逻辑接口;
将接收的数据保存至数据量最小的数据区域,或采用顺序轮转的方式将接收的数据保存至并列最小的至少两个数据区域中的一个数据区域。
15.如权利要求14所述的装置,其特征在于,还包括第一流量控制单元,用于:
在所述接收数据缓存的总数据量高于设定的第五水线值,或数据传输装置中的数据发送路径包括的多个分别与各第三逻辑接口位于同一物理接口的第一逻辑接口均接收到对端数据传输装置发送的基于接口的流控帧时,向所述数据发送路径包括的与所述第四逻辑接口位于同一物理接口的第二逻辑接口发送基于接口的流控帧;
在所述接收数据缓存的总数据量低于设定的第六水线值,并且多个所述第一逻辑接口中的任意一个接收到对端数据传输装置发送的取消基于接口的流控帧时,向所述第二逻辑接口发送取消基于接口的流控帧;
其中,所述第五水线值大于所述第六水线值。
16.如权利要求14所述的装置,其特征在于,还包括第二流量控制单元,用于:
在确定所述接收数据缓存中对应一个优先级的数据的数据量高于设定的第七水线值,或所述第四逻辑接口接收到对端数据传输装置发送的基于该优先级的流控帧时,向数据传输装置中的数据发送路径包括的与所述第四逻辑接口位于同一物理接口的第二逻辑接口发送基于该优先级的流控帧;
在确定所述接收数据缓存中对应一个优先级的数据的数据量低于设定的第八水线值,并且所述第四逻辑接口接收到对端数据传输装置发送的取消基于该优先级的流控帧时,向数据传输装置中的数据发送路径包括的与所述第四逻辑接口位于同一物理接口的第二逻辑接口发送取消基于该优先级的流控帧;
其中,所述第七水线值大于所述第八水线值。
17.一种网络设备,其特征在于,包括权利要求9至13任一项所述的数据发送装置,以及权利要求14至16任一项所述的数据接收装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010613149A CN102065015B (zh) | 2010-12-29 | 2010-12-29 | 一种数据传输方法、网络设备以及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010613149A CN102065015B (zh) | 2010-12-29 | 2010-12-29 | 一种数据传输方法、网络设备以及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102065015A CN102065015A (zh) | 2011-05-18 |
CN102065015B true CN102065015B (zh) | 2012-09-12 |
Family
ID=44000121
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201010613149A Active CN102065015B (zh) | 2010-12-29 | 2010-12-29 | 一种数据传输方法、网络设备以及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102065015B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102402400B (zh) * | 2011-11-25 | 2015-02-25 | 福建星网锐捷网络有限公司 | 发送数据帧的方法及装置 |
CN102368738B (zh) * | 2011-11-30 | 2015-04-22 | 盛科网络(苏州)有限公司 | 网络分等级流量控制方法及系统 |
CN103152287B (zh) * | 2013-03-27 | 2016-05-18 | 恒生电子股份有限公司 | 一种实时数据的可靠接收方法及装置 |
CN106603290A (zh) * | 2016-12-15 | 2017-04-26 | 天津交控科技有限公司 | 一种网管软件性能调优处理方法及装置 |
CN108737997B (zh) * | 2017-04-21 | 2020-11-27 | 展讯通信(上海)有限公司 | 调整数据包传输速率的方法、设备及系统 |
CN109286527B (zh) * | 2018-10-10 | 2022-02-22 | 广东信通通信有限公司 | 关联交换机逻辑和实物图端口的方法及网管系统 |
CN113645154B (zh) * | 2021-10-12 | 2022-04-15 | 阿里云计算有限公司 | 网络流量控速的方法以及装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101039270A (zh) * | 2007-03-12 | 2007-09-19 | 杭州华为三康技术有限公司 | 支持多通道数据传输的数据传输装置及方法 |
CN101499964A (zh) * | 2008-01-28 | 2009-08-05 | 华为技术有限公司 | 提高cpri接口传输带宽利用率的方法、cpri接口处理模块和设备 |
-
2010
- 2010-12-29 CN CN201010613149A patent/CN102065015B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101039270A (zh) * | 2007-03-12 | 2007-09-19 | 杭州华为三康技术有限公司 | 支持多通道数据传输的数据传输装置及方法 |
CN101499964A (zh) * | 2008-01-28 | 2009-08-05 | 华为技术有限公司 | 提高cpri接口传输带宽利用率的方法、cpri接口处理模块和设备 |
Also Published As
Publication number | Publication date |
---|---|
CN102065015A (zh) | 2011-05-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102065015B (zh) | 一种数据传输方法、网络设备以及装置 | |
CN103081434B (zh) | 智能存储器 | |
CN101227402B (zh) | 聚合链路流量分担方法及装置 | |
US7916718B2 (en) | Flow and congestion control in switch architectures for multi-hop, memory efficient fabrics | |
CN104885420B (zh) | 用于管理多个数据分组的方法、系统和介质 | |
CN101834790B (zh) | 一种基于多核处理器的流量控制方法和多核处理器 | |
CN100463451C (zh) | 一种网络数据流的多维队列调度与管理方法 | |
CN101170512B (zh) | 报文业务处理方法 | |
CN103139103B (zh) | 一种网络拥塞的控制方法及装置 | |
US7680039B2 (en) | Network load balancing | |
CN103023806B (zh) | 共享缓存式以太网交换机的缓存资源控制方法及装置 | |
CN101692648B (zh) | 一种队列调度方法及系统 | |
WO2012145841A1 (en) | Hierarchical profiled scheduling and shaping | |
CN103748845B (zh) | 报文发送方法、接收方法、装置及系统 | |
CN103873550A (zh) | 用于ecu和/或测量设备之间的数据传输的方法 | |
CN102811176B (zh) | 一种数据流量控制方法和装置 | |
CN107948103A (zh) | 一种基于预测的交换机pfc控制方法及控制系统 | |
CN102932275A (zh) | 一种应用于容延时网络的优先级报文转发方法 | |
CN101714947A (zh) | 一种可扩展的全流优先级调度方法 | |
Khan et al. | Integration challenges of facilities-layer DCC for heterogeneous V2X services | |
CN104243348B (zh) | 一种数据处理方法和装置 | |
CN105873233A (zh) | 基于分层调度的IEEE802.11ax接入增强方法 | |
CN101527678A (zh) | 基于模糊流感知的多业务综合区分控制方法 | |
CN109995608B (zh) | 网络速率计算方法和装置 | |
CN100370787C (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 | ||
CP01 | Change in the name or title of a patent holder |
Address after: Cangshan District of Fuzhou City, Fujian province 350002 Jinshan Road No. 618 Garden State Industrial Park 19 floor Patentee after: RUIJIE NETWORKS CO., LTD. Address before: Cangshan District of Fuzhou City, Fujian province 350002 Jinshan Road No. 618 Garden State Industrial Park 19 floor Patentee before: Fujian Xingwangruijie Network Co., Ltd. |
|
CP01 | Change in the name or title of a patent holder |