CN113301000B - 数据传输方法、装置、介质及设备 - Google Patents
数据传输方法、装置、介质及设备 Download PDFInfo
- Publication number
- CN113301000B CN113301000B CN202010112818.8A CN202010112818A CN113301000B CN 113301000 B CN113301000 B CN 113301000B CN 202010112818 A CN202010112818 A CN 202010112818A CN 113301000 B CN113301000 B CN 113301000B
- Authority
- CN
- China
- Prior art keywords
- forwarding
- data
- servers
- udp
- configuration information
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/141—Setup of application sessions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/14—Multichannel or multilink protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2212/00—Encapsulation of packets
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本文是关于一种数据传输方法、装置、介质及设备,数据传输方法应用于第一SDK设备,包括:获取配置信息,所述配置信息包括自定义配置信息和/或调度中心的配置信息;根据所述配置信息,与N个转发服务器建立N路UDP协议的多链路UDP连接,其中N为大于等于1的整数;获取发送端的原始数据;封装所述原始数据,将所述原始数据的多个数据包经所述多链路UDP连接发送至所述N个转发服务器。本文提供的数据传输方法,通过多个路由链路发送数据,提高数据传输效率。
Description
技术领域
本文涉及数据传输技术领域,尤其涉及一种数据传输方法、装置、介质及设备。
背景技术
相关技术中,传统的网络连接,采取TCP或定制的UDP协议,仅适用稳定的网络环境和固定的场景。在TCP拥塞或UDP被运营商进行QoS限速后,就会导致网络连接长时间不稳定,影响网络服务的使用。尤其是国内用户访问国外网站时,TCP常常拥塞,UDP也时时丢包。为了保证服务质量,长期以来企业WAN网络互联通常采用运营商的物理专线或者MPLS VPN专线,但价格昂贵、部署周期长、业务不感知、运维效率低。或者,采用固定的路由、服务器、TCP/I P/UDP协议构建稳定的路由链路,当网络拥塞或丢包时,链路受到直接影响,连接不稳定,可用性差,解决该问题的方式则是通过运维人员下发配置切换链路,缺少及时性。
发明内容
为克服相关技术中存在的问题,本文提供一种数据传输方法、装置、介质及设备。
根据本文的第一方面,提供一种数据传输方法,包括获取配置信息,所述配置信息包括自定义配置信息和/或调度中心的配置信息;
根据所述配置信息,与N个转发服务器建立N路UDP协议的多链路UDP连接,其中N为大于等于1的整数;
获取发送端的原始数据;
封装所述原始数据,将所述原始数据的多个数据包经所述多链路UDP连接发送至所述N个转发服务器。
所述封装原始数据包括:
将原始数据按UDP协议封装为多个数据包,数据包协议头包括发送端的信息,聚合点的信息,接收端的信息。
数据传输方法还包括:
根据所述配置信息与所述N个转发服务器中的一个建立TCP连接;
当所述多链路UDP连接传输的聚合速率低于第一预设阈值,切换至所述TCP连接并发送所述原始数据;或者当所述TCP连接传输速率低于第二预设阈值,切换至所述多链路UDP连接并发送所述原始数据。
所述根据所述配置信息与所述N个转发服务器中的一个建立TCP连接包括:
根据所述调度中心的配置信息,获取所述N个转发服务器的网络状况,与所述网络状况最优的服务器建立TCP连接。
数据传输方法,应用于转发网络,所述转发网络包括调度中心和N个转发服务器;
所述调度中心获取可用服务器的网络状况,并确定N个转发服务器,基于所述N个转发服务器生成调度中心的配置信息,发送所述调度中心的配置信息至第一SDK设备,以使所述第一SDK设备与所述N个转发服务器建立N路UDP协议的多链路UDP连接;
所述N个转发服务器接收所述第一SDK设备的多个UDP数据包并转发至第二SDK设备;或者,接收所述第一SDK设备转发的TCP数据包,转发所述TCP数据包至接收端。
数据传输方法,应用于第二SDK设备,包括:
接收N个转发服务器转发的多个UDP数据包;
解析所述多个UDP数据包,获取发送端的信息,聚合点的信息,接收端的信息;
将同一发送端的UDP数据包,根据所述聚合点的信息进行聚合,聚合为原始数据;
根据所述接收端的信息,将所述原始数据发送至所述接收端。
根据本文的另一方面,提供一种数据传输装置,应用于第一SDK设备,包括:
配置模块,用于获取配置信息,所述配置信息包括自定义配置信息和/或调度中心的配置信息;
多链路UDP模块,用于根据所述配置信息,与N个转发服务器建立N路UDP协议的多链路UDP连接,其中N为大于等于1的整数;
原始数据获取模块,用于获取发送端的原始数据;
第一发送模块,用于封装原始数据,将所述原始数据的多个数据包经所述多链路UDP连接发送至所述N个转发服务器。
所述第一发送模块封装原始数据包括:
将原始数据按UDP协议封装为多个数据包,数据包协议头包括发送端的信息,聚合点的信息,接收端的信息。
数据传输装置,还包括:
TCP模块,用于根据所述配置信息与所述N个转发服务器中的一个建立TCP连接;
切换模块,用于当所述多链路UDP连接传输的聚合速率低于第一预设阈值,切换至所述TCP连接并发送所述原始数据;或者当所述TCP连接传输速率低于预设阈值,切换至所述多链路UDP连接并发送所述原始数据。
所述TCP模块根据所述配置信息与所述N个转发服务器中的一个建立TCP连接包括:
根据所述调度中心的配置信息,获取所述N个转发服务器的网络状况,与所述网络状况最优的服务器建立TCP连接。
数据传输装置,应用于转发网络,包括:
调度模块,用于获取可用服务器的网络状况,并确定N个转发服务器,基于所述N个转发服务器生成调度中心的配置信息,发送所述调度中心的配置信息至第一SDK设备,以使所述第一SDK设备与所述N个转发服务器建立N路UDP协议的多链路UDP连接;
转发模块,用于接收所述第一SDK设备的多个UDP数据包并转发至第二SDK设备;或者,接收第一SDK设备转发的TCP数据包,转发所述TCP数据包至接收端。
数据传输装置,应用于第二SDK设备,包括:
接收模块,用于接收N个转发服务器转发的多个UDP数据包;
解析模块,用于解析所述多个UDP数据包,获取发送端的信息,聚合点的信息,接收端的信息;
聚合模块,用于将同一发送端的UDP数据包,根据所述聚合点信息进行聚合,聚合为原始数据;
第二发送模块,用于根据所述接收端的信息,将所述原始数据发送至所述接收端。
根据本文的另一方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被执行时实现数据传输方法的步骤。
根据本文的另一方面,提供一种计算机设备,包括处理器、存储器和存储于所述存储器上的计算机程序,所述处理器执行所述计算机程序时实现数据传输方法的步骤。
本文通过提供一种数据传输方法,可以实现通过多链路UDP连接,加快数据的传输效率,并且在网络不稳定的情况下,可以在多链路UDP连接和TCP连接间切换,适应多变的网络环境,及时优化网络链路,最大可能地提高网络传输速度提升用户体验。同时本文提供的数据传输方法,客户端只需要安装SDK即可接入网络,由软件实现,部署简单,执行效率高,而且复用现有的CDN网络资源,实现成本低。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本文。
附图说明
构成本文的一部分的附图用来提供对本文的进一步理解,本文的示意性实施例及其说明用于解释本文,并不构成对本文的不当限定。在附图中:
图1是根据一实施例示出的数据传输系统示意图。
图2是根据一实施例示出的数据传输系统示意图。
图3是根据一实施例示出的数据传输系统示意图。
图4是根据一示例性实施例示出的数据传输方法的流程图。
图5是根据一示例性实施例示出的数据传输装置的框图。
图6是根据一示例性实施例示出的数据传输装置的框图。
图7是根据一示例性实施例示出的数据传输装置的框图。
图8是根据一示例性实施例示出的数据传输装置的框图。
图9是根据一示例性实施例示出的一种计算机设备的框图。
具体实施方式
为使本文实施例的目的、技术方案和优点更加清楚,下面将结合本文实施例中的附图,对本文实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本文一部分实施例,而不是全部的实施例。基于本文中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本文保护的范围。需要说明的是,在不冲突的情况下,本文中的实施例及实施例中的特征可以相互任意组合。
本文提供一种数据传输系统,图1是根据一实施例示出的数据传输系统示意图。如图1所示,数据传输系统包括第一SDK设备,转发网络,第二SDK设备,接收端,发送端。第一SDK设备用于接收发送端的原始数据,根据配置信息,将原始数据封装为多个数据包,通过多链路UDP连接将多个数据包经转发网络发送至第二SDK设备,第二SDK设备对多链路UDP连接转发的多个数据包进行聚合,聚合为原始数据后发送至接收端;或者通过TCP连接将原始数据经转发网络发送至接收端。其中,转发网络包括调度中心和多个转发服务器,调度中心实时获取系统内各个服务器的网络状况,并根据网络状况生成配置信息,并将配置信息发送给第一SDK设备,以使第一SDK设备根据配置信息选择多链路UDP连接或者TCP连接发送数据,并根据配置信息在多链路UDP连接和TCP连接之间进行切换,适应多变的网络环境,及时优化网络链路,最大可能地提高网络传输速度提升用户体验。
在一实施例中,发送端向接收端发送原始数据。第一SDK设备根据配置信息,与N个转发服务器建立N路UDP协议的多链路UDP连接,接收发送端的原始数据,并将原始数据封装为多个数据包后,同时通过N路UDP协议的多链路UDP连接发送至N个转发服务器,N个转发服务器再将N路数据发送到第二SDK设备,由第二SDK设备对N路多链路UDP连接的数据进行聚合,聚合为原始数据后,发送到接收端。从而优化第一SDK设备到第二SDK设备间的网络传输。
在一实施例中,当客户端向源站发送请求数据时,发送端为客户端,接收端为源站。当源站根据客户端的请求,响应客户端请求时,发送端为源站,接收端为客户端。SDK设备可以为个人电脑,服务器,路由器等具有发送和接收功能的网络设备,在一实施例中,第一SDK设备可以为发送端本地节点服务器,第二SDK设备可以为接收端本地节点服务器。
在一实施例中,当发送端为客户端,发送端和第一SDK设备可以位于同一终端设备,例如集成了第一SDK软件的客户端的个人电脑,手机等网络设备。图2是根据一实施例示出的数据传输系统示意图。参考图2,发送端为客户端,该客户端集成有SDK软件,可以与N个转发服务器建立N路UDP协议的多链路UDP连接,通过N个路由路径发送请求信息至第二SDK设备,第二SDK设备将多个路由路径的数据进行聚合后,发送给源站。
在一实施例中,当接收端为客户端,接收端和第二SDK设备可以位于同一终端设备,例如集成了第二SDK软件的客户端的个人电脑,手机等网络设备。图3是根据一实施例示出的数据传输系统示意图。参考图3,发送端为源站,源站通过第一SDK设备实现与N个转发服务器的多链路UDP连接,通过N个路由路径发送响应信息至客户端,客户端将多个路由路径的数据进行聚合,获得响应数据。
通过以上实施例,本文提供的多路由路径的数据传输系统,可以加快数据传输速度,防止线路拥堵影响网络服务的使用。
本文提供一种数据传输方法,在UDP协议的基础上,自定义多链路UDP协议,模仿TCP协议的功能,维持一个多UDP的连接层。通过与多个转发服务器同时建立多个UDP连接,实现多路由链路的同时传输,避免单一链路拥塞导致的丢包。
图4是根据一示例性实施例示出的数据传输方法的流程图。参考图4,数据传输方法应用于第一SDK设备,包括:
步骤S41,获取配置信息,配置信息包括自定义配置信息和/或调度中心的配置信息;
步骤S42,根据所述配置信息,与N个转发服务器建立N路UDP协议的多链路UDP连接,其中N为大于等于1的整数;
步骤S43,获取发送端的原始数据;
步骤S44,封装所述原始数据,将所述原始数据的多个数据包经所述多链路UDP连接发送至所述N个转发服务器。
在一实施例中,配置信息包括自定义配置信息和/或调度中心的配置信息;当发送端为集成了SDK软件的客户端时,用户可以在客户端进行自定义配置,配置包括多个指定转发服务器的多个路由链路,也可以从调度中心服务器获取配置信息,并可对调度中心的配置信息进行调整。调度中心可以为网络中的指定服务器,用于监控网络中的其他服务器及客户端,并获取网络内可用服务器的网络状况,客户端的流量信息等。网络状况包括各个服务器所在链路的网速,带宽,时延以及每台服务器的流量等信息。当一台或多台服务器所在链路的网速降低到设定阈值时,可以及时发送告警信息,并根据告警信息及时切换链路,更新配置信息。调度中心获取网络内可用服务器的网络状况后,根据每个服务器的网络状况,从中确定N个转发服务器,本实施例中,根据网速,带宽,时延,流量中的一个或多个,选择N个服务器作为转发服务器,例如根据服务器所在链路的网速,选择N个网速最快的链路中的服务器作为转发服务器。基于N个转发服务器生成调度中心的配置信息,发送所述调度中心的配置信息至第一SDK设备。
根据配置信息中的N个转发服务器,与N个转发服务器建立N路UDP协议的多链路UDP连接。转发服务器的数量,可以根据网络的实际情况确定,转发服务器的数量越多,建立的路由链路就会越多,转发速率会也越快,但同时会占用更多的网络资源。
获取发送端的原始数据,当第一SDK设备与发送端位于不同终端设备时,通过发送端与第一SDK设备建立的TCP连接,接收发送端的原始数据。当第一SDK设备与发送端位于同一终端设备时,通过共享内存等方式获取原始数据。将原始数据进行封装,封装为多个数据包后,经多链路UDP连接发送至N个转发服务器。从而实现多路由链路的同时转发,加快数据传输效率。
在一实施例中,步骤S44中,封装原始数据包括:将原始数据按UDP协议封装为多个数据包,数据包协议头包括发送端的信息,聚合点的信息,接收端的信息。当发送端为客户端时,发送端的信息包括用户I D,当发送端为源站时,发送端的信息包括源站相关的信息。
在一实施例中,数据传输方法还包括:
根据配置信息与N个转发服务器中的一个建立TCP连接;
当所述多链路UDP连接传输的聚合速率低于第一预设阈值,切换至TCP连接并发送原始数据;或者当TCP连接传输速率低于第二预设阈值,切换至多链路UDP连接并发送原始数据。由于多个链路同时传输的是同样的数据包,最先到达的数据包被保留,原始数据的数据包全部传输完成就可以聚合了。聚合速率是指多个链路传输完原始数据最快的速率。多链路UDP连接和TCP连接可以同时建立,并维持连接状态,当多链路UDP连接传输速率低于第一预设阈值时,切换至TCP连接,当TCP连接传输速率低于第二预设阈值时,切换至多链路UDP连接。
或者,默认建立多链路UDP连接,当所述多链路UDP连接传输的聚合速率低于第一预设阈值,建立TCP连接,并切换到TCP连接传输原始数据。当TCP连接传输速率低于第二预设阈值,再次切换为多链路UDP连接,同时断开TCP连接,在需要切换时,再次建立TCP连接。
在一实施例中,根据配置信息与N个转发服务器中的一个建立TCP连接包括:根据调度中心的配置信息,获取N个转发服务器的网络状况,与网络状况最优的服务器建立TCP连接。每次需要建立TCP连接时,根据调度中心的配置信息,查询N个转发服务器的网络状况,在N个转发服务器中,选择网络状况最优的服务器,并建立TCP连接,保证每次建立TCP连接时,都能以最快的速率发送数据。
数据传输方法,应用于转发网络,转发网络包括调度中心和N个转发服务器;
调度中心获取可用服务器的网络状况,确定N个转发服务器,基于N个转发服务器生成调度中心的配置信息,发送所述调度中心的配置信息至第一SDK设备;以使第一SDK设备与N个转发服务器建立多链路UDP连接。
N个转发服务器接收第一SDK设备的多个UDP数据包并转发至第二SDK设备;或者,接收所述第一SDK设备转发的TCP数据包,转发所述TCP数据包至接收端。
转发服务器根据接收的数据,如果是UDP数据,将UDP数据包转发至第二SDK设备;如果是TCP数据,将TCP数据转发至接收端。
数据传输方法应用于第二SDK设备,包括:
接收N个转发服务器转发的多个UDP数据包;
解析多个UDP数据包,获取发送端的信息,聚合点的信息,接收端的信息;对UDP数据包进行解析,从而获取发送端的信息,接收端的信息,并对相同发送端信息和相同接收端信息的数据包进行聚合。同时,可以针对不同客户端,进行流量去向,流量大小的统计,还可以对转发服务器本身的总流量进行统计。
将同一发送端的UDP数据包,根据聚合点的信息进行聚合,聚合为原始数据;对同一发送端发送的数据包,进行去重操作,去除重复的数据包后,根据聚合点的信息进行聚合,将相同发送端信息,相同接收端信息的数据包还原为原始数据。
根据接收端的信息,将原始数据发送至接收端。
第二SDK设备先对接收的多个UDP数据包进行解析,然后将同一发送端的多个UDP数据包根据聚合点信息进行聚合,聚合为原始数据,在根据数据包协议头中的接收端的信息,将原始数据发送至接收端。
通过以上实施例,发送端发出的原始数据先经过第一SDK设备进行加速,同时通过多个UDP连接的路由链路发送,经N个转发服务器转发至第二SDK设备,由第二SDK设备对多个路由链路的数据进行聚合,聚合为原始数据,再发送给接收端。加快了数据传输效率,避免了丢包导致的链路不稳定。同时,建立TCP连接,并可在当前连接的传输速率低于对应的预设阈值时,在多链路UDP连接和TCP连接间随时切换,适应多变的网络环境,及时优化网络链路。
图5是根据一示例性实施例示出的数据传输装置的框图。参考图5,数据传输装置应用的第一SDK设备,包括配置模块501,多链路UDP模块502,原始数据获取模块503,第一发送模块504。
该配置模块501被配置为用于获取配置信息,所述配置信息包括自定义配置信息和/或调度中心的配置信息。
该多链路UDP模块502被配置为用于根据配置信息,与N个转发服务器建立N路UDP协议的多链路UDP连接,其中N为大于等于1的整数。
该原始数据获取模块503被配置为用于获取发送端的原始数据。
该第一发送模块504被配置为用于封装原始数据,将所述原始数据的多个数据包经所述多链路UDP连接发送至所述N个转发服务器。
第一发送模块封装原始数据包括:
将原始数据按UDP协议封装为多个数据包,数据包协议头包括发送端的信息,聚合点的信息,接收端的信息。
图6是根据一示例性实施例示出的数据传输装置的框图。参考图6,数据传输装置应用的第一SDK设备,还包括:TCP模块601,切换模块602。
该TCP模块601被配置为用于根据所述配置信息与所述N个转发服务器中的一个建立TCP连接。
该切换模块602被配置为用于当所述多链路UDP连接传输的聚合速率低于第一预设阈值,切换至所述TCP连接并发送所述原始数据;或者当所述TCP连接传输速率低于第二预设阈值,切换至所述多链路UDP连接并发送所述原始数据。
TCP模块根据配置信息与N个转发服务器中的一个建立TCP连接包括:
根据所述调度中心的配置信息,获取所述N个转发服务器的网络状况,与所述网络状况最优的服务器建立TCP连接。
图7是根据一示例性实施例示出的数据传输装置的框图。参考图7,数据传输装置应用于转发网络,包括调度模块701,转发模块702。
该调度模块701被配置为用于获取可用服务器的网络状况,并确定N个转发服务器,基于所述N个转发服务器生成调度中心的配置信息,发送所述调度中心的配置信息至第一SDK设备,以使所述第一SDK设备与所述N个转发服务器建立N路UDP协议的多链路UDP连接。
该转发模块被配置为用于接收所述第一SDK设备的多个UDP数据包并转发至第二SDK设备;或者,接收第一SDK设备转发的TCP数据包,转发所述TCP数据包至接收端。
图8是根据一示例性实施例示出的数据传输装置的框图。参考图8,数据传输装置应用于第二SDK设备,包括:接收模块801,解析模块802,聚合模块803,第二发送模块804。
该接收模块801被配置为用于接收N个转发服务器转发的多个UDP数据包。
该解析模块802被配置为用于解析多个UDP数据包,获取发送端的信息,聚合点的信息,接收端的信息。
该聚合模块803被配置为用于将同一发送端的UDP数据包,根据聚合点信息进行聚合,聚合为原始数据。
该第二发送模块804被配置为用于根据接收端的信息,将原始数据发送至所述接收端。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
图9是根据一示例性实施例示出的一种用于数据传输的计算机设备900的框图。例如,计算机设备900可以被提供为一服务器。参照图9,计算机设备900包括处理器901,处理器的个数可以根据需要设置为一个或者多个。计算机设备900还包括存储器902,用于存储可由处理器901的执行的指令,例如应用程序。存储器的个数可以根据需要设置一个或者多个。其存储的应用程序可以为一个或者多个。处理器901被配置为执行指令,以执行上述数据传输方法。
本领域技术人员应明白,本文的实施例可提供为方法、装置(设备)、或计算机程序产品。因此,本文可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本文可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质上实施的计算机程序产品的形式。计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质,包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质等。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。
本文是参照根据本文实施例的方法、装置(设备)和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括……”限定的要素,并不排除在包括所述要素的物品或者设备中还存在另外的相同要素。
尽管已描述了本文的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本文范围的所有变更和修改。
显然,本领域的技术人员可以对本文进行各种改动和变型而不脱离本文的精神和范围。这样,倘若本文的这些修改和变型属于本文权利要求及其等同技术的范围之内,则本文的意图也包含这些改动和变型在内。
Claims (14)
1.一种数据传输方法,应用于第一SDK设备,其特征在于,包括:
获取配置信息,所述配置信息包括自定义配置信息和/或调度中心的配置信息;
根据所述配置信息,与N个转发服务器建立N路UDP协议的多链路UDP连接,其中N为大于等于1的整数;其中,所述N个转发服务器属于转发网络,所述转发网络还包括调度中心,所述调度中心获取可用服务器的网络状况,选择N个网速最快的服务器作为转发服务器,并基于N个转发服务器生成配置信息;
获取发送端的原始数据;
封装所述原始数据,将所述原始数据的多个数据包经所述多链路UDP连接发送至所述N个转发服务器,以使所述N个转发服务器将N路数据发送到第二SDK设备,由第二SDK设备对N路数据进行聚合,聚合为原始数据后,发送到接收端;所述第一SDK设备为所述发送端本地节点服务器,所述第二SKD设备为所述接收端本地节点服务器。
2.如权利要求1所述的数据传输方法,其特征在于,所述封装原始数据包括:
将原始数据按UDP协议封装为多个数据包,数据包协议头包括发送端的信息,聚合点的信息,接收端的信息。
3.如权利要求1所述的数据传输方法,其特征在于,还包括:
根据所述配置信息与所述N个转发服务器中的一个建立TCP连接;
当所述多链路UDP连接传输的聚合速率低于第一预设阈值,切换至所述TCP连接并发送所述原始数据;或者当所述TCP连接传输速率低于第二预设阈值,切换至所述多链路UDP连接并发送所述原始数据。
4.如权利要求3所述数据传输方法,其特征在于,所述根据所述配置信息与所述N个转发服务器中的一个建立TCP连接包括:
根据所述调度中心的配置信息,获取所述N个转发服务器的网络状况,与所述网络状况最优的服务器建立TCP连接。
5.一种数据传输方法,应用于转发网络,其特征在于,所述转发网络包括调度中心和N个转发服务器;
所述调度中心获取可用服务器的网络状况,选择N个网速最快的服务器作为转发服务器,基于所述N个转发服务器生成调度中心的配置信息,发送所述调度中心的配置信息至第一SDK设备,以使所述第一SDK设备与所述N个转发服务器建立N路UDP协议的多链路UDP连接;
所述N个转发服务器接收所述第一SDK设备的多个UDP数据包并转发至第二SDK设备;或者,接收所述第一SDK设备转发的TCP数据包,转发所述TCP数据包至接收端。
6.一种数据传输方法,应用于第二SDK设备,其特征在于,包括:
接收N个转发服务器转发的多个UDP数据包,所述N个转发服务器属于转发网络,所述转发网络还包括调度中心,所述调度中心获取可用服务器的网络状况,选择N个网速最快的服务器作为转发服务器;
解析所述多个UDP数据包,获取发送端的信息,聚合点的信息,接收端的信息;
将同一发送端的UDP数据包,根据所述聚合点的信息进行聚合,聚合为原始数据;
根据所述接收端的信息,将所述原始数据发送至所述接收端。
7.一种数据传输装置,应用于第一SDK设备,其特征在于,包括:
配置模块,用于获取配置信息,所述配置信息包括自定义配置信息和/或调度中心的配置信息;
多链路UDP模块,用于根据所述配置信息,与N个转发服务器建立N路UDP协议的多链路UDP连接,其中N为大于等于1的整数;其中,所述N个转发服务器属于转发网络,所述转发网络还包括调度中心,所述调度中心获取可用服务器的网络状况,选择N个网速最快的服务器作为转发服务器,并基于N个转发服务器生成配置信息;
原始数据获取模块,用于获取发送端的原始数据;
第一发送模块,用于封装原始数据,将所述原始数据的多个数据包经所述多链路UDP连接发送至所述N个转发服务器,以使所述N个转发服务器将N路数据发送到第二SDK设备,由第二SDK设备对N路数据进行聚合,聚合为原始数据后,发送到接收端;所述第一SDK设备为所述发送端本地节点服务器,所述第二SKD设备为所述接收端本地节点服务器。
8.如权利要求7所述的数据传输装置,其特征在于,所述第一发送模块封装原始数据包括:
将原始数据按UDP协议封装为多个数据包,数据包协议头包括发送端的信息,聚合点的信息,接收端的信息。
9.如权利要求7所述的数据传输装置,其特征在于,还包括:
TCP模块,用于根据所述配置信息与所述N个转发服务器中的一个建立TCP连接;
切换模块,用于当所述多链路UDP连接传输的聚合速率低于第一预设阈值,切换至所述TCP连接并发送所述原始数据;或者当所述TCP连接传输速率低于第二预设阈值,切换至所述多链路UDP连接并发送所述原始数据。
10.如权利要求9所述的数据传输装置,其特征在于,所述TCP模块根据所述配置信息与所述N个转发服务器中的一个建立TCP连接包括:
根据所述调度中心的配置信息,获取所述N个转发服务器的网络状况,与所述网络状况最优的服务器建立TCP连接。
11.一种数据传输装置,应用于转发网络,其特征在于,包括:
调度模块,用于获取可用服务器的网络状况,选择N个网速最快的服务器作为转发服务器,基于所述N个转发服务器生成调度中心的配置信息,发送所述调度中心的配置信息至第一SDK设备,以使所述第一SDK设备与所述N个转发服务器建立N路UDP协议的多链路UDP连接;
转发模块,用于接收所述第一SDK设备的多个UDP数据包并转发至第二SDK设备;或者,接收第一SDK设备转发的TCP数据包,转发所述TCP数据包至接收端。
12.一种数据传输装置,应用于第二SDK设备,其特征在于,包括:
接收模块,用于接收N个转发服务器转发的多个UDP数据包,所述N个转发服务器属于转发网络,所述转发网络还包括调度中心,所述调度中心获取可用服务器的网络状况,选择N个网速最快的服务器作为转发服务器;
解析模块,用于解析所述多个UDP数据包,获取发送端的信息,聚合点的信息,接收端的信息;
聚合模块,用于将同一发送端的UDP数据包,根据所述聚合点信息进行聚合,聚合为原始数据;
第二发送模块,用于根据所述接收端的信息,将所述原始数据发送至所述接收端。
13.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被执行时实现如权利要求1-6中任意一项所述方法的步骤。
14.一种计算机设备,包括处理器、存储器和存储于所述存储器上的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1-6中任意一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010112818.8A CN113301000B (zh) | 2020-02-24 | 2020-02-24 | 数据传输方法、装置、介质及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010112818.8A CN113301000B (zh) | 2020-02-24 | 2020-02-24 | 数据传输方法、装置、介质及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113301000A CN113301000A (zh) | 2021-08-24 |
CN113301000B true CN113301000B (zh) | 2023-04-18 |
Family
ID=77317839
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010112818.8A Active CN113301000B (zh) | 2020-02-24 | 2020-02-24 | 数据传输方法、装置、介质及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113301000B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113783963B (zh) * | 2021-09-16 | 2024-05-24 | 杭州阿里云飞天信息技术有限公司 | 数据传输方法、服务器节点、网关设备、网络系统 |
CN113973124B (zh) * | 2021-10-27 | 2023-01-20 | 北京达佳互联信息技术有限公司 | 数据传输方法及装置、电子设备、计算机可读存储介质 |
CN115396529A (zh) * | 2022-08-25 | 2022-11-25 | 深圳市元征科技股份有限公司 | 多通道通信方法、装置、终端设备及存储介质 |
CN115941127B (zh) * | 2022-11-07 | 2024-05-14 | 天津津航计算技术研究所 | 一种基于哈希表的报文协议超时重发管理方法 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101079840A (zh) * | 2007-02-12 | 2007-11-28 | 腾讯科技(深圳)有限公司 | 一种数据传输系统及方法 |
CN101547134A (zh) * | 2008-03-27 | 2009-09-30 | 天津德智科技有限公司 | 一种udp连接和tcp连接相互转化的方法、系统及中转服务器 |
CN102045768A (zh) * | 2009-10-26 | 2011-05-04 | 宏碁股份有限公司 | 数据传输方法及其用户装置与数据传输系统 |
CN103618678A (zh) * | 2013-11-18 | 2014-03-05 | 北京星网锐捷网络技术有限公司 | 自适应多链路聚合的方法、装置及系统 |
CN106302213A (zh) * | 2016-08-02 | 2017-01-04 | 无锡天脉聚源传媒科技有限公司 | 一种数据传输的方法及装置 |
WO2017198285A1 (en) * | 2016-05-16 | 2017-11-23 | Telefonaktiebolaget Lm Ericsson (Publ) | Transporting udp packets over an mptcp connection |
CN108494676A (zh) * | 2018-03-21 | 2018-09-04 | 广州多益网络股份有限公司 | 数据传输方法、装置、数据收发设备、系统及存储介质 |
CN109729007A (zh) * | 2017-10-28 | 2019-05-07 | 华为技术有限公司 | 一种传输数据的方法、装置和设备 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10582022B2 (en) * | 2016-05-20 | 2020-03-03 | Citrix Systems, Inc. | Adaptive session reliability over multiple transports |
-
2020
- 2020-02-24 CN CN202010112818.8A patent/CN113301000B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101079840A (zh) * | 2007-02-12 | 2007-11-28 | 腾讯科技(深圳)有限公司 | 一种数据传输系统及方法 |
CN101547134A (zh) * | 2008-03-27 | 2009-09-30 | 天津德智科技有限公司 | 一种udp连接和tcp连接相互转化的方法、系统及中转服务器 |
CN102045768A (zh) * | 2009-10-26 | 2011-05-04 | 宏碁股份有限公司 | 数据传输方法及其用户装置与数据传输系统 |
CN103618678A (zh) * | 2013-11-18 | 2014-03-05 | 北京星网锐捷网络技术有限公司 | 自适应多链路聚合的方法、装置及系统 |
WO2017198285A1 (en) * | 2016-05-16 | 2017-11-23 | Telefonaktiebolaget Lm Ericsson (Publ) | Transporting udp packets over an mptcp connection |
CN106302213A (zh) * | 2016-08-02 | 2017-01-04 | 无锡天脉聚源传媒科技有限公司 | 一种数据传输的方法及装置 |
CN109729007A (zh) * | 2017-10-28 | 2019-05-07 | 华为技术有限公司 | 一种传输数据的方法、装置和设备 |
CN108494676A (zh) * | 2018-03-21 | 2018-09-04 | 广州多益网络股份有限公司 | 数据传输方法、装置、数据收发设备、系统及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113301000A (zh) | 2021-08-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113301000B (zh) | 数据传输方法、装置、介质及设备 | |
US11082334B2 (en) | Distributed quality-of-service (QoS) in an overlay network using capacity enforcement | |
US10181977B2 (en) | Cross-stratum optimization protocol | |
CN109787801B (zh) | 一种网络服务管理方法、装置和系统 | |
EP2790442A1 (en) | Control system, apparatus, methods, and computer readable storage medium storing instructions for a network node and/or a network controller | |
US20170195237A1 (en) | Distributed quality-of-service (QoS) mechanism in an overlay network having edge regions | |
CN111555982B (zh) | 一种基于IPv6扩展头的报文智能选路的方法和系统 | |
US20200120152A1 (en) | Edge node control | |
JP5485543B2 (ja) | プライマリネットワーク及びセカンダリネットワークを含むネットワークにおける通信方法 | |
US10567180B2 (en) | Method for multicast packet transmission in software defined networks | |
EP3125472A1 (en) | Telecommunication system, method and computer readable medium to control how a transmission of packets of a data flow is realized | |
CN114710975B (zh) | 一种用于多域间传输多传输网络上下文标识的方法、基站、网元及装置 | |
CN106789650B (zh) | 基于ip的广域网加速方法及装置 | |
US11349750B2 (en) | Method for dynamically managing communication pathways between routers depending on application requirement | |
US11218910B2 (en) | First node and a second node and methods of operating the same | |
CN115695523A (zh) | 一种数据传输控制方法、装置、电子设备及存储介质 | |
JP4199575B2 (ja) | ネットワークシステム,同システムにおけるパス設定方法並びに同システムに用いられるネットワーク管理装置及びネットワーク装置 | |
US20220070736A1 (en) | Traffic steering device | |
US10594593B2 (en) | Methods and apparatus for transmitting data | |
Derakhshan et al. | Enabling cloud connectivity using SDN and NFV technologies | |
EP3097669B1 (en) | Method, nodes and computer program for enabling of data traffic separation | |
EP3131344A1 (en) | Method and system for discovery of access aggregation points for bonding approaches in a telecommunication network | |
CN116886585A (zh) | 一种基于用户的引流方法和装置 | |
CN115412481A (zh) | 网络切片生成方法、切片控制器、网络系统和存储介质 | |
US9083631B2 (en) | Multipoint-to-point pseudowire |
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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40056545 Country of ref document: HK |
|
GR01 | Patent grant | ||
GR01 | Patent grant |