CN113259339B - 一种基于udp的数据传输方法、系统及电子设备 - Google Patents
一种基于udp的数据传输方法、系统及电子设备 Download PDFInfo
- Publication number
- CN113259339B CN113259339B CN202110502993.2A CN202110502993A CN113259339B CN 113259339 B CN113259339 B CN 113259339B CN 202110502993 A CN202110502993 A CN 202110502993A CN 113259339 B CN113259339 B CN 113259339B
- Authority
- CN
- China
- Prior art keywords
- mudp
- information
- message
- target terminal
- data transmission
- 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]
- H04L69/161—Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
- H04L69/162—Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields involving adaptations of sockets based mechanisms
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Communication Control (AREA)
Abstract
本发明提供一种基于UDP的数据传输方法、系统及电子设备,其中数据传输方法为在网络终端与目标终端中分别只建立一个UDP Socket,基于UDP协议通信,网络终端与目标终端分别通过数据处理层对报文进行可靠传输处理和非可靠传输处理;在进行非可靠数据传输时,直接在原始报文中加入MUDP信息,通过UDP协议进行通信后,解析出MUDP信息的标记含义,符合要求则直接将原始报文发送至目标终端,具有低延时、传输快的特点;在进行可靠数据传输时,先后在原始报文中加入RDT信息和MUDP信息,通过UDP协议进行通信后,再先后解析出MUDP信息和RDT信息的标记含义,其中有效数据直接发送至目标终端,传输控制报文则请求重传,提高数据传输可靠性,减少丢包率。
Description
技术领域
本发明属于数据传输技术领域,尤其涉及一种基于UDP的数据传输方法、系统及电子设备。
背景技术
UDP是一个无连接协议,UDP报文没有可靠性保证、顺序保证和流量控制字段等,可靠性较差,但是正因为UDP协议的控制选项较少,在数据传输过程中延迟小、数据传输效率高。
随着互联网技术的快速发展,特别在流媒体传输领域,在手机APP端与网络摄像头(IPC)端需要进行多样式的数据传输,当手机APP端向IPC端发送控制指令时,需要一种可靠的数据传输方式,但是当IPC端向手机APP端发送音视频数据时,则可以牺牲一定的可靠性来换取低延迟传输,因此为了适应这种多样式的数据传输,需要分别在手机APP端和IPC端建立多个Socket,一个TCP连接用于可靠数据传输,一个或多个UDP用于实时媒体数据传输,系统复杂,传输方法麻烦。
因此,亟需一种能够同时满足可靠数据传输和非可靠数据传输,且无需配置太多Socket的数据传输方法及系统。
发明内容
本发明的目的在于克服上述现有技术存在的不足,提供一种基于UDP的数据传输方法、系统及电子设备,解决了现有技术中在采用UDP作为通信协议时,无法兼顾可靠数据传输和非可靠数据传输两种方式的缺陷,也克服了需要配置多个Socket所造成应用开发繁琐、系统复杂的问题。
为了实现上述目的,第一方面,本发明提供一种基于UDP的数据传输方法,所述数据传输方法用于网络终端与目标终端的数据传输,所述数据传输方法过程如下:
在网络终端与目标终端分别建立一个UDP Socket,所述网络终端与目标终端通过UDP协议通信;
所述网络终端与目标终端分别通过数据处理层与UDP协议通信连接,所述数据处理层被配置为用于对所述网络终端和目标终端所要发送和/或接收的报文进行可靠传输处理和非可靠传输处理。
在一些实施例中,在进行非可靠数据传输时,所述网络终端通过send_unreliable接口向数据处理层发送原始报文,所述数据处理层在所述原始报文中加入MUDP信息,得到MUDP报文;
所述网络终端通过UDP Socket将MUDP报文发送至所述目标终端的UDP Socket,随后所述目标终端的数据处理层解析所述MUDP报文,并判断所述MUDP信息;
若所述MUDP信息标记为“0”,则在MUDP报文中去掉MUDP信息,将原始报文通过recv_unreliable发送至目标终端。
在一些实施例中,在进行可靠数据传输时,所述网络终端通过send_reliable接口向数据处理层发送原始报文,所述数据处理层在所述原始报文中加入MUDP信息,得到MUDP报文;
所述网络终端通过UDP Socket将MUDP报文发送至所述目标终端的UDP Socket,随后所述目标终端的数据处理层解析所述MUDP报文,并判断所述MUDP信息;
若所述MUDP信息标记为“1”,则在MUDP报文中去掉MUDP信息,将原始报文通过recv_reliable发送至目标终端。
在一些实施例中,在进行可靠数据传输时,在所述网络终端的数据处理层向所述原始报文中加入MUDP信息前,所述数据处理层先通过RDT协议在原始报文中加入RDT信息;
在所述目标终端的数据处理层解析所述MUDP报文并判断所述MUDP信息标记为“1”后,去除报文中的MUDP信息,所述目标终端的RDT协议对所述RDT信息进行解析;
若RDT信息为有效数据,则将原始报文通过recv_reliable发送至目标终端;
若RDT信息为传输控制报文,则检测是否存在丢包,如果存在丢包,则发送请求重传指令至所述网络终端。
在一些实施例中,在非可靠数据传输中,所述MUDP信息位于所述原始报文的头部,所述MUDP信息大小为1个byte。
在一些实施例中,在可靠数据传输中,所述RDT信息位于所述原始报文的头部,所述MUDP信息再加至所述RDT信息的头部,所述MUDP信息大小为1个byte。
在一些实施例中,当所述网络终端通过可靠数据传输方式向所述目标终端发送控制指令时,所述目标终端接收到后同样通过可靠数据传输方式向所述网络终端返回收到指令。
第二方面,本发明提供一种应用于如上述的基于UDP的数据传输方法的系统,包括:
网络终端,所述网络终端包括第一UDP Socket和第一数据处理层;
目标终端,所述目标终端包括第二UDP Socket和第二数据处理层;
所述网络终端的第一UDP Socket与所述目标终端的第二UDP Socket通过UDP协议进行信号连接,所述网络终端与目标终端分别通过其数据处理层与UDP协议通信连接,所述数据处理层被配置为用于对所述网络终端和目标终端所要发送和/或接收的报文进行可靠传输处理和非可靠传输处理。
在一些实施例中,所述网络终端还包括send_unreliable接口和send_reliable接口,所述send_unreliable接口和send_reliable接口分别与所述第一数据处理层信号连接,所述第一数据处理层包括第一MUDP模块和第一RDT模块;
所述目标终端还包括recv_unreliable接口和recv_reliable接口,所述recv_unreliable接口和recv_reliable接口分别与所述第二数据处理层信号连接,所述第二数据处理层包括第二MUDP模块和第二RDT模块;
在进行非可靠数据传输时,所述第一MUDP模块被配置为在所述原始报文中加入MUDP信息,得到MUDP报文;所述第二MUDP模块被配置为解析所述MUDP报文,并判断所述MUDP信息,若所述MUDP信息标记为“0”,则在MUDP报文中去掉MUDP信息,将原始报文通过recv_unreliable发送至目标终端;
在进行可靠数据传输时,所述第一RDT模块被配置为通过RDT协议在原始报文中加入RDT信息;所述第一MUDP模块被配置为在所述RDT信息的头部加入MUDP信息,得到MUDP报文;所述第二MUDP模块被配置为解析所述MUDP报文,并判断所述MUDP信息,若所述MUDP信息标记为“1”,则在MUDP报文中去掉MUDP信息;所述第二RDT模块被配置为对所述RDT信息进行解析,若RDT信息为有效数据,则将原始报文通过recv_reliable发送至目标终端,若RDT信息为传输控制报文,则检测是否存在丢包,如果存在丢包,则发送请求重传指令至所述网络终端。
第三方面,本发明提供一种电子设备,包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、至少一段程序、代码集或指令集由所述处理器加载并执行以实现如上述基于UDP的数据传输方法。
本发明的有益效果:
因此,根据本公开实施例,在网络终端与目标终端中分别只建立一个UDP Socket,基于UDP协议通信,网络终端与目标终端分别通过数据处理层对报文进行可靠传输处理和非可靠传输处理。
在进行非可靠数据传输时,直接在原始报文中加入MUDP信息,通过UDP协议进行通信后,解析出MUDP信息的标记含义,符合要求则直接将原始报文发送至目标终端,具有低延时、传输快的特点。
在进行可靠数据传输时,先后在原始报文中加入RDT信息和MUDP信息,通过UDP协议进行通信后,再先后解析出MUDP信息和RDT信息的标记含义,其中有效数据直接发送至目标终端,传输控制报文则请求重传,提高数据传输可靠性,减少丢包率。
附图说明
利用附图对本发明作进一步说明,但附图中的实施例不构成对本发明的任何限制,对于本领域的普通技术人员,在不付出创造性劳动的前提下,还可以根据以下附图获得其它的附图。
图1是本公开实施例中一种基于UDP的数据传输方法及系统的框架示意图。
图2是本公开实施例中一种基于UDP的数据传输方法中非可靠数据传输方式下的报文格式。
图3是本公开实施例中一种基于UDP的数据传输方法中可靠数据传输方式下的报文格式。
具体实施方式
下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,技术、方法和设备应当被视为说明书的一部分。
申请人研究发现:
随着互联网技术的快速发展,特别在流媒体传输领域,在手机APP端与网络摄像头(IPC)端需要进行多样式的数据传输,当手机APP端向IPC端发送控制指令时,需要一种可靠的数据传输方式,但是当IPC端向手机APP端发送音视频数据时,则可以牺牲一定的可靠性来换取低延迟传输,因此为了适应这种多样式的数据传输,需要分别在手机APP端和IPC端建立多个Socket,一个TCP连接用于可靠数据传输,一个或多个UDP用于实时媒体数据传输,系统复杂,传输方法麻烦。
有鉴于此,第一方面,参照图1至图3,在本公开中提供一种基于UDP的数据传输方法,数据传输方法用于网络终端与目标终端的数据传输,数据传输方法过程如下:
在网络终端与目标终端分别建立一个UDP Socket,网络终端与目标终端通过UDP协议通信;
网络终端与目标终端分别通过数据处理层与UDP协议通信连接,数据处理层被配置为用于对网络终端和目标终端所要发送和/或接收的报文进行可靠传输处理和非可靠传输处理。
需要说明的是,网络终端与目标终端分别通过其单独的一个UDP Socket与对方进行UDP协议通信,通过一个UDP Socket兼容可靠数据传输和非可靠数据传输,在网络终端向目标终端发送数据时,先对此数据传输方式进行定义,即选择是可靠传输方式和非可靠传输方式,以便数据处理层对报文进行不同的数据处理,其中此数据处理层是在UDP协议和应用程序之间的一层应用层协议,只需要分别创建一个UDP Socket,可以实现基于UDP的可靠传输(RDT over UDP)和不可靠报文在同一个UDP socket中传输,有效减少系统端口占用,简化应用开发。
作为一种实施方式,在进行非可靠数据传输时,网络终端通过send_unreliable接口向数据处理层发送原始报文,数据处理层在原始报文中加入MUDP信息,得到MUDP报文;
网络终端通过UDP Socket将MUDP报文发送至目标终端的UDP Socket,随后目标终端的数据处理层解析MUDP报文,并判断MUDP信息;
若MUDP信息标记为“0”,则在MUDP报文中去掉MUDP信息,将原始报文通过recv_unreliable发送至目标终端。
需要说明的是,此MUDP意思为多特性UDP,即Multi-Feature UDP,简称:MUDP,数据处理层包括有写入MUDP信息和解析MUDP信息的功能,在进行非可靠数据传输时,为了提高传输速度,减少延时,通过在原始报文中加入MUDP信息,并在目标终端的数据处理层中进行解析,当MUDP信息标记为“0”时,即代表这是非可靠数据传输方式,去掉MUDP信息后,将原始报文通过recv_unreliable发送至目标终端。
相应地,作为一种实施方式,在进行可靠数据传输时,网络终端通过send_reliable接口向数据处理层发送原始报文,数据处理层在原始报文中加入MUDP信息,得到MUDP报文;
网络终端通过UDP Socket将MUDP报文发送至目标终端的UDP Socket,随后目标终端的数据处理层解析MUDP报文,并判断MUDP信息;
若MUDP信息标记为“1”,则在MUDP报文中去掉MUDP信息,将原始报文通过recv_reliable发送至目标终端。
为了区别数据传输的方式,通过标记不同的MUDP信息,使目标终端的数据处理层解析出不一样的结果,以便对不同数据传输方式进行不同的数据处理。
在本实施例中,在进行可靠数据传输时,为了进一步提高数据传输可靠性,在网络终端的数据处理层向原始报文中加入MUDP信息前,数据处理层先通过RDT协议在原始报文中加入RDT信息,原始报文加入RDT信息后再加入MUDP信息;
在目标终端的数据处理层解析MUDP报文并判断MUDP信息标记为“1”后,去除报文中的MUDP信息,目标终端的RDT协议对RDT信息进行解析;
若RDT信息为有效数据,则将原始报文通过recv_reliable发送至目标终端;
若RDT信息为传输控制报文,则检测是否存在丢包,如果存在丢包,则发送请求重传指令至网络终端。
通过增加一个RDT协议进行数据通信,当选择可靠数据传输方式时,预先对send_reliable接口发送来的原始报文加上RDT信息,再加上标记为“1”的MUDP信息;进入目标终端的解析阶段时,确定MUDP信息为“1”并在去掉MUDP信息后,在RDT协议中,再对RDT信息进行进一步的解析,区分出有效数据还是传输控制报文,实现数据的可靠传输。
在本实施例中,在非可靠数据传输中,MUDP信息位于原始报文的头部,MUDP信息大小为1个byte。
在本实施例中,在可靠数据传输中,RDT信息位于原始报文的头部,MUDP信息再加至RDT信息的头部,即MUDP信息+RDT信息+原始报文,MUDP信息大小为1个byte。
当然地,对于MUDP信息标记为“1”还是“0”代表可靠还是不可靠,可以根据用户自定义进行修改,在此不作唯一限定。
在本实施例中,当网络终端通过可靠数据传输方式向目标终端发送控制指令时,目标终端接收到后同样通过可靠数据传输方式向网络终端返回收到指令。同样地,数据传输具有双向性,即网络终端可以向目标终端传输数据,目标终端同样可以向网络终端传输数据,且两者均可选择可靠数据传输方式和非可靠数据传输方式,因此当网络终端向目标终端发送一个需要反馈的控制指令时,控制指令通过可靠数据传输方式送达至目标终端后,目标终端也可通过可靠数据传输方式返回收到指令,提高控制指令的准确性。
实施例1:
本实施例1应用在IPC场景,即网络终端为手机APP端,在手机上安装一APP应用程序,通过网络传输,与作为目标终端的IPC端进行数据交互传输,由于目前远程控制摄像头的应用场景非常广泛,例如通过手机APP控制摄像头的开启和关闭,并可自定义某一时间段,观看此时间段内的音视频数据,所以在数据交互传输时,既存在对可靠性要求高的控制指令传输,也存在对时延率要求高的流媒体传输,作为一种实施方式,下面为此场景应用本基于UDP的数据传输方法的一种情况:
S1:手机APP端通过UDP协议与IPC端建立socket通信;
S2:手机APP端通过send_reliable传输控制指令,请求IPC端的摄像头传输实时视频画面给手机APP端,要求是此控制指令必须保证传递成功,并且要收到来自IPC端的返回;
S3:IPC端通过recv_reliable接口接收到手机APP端的要求传输实时视频画面的控制指令,并通过send_reliable返回收到指令;
S4:IPC端开启视频编码,将编码数据通过send_unreliable接口传输给手机APP端;
S5:手机APP端通过recv_unreliable接口获取实时视频数据。
由此可见,在本实施例1中,在一个UDP socket中既可采用可靠数据传输方式来传输控制指令,同时也可采用非可靠数据传输方式来传输低延时的视频数据。
第二方面,参照图1,在本公开中提供一种应用于如上述的基于UDP的数据传输方法的系统,包括:
网络终端,网络终端包括第一UDP Socket和第一数据处理层;
目标终端,目标终端包括第二UDP Socket和第二数据处理层;
网络终端的第一UDP Socket与目标终端的第二UDP Socket通过UDP协议进行信号连接,网络终端与目标终端分别通过其数据处理层与UDP协议通信连接,数据处理层被配置为用于对网络终端和目标终端所要发送和/或接收的报文进行可靠传输处理和非可靠传输处理。
在本实施例中,网络终端还包括send_unreliable接口和send_reliable接口,send_unreliable接口和send_reliable接口分别与第一数据处理层信号连接,第一数据处理层包括第一MUDP模块和第一RDT模块;
目标终端还包括recv_unreliable接口和recv_reliable接口,recv_unreliable接口和recv_reliable接口分别与第二数据处理层信号连接,第二数据处理层包括第二MUDP模块和第二RDT模块;
在进行非可靠数据传输时,第一MUDP模块被配置为在原始报文中加入MUDP信息,得到MUDP报文;第二MUDP模块被配置为解析MUDP报文,并判断MUDP信息,若MUDP信息标记为“0”,则在MUDP报文中去掉MUDP信息,将原始报文通过recv_unreliable发送至目标终端;
在进行可靠数据传输时,第一RDT模块被配置为通过RDT协议在原始报文中加入RDT信息;第一MUDP模块被配置为在RDT信息的头部加入MUDP信息,得到MUDP报文;第二MUDP模块被配置为解析MUDP报文,并判断MUDP信息,若MUDP信息标记为“1”,则在MUDP报文中去掉MUDP信息;第二RDT模块被配置为对RDT信息进行解析,若RDT信息为有效数据,则将原始报文通过recv_reliable发送至目标终端,若RDT信息为传输控制报文,则检测是否存在丢包,如果存在丢包,则发送请求重传指令至网络终端。
需要说明的是,由于数据传输的双向性,在网络终端,包括send_unreliable接口和send_reliable接口,同样也包括recv_unreliable接口和recv_reliable接口;在目标终端,包括recv_unreliable接口和recv_reliable接口,同样也包括send_unreliable接口和send_reliable接口。
网络终端通过接口连接第一数据处理层,在第一数据处理层中包括第一MUDP模块和第一RDT模块,第一数据处理层再通过第一UDP Socket与目标终端的第二UDP Socket信号连接,同理地,第二UDP Socket与第二数据处理层信号连接,第二数据处理层包括第二MUDP模块和第二RDT模块,第二数据处理层通过接口连接目标终端。
第三方面,在本公开中提供一种电子设备,包括处理器和存储器,存储器中存储有至少一条指令、至少一段程序、代码集或指令集,至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行以实现如上述基于UDP的数据传输方法。
第四方面,在本公开中提供一种计算机可读存储介质,其上存储有计算机指令,计算机指令被处理器执行时实现上述基于UDP的数据传输方法的步骤。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。
在一个典型的配置中,计算机包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带、磁盘存储、量子存储器、基于石墨烯的存储介质或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
相对于现有技术,本发明提供的一种基于UDP的数据传输方法、系统及电子设备,在网络终端与目标终端中分别只建立一个UDP Socket,基于UDP协议通信,网络终端与目标终端分别通过数据处理层对报文进行可靠传输处理和非可靠传输处理。
在进行非可靠数据传输时,直接在原始报文中加入MUDP信息,通过UDP协议进行通信后,解析出MUDP信息的标记含义,符合要求则直接将原始报文发送至目标终端,具有低延时、传输快的特点。
在进行可靠数据传输时,先后在原始报文中加入RDT信息和MUDP信息,通过UDP协议进行通信后,再先后解析出MUDP信息和RDT信息的标记含义,其中有效数据直接发送至目标终端,传输控制报文则请求重传,提高数据传输可靠性,减少丢包率。
最后需要强调的是,本发明不限于上述实施方式,以上仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (8)
1.一种基于UDP的数据传输方法,其特征在于,所述数据传输方法用于网络终端与目标终端的数据传输,所述网络终端为APP端,所述目标终端为IPC端,所述数据传输方法过程如下:
在网络终端与目标终端分别建立一个UDP Socket,所述网络终端与目标终端通过UDP协议通信;
所述网络终端与目标终端分别通过数据处理层与UDP协议通信连接,所述数据处理层被配置为用于对所述网络终端和目标终端所要发送和/或接收的报文进行可靠传输处理和非可靠传输处理;
在进行非可靠数据传输时,所述网络终端通过send_unreliable接口向数据处理层发送原始报文,所述数据处理层在所述原始报文中加入MUDP信息,得到MUDP报文;
所述网络终端通过UDP Socket将MUDP报文发送至所述目标终端的UDP Socket,随后所述目标终端的数据处理层解析所述MUDP报文,并判断所述MUDP信息;
若所述MUDP信息标记为“0”,则在MUDP报文中去掉MUDP信息,将原始报文通过recv_unreliable发送至目标终端;
若所述MUDP信息标记为“1”,则在MUDP报文中去掉MUDP信息,将原始报文通过recv_reliable发送至目标终端。
2.如权利要求1所述的一种基于UDP的数据传输方法,其特征在于,在进行可靠数据传输时,所述网络终端通过send_reliable接口向数据处理层发送原始报文,所述数据处理层在所述原始报文中加入MUDP信息,得到MUDP报文;
所述网络终端通过UDP Socket将MUDP报文发送至所述目标终端的UDP Socket,随后所述目标终端的数据处理层解析所述MUDP报文,并判断所述MUDP信息。
3.如权利要求2所述的一种基于UDP的数据传输方法,其特征在于,在进行可靠数据传输时,在所述网络终端的数据处理层向所述原始报文中加入MUDP信息前,所述数据处理层先通过RDT协议在原始报文中加入RDT信息;
在所述目标终端的数据处理层解析所述MUDP报文并判断所述MUDP信息标记为“1”后,去除报文中的MUDP信息,所述目标终端的RDT协议对所述RDT信息进行解析;
若RDT信息为有效数据,则将原始报文通过recv_reliable发送至目标终端;
若RDT信息为传输控制报文,则检测是否存在丢包,如果存在丢包,则发送请求重传指令至所述网络终端。
4.如权利要求3所述的一种基于UDP的数据传输方法,其特征在于,在非可靠数据传输中,所述MUDP信息位于所述原始报文的头部,所述MUDP信息大小为1个byte。
5.如权利要求4所述的一种基于UDP的数据传输方法,其特征在于,在可靠数据传输中,所述RDT信息位于所述原始报文的头部,所述MUDP信息再加至所述RDT信息的头部,所述MUDP信息大小为1个byte。
6.如权利要求5所述的一种基于UDP的数据传输方法,其特征在于,当所述网络终端通过可靠数据传输方式向所述目标终端发送控制指令时,所述目标终端接收到后同样通过可靠数据传输方式向所述网络终端返回收到指令。
7.一种应用于如权利要求1至6任一项所述的基于UDP的数据传输方法的系统,其特征在于,包括:
网络终端,所述网络终端包括第一UDP Socket和第一数据处理层,所述网络终端为APP端;
目标终端,所述目标终端包括第二UDP Socket和第二数据处理层,所述目标终端为IPC端;
所述网络终端的第一UDP Socket与所述目标终端的第二UDP Socket通过UDP协议进行信号连接,所述网络终端与目标终端分别通过其数据处理层与UDP协议通信连接,所述数据处理层被配置为用于对所述网络终端和目标终端所要发送和/或接收的报文进行可靠传输处理和非可靠传输处理;
所述网络终端还包括send_unreliable接口和send_reliable接口,所述send_unreliable接口和send_reliable接口分别与所述第一数据处理层信号连接,所述第一数据处理层包括第一MUDP模块和第一RDT模块;
所述目标终端还包括recv_unreliable接口和recv_reliable接口,所述recv_unreliable接口和recv_reliable接口分别与所述第二数据处理层信号连接,所述第二数据处理层包括第二MUDP模块和第二RDT模块;
在进行非可靠数据传输时,所述第一MUDP模块被配置为在所述原始报文中加入MUDP信息,得到MUDP报文;所述第二MUDP模块被配置为解析所述MUDP报文,并判断所述MUDP信息,若所述MUDP信息标记为“0”,则在MUDP报文中去掉MUDP信息,将原始报文通过recv_unreliable发送至目标终端;
在进行可靠数据传输时,所述第一RDT模块被配置为通过RDT协议在原始报文中加入RDT信息;所述第一MUDP模块被配置为在所述RDT信息的头部加入MUDP信息,得到MUDP报文;所述第二MUDP模块被配置为解析所述MUDP报文,并判断所述MUDP信息,若所述MUDP信息标记为“1”,则在MUDP报文中去掉MUDP信息;所述第二RDT模块被配置为对所述RDT信息进行解析,若RDT信息为有效数据,则将原始报文通过recv_reliable发送至目标终端,若RDT信息为传输控制报文,则检测是否存在丢包,如果存在丢包,则发送请求重传指令至所述网络终端。
8.一种电子设备,其特征在于,包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、至少一段程序、代码集或指令集由所述处理器加载并执行以实现如权利要求1至6任一项所述的基于UDP的数据传输方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110502993.2A CN113259339B (zh) | 2021-05-08 | 2021-05-08 | 一种基于udp的数据传输方法、系统及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110502993.2A CN113259339B (zh) | 2021-05-08 | 2021-05-08 | 一种基于udp的数据传输方法、系统及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113259339A CN113259339A (zh) | 2021-08-13 |
CN113259339B true CN113259339B (zh) | 2022-09-30 |
Family
ID=77222385
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110502993.2A Active CN113259339B (zh) | 2021-05-08 | 2021-05-08 | 一种基于udp的数据传输方法、系统及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113259339B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116366436B (zh) * | 2023-04-21 | 2024-03-05 | 南京弘竹泰信息技术有限公司 | 一种基于广域组网提供各种电信增值业务的方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103841148A (zh) * | 2012-11-23 | 2014-06-04 | 京信通信系统(中国)有限公司 | 监控程序中利用可靠与非可靠网络的主从通信方法及系统 |
WO2021047397A1 (zh) * | 2019-09-09 | 2021-03-18 | 晶晨半导体(深圳)有限公司 | 一种基于ts格式和udp传输方式的网络丢包重传方法 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100344122C (zh) * | 2003-04-22 | 2007-10-17 | 华为技术有限公司 | 一种实现从指定端口发送数据报类型报文的方法 |
US7743245B2 (en) * | 2005-03-10 | 2010-06-22 | Intel Corporation | Security protocols on incompatible transports |
CN101447925A (zh) * | 2008-12-17 | 2009-06-03 | 中兴通讯股份有限公司 | 一种发送多路数据包的方法及系统 |
CN103618694A (zh) * | 2013-11-01 | 2014-03-05 | 西南科技大学 | 基于数字无线电窄带系统的r2udp协议设计 |
CN106130693B (zh) * | 2016-07-08 | 2019-04-23 | 浙江工业大学 | 一种基于udp的可靠传输方法 |
CN112468513B (zh) * | 2020-12-14 | 2022-09-23 | 南京中孚信息技术有限公司 | 一种企业网的终端管理通信方法 |
-
2021
- 2021-05-08 CN CN202110502993.2A patent/CN113259339B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103841148A (zh) * | 2012-11-23 | 2014-06-04 | 京信通信系统(中国)有限公司 | 监控程序中利用可靠与非可靠网络的主从通信方法及系统 |
WO2021047397A1 (zh) * | 2019-09-09 | 2021-03-18 | 晶晨半导体(深圳)有限公司 | 一种基于ts格式和udp传输方式的网络丢包重传方法 |
Also Published As
Publication number | Publication date |
---|---|
CN113259339A (zh) | 2021-08-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111629240B (zh) | 多屏互动显示方法及装置 | |
CN111309279B (zh) | 多屏互动显示方法及装置 | |
CN112653700B (zh) | 一种基于webrtc网页视频通信的方法 | |
US11792130B2 (en) | Audio/video communication method, terminal, server, computer device, and storage medium | |
CN103348657B (zh) | 流媒体播放方法、设备及系统 | |
US10360913B2 (en) | Speech recognition method, device and system based on artificial intelligence | |
WO2020248649A1 (zh) | 音视频数据同步播放方法、装置、系统、电子设备及介质 | |
CN108337246B (zh) | 防止重放延迟的媒体重放设备和媒体服务设备 | |
CN112073750B (zh) | 一种远程桌面控制方法及系统 | |
CN110706824A (zh) | 用于远程会诊的交互方法、装置、服务器、系统及介质 | |
WO2022116764A1 (zh) | 数据处理方法、装置、通信节点和存储介质 | |
CN112188454B (zh) | 基于NB-IoT网络的短距通信方法、系统、设备及存储介质 | |
CN113259339B (zh) | 一种基于udp的数据传输方法、系统及电子设备 | |
CN104753989A (zh) | 基于Web-based OS运行环境的屏幕影像传输播放方法及装置 | |
CN111787026B (zh) | 一种媒体数据的传输方法、装置、设备及存储介质 | |
CN112511366A (zh) | 测试系统、方法、装置、设备及存储介质 | |
CN115004752A (zh) | 感知代理sbp终止方法及装置、电子设备及存储介质 | |
RU2696767C1 (ru) | Способ и система трансляции мультимедийной информации в режиме реального времени, устройство сбора информации и сервер проверки информации | |
CN113422669A (zh) | 数据传输方法、装置和系统、电子设备以及计算机可读存储介质 | |
CN114844870B (zh) | 一种媒体流获取方法、装置、电子设备及存储介质 | |
CN114422425B (zh) | 多链路聚合的数据传输方法、系统、装置及存储介质 | |
WO2016095510A1 (zh) | 一种路径选择方法、设备及系统 | |
CN113411228B (zh) | 一种网络状况的确定方法及服务器 | |
CN115865884A (zh) | 一种网络摄像头数据访问装置、方法、网络摄像头和介质 | |
CN113301398B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |