CN113709058A - 一种数据传输方法 - Google Patents

一种数据传输方法 Download PDF

Info

Publication number
CN113709058A
CN113709058A CN202110842705.8A CN202110842705A CN113709058A CN 113709058 A CN113709058 A CN 113709058A CN 202110842705 A CN202110842705 A CN 202110842705A CN 113709058 A CN113709058 A CN 113709058A
Authority
CN
China
Prior art keywords
sub
equipment
message
link
logic
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.)
Pending
Application number
CN202110842705.8A
Other languages
English (en)
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.)
TP Link Technologies Co Ltd
Original Assignee
TP Link Technologies 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 TP Link Technologies Co Ltd filed Critical TP Link Technologies Co Ltd
Priority to CN202110842705.8A priority Critical patent/CN113709058A/zh
Publication of CN113709058A publication Critical patent/CN113709058A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2441Traffic characterised by specific attributes, e.g. priority or QoS relying on flow classification, e.g. using integrated services [IntServ]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W24/00Supervisory, monitoring or testing arrangements
    • H04W24/04Arrangements for maintaining operational condition
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/10Flow control between communication endpoints

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

本发明提供了一种数据传输方法,包括:逻辑设备对接收到的报文按照预设的识别方式识别其流量类型;所述逻辑设备对已识别出流量类型的报文,确定其传输策略;所述传输策略包括链路备份、链路叠加、数据冗余;所述逻辑设备按照所述传输策略将所述报文传输至另一逻辑设备;其中,所述逻辑设备和另一逻辑设备分别位于冗余链路两端。相对于传统的单条冗余链路传输数据的方式,可适用于单机/分布式冗余链路场景,通过链路备份、链路叠加、数据冗余等技术,可以实现根据流量的实际情况采用多条冗余的链路传输数据,从而有效提高传输的可靠性和实时性。

Description

一种数据传输方法
技术领域
本发明涉及通信技术领域,尤其涉及一种数据传输方法。
背景技术
在现有的无线通信中,回传链路(backhaul)指的是终端设备与终端设备之间的通信连接。而为了保持网络的稳定性,在多台终端设备组成的网络环境中,通常都使用一些备份连接,这里的备份连接也称为备份链路或者冗余链路。在数据传输过程中,一般是选择终端设备与终端设备之间的最短回传链路进行传输,当出现当前的最短回传链路不可用的时候,可以再从这些冗余链路中再找出一条合适的链路链接到终端设备。但是,现有链路冗余技术仅能够保证数据在多条冗余链路上能够正常传输,而现有链路冗余技术使数据可以在多条冗余链路上能够正常传输,一定程度上保障可靠性和实时性,但有待于进一步提高。
发明内容
针对上述问题,本发明的目的在于提供一种数据传输方法,其能有效提高数据传输的可靠性和实时性。
第一方面,本发明实施例提供了一种数据传输方法,包括:
逻辑设备对接收到的报文按照预设的识别方式识别其流量类型;
所述逻辑设备对已识别出流量类型的报文,确定其传输策略;所述传输策略包括链路备份、链路叠加、数据冗余;
所述逻辑设备按照所述传输策略将所述报文传输至另一逻辑设备;其中,所述逻辑设备和另一逻辑设备分别位于冗余链路两端。
作为上述方案的改进,所述识别方式包括:按MAC地址的二元组识别流量的方式、按传输协议的五元组识别流量的方式、按报文的负载特征或流量特征识别流量的方式以及按特定端口号识别流量的方式。
作为上述方案的改进,所述方法还包括以下设备聚合过程:
对于位于冗余链路同一端的所有子设备,将一个所述子设备配置为主设备,其他所述子设备配置为从设备;
所述主设备周期性广播扫描报文;
所述从设备响应于所述扫描报文,向所述主设备返回应答报文;
所述主设备响应于所述应答报文,将所述从设备添加到子设备列表,并向所述从设备进行设备信息同步;其中,所述主设备和其子设备列表中的从设备聚合成一逻辑设备。
作为上述方案的改进,所述对于位于冗余链路同一端的所有子设备,将一个所述子设备配置为主设备,其他所述子设备配置为从设备,包括:
任一所述子设备周期性向其他所述子设备广播探测报文;所述探测报文包括子设备的MAC地址;
当任一所述子设备接收到其他所述子设备广播的探测报文时,提取所述探测报文中的MAC地址,并将所述探测报文中的MAC地址与任一所述子设备自身的MAC地址进行比较;
当所述探测报文中的MAC地址大于任一所述子设备自身的MAC地址时,将任一所述子设备配置为从设备,将发出所述探测报文的所述子设备配置为主设备。
作为上述方案的改进,所述方法还包括:
当所述主设备未接收到任一所述从设备发送的应答报文时,从所述子设备列表中移除所述从设备,并停止向所述从设备进行设备信息同步;
或者,
当所述从设备未接收到所述主设备发送的扫描报文时,清除所述主设备向所述从设备发送的数据,并解除与所述主设备之间的聚合关系。
作为上述方案的改进,当所述传输策略为所述数据冗余时,所述逻辑设备按照所述传输策略将所述报文传输至另一逻辑设备,包括:
所述逻辑设备对接收到的报文进行复制,得到若干份相同的报文;
所述逻辑设备对本地存储的子设备列表中的子设备所属的冗余链路各分配一份所述报文,以传输至位于所述冗余链路另一端的逻辑设备。
作为上述方案的改进,所述方法还包括:
当所述逻辑设备接收到所述报文时,对所述报文进行去重。
作为上述方案的改进,所述方法还包括:
当所述逻辑设备接收到的报文为多发报文时,对其对应的所有子设备开启报文多发功能。
作为上述方案的改进,所述当所述逻辑设备接收到所述报文时,对所述报文进行去重,包括:
对于所述逻辑设备对应的所有子设备,提取接收到的报文的源IP、IP的ID值和对应传输协议的校验码;
根据所述源IP、IP的ID值和对应传输协议的校验码,确定其去重队列中是否缓存有与接收到的报文相同的报文;
若是,则丢弃接收到的报文;
若否,则把接收到的报文添加到所述去重队列中。
作为上述方案的改进,当所述传输策略为所述链路叠加时,所述逻辑设备按照所述传输策略将所述报文传输至另一逻辑设备,包括:
获取所述逻辑设备对应的所有子设备所属的冗余链路的负载信息,并将每个所述子设备所属冗余链路的负载信息同步到其他子设备;
主设备根据每个所述子设备的冗余链路的负载信息,确定每个所述子设备的冗余链路的负载状态;
主设备根据每个所述子设备的冗余链路的负载状态以及其预先配置的优先级,确定流量调整策略;
将所述报文按照所述流量调整策略调整到相应冗余链路上,以将所述报文传输至位于相应冗余链路另一端的逻辑设备。
作为上述方案的改进,当所述传输策略为所述链路备份时,所述逻辑设备按照所述传输策略将所述报文传输至另一逻辑设备,包括:
根据所述逻辑设备对应的所有子设备所属的冗余链路的质量信息和负载信息,确定所述逻辑设备的主冗余链路和备份冗余链路;
所述逻辑设备将所述报文分配到所述主冗余链路上进行传输,并在主冗余链路异常时将所述报文调整到所述备份冗余链路上进行传输;
当发生冗余链路切换时,所述逻辑设备将所述主冗余链路对应的缓存队列上缓存的流量转发到所述备份链路进行重新传输。
作为上述方案的改进,所述方法还包括:
判断所述主冗余链路是否满足任一预设的链路异常条件;
当所述主冗余链路满足任一所述链路异常条件时,确定所述主冗余链路异常;其中,所述链路异常条件包括:所述主冗余链路两端的子设备断开连接、所述主冗余链路的协商速率小于第一阈值且信号强度小于第二阈值、所述主冗余链路在设定时间内的无线丢包率大于第三阈值且时延增量大于第四阈值、主冗余链路发出无线层探测报文超过设定阈值时间未收到应答报文。
作为上述方案的改进,所述方法还包括:
所述主设备和其子设备列表中的从设备聚合成一逻辑设备后,所述主设备周期性向其子设备列表中的从设备发送逻辑设备的网络接口表、冗余链路表以及转发表。
作为上述方案的改进,,所述方法还包括:
对于转发报文给其他子设备的子设备,对所述报文进行封装,并将封装后的报文转发给其他子设备;所述特定封装内容包括:发送报文的子设备的MAC地址、接收报文的子设备的MAC地址、发送报文的子设备对应的逻辑设备收包网络接口以及接收报文的子设备对应的逻辑设备收包网络接口;
其他子设备对接收到的报文解封装。
作为上述方案的改进,所述对于转发报文给其他子设备的子设备,对所述报文进行封装,并将封装后的报文转发给其他子设备,包括:
所述子设备判断封装后的报文的长度是否超过子设备间通信链路所支持的MTU大小;
若否,则所述子设备将封装后的报文通过子设备间通信链路传输到对应的其他子设备;
若是,则所述子设备对报文进行拆分,得到若干个分片报文;
所述子设备根据所述特定封装内容对若干个所述分片报文进行封装;
所述子设备将若干个封装后的分片报文通过子设备间通信链路传输到对应的其他子设备。
作为上述方案的改进,所述其他子设备对接收到的报文解封装,包括:
其他子设备对接收到的若干个分片报文解封装,获得若干个分片报文;
将所述若干分片报文进行重组,得到所述报文。
作为上述方案的改进,所述方法还包括:
所述逻辑设备判断从多条冗余链路收到同一IP地址的报文是否对应至少两个MAC地址;
若是,则将所述至少两个MAC地址转换为同一MAC地址。
相对于现有技术,本发明实施例的有有益效果在于:逻辑设备对接收到的报文按照预设的识别方式识别出其流量类型;所述逻辑设备对已识别出的流量类型的报文,确定其传输策略;所述传输策略包括链路备份、链路叠加、数据冗余;所述逻辑设备按照所述传输策略将所述报文传输至另一逻辑设备;其中,所述逻辑设备和另一逻辑设备分别位于冗余链路两端。相对于传统的单条冗余链路传输数据的方式,可适用于单机/分布式冗余链路场景,通过链路备份、链路叠加、数据冗余等技术,实现采用多条冗余链路传输数据,可以根据实际选择有效提高传输的可靠性和实时性。
附图说明
为了更清楚地说明本发明的技术方案,下面将对实施方式中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明第一实施例提供的一种数据传输方法的流程图;
图2是本发明数据冗余的传输示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1,本发明实施例提供的一种数据传输方法的流程图,所述数据传输方法,具体包括:
S1:逻辑设备对接收到的报文按照预设的识别方式识别其流量类型;
S2:所述逻辑设备对已识别出流量类型的报文,确定其传输策略;所述传输策略包括链路备份、链路叠加、数据冗余;
S3:所述逻辑设备按照所述传输策略将所述报文传输至另一逻辑设备;其中,所述逻辑设备和另一逻辑设备分别位于冗余链路两端。
示例性的,所述流量的识别方式包括但不限于按源MAC、目的MAC二元组识别、按TCP/UDP等传输协议的五元组识别、按任意报文的负载特征或流量特征识别以及按特定端口号识别。对于逻辑设备接收到的报文,通过不同的识别方式识别出其流量类型,针对识别出的不同流量,标识其流量类型,所述逻辑设备根据其标识的流量类型,选择不同的传输策略,例如采用TCP/UDP的五元组识别出的流量,其中的高吞吐流量采用链路叠加,其中的低吞吐流量采用数据冗余,或者,全部流量均采用数据冗余。在本发明实施例中,使位于冗余链路同一端的所有子设备协同工作,对外表现为一个逻辑设备,从而使单机/分布式冗余链路场景的数据传输方案保持一致,相对于传统的单条冗余链路传输数据的方式,可适用于单机/分布式冗余链路场景,通过链路备份、链路叠加、数据冗余等技术,实现采用多条冗余链路传输数据,可以根据实际选择有效提高传输的可靠性和实时性,同时还可以提高传输的带宽。
进一步的,所述识别方式包括:按MAC地址的二元组识别流量的方式、按传输协议的五元组识别流量的方式、按报文的负载特征或流量特征识别流量的方式以及按特定端口号识别流量的方式。
其中,负载特征指通过报文的特定负载数据识别报文属于某种特殊应用,例如解析发现报文包含HTTP协议文本,文本中是某测速工具的应用层协议。流量特征指通过整个流量的速率特征识别其可能属于哪种流量,例如访问网页流量一般是突发性小流量,游戏流量一般是持续性小流量,文件下载流量一般是持续性大流量等。
示例性的,按照MAC地址识别出的流量,可以使用链路叠加的方式进行传输。识别到终端进行双发的流量(例如王者荣耀),或通过传输协议识别出的流量(例如IPC视频流量),可以使用数据冗余的方式传输传输;其中通过传输协议的五元组识别出的高吞吐量的流量,除了数据冗余的方式外,还可以可以使用链路叠加的方式进行传输。其余的流量识别方式,例如按报文的负载特征或流量特征识别出的流量,可以采用链路备份的方式传输。每个冗余链路对应的设备内部均维护一流量转发表,每个流量对应流量转发表中的一个转发条目。通过为每个流量对应的转发条目配置标记,标识每个流量的传输策略是数据冗余、链路叠加还是链路备份,实现每个流量可以按不同方式传输。
其中,链路备份可以做到选择当前最佳的冗余链路,在当前冗余链路异常时切换到备份冗余链路;链路叠加可以将不同流量分配到不同冗余链路,提高冗余链路整体吞吐量;数据冗余串将相同的流量在每个冗余链路上各传输一份,任何冗余链路异常导致数据丢失时,其他冗余链路还会有相同的数据同时在传输,可以最大程度的保证传输的实时性和可靠性。
在一种可选的实施例中,所述方法还包括以及下设备聚合过程:
对于位于冗余链路同一端的所有子设备,将一个所述子设备配置为主设备,其他所述子设备配置为从设备;
所述主设备周期性广播扫描报文;
所述从设备响应于所述扫描报文,向所述主设备返回应答报文;
所述主设备响应于所述应答报文,将所述从设备添加到子设备列表,并向所述从设备进行设备信息同步;其中,所述主设备和其子设备列表中的从设备聚合成一逻辑设备。
进一步的,所述对于位于冗余链路同一端的所有子设备,将一个所述子设备配置为主设备,其他所述子设备配置为从设备,包括:
任一所述子设备周期性向其他所述子设备广播探测报文;所述探测报文包括子设备的MAC地址;
当任一所述子设备接收到其他所述子设备广播的探测报文时,提取所述探测报文中的MAC地址,并将所述探测报文中的MAC地址与任一所述子设备自身的MAC地址进行比较;
当所述探测报文中的MAC地址大于任一所述子设备自身的MAC地址时,将任一所述子设备配置为从设备,将发出所述探测报文的所述子设备配置为主设备。
进一步的,所述方法还包括:
当所述主设备未接收到任一所述从设备发送的应答报文时,从所述子设备列表中移除所述从设备,并停止向所述从设备进行设备信息同步;
或者,
当所述从设备未接收到所述主设备发送的扫描报文时,清除所述主设备向所述从设备发送的数据,并解除与所述主设备之间的聚合关系。
对于分布式冗余链路场景,位于冗余链路同一端的所有子设备协同工作并对外表现为一个逻辑设备,同一逻辑设备的子设备间通过子设备通信链路相连,子设备之间的交互数据通过子设备通信链路传输,而不同逻辑设备间的子设备通过冗余链路相连。子设备包括主设备和从设备两种角色,组成同一个逻辑设备的子设备中具有一个主设备,由主设备总控、协调所有子设备实现逻辑设备功能。其中,对于位于冗余链路同一端的所有子设备之间的设备聚合过程包括角色选择和子设备发现两个阶段:
角色选择阶段:子设备周期性广播发送含有自身设备MAC地址的报文,并基于各子设备MAC地址与自身设备的MAC地址进行猜拳,即比较MAC地址的大小,胜出的子设备担任主设备。此外,也可以通过用户配置等方式指定某一子设备作为主设备,跳过角色选择阶段。
子设备发现阶段:由主设备周期性广播发送扫描报文,所有从设备向主设备回复应答报文。当主设备收到从设备的应答报文后,将从设备加入自身的子设备列表中,并对加入所述子设备列表的从设备进行设备信息同步。此外,主设备还可以将扫描到的从设备上报给用户,由用户选择是否聚合相应的从设备,并在接收到用户返回的确定聚合指令是将扫描到的从设备加入到子设备列表中。
对于已经聚合的设备,如果主设备一段时间没有收到从设备的返回的应答报文,则认为从设备离线,将从设备从子设备列表中移除,不再对其进行设备信息同步。如果从设备一段时间没有收到主设备的任何报文,则认为主设备离线,清除主设备向从设备同步的所有数据,解除聚合关系。通过主设备周期性广播发送的扫描报文和设备信息同步报文以及从设备的回复报文,具有保活作用。
在本发明实施例中,通过主从设备聚合,解决分布式冗余链路场景下的子设备间协同工作问题,可以有效降低组网的复杂性。
在一种可选的实施例中,所述方法还包括:
所述主设备和其子设备列表中的从设备聚合成一逻辑设备后,所述主设备周期性向其子设备列表中的从设备发送逻辑设备的网络接口表、冗余链路表以及转发表。
在本发明实施例中,子设备完成设备聚合后,由主设备周期性向所有子设备列表中的从设备进行设备信息同步。每次设备信息同步操作中,搜集所有子设备的网络接口、冗余链路以及关联客户端信息进行整合,更新逻辑设备的网络接口表、冗余链路表以及转发表,并同步给所有从设备。
对于冗余链路,其每端分别对应每个子设备的网络接口,但在逻辑设备上只对应一个逻辑设备的网络接口。各台子设备之间需要交换各自所属冗余链路的质量信息和负载信息。
当从设备的信息发生变化时,例如端口信息变更、冗余链路状态变更、客户端所在端口位置变更等,将变更的内容通知主设备,主设备更新网络接口表、冗余链路表、转发表后,重新同步给所有从设备。通过上述网络接口表、冗余链路表以及转发表、冗余链路的质量和负载信息的同步更新,可以实现多台设备之间的协同工作。
在一种可选的实施例中,当所述传输策略为所述数据冗余时,所述逻辑设备按照所述传输策略将所述报文传输至另一逻辑设备,包括:
所述逻辑设备对接收到的报文进行复制,得到若干份相同的报文;
所述逻辑设备对本地存储的子设备列表中的子设备所属的冗余链路各分配一份所述报文,以传输至位于所述冗余链路另一端的逻辑设备。
在本发明实施例中,当逻辑设备需要将接收的报文发往冗余链路时,复制报文并在所有冗余链路上各发一份,在冗余链路另一端对应逻辑设备接收报文时,对报文进行去重。
在一种可选的实施例中,所述方法还包括:
当所述逻辑设备接收到所述报文时,对所述报文进行去重。
进一步的,所述当所述逻辑设备接收到所述报文时,对所述报文进行去重,包括:
对于所述逻辑设备对应的所有子设备,,提取接收到的报文的源IP、IP的ID值和对应传输协议的校验码;
根据所述源IP、IP的ID值和对应传输协议的校验码,确定其去重队列中是否缓存有与接收到的报文相同的报文;
若是,则丢弃接收到的报文;
若否,则把接收到的报文添加到所述去重队列中。
以图2为例,以Dev2为源设备、Dev1为目的设备,Dev1.1、1.2、2.1、2.2、3.1、3.2为中间设备,可见,由于进行多发,中间设备可能接收到重复的报文。因此,在每个设备接收到报文时,需要进行去重,具体的报文去重过程如下:
在每个子设备上设置一个去重队列,用于缓存接收到的报文;
每新接收到一个报文时,从该报文中提取出源IP、IP的ID值和TCP/UDP的校验码;
将该报文中提取出源IP、IP的ID值和TCP/UDP的校验码与去重队列中缓存的报文的源IP、IP的ID值和TCP/UDP的校验码逐一进行比较;
若存在相同的源IP、IP的ID值和TCP/UDP的校验码,则将当前新接收到的报文丢弃;
若不存在相同的源IP、IP的ID值和TCP/UDP的校验码,则将当前新接收到的报文的源IP、IP的ID值和TCP/UDP的校验码作为队列成员加入去重队列;
其中,当去重队列长度达到预先设置的长度上限时,有新队列成员加入时,需要最早入队的队列成员的出队;或者,当去重队列中的报文达到最大去重次数时,所述报文出队。同时,当队列成员入队时间超过预先设置的老化时间时,将超过老化时间的队列成员出队。其中,所述长度上限大于各子设备的无线驱动队列长度,例如所述长度上限是无线驱动队列长度的数倍。从而使得当去重队列中的报文被后来的报文挤掉时,该报文早已从无线驱动队列中出队。
本发明实施例采用源IP+IP ID+TCP/UDP校验码和去重队列的方法进行去重,相比于传统的方法,由于不用设置报文最小/最大回绕时间,应用于诸如无线冗余链路这种重复报文时延差波动大的去重场景时,能显著降低漏去重率和误去重率。
在其他实施例中,还可以采用还可疑使用Hash、MD5等算法计算校验码来代替对应传输协议的校验码(即TCP/UDP校验码)。
在一种可选的实施例中,所述方法还包括:
当所述逻辑设备接收到的报文为多发报文时,对其对应的所有子设备开启报文多发功能。
需要说明的是,当识别到报文包含特定端口号、特定协议、TOS标记位时,在发往冗余链路的方向开启多发。当识别到从终端网络冗余链路收到的报文为多发报文,同时向发往终端网络和发往冗余链路两个方向同时开启多发;识别到从冗余链路收到的多发流量,向所有发往冗余链路的方向开启多发。
本发明实施例通过报文多发的传递式触发,在实际应用时,冗余链路末端的设备和中间设备同时启用报文多发,在其中一台设备识别流量需要开启多发时,需要通知其他设备同步开启多发,可以实现多台设备协同多发去重。
在一种可选的实施例中,当所述传输策略为所述链路叠加时,所述逻辑设备按照所述传输策略将所述报文传输至另一逻辑设备,包括:
获取所述逻辑设备对应的所有子设备所属的冗余链路的负载信息,并将每个所述子设备所属冗余链路的负载信息同步到其他子设备;
主设备根据每个所述子设备的冗余链路的负载信息,确定每个所述子设备的冗余链路的负载状态;
主设备根据每个所述子设备的冗余链路的负载状态以及其预先配置的优先级,确定流量调整策略;
将所述报文按照所述流量调整策略调整到相应冗余链路上,以将所述报文传输至位于相应冗余链路另一端的逻辑设备。
链路叠加实际上是指同时考虑回路链路的优先级和负载均衡的叠加策略。
对于无线链路,所述负载信息包括信号强度、协商速率、信道占用率、折算因子等。通过计算协商速率、信道占用率、折算因子的乘积,得到所述冗余链路的带宽占用率,然后通过将所述冗余链路的带宽占用率与预设的第一阈值进行比较;若所述冗余链路的带宽占用率大于所述第一阈值,则说明所述冗余链路过载;否则,说明所述冗余链路未过载。
对于有线链路,所述负载信息包括吞吐量总量、协商速率。通过计算吞吐量总量与协商速率的比值,得到所述冗余链路的带宽占用率。同理若所述冗余链路的带宽占用率大于所述第一阈值,则说明所述冗余链路过载;否则,说明所述冗余链路未过载。
冗余链路预先设置了优先级,在采用链路叠加方式传输流量时,所述流量调整策略确定流程如下:
根据高优先级的冗余链路的负载信息,进行过载判断,若高优先级的冗余链路未过载,则从低优先级的冗余链路上调整流量到高优先级的冗余链路;若优先级的冗余链路过载,则将高优先级的冗余链路的流量调整到未过载低优先级冗余链路。
对于未过载的高优先级的冗余链路,在调整流量时,从低优先级的冗余链路上的流量中选择一个小于高优先级的冗余链路的空闲带宽的流量,并调整至高优先级的冗余链路。其中,目标冗余链路的优先级高于源冗余链路时,优先调整吞吐量小的流量至目标冗余链路,反之优先调整吞吐量大的流量。
在本发明实施例中,通过结合冗余链路的负载信息和优先级,可将不同的流量分配到不同的冗余链路上进行传输,从而实现流量在冗余链路上的负载均衡,提高吞吐量。
在一种可选的实施例中,当所述传输策略为所述链路备份时,所述逻辑设备按照所述传输策略将所述报文传输至另一逻辑设备,包括:
根据所述逻辑设备对应的所有子设备所属的冗余链路的质量信息和负载信息,确定所述逻辑设备的主冗余链路和备份冗余链路;
所述逻辑设备将所述报文分配到所述主冗余链路上进行传输,并在主冗余链路异常时将所述报文调整到所述备份冗余链路上进行传输;
当发生冗余链路切换时,所述逻辑设备将所述主冗余链路对应的缓存队列上缓存的流量转发到所述备份链路进行重新传输。
为了支持多台在设备协同工作,采用链路备份进行传输时,子设备间需要交换以下数据和信息:
各子设备所属的冗余链路的质量和负载信息,包括信号强度、协商速率、信道占用率等。
其中一个设备作为主设备,其他设备作为从设备,主设备决策当前使用的主冗余链路后,将决策结果同步到从设备。
发生链路切换时,如果主冗余链路和备份链路在不同设备上,将维护主冗余链路所在设备上的缓存队列中的报文发往备份链路所在设备,由该设备转发。
进一步的,所述方法还包括:
判断所述主冗余链路是否满足任一预设的链路异常条件;
当所述主冗余链路满足任一所述链路异常条件时,确定所述主冗余链路异常;其中,所述链路异常条件包括:所述主冗余链路两端的子设备断开连接、所述主冗余链路的协商速率小于第一阈值且信号强度小于第二阈值、所述主冗余链路在设定时间内的无线丢包率大于第三阈值且时延增量大于第四阈值、主冗余链路发出无线层探测报文超过设定阈值时间未收到应答报文。
在本发明实施例中,从所述逻辑设备的多条冗余链路中指定一个冗余链路为主冗余链路,采用链路备份策略传输的流量,逻辑设备在接收到报文时,只发往主冗余链路,当作为主冗余链路出现异常时,将主冗余链路切换到其他未出现异常的冗余链路。
其中,判断主冗余链路异常的指标包括:主冗余链路两端的子设备断开连接、主冗余链路的协商速率小于第一阈值且信号强度小于第二阈值、主冗余链路短时间的无线丢包率大于第三阈值且时延增量大于第四阈值;主冗余链路发出无线层探测报文超过设定阈值时间未收到应答报文。
其中,每个子设备定时向自己的所有冗余链路发送无线层探测报文,统计收到无线层探测报文时延的平均值和标准差。其应答报文的设定阈值时间是基于平均延时和最大时延计算,取主冗余链路时延平均值、主冗余链路时延标准差、备份冗余链路时延平均值、备份冗余链路时延标准差四者之和乘以设定系数的乘积作为所述设定阈值时间。
第一阈值为备份链路协商速率乘以设定系数的乘积;
第二阈值为备份链路信号强度减去设定常量得到的值;
第三阈值为备份链路无线丢包率乘以设定系数的乘积;
第四阈值为备份链路平均时延乘以设定系数的乘积。
只要满足上述任意一个条件,即可确定主冗余链路异常并进行链路切换,本发明实施例基于无线层级做丢包率和时延统计,对于识别主冗余链路通信异常的响应速度更快。
逻辑设备为主冗余链路维护一个备份队列,报文采用流水式出入队方法,在队列满时后入队的报文会挤掉先入队的报文。当主冗余链路切换时,将备份队列的报文发给新主冗余链路,减少旧主冗余链路异常导致的丢包。
其中,备份队列的报文可以在以下情形中提前出队,减少主冗余链路切换时的重复发包情形:备份队列的报文已被无线ACK帧确认或备份队列的报文已被TCP ACK报文及其SACK选项确认。
在一种可选的实施例中,所述方法还包括:
对于转发报文给其他子设备的子设备,对所述报文进行封装,并将封装后的报文转发给其他子设备;所述特定封装内容包括:发送报文的子设备的MAC地址、接收报文的子设备的MAC地址、发送报文的子设备对应的逻辑设备收包网络接口以及接收报文的子设备对应的逻辑设备收包网络接口;
其他子设备对接收到的报文解封装。
进一步的,所述对于转发报文给其他子设备的子设备,对所述报文进行封装,并将封装后的报文转发给其他子设备,包括:
所述子设备判断封装后的报文的长度是否超过子设备间通信链路所支持的MTU大小;
若否,则所述子设备将封装后的报文通过子设备间通信链路传输到对应的其他子设备;
若是,则所述子设备对报文进行拆分,得到若干个分片报文;
所述子设备根据所述特定封装内容对若干个所述分片报文进行封装;
所述子设备将若干个封装后的分片报文通过子设备间通信链路传输到对应的其他子设备。
进一步的,所述其他子设备对接收到的报文解封装,包括:
其他子设备对接收到的若干个分片报文解封装,获得若干个分片报文;
将所述若干分片报文进行重组,得到所述报文。
示例性的,如果一台子设备通过子设备间通信链路将流量报文转发给另一台子设备,子设备间通信链路上的第三方通信设备就可能会受到影响。例如,两台子设备接入到同一台交换机上,一台子设备将终端的报文转发给另一台子设备时,报文会经过交换机,导致交换机的转发表在学习终端位置时出现错误,使网络通信异常。为了避免这一网络通信异常问题,本发明实施例采用隧道透传技术,通过报文封装的方式来避免报文对子设备间通信链路上的第三方通信设备产生影响,具体的,在使转发报文在子设备间通信链路上传输时,对报文进行封装,封装内容包括:发送报文的子设备的MAC地址、接收报文的子设备的MAC地址、发送报文的子设备对应的逻辑设备收包网络接口以及接收报文的子设备对应的逻辑设备收包网络接口。进一步还可包括私有协议号、报文ID、报文长度、帧偏移、帧长度等。
转发报文从一台子设备发送到子设备间通信链路时,对报文进行封装;另一台子设备收到封装后报文时,对报文进行解封装,去掉封装的报文首部。其中,由于报文封装会导致报文长度增加。当封装后的报文长度超过子设备间通信链路的MTU大小时,对报文进行拆分,在收包时对分片报文进行重组。
在本发明实施例中,通过对传输的流量报文进行封装,可以避免设备间数据传输对子设备间通信链路上的第三方通信设备造成影响,保证网络通信正常。
在一种可选的实施例中,所述方法还包括:
所述逻辑设备判断从多条冗余链路收到同一IP地址的报文是否对应至少两个MAC地址;
若是,则将所述至少两个MAC地址转换为同一MAC地址。
若冗余链路是采用三地址桥接方式的无线链路,对于同一个下游客户端IP地址的多个报文,如果同时走不同的冗余链路,经过冗余链路后,报文会被转换为不同的MAC地址,使网络中同一IP地址对应不同MAC地址,易引发IP地址冲突。在本发明实施例中,将冗余链路另一端的另一逻辑设备的IP地址对应的MAC地址转换为同一MAC地址,可以有效避免IP地址冲突的问题。
当设备间存在多条冗余链路时,多条冗余链路之间会形成环路,避免冗余冗余链路的环路,需要进行如下设置:
只对其中一条冗余链路开启广播报文收发;
从一条冗余链路收到的报文不允许转发至其他冗余链路;
从一条冗余链路发出的报文不允许从其他冗余链路收回;
为了支持环路避免在多台子设备协同时能够有效工作,设备间需要交换以下数据和信息:
其中一个子设备作为主设备,其他子设备作为从设备,主设备决策开启广播报文收发的冗余链路后,将结果同步给所有从设备。
一个子设备将报文发给另一个子设备时,通过隧道透传技术对报文进行封装,增加报文对应逻辑设备的收包网络端口和发包网络端口信息。
相对于现有技术,本发明实施例的有益效果在于:
1、相对于传统的单条冗余链路传输数据的方式,通过链路备份、链路叠加、数据冗余等技术,实现采用多条冗余的冗余链路传输数据,可以根据实际选择有效提高传输的可靠性和实时性、或者提高传输的带宽。
2、通过进行主从设备聚合,在为分布式冗余链路场景的数据传输提供解决方案的同时,可以有效降低设备组网的复杂性。
3、通过隧道透传技术对传输的流量报文进行封装,保证网络通信正常。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。

