CN115801739A - 数据传输方法、数据处理方法及设备、会议终端、介质 - Google Patents
数据传输方法、数据处理方法及设备、会议终端、介质 Download PDFInfo
- Publication number
- CN115801739A CN115801739A CN202111062989.5A CN202111062989A CN115801739A CN 115801739 A CN115801739 A CN 115801739A CN 202111062989 A CN202111062989 A CN 202111062989A CN 115801739 A CN115801739 A CN 115801739A
- Authority
- CN
- China
- Prior art keywords
- data
- data packet
- media
- media transmission
- processed
- 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
Links
- 230000005540 biological transmission Effects 0.000 title claims abstract description 162
- 238000000034 method Methods 0.000 title claims abstract description 41
- 238000003672 processing method Methods 0.000 title claims abstract description 29
- 238000012545 processing Methods 0.000 claims description 23
- 238000004891 communication Methods 0.000 claims description 17
- 230000003993 interaction Effects 0.000 claims description 12
- 238000010295 mobile communication Methods 0.000 claims description 5
- 238000004590 computer program Methods 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 9
- 238000005516 engineering process Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 4
- 238000012937 correction Methods 0.000 description 3
- 238000013500 data storage Methods 0.000 description 3
- 239000013589 supplement Substances 0.000 description 3
- 230000000977 initiatory effect Effects 0.000 description 2
- 230000011664 signaling Effects 0.000 description 2
- 239000004229 Alkannin Substances 0.000 description 1
- 239000004283 Sodium sorbate Substances 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 239000002151 riboflavin Substances 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
- PPASLZSBLFJQEF-RKJRWTFHSA-M sodium ascorbate Substances [Na+].OC[C@@H](O)[C@H]1OC(=O)C(O)=C1[O-] PPASLZSBLFJQEF-RKJRWTFHSA-M 0.000 description 1
- 230000007723 transport mechanism Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/24—Multipath
- H04L45/247—Multipath using M:N active or standby paths
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/28—Routing or path finding of packets in data switching networks using route fault recovery
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
- H04L65/1069—Session establishment or de-establishment
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/40—Support for services or applications
- H04L65/403—Arrangements for multi-party communication, e.g. for conferences
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/80—Responding to QoS
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Computer Security & Cryptography (AREA)
- Business, Economics & Management (AREA)
- General Business, Economics & Management (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本公开提供一种数据传输方法,应用于发送端设备,包括:与接收端设备建立多条媒体传输链路,多条所述媒体传输链路对应于所述发送端设备接入的多种网络;通过多条所述媒体传输链路传输待传输数据。本公开还提供一种数据处理方法、一种发送端设备、一种接收端设备、一种计算机可读介质。
Description
技术领域
本公开涉及通信技术领域,特别涉及一种数据传输方法、一种数据处理方法、一种发送端设备、一种接收端设备、一种会议终端、一种计算机可读介质。
背景技术
随着网络会议相关技术的发展,网络会议的语音清晰度、视频分辨率在快速提升,网络会议的功能也愈加丰富,例如,一些相关技术中,网络会议已支持虚拟背景、视频剪辑、文件共享,基于虚拟现实(VR,Virtual Reality)和增强现实(AR,Augmented Reality)技术的网络会议功能也在发展中。
但是,受网络条件限制,网络会议的质量还无法得到有效保障。
发明内容
本公开实施例提供一种数据传输方法、一种数据处理方法、一种发送端设备、一种接收端设备、一种会议终端、一种计算机可读介质。
第一方面,本公开实施例提供一种数据传输方法,应用于发送端设备,包括:
与接收端设备建立多条媒体传输链路,多条所述媒体传输链路对应于所述发送端设备接入的多种网络;
通过多条所述媒体传输链路传输待传输数据。
在一些实施例中,通过多条所述媒体传输链路传输待传输数据的步骤包括:
为所述待传输数据的数据包添加标签字段,不同数据包的标签字段不同;
将添加了标签字段的数据包复制到各条所述媒体传输链路进行传输。
在一些实施例中,为所述待传输数据的数据包添加标签字段的步骤包括:
判断所述待传输数据的数据包是否为媒体数据包;
在所述待传输数据的数据包为媒体数据包的情况下,为所述待传输数据的数据包添加标签字段。
在一些实施例中,与接收端设备建立多条媒体传输链路的步骤包括:
与所述接收端设备建立第一链路;
通过所述第一链路获取所述接收端设备的网络配置信息;
在所述接收端设备接入多种网络的情况下,根据所述发送端设备的网络配置信息和所述接收端设备的网络配置信息,建立至少一条第二链路,所述多条媒体传输链路包括所述第一链路和所述至少一条第二链路。
在一些实施例中,在与所述接收端设备建立第一链路的步骤之后,与接收端设备建立多条媒体传输链路的步骤还包括:
通过所述第一链路向所述接收端设备传输所述发送端设备的网络配置信息。
在一些实施例中,与接收端设备建立多条媒体传输链路的步骤包括:
创建多个套接字以与所述接收端设备建立多条媒体传输链路;
将所述多个套接字与所述发送端设备用于接入多种网络的多个网卡一一对应绑定。
在一些实施例中,所述发送端设备接入的多种网络包括有线通信网络、无线通信网络、移动通信网络中的至少两者。
第二方面,本公开实施例提供一种数据处理方法,应用于接收端设备,包括:
通过与发送端设备建立的多条媒体传输链路接收待处理数据包,多条所述媒体传输链路对应于所述接收端设备接入的多种网络;
对所述待处理数据包进行处理。
在一些实施例中,对所述待处理数据包进行处理的步骤包括:
提取所述待处理数据包的标签字段,其中,不同待处理数据包的标签字段不同;
在所述待处理数据包的标签字段与任意一个已接收数据包的标签字段相同的情况下,丢弃所述待处理数据包;
在所述待处理数据包的标签字段与各个已接收数据包的标签字段均不相同的情况下,对所述待处理数据包执行应用层处理。
在一些实施例中,提取所述待处理数据包的标签字段的步骤包括:
判断所述待处理数据包是否为媒体数据包;
在所述待处理数据包为媒体数据包的情况下,提取所述待处理数据包的标签字段。
在一些实施例中,在通过与发送端设备建立的多条媒体传输链路接收待处理数据包的步骤之前,所述数据处理方法还包括:
接收所述发送端设备的网络配置信息;
根据所述发送端设备的网络配置信息与所述接收端设备的网络配置信息,与所述发送端设备建立多条所述媒体传输链路。
第三方面,本公开实施例提供一种发送端设备,包括:
一个或多个处理器;
存储器,其上存储有一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本公开实施例第一方面任意一项所述的数据传输方法;
一个或多个I/O接口,连接在所述处理器与存储器之间,配置为实现所述处理器与存储器的信息交互。
第四方面,本公开实施例提供一种接收端设备,包括:
一个或多个处理器;
存储器,其上存储有一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本公开实施例第二方面任意一项所述的数据处理方法;
一个或多个I/O接口,连接在所述处理器与存储器之间,配置为实现所述处理器与存储器的信息交互。
第五方面,本公开实施例提供一种会议终端,包括:
一个或多个处理器;
存储器,其上存储有一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现第一方面任意一项所述的数据传输方法和/或本公开实施例第二方面任意一项所述的数据处理方法;
一个或多个I/O接口,连接在所述处理器与存储器之间,配置为实现所述处理器与存储器的信息交互。
第六方面,本公开实施例提供一种计算机可读介质,其上存储有计算机程序,所述程序被处理器执行时实现以下方法中的至少一者:
本公开实施例第一方面任意一项所述的数据传输方法;
本公开实施例第二方面任意一项所述的数据处理方法。
本公开实施例中,建立在多种网络上的多条媒体传输链路互为备份,通过多条媒体传输链路传输数据时多条媒体传输链路不会相互竞争网络资源,多条媒体传输链路中传输的数据总有时延最小的一者,相当于总能通过时延最小的媒体传输链路传输数据,一条媒体传输链路丢包时还有其他媒体传输链路进行补充。当应用于网络会议时,能够极大缩短时延,避免丢包,从而有效保障了网络会议的质量,提升了用户体验。
附图说明
图1是本公开实施例中一种数据传输方法的流程图;
图2是本公开实施例中另一种数据传输方法中部分步骤的流程图;
图3是本公开实施例中又一种数据传输方法中部分步骤的流程图;
图4是本公开实施例中再一种数据传输方法中部分步骤的流程图;
图5是本公开实施例中再一种数据传输方法中部分步骤的流程图;
图6是本公开实施例中一种数据处理方法的流程图;
图7是本公开实施例中另一种数据处理方法中部分步骤的流程图;
图8是本公开实施例中又一种数据处理方法中部分步骤的流程图;
图9是本公开实施例中再一种数据处理方法中部分步骤的流程图;
图10是本公开实施例中一种发送端设备的组成框图;
图11是本公开实施例中一种接收端设备的组成框图;
图12是本公开实施例中一种会议终端的组成框图;
图13是本公开实施例中一种计算机可读介质的组成框图;
图14是一种实施例的示意图;
图15是一种实施例的示意图;
图16是一种实施例的示意图;
图17是一种实施例的示意图;
图18是一种实施例的示意图。
具体实施方式
为使本领域的技术人员更好地理解本公开的技术方案,下面结合附图对本公开提供的数据传输方法、数据处理方法、发送端设备、接收端设备、会议终端、计算机可读介质进行详细描述。
在下文中将参考附图更充分地描述示例实施例,但是所述示例实施例可以以不同形式来体现且不应当被解释为限于本文阐述的实施例。反之,提供这些实施例的目的在于使本公开透彻和完整,并将使本领域技术人员充分理解本公开的范围。
在不冲突的情况下,本公开各实施例及实施例中的各特征可相互组合。
如本文所使用的,术语“和/或”包括一个或多个相关列举条目的任何和所有组合。
本文所使用的术语仅用于描述特定实施例,且不意欲限制本公开。如本文所使用的,单数形式“一个”和“该”也意欲包括复数形式,除非上下文另外清楚指出。还将理解的是,当本说明书中使用术语“包括”和/或“由……制成”时,指定存在所述特征、整体、步骤、操作、元件和/或组件,但不排除存在或添加一个或多个其它特征、整体、步骤、操作、元件、组件和/或其群组。
除非另外限定,否则本文所用的所有术语(包括技术和科学术语)的含义与本领域普通技术人员通常理解的含义相同。还将理解,诸如那些在常用字典中限定的那些术语应当被解释为具有与其在相关技术以及本公开的背景下的含义一致的含义,且将不解释为具有理想化或过度形式上的含义,除非本文明确如此限定。
丢包和时延是影响网络会议质量的重要因素。随着网络条件的恶化,丢包和时延也会愈发严重。一些相关技术能够解决网络条件恶劣时的丢包问题,以保障网络会议的质量。
例如,在一些相关技术中,通过丢包重传和前向纠错(FEC,Forward ErrorCorrection)解决丢包问题。其中,丢包重传是指发送端设备缓存数据包,在被告知数据包丢失的情况下重传丢失的数据包;前向纠错是指在发送数据包的同时携带FEC冗余包,接收端检测到丢包时,可以从FEC冗余包里面恢复部分数据包。但是,丢包重传和前向纠错都只能解决一部分丢包问题,而不能解决时延问题。
有鉴于此,第一方面,参照图1,本公开实施例提供一种数据传输方法,应用于发送端设备,包括:
S100、与接收端设备建立多条媒体传输链路,多条所述媒体传输链路对应于所述发送端设备接入的多种网络;
S200、通过多条所述媒体传输链路传输待传输数据。
需要说明的是,在本公开实施例中,发送端设备是指在一次数据传输中发送数据的设备;接收端设备是指在一次数据传输中接收数据的设备。在完整的数据传输过程中,同一设备既可以是发送端设备,也可以是接收端设备。在一些实施例中,发送端设备和接收端设备为会议终端。
在本公开实施例中,媒体传输链路用于在发送端设备和接收端设备之间传输媒体数据。媒体数据可以是指音频数据,也可以视频数据,还可以是音视频数据。本公开实施例对此不做特殊限定。在一些实施例中,媒体传输链路也可以用于传输媒体数据以外的数据,例如文字、文档等。
在本公开实施例中,发送端设备和接收端设备都具备多种网络通信能力,即发送端设备和接收端设备都能接入多种网络,发送端设备、接收端设备分别接入任意一种网络,发送端设备发送的数据最终都能到达接收端设备。本公开实施例对多种网络不做特殊限定。例如,多种网络包括有线通信网络、无线通信网络、移动通信网络中的至少两者。需要说明的是,在本公开实施例中,发送端设备接入的各种网络的网络资源相互独立,通过不同网络发送数据不会竞争网络资源。
在本公开实施例中,多条媒体传输链路对应于多种网络是指,在发送端设备中,一条媒体传输链路建立在发送端设备接入的一种网络上,多条媒体传输链路分别建立在发送端设备接入的多种网络上。在本公开实施例中,在接收端设备中,多条媒体传输链路也对应于接收端设备接入的多种网络。同一条媒体传输链路在发送端设备中对应的网络与在接收端设备中对应的网络可以相同,也可以不同,本公开实施例对此不做特殊限定。
还需说明的是,步骤S100至S200是在内核层面执行的,应用层和用户对多条媒体传输链路的建立和通过多条媒体传输链路传输数据无感知。
本公开实施例提供的数据传输方法中,建立在多种网络上的多条媒体传输链路互为备份,通过多条媒体传输链路传输数据时多条媒体传输链路不会相互竞争网络资源,多条媒体传输链路中传输的数据总有时延最小的一者,相当于总能通过时延最小的媒体传输链路传输数据,一条媒体传输链路丢包时还有其他媒体传输链路进行补充。当应用于网络会议时,能够极大缩短时延,避免丢包,从而有效保障了网络会议的质量,提升了用户体验。
在一些实施例中,参照图2,步骤S200包括:
S210、为所述待传输数据的数据包添加标签字段,不同数据包的标签字段不同;
S220、将添加了标签字段的数据包复制到各条所述媒体传输链路进行传输。
本公开实施例中标签字段用于唯一的标识数据包。本公开实施例对标签字段不做特殊限定。例如,发送端设备对数据包进行编号,各个数据包的序列号即数据包的标签字段。
本公开实施例中为数据包添加标签字段,并将添加了标签字段的数据包复制到各条媒体传输链路进行传输,使得接收端设备从多条媒体传输链路接收到数据包后能够根据数据包的标签字段筛除重复接收的数据包,即对于多条媒体传输链路中相同的数据包,接收端设备只选择最先达到的一者,后续接收到重复的数据包则丢弃,从而能够缩短时延。
需要说明的是,本公开实施例中,应用层对多条媒体传输链路的建立和通过多条媒体传输链路传输数据无感知。当需要发送媒体数据时,应用层将待传输数据写入发送缓冲区,并向内核发送套接字(socket)发送调用信令;内核响应于socket发送调用信令从发送缓冲区获取待传输数据。
在一些实施例中,在数据包的包头添加标签字段。
在一些实施例中,参照图3,步骤S210包括:
S211、判断所述待传输数据的数据包是否为媒体数据包;
S212、在所述待传输数据的数据包为媒体数据包的情况下,为所述待传输数据的数据包添加标签字段。
在本公开实施例中,媒体数据包可以是指音频数据包,也可以视频数据包,还可以是音视频数据包。本公开实施例对此不做特殊限定。
需要说明的是,在网络会议过程中,除了传输对时延和丢包较敏感的媒体数据,还可以传输对时延和丢包相对不敏感的非媒体数据,例如文字、文档等。通过步骤S211至S212,当待传输数据是媒体数据时,将媒体数据拷贝到多条媒体传输链路进行传输,当待传输数据为非媒体数据时,通过多条媒体传输链路中的一者传输非媒体数据,能够整体上节约网络资源,避免因传输非媒体数据造成网络拥塞,从而进一步保障网络会议质量。
在一些实施例中,参照图4,步骤S100包括:
S111、与所述接收端设备建立第一链路;
S112、通过所述第一链路获取所述接收端设备的网络配置信息;
S113、在所述接收端设备接入多种网络的情况下,根据所述发送端设备的网络配置信息和所述接收端设备的网络配置信息,建立至少一条第二链路,所述多条媒体传输链路包括所述第一链路和所述至少一条第二链路。
在一些实施例中,第一链路是在应用层建立的,第二链路是在内核层面建立的。在一些实施例中,发送端设备使用主网际协议地址(IP,Internet Protocol)与接收端设备建立第一链路。
在一些实施例中,参照图4,在步骤S110之后,步骤S100还包括:
S114、通过所述第一链路向所述接收端设备传输所述发送端设备的网络配置信息。
通过步骤S114将发送端设备的网络配置信息发送到接收端设备,使得接收端设备能够根据发送端设备的网络配置信息与发送端设备建立多条媒体传输链路。
在一些实施例中,参照图5,步骤S100包括:
S121、创建多个套接字以与所述接收端设备建立多条媒体传输链路;
S122、将所述多个套接字与所述发送端设备用于接入多种网络的多个网卡一一对应绑定。
需要说明的是,使用多个套接字与接收端设备建立多条媒体传输链路,能够使应用层对于多条媒体传输链路的创建以及通过多条媒体传输链路传输数据无感知。
在一些实施例中,所述发送端设备接入的多种网络包括有线通信网络、无线通信网络、移动通信网络中的至少两者。
第二方面,参照图6,本公开实施例提供一种数据处理方法,应用于接收端设备,包括:
S300、通过与发送端设备建立的多条媒体传输链路接收待处理数据包,多条所述媒体传输链路对应于所述接收端设备接入的多种网络;
S400、对所述待处理数据包进行处理。
需要说明的是,在本公开实施例中,发送端设备是指在一次数据传输中发送数据的设备;接收端设备是指在一次数据传输中接收数据的设备。在完整的数据传输过程中,同一设备既可以是发送端设备,也可以是接收端设备。在一些实施例中,发送端设备和接收端设备为会议终端。
在本公开实施例中,媒体传输链路用于在发送端设备和接收端设备之间传输媒体数据。媒体数据可以是指音频数据,也可以视频数据,还可以是音视频数据。本公开实施例对此不做特殊限定。在一些实施例中,媒体传输链路也可以用于传输媒体数据以外的数据,例如文字、文档等。
在本公开实施例中,发送端设备和接收端设备都具备多种网络通信能力,即发送端设备和接收端设备都能接入多种网络,发送端设备、接收端设备分别接入任意一种网络,发送端设备发送的数据最终都能到达接收端设备。本公开实施例对多种网络不做特殊限定。例如,多种网络包括有线通信网络、无线通信网络、移动通信网络中的至少两者。需要说明的是,在本公开实施例中,发送端设备接入的各种网络的网络资源相互独立,通过不同网络发送数据不会竞争网络资源。
在本公开实施例中,多条媒体传输链路对应于多种网络是指,在接收端设备中,一条媒体传输链路建立在接收端设备接入的一种网络上,多条媒体传输链路分别建立在接收端设备接入的多种网络上。在本公开实施例中,在发送端设备中,多条媒体传输链路也对应于发送端设备接入的多种网络。同一条媒体传输链路在发送端设备中对应的网络与在接收端设备中对应的网络可以相同,也可以不同,本公开实施例对此不做特殊限定。
还需说明的是,步骤S300是在内核层面执行的,应用层和用户对通过多条媒体传输链路传输数据无感知。
本公开实施例提供的数据处理方法中,建立在多种网络上的多条媒体传输链路互为备份,通过多条媒体传输链路传输数据时多条媒体传输链路不会相互竞争网络资源,多条媒体传输链路中传输的数据总有时延最小的一者,相当于总能通过时延最小的媒体传输链路传输数据,一条媒体传输链路丢包时还有其他媒体传输链路进行补充。当应用于网络会议时,能够极大缩短时延,避免丢包,从而有效保障了网络会议的质量,提升了用户体验。
在一些实施例中,接收端设备按照“谁先到收谁”的原则从多条媒体传输链路中接收数据。“谁先到收谁”的原则是指发送端设备将数据包复制到各条媒体传输链路进行传输,接收端设备从多条媒体传输链路接收到数据包后筛除重复接收的数据包,即对于多条媒体传输链路中相同的数据包,接收端设备只选择最先达到的一者,后续接收到重复的数据包则丢弃,从而能够缩短时延。
相应地,在一些实施例中,参照图7,步骤S400包括:
S410、提取所述待处理数据包的标签字段,其中,不同待处理数据包的标签字段不同;
S420、在所述待处理数据包的标签字段与任意一个已接收数据包的标签字段相同的情况下,丢弃所述待处理数据包;
S430、在所述待处理数据包的标签字段与各个已接收数据包的标签字段均不相同的情况下,对所述待处理数据包执行应用层处理。
本公开实施例中标签字段用于唯一的标识数据包,接收端设备能够根据标签字段筛除重复接收的数据包。本公开实施例对标签字段不做特殊限定。例如,发送端设备对数据包进行编号,各个数据包的序号即数据包的标签字段。
在一些实施例中,对所述待处理数据包执行应用层处理的步骤包括:去除待处理数据包的标签字段,将去除标签字段的待处理数据包上送到应用层程序,进行下一步的处理。
本公开实施例中,在网络会议过程中,发送端设备除了传输对时延和丢包较敏感的媒体数据,还可以传输对时延和丢包相对不敏感的非媒体数据,例如文字、文档等。在一些实施例中,发送端设备只为媒体数据包添加标签字段,并复制到多条媒体传输链路进行传输;非媒体数据则不添加标签字段,通过多条媒体传输链路中的一者进行传输。
在本公开实施例中,媒体数据可以是指音频数据包,也可以视频数据包,还可以是音视频数据包。本公开实施例对此不做特殊限定。
相应地,在一些实施例中,参照图8,步骤S410包括:
S411、判断所述待处理数据包是否为媒体数据包;
S412、在所述待处理数据包为媒体数据包的情况下,提取所述待处理数据包的标签字段。
在一些实施例中,发送端设备首先与接收端设备建立第一链路,通过第一链路获取接收端设备的网络配置信息,并通过第一链路向接收端设备传输发送端设备的网络配置信息。
相应地,在一些实施例中,参照图9,在步骤S300之前,所述数据处理方法还包括:
S501、接收所述发送端设备的网络配置信息;
S502、根据所述发送端设备的网络配置信息与所述接收端设备的网络配置信息,与所述发送端设备建立多条所述媒体传输链路。
第三方面,参照图10,本公开实施例提供一种发送端设备,包括:
一个或多个处理器101;
存储器102,其上存储有一个或多个程序,当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现本公开实施例第一方面任意一项所述的数据传输方法;
一个或多个I/O接口103,连接在处理器与存储器之间,配置为实现处理器与存储器的信息交互。
其中,处理器101为具有数据处理能力的器件,其包括但不限于中央处理器(CPU)等;存储器102为具有数据存储能力的器件,其包括但不限于随机存取存储器(RAM,更具体如SDRAM、DDR等)、只读存储器(ROM)、带电可擦可编程只读存储器(EEPROM)、闪存(FLASH);I/O接口(读写接口)103连接在处理器101与存储器102间,能实现处理器101与存储器102的信息交互,其包括但不限于数据总线(Bus)等。
在一些实施例中,处理器101、存储器102和I/O接口103通过总线104相互连接,进而与计算设备的其它组件连接。
第四方面,参照图11,本公开实施例提供一种接收端设备,包括:
一个或多个处理器201;
存储器202,其上存储有一个或多个程序,当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现本公开实施例第二方面任意一项所述的数据处理方法;
一个或多个I/O接口203,连接在处理器与存储器之间,配置为实现处理器与存储器的信息交互。
其中,处理器201为具有数据处理能力的器件,其包括但不限于中央处理器(CPU)等;存储器202为具有数据存储能力的器件,其包括但不限于随机存取存储器(RAM,更具体如SDRAM、DDR等)、只读存储器(ROM)、带电可擦可编程只读存储器(EEPROM)、闪存(FLASH);I/O接口(读写接口)203连接在处理器201与存储器202间,能实现处理器201与存储器202的信息交互,其包括但不限于数据总线(Bus)等。
在一些实施例中,处理器201、存储器202和I/O接口203通过总线204相互连接,进而与计算设备的其它组件连接。
第五方面,参照图12,本公开实施例提供一种会议终端,包括:
一个或多个处理器301;
存储器302,其上存储有一个或多个程序,当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现本公开实施例第一方面任意一项所述的数据传输方法和/或本公开实施例第二方面任意一项所述的数据处理方法;
一个或多个I/O接口303,连接在处理器与存储器之间,配置为实现处理器与存储器的信息交互。
其中,处理器301为具有数据处理能力的器件,其包括但不限于中央处理器(CPU)等;存储器302为具有数据存储能力的器件,其包括但不限于随机存取存储器(RAM,更具体如SDRAM、DDR等)、只读存储器(ROM)、带电可擦可编程只读存储器(EEPROM)、闪存(FLASH);I/O接口(读写接口)303连接在处理器301与存储器302间,能实现处理器301与存储器302的信息交互,其包括但不限于数据总线(Bus)等。
在一些实施例中,处理器301、存储器302和I/O接口303通过总线304相互连接,进而与计算设备的其它组件连接。
第六方面,参照图13,本公开实施例提供一种计算机可读介质,其上存储有计算机程序,所述程序被处理器执行时实现以下方法中的至少一者:
本公开实施例第一方面任意一项所述的数据传输方法;
本公开实施例第二方面任意一项所述的数据处理方法。
为了使本领域技术人员能够更清楚地理解本公开实施例提供的技术方案,下面通过具体的实施例,对本公开实施例提供的技术方案进行详细说明:
实施例一
图14是本实施例中网络会议的网络架构示意图。
在本实施例中,会议终端都支持有线网络、无线网络和5G网络三种网络通信能力,会议终端接入任意一种网络,发送端的会议终端发送的数据都能够到达接收端的会议终端。
在本实施例中,会议终端之间基于有线网络、无线网络和5G网络三种网络建立三条媒体传输链路:媒体传输链路1、媒体传输链路2、媒体传输链路3。
实施例二
图15是本实施例中会议终端的架构示意图。
会议终端的应用层包括用于处理媒体数据和非媒体数据的媒体模块,应用层通过用户数据报协议(UDP,User Datagram Protocol)方式将码流交给会议终端的内核。
会议终端的内核包括传输控制协议(TCP,Transmission Control Protocol)栈、建链模块、分发模块。建链模块用于创建多条媒体传输链路,分发模块用于为数据包添加标签字段、拷贝数据包、将数据包分发到多条媒体传输链路进行转发。
会议终端的物理层包括有线网卡、无线网卡、5G模块,内核通过物理层的有线网卡、无线网卡、5G模块建立媒体传输链路1、媒体传输链路2、媒体传输链路3。
实施例三
图16是多条媒体传输链路建立流程的示意图。
E101、发送端的会议终端中应用层媒体模块发起建立第一链路(主通道),通过主通道获取接收端的会议终端具备的网络通信能力,例如,接收端的会议终端是否支持有线网络、无线网络、5G网络;
E102、判断发送端的会议终端的有线网络、无线网络、5G网络是否可用;若有线网络、无线网络、5G网络中的至少两者可用,执行E103;否则,通过主通道与接收端的会议终端进行交互;
E103、判断接收端的会议终端是否支持有线网络、无线网络、5G网络中的至少两者;若接收端的会议终端支持有线网络、无线网络、5G网络中的至少两者,在内核层面发起与接收端的会议终端建立多条媒体传输链路;否则,通过主通道与接收端的会议终端进行交互。
实施例四
图17是发送端的会议终端发送媒体数据的示意图。
E201、应用层将媒体数据发送给内核协议栈来处理;
E202、内核判断当前收发两端是否已经建立多条媒体传输链路;若未建立多条媒体传输链路,则发起建立多条媒体传输链路;若已经建立多条媒体传输链路,则为媒体数据的每一个数据包编号,并在数据包的包头添加序列号;
E203、将添加了序列号的数据包拷贝多份,分别通过多条媒体传输链路进行转发;
E204、由物理层的有线网卡、无线网卡、5G模块将添加了序列号的数据包发送到各条媒体传输链路对应的网络,完成发送段的会议终端的发送任务。
实施例五
图18是接收端的会议终端接收并处理媒体数据的示意图。
E301、接收端物理层的有线网卡、无线网卡、5G模块先后收到媒体数据,然后将数据上送到内核协议栈处理;
E302、内核协议栈收到媒体数据后,解析数据包包头中的序列号,判断是否已经接收过序列号相同的数据包;若已经接收过序列号相同的数据包,则丢弃该数据包,继续等待下一个数据包;否则,将该数据包上送到应用层程序,进行下一步的处理;
E303、应用层程序(主要是媒体模块)收到数据包后,进行相应的解码和送显处理,对应用层来说,对内核层面通过多条媒体传输链路接收多份相同数据包无感知。
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、装置中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其它数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其它存储器技术、CD-ROM、数字多功能盘(DVD)或其它光盘存储、磁盒、磁带、磁盘存储或其它磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其它的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其它传输机制之类的调制数据信号中的其它数据,并且可包括任何信息递送介质。
本文已经公开了示例实施例,并且虽然采用了具体术语,但它们仅用于并仅应当被解释为一般说明性含义,并且不用于限制的目的。在一些实例中,对本领域技术人员显而易见的是,除非另外明确指出,否则可单独使用与特定实施例相结合描述的特征、特性和/或元素,或可与其它实施例相结合描述的特征、特性和/或元件组合使用。因此,本领域技术人员将理解,在不脱离由所附的权利要求阐明的本公开的范围的情况下,可进行各种形式和细节上的改变。
Claims (15)
1.一种数据传输方法,应用于发送端设备,包括:
与接收端设备建立多条媒体传输链路,多条所述媒体传输链路对应于所述发送端设备接入的多种网络;
通过多条所述媒体传输链路传输待传输数据。
2.根据权利要求1所述的数据传输方法,其中,通过多条所述媒体传输链路传输待传输数据的步骤包括:
为所述待传输数据的数据包添加标签字段,不同数据包的标签字段不同;
将添加了标签字段的数据包复制到各条所述媒体传输链路进行传输。
3.根据权利要求2所述的数据传输方法,其中,为所述待传输数据的数据包添加标签字段的步骤包括:
判断所述待传输数据的数据包是否为媒体数据包;
在所述待传输数据的数据包为媒体数据包的情况下,为所述待传输数据的数据包添加标签字段。
4.根据权利要求1至3中任意一项所述的数据传输方法,其中,与接收端设备建立多条媒体传输链路的步骤包括:
与所述接收端设备建立第一链路;
通过所述第一链路获取所述接收端设备的网络配置信息;
在所述接收端设备接入多种网络的情况下,根据所述发送端设备的网络配置信息和所述接收端设备的网络配置信息,建立至少一条第二链路,所述多条媒体传输链路包括所述第一链路和所述至少一条第二链路。
5.根据权利要求4所述的数据传输方法,其中,在与所述接收端设备建立第一链路的步骤之后,与接收端设备建立多条媒体传输链路的步骤还包括:
通过所述第一链路向所述接收端设备传输所述发送端设备的网络配置信息。
6.根据权利要求1至3中任意一项所述的数据传输方法,其中,与接收端设备建立多条媒体传输链路的步骤包括:
创建多个套接字以与所述接收端设备建立多条媒体传输链路;
将所述多个套接字与所述发送端设备用于接入多种网络的多个网卡一一对应绑定。
7.根据权利要求1至3中任意一项所述的数据传输方法,其中,所述发送端设备接入的多种网络包括有线通信网络、无线通信网络、移动通信网络中的至少两者。
8.一种数据处理方法,应用于接收端设备,包括:
通过与发送端设备建立的多条媒体传输链路接收待处理数据包,多条所述媒体传输链路对应于所述接收端设备接入的多种网络;
对所述待处理数据包进行处理。
9.根据权利要求8所述的数据处理方法,其中,对所述待处理数据包进行处理的步骤包括:
提取所述待处理数据包的标签字段,其中,不同待处理数据包的标签字段不同;
在所述待处理数据包的标签字段与任意一个已接收数据包的标签字段相同的情况下,丢弃所述待处理数据包;
在所述待处理数据包的标签字段与各个已接收数据包的标签字段均不相同的情况下,对所述待处理数据包执行应用层处理。
10.根据权利要求9所述的数据处理方法,其中,提取所述待处理数据包的标签字段的步骤包括:
判断所述待处理数据包是否为媒体数据包;
在所述待处理数据包为媒体数据包的情况下,提取所述待处理数据包的标签字段。
11.根据权利要求8至10中任意一项所述的数据处理方法,其中,在通过与发送端设备建立的多条媒体传输链路接收待处理数据包的步骤之前,所述数据处理方法还包括:
接收所述发送端设备的网络配置信息;
根据所述发送端设备的网络配置信息与所述接收端设备的网络配置信息,与所述发送端设备建立多条所述媒体传输链路。
12.一种发送端设备,包括:
一个或多个处理器;
存储器,其上存储有一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现根据权利要求1至7中任意一项所述的数据传输方法;
一个或多个I/O接口,连接在所述处理器与存储器之间,配置为实现所述处理器与存储器的信息交互。
13.一种接收端设备,包括:
一个或多个处理器;
存储器,其上存储有一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现根据权利要求8至11中任意一项所述的数据处理方法;
一个或多个I/O接口,连接在所述处理器与存储器之间,配置为实现所述处理器与存储器的信息交互。
14.一种会议终端,包括:
一个或多个处理器;
存储器,其上存储有一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现根据权利要求1至7中任意一项所述的数据传输方法和/或根据权利要求8至11中任意一项所述的数据处理方法;
一个或多个I/O接口,连接在所述处理器与存储器之间,配置为实现所述处理器与存储器的信息交互。
15.一种计算机可读介质,其上存储有计算机程序,所述程序被处理器执行时实现以下方法中的至少一者:
根据权利要求1至7中任意一项所述的数据传输方法;
根据权利要求8至11中任意一项所述的数据处理方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111062989.5A CN115801739A (zh) | 2021-09-10 | 2021-09-10 | 数据传输方法、数据处理方法及设备、会议终端、介质 |
PCT/CN2022/106656 WO2023035779A1 (zh) | 2021-09-10 | 2022-07-20 | 数据传输方法、数据处理方法、发送端设备、接收端设备、会议终端、以及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111062989.5A CN115801739A (zh) | 2021-09-10 | 2021-09-10 | 数据传输方法、数据处理方法及设备、会议终端、介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115801739A true CN115801739A (zh) | 2023-03-14 |
Family
ID=85416796
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111062989.5A Pending CN115801739A (zh) | 2021-09-10 | 2021-09-10 | 数据传输方法、数据处理方法及设备、会议终端、介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN115801739A (zh) |
WO (1) | WO2023035779A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117478707B (zh) * | 2023-12-27 | 2024-05-07 | 天津数智物联科技有限公司 | 一种多目标能源管理数据传输方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102665142B (zh) * | 2012-04-05 | 2014-05-14 | 浙江大学 | 一种终端均衡速率的无线音视频并行传输方法 |
CN103547327A (zh) * | 2012-12-27 | 2014-01-29 | 华为技术有限公司 | 多种无线制式通信的实现方法及用户设备 |
CN108540380B (zh) * | 2017-03-02 | 2021-08-20 | 华为技术有限公司 | 多子流网络传输方法及装置 |
CN107018088B (zh) * | 2017-03-06 | 2020-03-17 | 北京安博通科技股份有限公司 | 传输链路选择方法及装置 |
CN109769139A (zh) * | 2018-11-23 | 2019-05-17 | 深圳秦云网科技有限公司 | 一种传输视频数据的方法及装置 |
-
2021
- 2021-09-10 CN CN202111062989.5A patent/CN115801739A/zh active Pending
-
2022
- 2022-07-20 WO PCT/CN2022/106656 patent/WO2023035779A1/zh unknown
Also Published As
Publication number | Publication date |
---|---|
WO2023035779A1 (zh) | 2023-03-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6569020B2 (ja) | ネットワーキング技術 | |
CN101828372B (zh) | 对网络连接的tcp行为并行化 | |
US7876751B2 (en) | Reliable link layer packet retry | |
CN110169030B (zh) | 用于在异构网络上发送内容的方法及其设备 | |
US10469200B2 (en) | Minimum latency link layer metaframing and error correction | |
US9826282B2 (en) | Reception apparatus, reception method, and recording medium | |
JP2007028623A (ja) | ネットワークストリームベースの伝送速度を加速するためにber/perを調整するためのシステムおよび方法 | |
US8406298B2 (en) | Method and apparatus to transmit data on PLC network by aggregating data | |
CN113301007A (zh) | 一种数据的传输方法、计算设备及存储介质 | |
WO2017148419A1 (zh) | 数据传输方法及服务器 | |
JP2006287925A (ja) | エラー回復機構およびそれを備えるネットワーク要素 | |
CN115801739A (zh) | 数据传输方法、数据处理方法及设备、会议终端、介质 | |
CN111211933B (zh) | 一种确定传输链路的质量的方法及装置 | |
WO2022100199A1 (zh) | 数据传输方法、装置、介质、电子设备及网络接入设备 | |
CN114866477A (zh) | 一种网络设备拥塞控制机制的测试方法、系统及设备 | |
CN111835801B (zh) | 文件下载方法、装置、服务器、边缘设备、终端及介质 | |
CN113973091A (zh) | 一种报文处理方法、网络设备以及相关设备 | |
US20190373085A1 (en) | Transfer apparatus, transfer method, and program | |
KR100919216B1 (ko) | 데이터 송신 방법, 수신 방법 및 그 장치 | |
JP2008113327A (ja) | ネットワークインターフェース装置 | |
CN109792444B (zh) | 实况内容分发系统中的播出缓冲 | |
JP3148733B2 (ja) | 信号処理装置及び信号処理システム | |
CN115086285B (zh) | 一种数据处理方法、装置、存储介质及电子设备 | |
JP2012508532A (ja) | 欠落したメディアアクセスコントロールフレームのためにアプリケーションにより構成されるコンテンツベースの再送信スキーム | |
WO2023174170A1 (zh) | 报文处理方法、报文校验方法和装置 |
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 |