Claims (17)

1.一种数据传输方法,其特征在于,包括:
逻辑设备对接收到的报文按照预设的识别方式识别其流量类型;
所述逻辑设备对已识别出流量类型的报文,确定其传输策略;所述传输策略包括链路备份、链路叠加、数据冗余;
所述逻辑设备按照所述传输策略将所述报文传输至另一逻辑设备;其中,所述逻辑设备和另一逻辑设备分别位于冗余链路两端。
2.如权利要求1所述的数据传输方法,其特征在于,所述识别方式包括:按MAC地址的二元组识别流量的方式、按传输协议的五元组识别流量的方式、按报文的负载特征或流量特征识别流量的方式以及按特定端口号识别流量的方式。
3.如权利要求1所述的数据传输方法,其特征在于,所述方法还包括以下设备聚合过程:
对于位于冗余链路同一端的所有子设备,将一个所述子设备配置为主设备,其他所述子设备配置为从设备;
所述主设备周期性广播扫描报文;
所述从设备响应于所述扫描报文,向所述主设备返回应答报文;
所述主设备响应于所述应答报文,将所述从设备添加到子设备列表,并向所述从设备进行设备信息同步;其中,所述主设备和其子设备列表中的从设备聚合成一逻辑设备。
4.如权利要求3所述的数据传输方法,其特征在于,所述对于位于冗余链路同一端的所有子设备,将一个所述子设备配置为主设备,其他所述子设备配置为从设备,包括:
任一所述子设备周期性向其他所述子设备广播探测报文;所述探测报文包括子设备的MAC地址;
当任一所述子设备接收到其他所述子设备广播的探测报文时,提取所述探测报文中的MAC地址,并将所述探测报文中的MAC地址与任一所述子设备自身的MAC地址进行比较;
当所述探测报文中的MAC地址大于任一所述子设备自身的MAC地址时,将任一所述子设备配置为从设备,将发出所述探测报文的所述子设备配置为主设备。
5.如权利要求3所述的数据传输方法,其特征在于,所述方法还包括:
当所述主设备未接收到任一所述从设备发送的应答报文时,从所述子设备列表中移除所述从设备,并停止向所述从设备进行设备信息同步;
或者,
当所述从设备未接收到所述主设备发送的扫描报文时,清除所述主设备向所述从设备发送的数据,并解除与所述主设备之间的聚合关系。
6.如权利要求3所述的数据传输方法,其特征在于,当所述传输策略为所述数据冗余时,所述逻辑设备按照所述传输策略将所述报文传输至另一逻辑设备,包括:
所述逻辑设备对接收到的报文进行复制,得到若干份相同的报文;
所述逻辑设备对本地存储的子设备列表中的子设备所属的冗余链路各分配一份所述报文,以传输至位于所述冗余链路另一端的逻辑设备。
7.如权利要求3所述的数据传输方法,其特征在于,所述方法还包括:
当所述逻辑设备接收到所述报文时,对所述报文进行去重。
8.如权利要求3所述的数据传输方法,其特征在于,所述方法还包括:
当所述逻辑设备接收到的报文为多发报文时,对其对应的所有子设备开启报文多发功能。
9.如权利要求7所述的数据传输方法,其特征在于,所述当所述逻辑设备接收到所述报文时,对所述报文进行去重,包括:
对于所述逻辑设备对应的所有子设备,提取接收到的报文的源IP、IP的ID值和对应传输协议的校验码;
根据所述源IP、IP的ID值和对应传输协议的校验码,确定其去重队列中是否缓存有与接收到的报文相同的报文;
若是,则丢弃接收到的报文;
若否,则把接收到的报文添加到所述去重队列中。
10.如权利要求3所述的数据传输方法,其特征在于,当所述传输策略为所述链路叠加时,所述逻辑设备按照所述传输策略将所述报文传输至另一逻辑设备,包括:
获取所述逻辑设备对应的所有子设备所属的冗余链路的负载信息,并将每个所述子设备所属冗余链路的负载信息同步到其他子设备;
主设备根据每个所述子设备的冗余链路的负载信息,确定每个所述子设备的冗余链路的负载状态;
主设备根据每个所述子设备的冗余链路的负载状态以及其预先配置的优先级,确定流量调整策略;
将所述报文按照所述流量调整策略调整到相应冗余链路上,以将所述报文传输至位于相应冗余链路另一端的逻辑设备。
11.如权利要求3所述的数据传输方法,其特征在于,当所述传输策略为所述链路备份时,所述逻辑设备按照所述传输策略将所述报文传输至另一逻辑设备,包括:
根据所述逻辑设备对应的所有子设备所属的冗余链路的质量信息和负载信息,确定所述逻辑设备的主冗余链路和备份冗余链路;
所述逻辑设备将所述报文分配到所述主冗余链路上进行传输,并在主冗余链路异常时将所述报文调整到所述备份冗余链路上进行传输;
当发生冗余链路切换时,所述逻辑设备将所述主冗余链路对应的缓存队列上缓存的流量转发到所述备份链路进行重新传输。
12.如权利要求11所述的数据传输方法,其特征在于,所述方法还包括:
判断所述主冗余链路是否满足任一预设的链路异常条件;
当所述主冗余链路满足任一所述链路异常条件时,确定所述主冗余链路异常;其中,所述链路异常条件包括:所述主冗余链路两端的子设备断开连接、所述主冗余链路的协商速率小于第一阈值且信号强度小于第二阈值、所述主冗余链路在设定时间内的无线丢包率大于第三阈值且时延增量大于第四阈值、主冗余链路发出无线层探测报文超过设定阈值时间未收到应答报文。
13.如权利要求3所述的数据传输方法,其特征在于,所述方法还包括:
所述主设备和其子设备列表中的从设备聚合成一逻辑设备后,所述主设备周期性向其子设备列表中的从设备发送逻辑设备的网络接口表、冗余链路表以及转发表。
14.如权利要求3所述的数据传输方法,其特征在于,所述方法还包括:
对于转发报文给其他子设备的子设备,对所述报文进行封装,并将封装后的报文转发给其他子设备;所述特定封装内容包括:发送报文的子设备的MAC地址、接收报文的子设备的MAC地址、发送报文的子设备对应的逻辑设备收包网络接口以及接收报文的子设备对应的逻辑设备收包网络接口;
其他子设备对接收到的报文解封装。
15.如权利要求14所述的数据传输方法,其特征在于,所述对于转发报文给其他子设备的子设备,对所述报文进行封装,并将封装后的报文转发给其他子设备,包括:
所述子设备判断封装后的报文的长度是否超过子设备间通信链路所支持的MTU大小;
若否,则所述子设备将封装后的报文通过子设备间通信链路传输到对应的其他子设备;
若是,则所述子设备对报文进行拆分,得到若干个分片报文;
所述子设备根据所述特定封装内容对若干个所述分片报文进行封装;
所述子设备将若干个封装后的分片报文通过子设备间通信链路传输到对应的其他子设备。
16.如权利要求14所述的数据传输方法,其特征在于,所述其他子设备对接收到的报文解封装,包括:
其他子设备对接收到的若干个分片报文解封装,获得若干个分片报文;
将所述若干分片报文进行重组,得到所述报文。
17.如权利权利要求1所述的数据传输方法,其特征在于,所述方法还包括:
所述逻辑设备判断从多条冗余链路收到同一IP地址的报文是否对应至少两个MAC地址;
若是,则将所述至少两个MAC地址转换为同一MAC地址。
CN202110842705.8A 2021-07-26 2021-07-26 一种数据传输方法 Pending CN113709058A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110842705.8A CN113709058A (zh) 2021-07-26 2021-07-26 一种数据传输方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110842705.8A CN113709058A (zh) 2021-07-26 2021-07-26 一种数据传输方法

Publications (1)

Publication Number Publication Date
CN113709058A true CN113709058A (zh) 2021-11-26

Family

ID=78650449

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110842705.8A Pending CN113709058A (zh) 2021-07-26 2021-07-26 一种数据传输方法

Country Status (1)

Country Link
CN (1) CN113709058A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115175173A (zh) * 2022-05-25 2022-10-11 北京国基科技股份有限公司 一种冗余通信系统及方法
CN115396383A (zh) * 2022-07-18 2022-11-25 伟乐视讯科技股份有限公司 一种多台设备传输码流中反向控制码流的方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101605091A (zh) * 2009-02-13 2009-12-16 华为技术有限公司 一种多端口负载分担方法、装置和网络系统
CN103023804A (zh) * 2012-12-18 2013-04-03 北京星网锐捷网络技术有限公司 一种聚合链路自适应流量负载均衡方法、装置及网络设备
CN103780510A (zh) * 2012-10-19 2014-05-07 中兴通讯股份有限公司 链路聚合组中流量路径的协商方法及装置
CN110798400A (zh) * 2019-10-23 2020-02-14 新华三信息安全技术有限公司 报文转发方法及装置
CN110912655A (zh) * 2019-12-24 2020-03-24 瑞斯康达科技发展股份有限公司 一种数据冗余备份方法、装置、设备及介质
CN111800336A (zh) * 2020-08-06 2020-10-20 通维数码科技(上海)有限公司 基于多通道网络链路聚合的路由传输实现方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101605091A (zh) * 2009-02-13 2009-12-16 华为技术有限公司 一种多端口负载分担方法、装置和网络系统
CN103780510A (zh) * 2012-10-19 2014-05-07 中兴通讯股份有限公司 链路聚合组中流量路径的协商方法及装置
CN103023804A (zh) * 2012-12-18 2013-04-03 北京星网锐捷网络技术有限公司 一种聚合链路自适应流量负载均衡方法、装置及网络设备
CN110798400A (zh) * 2019-10-23 2020-02-14 新华三信息安全技术有限公司 报文转发方法及装置
CN110912655A (zh) * 2019-12-24 2020-03-24 瑞斯康达科技发展股份有限公司 一种数据冗余备份方法、装置、设备及介质
CN111800336A (zh) * 2020-08-06 2020-10-20 通维数码科技(上海)有限公司 基于多通道网络链路聚合的路由传输实现方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
DUXINGXU: "M-LAG数据中心常见组网架构", pages 1 - 7, Retrieved from the Internet <URL:https://it.cha138.com/jingpin/show-124888.html> *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115175173A (zh) * 2022-05-25 2022-10-11 北京国基科技股份有限公司 一种冗余通信系统及方法
CN115396383A (zh) * 2022-07-18 2022-11-25 伟乐视讯科技股份有限公司 一种多台设备传输码流中反向控制码流的方法
CN115396383B (zh) * 2022-07-18 2023-08-11 伟乐视讯科技股份有限公司 一种多台设备传输码流中反向控制码流的方法

Similar Documents

Publication Publication Date Title
JP5976277B2 (ja) 伝送制御方法
JP4829896B2 (ja) データ破壊を避けることによる改善されたネットワーク性能のための方法、システム及び物品
JP4769896B2 (ja) Sar機能を有するサービス品質のためのシステム及び方法
KR101594304B1 (ko) 무선 통신 네트워크에서 다중경로 전송 접속을 위한 동적 서브플로우 제어
US11477130B2 (en) Transmission control method and apparatus
US8122140B2 (en) Apparatus and method for accelerating streams through use of transparent proxy architecture
CN108718283B (zh) 数据中心网络中集中式端网协调的tcp拥塞控制方法
JP5544430B2 (ja) 通信装置および通信システム
US20020141448A1 (en) Packet transfer apparatus and method
US8085669B2 (en) Session relay device and session relay method
US9590910B1 (en) Methods and apparatus for handling multicast packets in an audio video bridging (AVB) network
KR101504144B1 (ko) 다채널 패킷 송신을 위한 시스템 및 방법
CN113709058A (zh) 一种数据传输方法
JP2009147786A (ja) 通信装置、データフレームの送信制御方法及びプログラム
JP2003516041A (ja) スケジューリングおよびヘッダ圧縮を利用しパケット遅延を軽減させるための方法と装置
EP2772028A1 (en) Apparatus and method for selectively delaying network data flows
CN109120540B (zh) 传输报文的方法、代理服务器和计算机可读存储介质
CN115002023B (zh) 一种链路聚合方法、链路聚合装置、电子设备及存储介质
WO2006086691A2 (en) A network for providing a streaming service
KR20200083582A (ko) 실시간 전송 네트워크 혼잡 조건에 기초하여 데이터 전송 네트워크 프로토콜을 가속 또는 감속하기 위한 시스템 및 방법
EP3820088B1 (en) Method and network device for multi-path communication
KR20080073438A (ko) 차별적인 폐기 기준에 따른 데이터 블록 전송 방법
JP4434019B2 (ja) データ配信管理装置およびデータ配信管理方法
JP4953965B2 (ja) 通信システム、通信装置およびパケット伝送方法
CN103581137A (zh) Ecn代理设备和ecn通知方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination