CN111385269B - 数据传输方法和装置 - Google Patents

数据传输方法和装置 Download PDF

Info

Publication number
CN111385269B
CN111385269B CN201811641443.3A CN201811641443A CN111385269B CN 111385269 B CN111385269 B CN 111385269B CN 201811641443 A CN201811641443 A CN 201811641443A CN 111385269 B CN111385269 B CN 111385269B
Authority
CN
China
Prior art keywords
data
data packet
packet
sending
queue
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
Application number
CN201811641443.3A
Other languages
English (en)
Other versions
CN111385269A (zh
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.)
Bigo Technology Singapore Pte Ltd
Original Assignee
Guangzhou Baiguoyuan Information Technology 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 Guangzhou Baiguoyuan Information Technology Co Ltd filed Critical Guangzhou Baiguoyuan Information Technology Co Ltd
Priority to CN201811641443.3A priority Critical patent/CN111385269B/zh
Priority to PCT/CN2019/120037 priority patent/WO2020134755A1/zh
Publication of CN111385269A publication Critical patent/CN111385269A/zh
Application granted granted Critical
Publication of CN111385269B publication Critical patent/CN111385269B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/06Notations for structuring of protocol data, e.g. abstract syntax notation one [ASN.1]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers

Abstract

本发明涉及数据传输技术领域,本发明提供一种数据传输方法和装置,所述方法包括发送端从队列中提取存储的数据,组装成上限为设定长度的数据的数据包,发送至接收端,并将超出所述设定长度部分的剩余数据缓存在缓存队列中;在下一次组装数据包时,将所述缓存队列中的数据添加到数据包中,并与当次发送数据发送至接收端;接收端接收数据包后,对所述数据包进行缓存,直至接收到的多个数据包组成完整的协议包时,将相应的数据包取出并向上层回调。本发明能达到提高数据传输的效率。

Description

数据传输方法和装置
技术领域
本发明涉及数据传输技术领域,具体而言,本发明涉及一种数据传输方法和装置。
背景技术
在互联网的数据传输中,尤其是信令传输往往会因为传输链路、传输段设备或者是所发送数据量等原因,影响数据的传输。在传统的信令传输技术通常使用完全可靠的传输方式,由于在发送端和接收端的数据组成和分配不合理,影响数据的传输。
发明内容
本发明的目的旨在至少能解决上述的技术缺陷之一,特别是现有技术中数据组成和分配不合理的问题,特提出以下技术方案:
第一方面,本发明提供一种数据传输方法,包括以下步骤:
发送端从队列中提取存储的数据,组装成上限为设定长度的数据的数据包,发送至接收端,并将超出所述设定长度部分的剩余数据缓存在缓存队列中;
在下一次组装数据包时,将所述缓存队列中的数据添加到数据包中,并与当次发送数据发送至接收端;
接收端接收数据包后,对所述数据包进行缓存,直至接收到的多个数据包组成完整的协议包时,将相应的数据包取出并向上层回调。
在其中一个实施例中,所述队列包括第一队列和第二队列,其中,第一队列的优先级高于第二队列,对应有第一缓存队列和第二缓存队列;
发送端按优先级组装相应的数据包并发送给接收端。
在其中一个实施例中,所述接收端接收数据包,对所述数据包进行缓存,直至接收到的多个数据包组成完整的协议包的步骤包括:
所述接收端设有临时存储列表,用于在接收到数据包时,进行临时存储;
直到收到的多个数据包组成一个完整的协议包,将相关的数据包取出,组成一个完整的协议包;
其中,同一个协议包的多个数据包共用一个协议标记,每个协议标记作为索引,每个索引对应有一个存储列表,同一协议标记的多个数据包存放至一个存储列表中。
在其中一个实施例中,所述接收端设有临时存储列表,用于在接收到数据包时,进行临时存储的步骤之后,还包括:
根据数据包的所述索引进行组装,将接收到的数据包插入到存储列表中,进行组包。
在其中一个实施例中,所述发送端从队列中提取存储的数据,组装成上限为设定长度的数据的数据包,发送至接收端的步骤还包括:
判断数据是否超过传输的超时时长;
当检测到数据超过其对应的所述超时时长时,对所述数据进行丢弃。
在其中一个实施例中,所述当检测到数据超过其对应的所述超时时长时,对所述数据进行丢弃的步骤包括:
在组装成上限为设定长度的数据的数据包的步骤之前,还包括:调用发送窗口;
若调用所述发送窗口时长超过所述超时时长,发送端对对应的数据进行丢弃。
在其中一个实施例中,所述当检测到数据超过其对应的所述超时时长时,对所述数据进行丢弃的步骤包括:
所述组装成上限为设定长度的数据的数据包的步骤之后,检测当前发送时长是否超过超时时长;
若是,发送端将对应的数据包丢弃;
否则,继续进行重传。
在其中一个实施例中,所述当检测到数据超过其对应的所述超时时长时,对所述数据进行丢弃的步骤包括:
检测接收端接收到所述数据包的时长是否超过超时时长;
若是,对对应的数据包进行丢弃。
在其中一个实施例中,所述当检测到数据超过其对应的所述超时时长时,对所述数据进行丢弃的步骤包括:
定期检测接收端接收到进行缓存的数据包的时长是否超过所述超时时长;
若检测到所述数据包超过超时时长且未组成完整的协议包,提取属于相同协议的数据包,并进行丢弃。
在其中一个实施例中,所述数据包包括其数据包的生成时间;
将接收端所接收的数据包中产生最晚时间设定为最大时间戳,若数据包的超时时长小于所述最大时间戳,则对应的数据包超时。
第二方面,本发明还提供一种数据传输方法,包括以下步骤:
从队列中提取存储的数据,组装成上限为设定长度的数据的数据包,发送至接收端,并将超出所述设定长度部分的剩余数据缓存在缓存队列中;
在下一次组装数据包时,将所述缓存队列中的数据添加到数据包中,并与当次发送数据发送至接收端;其中,接收端接收数据包后,对所述数据包进行缓存,直至接收到的多个数据包组成完整的协议包时,将相应的数据包取出并向上层回调。
在其中一个实施例中,所述队列包括第一队列和第二队列,其中,第一队列的优先级高于第二队列,对应有第一缓存队列和第二缓存队列;
按优先级组装相应的数据包并发送给接收端。
在其中一个实施例中,所述从队列中提取存储的数据,组装成上限为设定长度的数据的数据包,发送至接收端的步骤还包括:
判断数据是否超过传输的超时时长;
当检测到数据超过其对应的所述超时时长时,对所述数据进行丢弃。
在其中一个实施例中,所述当检测到数据超过其对应的所述超时时长时,对所述数据进行丢弃的步骤包括:
在组装成上限为设定长度的数据的数据包的步骤之前,还包括:调用发送窗口;
若调用所述发送窗口时长超过所述超时时长,对对应的数据进行丢弃。
在其中一个实施例中,所述当检测到数据超过其对应的所述超时时长时,对所述数据进行丢弃的步骤包括:
所述组装成上限为设定长度的数据的数据包的步骤之后,检测当前发送时长是否超过超时时长;
若是,将对应的数据包丢弃;
否则,继续进行重传。
第三方面,一种数据传输方法,包括以下步骤:
接收发送端从队列中提取存储的数据;其中,所述数据组装成上限为设定长度的数据的数据包,并将超出所述设定长度部分的剩余数据缓存在缓存队列中,在下一次组装数据包时,将所述缓存队列中的数据添加至数据包中,并与当次发送数据发送;
接收数据包后,对所述数据包进行缓存,直至接收到的多个数据包组成完整的协议包时,将相应的数据包取出并向上层回调。
在其中一个实施例中,所述接收端接收数据包,对所述数据包进行缓存,直至接收到的多个数据包组成完整的协议包的步骤包括:
所述接收端设有临时存储列表,用于在接收到数据包时,进行临时存储;
直到收到的多个数据包组成一个完整的协议包,将相关的数据包取出,组成一个完整的协议包;
其中,同一个协议包的多个数据包共用一个协议标记,每个协议标记作为索引,每个索引对应有一个存储列表,同一协议标记的多个数据包存放至一个存储列表中。
在其中一个实施例中,所述接收端设有临时存储列表,用于在接收到数据包时,进行临时存储的步骤之后,还包括:
根据数据包的所述索引进行组装,将接收到的数据包插入到存储列表中,进行组包。
在其中一个实施例中,所述接收发送端从队列中提取存储的数据的步骤包括:
判断数据是否超过传输的超时时长;
当检测到数据超过其对应的所述超时时长时,对所述数据进行丢弃。
在其中一个实施例中,所述当检测到数据超过其对应的所述超时时长时,对所述数据进行丢弃的步骤包括:
检测到接收的所述数据包的时长是否超过超时时长;
若是,对对应的数据包进行丢弃。
在其中一个实施例中,所述当检测到数据超过其对应的所述超时时长时,对所述数据进行丢弃的步骤包括:
定期检测接收到进行缓存的数据包的时长是否超过所述超时时长;
若检测到所述数据包超过超时时长,提取属于相同协议的数据包,并进行丢弃。
在其中一个实施例中,所述数据包还包括其数据包的生成时间;
将接收到的数据包中产生最晚生成时间设定为最大时间戳,若数据包的超时时长小于所述最大时间戳,则对应的数据包超时。
第四方面,本发明还提供一种数据传输系统,其包括:
发送模块,用于发送端从队列中提取存储的数据,组装成上限为设定长度的数据的数据包,发送至接收端,并将超出所述设定长度部分的剩余数据缓存在缓存队列中;
分包模块,用于在下一次组装数据包时,将所述缓存队列中的数据添加到数据包中,并与当次发送数据发送至接收端;
接收模块,用于接收端接收数据包后,对所述数据包进行缓存,直至接收到的多个数据包组成完整的协议包时,将相应的数据包取出并向上层回调。
第五方面,本发明还提供一种数据传输装置,其包括:
分包模块,用于从队列中提取存储的数据,组装成上限为设定长度的数据的数据包,发送至接收端,并将超出所述设定长度部分的剩余数据缓存在缓存队列中;
添加模块,用于在下一次组装数据包时,将所述缓存队列中的数据添加到数据包中,并与当次发送数据发送至接收端;其中,接收端接收数据包后,对所述数据包进行缓存,直至接收到的多个数据包组成完整的协议包时,将相应的数据包取出提交给上层。
第六方面,本发明还提供一种数据传输装置,其包括:
接收模块,用于接收发送端从队列中提取存储的数据;其中,所述数据组装成上限为设定长度的数据的数据包,并将超出所述设定长度部分的剩余数据缓存在缓存队列中,在下一次组装数据包时,将所述缓存队列中的数据添加至数据包中,并与当次发送数据发送;
回调模块,用于接收数据包后,对所述数据包进行缓存,直至接收到的多个数据包组成完整的协议包时,将相应的数据包取出并向上层回调。
第七方面,本发明还提供一种计算机设备,其包括:
一个或多个处理器;
存储器;
一个或多个应用程序,其中所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于:执行上述任一项所述的数据传输方法。
第八方面,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述任一项所述的数据传输方法。本发明可避免传统的数据传输方法中,在数据在发送端和接收端的数据组成和分配不合理从而影响数据的传输的问题。在数据传输的过程中,通过对数据在发送端设置上限组装分包,以及在接收端进行缓存,并根据来自同一协议包的数据包进行组包,使得传输数据可以得到合理的分包和快速地组包,提高了数据传输的效率。
本发明提供的一种数据传输方法和装置,避免了在数据在发送端和接收端的数据组成和分配不合理从而影响数据的传输的问题。在数据传输的过程中,通过对数据在发送端设置上限组装分包,以及在接收端进行缓存,并根据来自同一协议包的数据包进行组包,使得传输数据可以得到合理的分包和快速地组包,提高了数据传输的效率。
本发明附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为本发明中的一个实施例的数据传输方法的流程图;
图2为本发明中数据传输的整体的架构图;
图3为本发明中的另一个实施例的数据传输方法的流程图;
图4为本发明中的又一个实施例的数据传输方法的流程图;
图5为本发明中的一个实施例的数据传输系统的示意图;
图6为本发明中的一个实施例的数据传输装置的示意图;
图7为本发明中的一个实施例的数据传输装置的示意图;
图8为本发明中的一个实施例的计算机设备的结构示意图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。
本技术领域技术人员可以理解,这里所使用的“终端”、“终端设备”既包括无线信号接收器的设备,其仅具备无发射能力的无线信号接收器的设备,又包括接收和发射硬件的设备,其具有能够在双向通讯链路上,执行双向通讯的接收和发射硬件的设备。这种设备可以包括:蜂窝或其他通讯设备,其具有单线路显示器或多线路显示器或没有多线路显示器的蜂窝或其他通讯设备;PCS(Personal Communications Service,个人通讯系统),其可以组合语音、数据处理、传真和/或数据通讯能力;PDA(Personal Digital Assistant,个人数字助理),其可以包括射频接收器、寻呼机、互联网/内联网访问、网络浏览器、记事本、日历和/或GPS(Global Positioning System,全球定位系统)接收器;常规膝上型和/或掌上型计算机或其他设备,其具有和/或包括射频接收器的常规膝上型和/或掌上型计算机或其他设备。这里所使用的“终端”、“终端设备”可以是便携式、可运输、安装在交通工具(航空、海运和/或陆地)中的,或者适合于和/或配置为在本地运行,和/或以分布形式,运行在地球和/或空间的任何其他位置运行。这里所使用的“终端”、“终端设备”还可以是通讯终端、上网终端、音乐/视频播放终端,例如可以是PDA、MID(Mobile Internet Device,移动互联网设备)和/或具有音乐/视频播放功能的移动电话,也可以是智能电视、机顶盒等设备。
本技术领域技术人员可以理解,这里所使用的远端网络设备,其包括但不限于计算机、网络主机、单个网络服务器、多个网络服务器集或多个服务器构成的云。在此,云由基于云计算(Cloud Computing)的大量计算机或网络服务器构成,其中,云计算是分布式计算的一种,由一群松散耦合的计算机集组成的一个超级虚拟计算机。本发明的实施例中,远端网络设备、终端设备与WNS服务器之间可通过任何通讯方式实现通讯,包括但不限于,基于3GPP、LTE、WIMAX的移动通讯、基于TCP/IP、UDP协议的计算机网络通讯以及基于蓝牙、红外传输标准的近距无线传输方式。
为了解决传统的数据传输技术中数据组成和分配不合理影响数据传输的问题。本发明提供了一种数据传输方法,该方法是在发送端和接收端之间的数据交互中完成的,可参考图1所示,图1是一个实施例的数据传输方法的流程图,该方法包括以下步骤:
S110、发送端从队列中提取存储的数据,组装成上限为设定长度的数据的数据包,发送至接收端,并将超出所述设定长度部分的剩余数据缓存在缓存队列中。
数据待发送前,以队列的方式存在,其中每个队列中存储来自不同协议的数据。考虑到数据发送和传输的效率,在数据发送前,将数据分成若干组装成具有上限的数据包,所述上限对组装数据包中的数据所设定的长度。若所述组装的队列长度大于所述数据包设定的长度,将队列超出所述数据包上限的部分数据以缓存队列的形式缓存下来,不会与已组装于数据包中原来同队列的数据一同发送,而是等待后续发送。
当组装分包后,发送端通过传输层将数据包依次向接收端发送。
S120、在下一次发送数据包时,将所述缓存队列中的数据添加到数据包中,并与当次发送数据发送至接收端。
在下一次组装数据包时,需要将在步骤S110中未能组装成数据包的缓存队列的数据添加成为组装的对象,与当次发送的队列的数据一同组装成数据包,向接收端发送。
S130、接收端接收数据包,对所述数据包进行缓存,直至接收到的多个数据包组成完整的协议包时,将相应的数据包取出并向上层回调。
在此步骤中,接收端接收由发送端通过传输层所发送数据包后,将该数据包先进行缓存,当检测到所缓存的若干个数据包中能组成一个完整的协议包时,将能够组成协议包的数据包提取出来,并组成协议包后并向上层回调。
为了避免在数据在发送端和接收端的数据组成和分配不合理从而影响数据的传输的问题。在数据传输的过程中,通过对数据在发送端设置上限组装分包,以及在接收端进行缓存,并根据来自同一协议包的数据包进行组包,使得传输数据可以得到合理的分包和快速地组包,提高了数据传输的效率。
在后续对本发明的进一步描述中,可参考图2所示,图2为本方法中数据传输的整体的架构图。
根据图2所示,步骤S110中的队列包括第一队列p0 queue和第二队列p1 queue,其中第一队列p0 queue的优先级高于第二队列p1 queue的优先级,各队列对应的缓存队列分别为第一缓存队列p0 item和第二缓存队列p1 item。对应地,第一缓存队列p0 item的优先级高于第二缓存队列p1item的优先级。
具体到上述队列的优先级排序为由上一次组装数据包B-Pack超出并进行缓存的缓存队列的优先级高于下一次数据包B-Pack传输中相应的队列,即以第二次数据包B-Pack的组装为例,组装成一个数据包B-Pack的队列的数据优先级先后顺序为:p0 item>p0queue>p0 item>p1 queue。
发送端进行传输的过程中,根据上述的优先级通过分包组包层SEG_FACTORY组装相应的数据包B-Pack,并向接收端发送。
在组装成上限为设定长度的数据的数据包的步骤之前,先调用窗口makeSeg()。所述发送窗口能够根据队列的优先级,组装成上限为size的一个数据包B-Pack,即makeSeg(size)。但如果调用所述发送窗口的时长超过所发送数据的超时时长时,发送端对该数据进行丢弃,以免对网络资源增加负担。
若所发送端发送的数据已组装成数据包B-Pack,且并未发送出去时,如果检测到该数据的发送时长超过该数据的超时时长,所述发送端将对应的数据包B-Pack进行丢弃。如果未超时,发送端对所述数据实施重传,直到将该数据包B-Pack在超时时长之内发送完毕。
当数据包B-Pack通过传输层发送至所述接收端,且接收端对所述数据包进行接收后,将所述数据包B-Pack进行临时缓存。在本实施例中,接收端设有进行缓存的临时存储列表B-Pack_map_list。当接收端通过onSeg接口接收到由发送端发送过来的数据包B-Pack时,将所述数据包B-Pack插入至存储列表B-Pack_map_list进行临时存储。当检测到所述临时存储列表B-Pack_map_list中的若干数据包B-Pack能够组成一个完整的协议包时,接收端将相关的数据包B-Pack提取出来,组成一个完整的协议包。当所述协议包组成完整后,立即向上层进行回调onData()。
在本实施例中,所述数据包B-Pack共有一个协议标记p_id,该协议标记p_id可存储于所述数据包B-Pack的某个字段中。在接收端组成协议包的过程中,每个协议标记p_id作为索引list,每个索引key对应一个存储列表list。属于同一协议包的数据包B-Pack以其索引key存储至同一个存储列表list中,直到组成一个完整的协议包,并上向上层进行回调onData()。
在接收端处,在数据包向上层进行回调之前,对数据包B-Pack进行超时检测。
若检测到其接收到的数据包B-Pack的时长超过其对应的超时时长,就将该数据包B-Pack进行丢弃。
考虑到数据或数据包B-Pack可能在发送端被丢弃、重传失败或者是在传输的过程中丢失等不能到达并被接收端接收的情况,所述超时检测也可以是定期检测接收到进行缓存的数据包的时长是否超过所述超时时长。如果检测到接收到所述数据包B-Pack的时长超时时长,仍未组成完整的协议包时,根据数据包B-Pack的协议标记p_id,提取属于相同协议的其他数据包B-Pack,并对该属于相同协议的所有数据包B-Pack进行丢弃。
为了避免发送端和接收端因位于不同设备,而时钟难以保持完全一致影响对时的问题。每个所述数据包B-Pack可包括其生成时间。将所述接收端所接收的数据包中最晚生成时间设定为最大时间戳。如果数据包B-Pack的超时时长小于所述最大时间戳,则对应的数据包超时。例如,发送端分别在第0秒、第10秒和第15秒发送了第一数据包B-Pack、第二数据包B-Pack和第三数据包B-Pack,且均设定的超时时长均为10秒。接收端先接收到第二数据包B-Pack,那么接收端认定10秒为最大时间戳;若接收端再接收到第三数据包B-Pack,那么接收端重新认定15秒为最大时间戳。而第一数据包B-Pack是最后接收到的,那么接收端需对第一数据包B-Pack检查其是否超时:将最大时间戳15秒减去第一数据包B-Pack的超时时长10秒,得到大于0的数值,即第一数据包B-Pack的传输超时。
本发明提供的一种数据传输方法,解决了在数据在发送端和接收端的数据组成和分配不合理从而影响数据的传输的问题。在数据传输的过程中,通过对数据在发送端设置上限组装分包,以及在接收端进行缓存,并根据来自同一协议包的数据包进行组包,使得传输数据可以得到合理的分包和快速地组包,提高了数据传输的效率。进一步地,所述发送端和接收端分别对各自正在处理的数据进行超时判断,若超时,对相应的数据或数据包B-Pack进行丢弃,从而解决了传统的全可靠的传输技术在超时后还继续传输所容易增加网络负担的问题。进一步地,为了解决发送端和接收端位于不同设备对时难的问题,接收端还将其所接收的数据包中产生最晚生成时间设定为最大时间戳,以该最大时间戳与数据包对应的超时时长进行对比,判对应的数据包是否超时。进一步地,为了在有限的网络资源中对重要的数据进行有效传输,发送端对数据的发送之前,对数据组成的队列进行优先级的排序,并根据所述优先级进行组装分包,然后再进行传输。同时,在接收端处,根据数据包B-Pack的协议标记p_id,对所述数据包B-Pack进行组包并上传或者丢弃,使数据包能够快速组成一个完整的协议包并上传,完成数据传输。
为了解决传统的数据传输技术中数据组成和分配不合理影响数据传输的问题。本发明在另一个实施例中提供了一种数据传输方法,该方法是在发送端发送数据的过程中,可参考图3所示,图3是一个实施例的数据传输方法的流程图,该方法包括以下步骤:
S310、从队列中提取存储的数据,组装成上限为设定长度的数据的数据包,发送至接收端,并将超出所述设定长度部分的剩余数据缓存在缓存队列中。
数据待发送前,以队列的方式存在,其中每个队列中存储来自不同协议的数据。考虑到数据发送和传输的效率,在数据发送前,将数据分成若干组装成具有上限的数据包,所述上限对组装数据包中的数据所设定的长度。若所述组装的队列长度大于所述数据包设定的长度,将队列超出所述数据包上限的部分数据以缓存队列的形式缓存下来,不会与已组装于数据包中原来同队列的数据一同发送,而是等待后续发送。
当组装分包后,发送端通过传输层将数据包依次发送。
S320、在下一次组装数据包时,将所述缓存队列中的数据添加到数据包中,并与当次发送数据发送至接收端;其中,接收端接收数据包后,对所述数据包进行缓存,直至接收到的多个数据包组成完整的协议包时,将相应的数据包取出并向上层回调。
在下一次组装数据包时,需要将未能组装成数据包的缓存队列的数据添加成为组装的对象,与当次发送的队列的数据一同组装成数据包并发送。
其中,接收端接收由发送端通过传输层所发送数据包后,将该数据包先进行缓存,当检测到所缓存的若干个数据包中能组成一个完整的协议包时,将能够组成协议包的数据包提取出来,并组成协议包后并向上层回调。
为了避免在数据在发送端的数据组成和分配不合理从而影响数据的传输的问题。在数据传输的过程中,通过对数据在发送端设置上限组装分包,使得传输发送可以得到合理的分包,提高了数据发送的效率。
在后续对本发明的进一步描述中,可参考图2所示,图2为本方法中数据传输的整体的架构图。
根据图2所示,步骤S110中的队列包括第一队列p0 queue和第二队列p1 queue,其中第一队列p0 queue的优先级高于第二队列p1 queue的优先级,各队列对应的缓存队列分别为第一缓存队列p0 item和第二缓存队列p1 item。对应地,第一缓存队列p0 item的优先级高于第二缓存队列p1item的优先级。
具体到上述队列的优先级排序为由上一次组装数据包B-Pack超出并进行缓存的缓存队列的优先级高于下一次数据包B-Pack传输中相应的队列,即以第二次数据包B-Pack的组装为例,组装成一个数据包B-Pack的队列的数据优先级先后顺序为:p0 item>p0queue>p0 item>p1 queue。
发送端进行传输的过程中,根据上述的优先级通过分包组包层SEG_FACTORY组装相应的数据包B-Pack,并向接收端发送。
在组装成上限为设定长度的数据的数据包的步骤之前,先调用窗口makeSeg()。所述发送窗口能够根据队列的优先级,组装成上限为size的一个数据包B-Pack,即makeSeg(size)。但如果调用所述发送窗口的时长超过所发送数据的超时时长时,发送端对该数据进行丢弃,以免对网络资源增加负担。
若所发送端发送的数据已组装成数据包B-Pack,且并未发送出去时,如果检测到该数据的发送时长超过该数据的超时时长,所述发送端将对应的数据包B-Pack进行丢弃。如果未超时,发送端对所述数据实施重传,直到将该数据包B-Pack在超时时长之内发送完毕。
本发明提供的一种数据传输方法,解决了在数据在发送端和接收端的数据组成和分配不合理从而影响数据的传输的问题。在数据传输的过程中,通过对数据在发送端设置上限组装分包,使得发送数据可以得到合理的分包提高了数据发送的效率。进一步地,所述发送端对正在处理的数据进行超时判断,若超时,对相应的数据或数据包B-Pack进行丢弃,从而解决了传统的全可靠的传输技术在超时后还继续发送所容易增加网络负担的问题。进一步地,对数据组成的队列进行优先级的排序,并根据所述优先级进行组装分包,然后再进行发送,有效利用有限的网络资源对重要的数据进行有效传输。
为了解决传统的数据传输技术中数据组成和分配不合理影响数据传输的问题。本发明在又一个实施例中提供了一种数据传输方法,该方法是在接收端接收数据的过程中,可参考图4所示,图4是一个实施例的数据传输方法的流程图,该方法包括以下步骤:
S410、接收发送端从队列中提取存储的数据;其中,所述数据组装成上限为设定长度的数据的数据包,并将超出所述设定长度部分的剩余数据缓存在缓存队列中,在下一次组装数据包时,将所述缓存队列中的数据添加至数据包中,并与当次发送数据发送。
接收端对队列汇总提取存储的数据。其中,数据待发送前,以队列的方式存在,其中每个队列中存储来自不同协议的数据。考虑到数据发送和传输的效率,在数据发送前,将数据分成若干组装成具有上限的数据包,所述上限对组装数据包中的数据所设定的长度。若所述组装的队列长度大于所述数据包设定的长度,将队列超出所述数据包上限的部分数据以缓存队列的形式缓存下来,不会与已组装于数据包中原来同队列的数据一同发送,而是等待后续发送。
当组装分包后,发送端通过传输层将数据包依次向接收端发送。
在下一次组装数据包时,需要将未能组装成数据包的缓存队列的数据添加成为组装的对象,与当次发送的队列的数据一同组装成数据包,向接收端发送。
S420、接收数据包后,对所述数据包进行缓存,直至接收到的多个数据包组成完整的协议包时,将相应的数据包取出并向上层回调。
在此步骤中,接收端接收由发送端通过传输层所发送数据包后,将该数据包先进行缓存,当检测到所缓存的若干个数据包中能组成一个完整的协议包时,将能够组成协议包的数据包提取出来,并组成协议包后并向上层回调。
为了避免在数据在接收端的数据组成和分配不合理从而影响数据的传输的问题。在数据传输的过程中,通过对数据在在接收端进行缓存,并根据来自同一协议包的数据包进行组包,使得接收数据可以快速地组包,提高了数据接收的效率。
在后续对本发明的进一步描述中,可参考图2所示,图2为本方法中数据传输的整体的架构图。
当数据包B-Pack通过传输层从发送端发送至所述接收端,且接收端对所述数据包进行接收后,将所述数据包B-Pack进行临时缓存。在本实施例中,接收端设有进行缓存的临时存储列表B-Pack_map_list。当接收端通过onSeg接口接收到由发送端发送过来的数据包B-Pack时,将所述数据包B-Pack插入至存储列表B-Pack_map_list进行临时存储。当检测到所述临时存储列表B-Pack_map_list中的若干数据包B-Pack能够组成一个完整的协议包时,接收端将相关的数据包B-Pack提取出来,组成一个完整的协议包。当所述协议包组成完整后,立即向上层进行回调onData()。
在本实施例中,所述数据包B-Pack共有一个协议标记p_id,该协议标记p_id可存储于所述数据包B-Pack的某个字段中。在接收端组成协议包的过程中,每个协议标记p_id作为索引list,每个索引key对应一个存储列表list。属于同一协议包的数据包B-Pack以其索引key存储至同一个存储列表list中,直到组成一个完整的协议包,并上向上层进行回调onData()。
在接收端处,在数据包向上层进行回调之前,对数据包B-Pack进行超时检测。
若检测到其接收到的数据包B-Pack的时长超过其对应的超时时长,就将该数据包B-Pack进行丢弃。
考虑到数据或数据包B-Pack可能在发送端被丢弃、重传失败或者是在传输的过程中丢失等不能到达并被接收端接收的情况,所述超时检测也可以是定期检测接收到进行缓存的数据包的时长是否超过所述超时时长。如果检测到接收到所述数据包B-Pack的时长超时时长,仍未组成完整的协议包时,根据数据包B-Pack的协议标记p_id,提取属于相同协议的其他数据包B-Pack,并对该属于相同协议的所有数据包B-Pack进行丢弃。
为了避免发送端和接收端因位于不同设备,而时钟难以保持完全一致影响对时的问题。每个所述数据包B-Pack可包括其生成时间。将所述接收端所接收的数据包中最晚生成时间设定为最大时间戳。如果数据包B-Pack的超时时长小于所述最大时间戳,则对应的数据包超时。例如,发送端分别在第0秒、第10秒和第15秒发送了第一数据包B-Pack、第二数据包B-Pack和第三数据包B-Pack,且均设定的超时时长均为10秒。接收端先接收到第二数据包B-Pack,那么接收端认定10秒为最大时间戳;若接收端再接收到第三数据包B-Pack,那么接收端重新认定15秒为最大时间戳。而第一数据包B-Pack是最后接收到的,那么接收端需对第一数据包B-Pack检查其是否超时:将最大时间戳15秒减去第一数据包B-Pack的超时时长10秒,得到大于0的数值,即第一数据包B-Pack的传输超时。
本发明提供的一种数据传输方法,解决了在数据在接收端的数据组成和分配不合理从而影响数据的接收的问题。在数据传输的过程中,通过在接收端进行缓存,并根据来自同一协议包的数据包进行组包,使得接收数据可以快速地组包,提高了数据接收的效率。进一步地,所述接收端分别对各自正在处理的数据进行超时判断,若超时,对相应的数据或数据包B-Pack进行丢弃,从而解决了传统的全可靠的传输技术在超时后还继续传输所容易增加网络负担的问题。进一步地,为了解决发送端和接收端位于不同设备对时难的问题,接收端还将其所接收的数据包中产生最晚生成时间设定为最大时间戳,以该最大时间戳与数据包对应的超时时长进行对比,判对应的数据包是否超时。同时,在接收端处,根据数据包B-Pack的协议标记p_id,对所述数据包B-Pack进行组包并上传或者丢弃,使数据包能够更加快速组成一个完整的协议包并上传,完成数据传输。
基于与发送端和接收端交互的数据传输方法相同的发明构思,本发明实施例还提供了一种数据传输系统,如图5所示,包括:
发送模块510,用于发送端从队列中提取存储的数据,组装成上限为设定长度的数据的数据包,发送至接收端,并将超出所述设定长度部分的剩余数据缓存在缓存队列中;
分包模块520,用于在下一次组装数据包时,将所述缓存队列中的数据添加到数据包中,并与当次发送数据发送至接收端;
接收模块530,用于接收端接收数据包后,对所述数据包进行缓存,直至接收到的多个数据包组成完整的协议包时,将相应的数据包取出并向上层回调。
基于与发送端执行的数据传输方法相同的发明构思,本发明实施例还提供了一种数据传输装置,如图6所示,包括:
分包模块610,用于从队列中提取存储的数据,组装成上限为设定长度的数据的数据包,发送至接收端,并将超出所述设定长度部分的剩余数据缓存在缓存队列中;
添加模块620,用于在下一次组装数据包时,将所述缓存队列中的数据添加到数据包中,并与当次发送数据发送至接收端;其中,接收端接收数据包后,对所述数据包进行缓存,直至接收到的多个数据包组成完整的协议包时,将相应的数据包取出提交给上层。
基于与接收端执行的数据传输方法相同的发明构思,本发明实施例还提供了一种数据传输装置,如图7所示,包括:
接收模块710,用于接收发送端从队列中提取存储的数据;其中,所述数据组装成上限为设定长度的数据的数据包,并将超出所述设定长度部分的剩余数据缓存在缓存队列中,在下一次组装数据包时,将所述缓存队列中的数据添加至数据包中,并与当次发送数据发送;
回调模块720,用于接收数据包后,对所述数据包进行缓存,直至接收到的多个数据包组成完整的协议包时,将相应的数据包取出并向上层回调。
请参考图8,图8为一个实施例中计算机设备的内部结构示意图。如图8所示,该计算机设备包括通过系统总线连接的处理器810、存储介质820、存储器830和网络接口840。其中,该计算机设备的存储介质820存储有操作系统、数据库和计算机可读指令,数据库中可存储有控件信息序列,该计算机可读指令被处理器810执行时,可使得处理器810实现一种数据传输方法,处理器810能实现图5所示实施例中的一种数据传输系统中的发送模块510、分别模块520和接收模块530的功能,或者是一种数据传输装置中的分包模块610和添加620的功能,或者是一种数据传输装置中的接收模块710和回调模块720的功能。该计算机设备的处理器810用于提供计算和控制能力,支撑整个计算机设备的运行。该计算机设备的存储器830中可存储有计算机可读指令,该计算机可读指令被处理器810执行时,可使得处理器810执行一种数据传输方法。该计算机设备的网络接口840用于与终端连接通信。本领域技术人员可以理解,图8中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,本发明还提出了一种存储有计算机可读指令的存储介质,该计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行以下步骤:发送端从队列中提取存储的数据,组装成上限为设定长度的数据的数据包,发送至接收端,并将超出所述设定长度部分的剩余数据缓存在缓存队列中;在下一次组装数据包时,将所述缓存队列中的数据添加到数据包中,并与当次发送数据发送至接收端;接收端接收数据包后,对所述数据包进行缓存,直至接收到的多个数据包组成完整的协议包时,将相应的数据包取出并向上层回调。
综合上述实施例可知,本发明最大的有益效果在于:
本发明提供的一种数据传输方法,解决了在数据在发送端和接收端的数据组成和分配不合理从而影响数据的传输的问题。在数据传输的过程中,通过对数据在发送端设置上限组装分包,以及在接收端进行缓存,并根据来自同一协议包的数据包进行组包,使得传输数据可以得到合理的分包和快速地组包,提高了数据传输的效率。
进一步地,所述发送端和接收端分别对各自正在处理的数据进行超时判断,若超时,对相应的数据或数据包B-Pack进行丢弃,从而解决了传统的全可靠的传输技术在超时后还继续传输所容易增加网络负担的问题。进一步地,为了解决发送端和接收端位于不同设备对时难的问题,接收端还将其所接收的数据包中产生最晚生成时间设定为最大时间戳,以该最大时间戳与数据包对应的超时时长进行对比,判对应的数据包是否超时。进一步地,为了在有限的网络资源中对重要的数据进行有效传输,发送端对数据的发送之前,对数据组成的队列进行优先级的排序,并根据所述优先级进行组装分包,然后再进行传输。同时,在接收端处,根据数据包B-Pack的协议标记p_id,对所述数据包B-Pack进行组包并上传或者丢弃,使数据包能够快速组成一个完整的协议包并上传,完成数据传输。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,该计算机程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,前述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)等存储介质,或随机存储记忆体(Random Access Memory,RAM)等。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

Claims (24)

1.一种数据传输方法,其特征在于,包括以下步骤:
发送端从队列中提取存储的数据,组装成上限为设定长度的数据的数据包,发送至接收端,并将超出所述设定长度部分的剩余数据缓存在缓存队列中;
在下一次组装数据包时,将所述缓存队列中的数据添加到数据包中,并与当次发送数据发送至接收端;
接收端接收数据包后,对所述数据包进行缓存,直至接收到的多个数据包组成完整的协议包时,将相应的数据包取出并向上层回调;
其中,发送端将数据包发送至接收端时,还包括:当检测到数据包的发送时长超过超时时长时,丢弃该数据包。
2.根据权利要求1所述的方法,其特征在于,所述队列包括第一队列和第二队列,其中,第一队列的优先级高于第二队列,对应有第一缓存队列和第二缓存队列;
发送端按优先级组装相应的数据包并发送给接收端。
3.根据权利要求1所述的方法,其特征在于,
所述接收端接收数据包,对所述数据包进行缓存,直至接收到的多个数据包组成完整的协议包的步骤包括:
所述接收端设有临时存储列表,用于在接收到数据包时,进行临时存储;
直到收到的多个数据包组成一个完整的协议包,将相关的数据包取出,组成一个完整的协议包;
其中,同一个协议包的多个数据包共用一个协议标记,每个协议标记作为索引,每个索引对应有一个存储列表,同一协议标记的多个数据包存放至一个存储列表中。
4.根据权利要求3所述的方法,其特征在于,
所述接收端设有临时存储列表,用于在接收到数据包时,进行临时存储的步骤之后,还包括:
根据数据包的所述索引进行组装,将接收到的数据包插入到存储列表中,进行组包。
5.根据权利要求1所述的方法,其特征在于,
所述当检测到数据包的发送时长超过超时时长时,丢弃该数据包的步骤包括:
在组装成上限为设定长度的数据的数据包的步骤之前,还包括:调用发送窗口;
若调用所述发送窗口时长超过所述超时时长,发送端对对应的数据进行丢弃。
6.根据权利要求1所述的方法,其特征在于,
所述当检测到数据包的发送时长超过超时时长时,丢弃该数据包的步骤包括:
所述组装成上限为设定长度的数据的数据包的步骤之后,检测当前发送时长是否超过超时时长;
若是,发送端将对应的数据包丢弃;
否则,继续进行重传。
7.根据权利要求1所述的方法,其特征在于,
所述当检测到数据包的发送时长超过超时时长时,丢弃该数据包的步骤包括:
检测接收端接收到所述数据包的时长是否超过超时时长;
若是,对对应的数据包进行丢弃。
8.根据权利要求1所述的方法,其特征在于,
所述当检测到数据包的发送时长超过超时时长时,丢弃该数据包的步骤包括:
定期检测接收端接收到进行缓存的数据包的时长是否超过所述超时时长;
若检测到所述数据包超过超时时长且未组成完整的协议包,提取属于相同协议的数据包,并进行丢弃。
9.根据权利要求1所述的方法,其特征在于,
所述数据包包括其数据包的生成时间;
将接收端所接收的数据包中产生最晚时间设定为最大时间戳,若数据包的超时时长小于所述最大时间戳,则对应的数据包超时。
10.一种数据传输方法,其特征在于,包括以下步骤:
从队列中提取存储的数据,组装成上限为设定长度的数据的数据包,发送至接收端,并将超出所述设定长度部分的剩余数据缓存在缓存队列中;
在下一次组装数据包时,将所述缓存队列中的数据添加到数据包中,并与当次发送数据发送至接收端;其中,接收端接收数据包后,对所述数据包进行缓存,直至接收到的多个数据包组成完整的协议包时,将相应的数据包取出并向上层回调;
其中,将数据包发送至接收端时,还包括:当检测到数据包的发送时长超过超时时长时,丢弃该数据包。
11.根据权利要求10所述的方法,其特征在于,所述队列包括第一队列和第二队列,其中,第一队列的优先级高于第二队列,对应有第一缓存队列和第二缓存队列;
按优先级组装相应的数据包并发送给接收端。
12.根据权利要求10所述的方法,其特征在于,
所述当检测到数据包的发送时长超过超时时长时,丢弃该数据包的步骤包括:
在组装成上限为设定长度的数据的数据包的步骤之前,还包括:调用发送窗口;
若调用所述发送窗口时长超过所述超时时长,对对应的数据进行丢弃。
13.根据权利要求10所述的方法,其特征在于,
所述当检测到数据包的发送时长超过超时时长时,丢弃该数据包的步骤包括:
所述组装成上限为设定长度的数据的数据包的步骤之后,检测当前发送时长是否超过超时时长;
若是,将对应的数据包丢弃;
否则,继续进行重传。
14.一种数据传输方法,其特征在于,包括以下步骤:
接收发送端从队列中提取存储的数据;其中,所述数据组装成上限为设定长度的数据的数据包,并将超出所述设定长度部分的剩余数据缓存在缓存队列中,在下一次组装数据包时,将所述缓存队列中的数据添加至数据包中,并与当次发送数据发送,当检测到数据包的发送时长超过超时时长时,丢弃该数据包;
接收数据包后,对所述数据包进行缓存,直至接收到的多个数据包组成完整的协议包时,将相应的数据包取出并向上层回调。
15.根据权利要求14所述的方法,其特征在于,
接收端接收数据包,对所述数据包进行缓存,直至接收到的多个数据包组成完整的协议包的步骤包括:
所述接收端设有临时存储列表,用于在接收到数据包时,进行临时存储;
直到收到的多个数据包组成一个完整的协议包,将相关的数据包取出,组成一个完整的协议包;
其中,同一个协议包的多个数据包共用一个协议标记,每个协议标记作为索引,每个索引对应有一个存储列表,同一协议标记的多个数据包存放至一个存储列表中。
16.根据权利要求15所述的方法,其特征在于,
所述接收端设有临时存储列表,用于在接收到数据包时,进行临时存储的步骤之后,还包括:
根据数据包的所述索引进行组装,将接收到的数据包插入到存储列表中,进行组包。
17.根据权利要求14所述的方法,其特征在于,
所述接收发送端从队列中提取存储的数据的步骤包括:
判断数据是否超过传输的超时时长;
当检测到数据超过其对应的所述超时时长时,对所述数据进行丢弃。
18.根据权利要求17所述的方法,其特征在于,
所述当检测到数据包的发送时长超过超时时长时,丢弃该数据包的步骤包括:
定期检测接收到进行缓存的数据包的时长是否超过所述超时时长;
若检测到所述数据包超过超时时长,提取属于相同协议的数据包,并进行丢弃。
19.根据权利要求17所述的方法,其特征在于,
所述数据包还包括其数据包的生成时间;
将接收到的数据包中产生最晚生成时间设定为最大时间戳,若数据包的超时时长小于所述最大时间戳,则对应的数据包超时。
20.一种数据传输系统,其特征在于,包括:
发送模块,用于发送端从队列中提取存储的数据,组装成上限为设定长度的数据的数据包,发送至接收端,并将超出所述设定长度部分的剩余数据缓存在缓存队列中;当检测到数据包的发送时长超过超时时长时,丢弃该数据包;
分包模块,用于在下一次组装数据包时,将所述缓存队列中的数据添加到数据包中,并与当次发送数据发送至接收端;
接收模块,用于接收端接收数据包后,对所述数据包进行缓存,直至接收到的多个数据包组成完整的协议包时,将相应的数据包取出并向上层回调。
21.一种数据传输装置,其特征在于,包括:
分包模块,用于从队列中提取存储的数据,组装成上限为设定长度的数据的数据包,发送至接收端,并将超出所述设定长度部分的剩余数据缓存在缓存队列中,当检测到数据包的发送时长超过超时时长时,丢弃该数据包;
添加模块,用于在下一次组装数据包时,将所述缓存队列中的数据添加到数据包中,并与当次发送数据发送至接收端;其中,接收端接收数据包后,对所述数据包进行缓存,直至接收到的多个数据包组成完整的协议包时,将相应的数据包取出提交给上层。
22.一种数据传输装置,其特征在于,包括:
接收模块,用于接收发送端从队列中提取存储的数据;其中,所述数据组装成上限为设定长度的数据的数据包,并将超出所述设定长度部分的剩余数据缓存在缓存队列中,在下一次组装数据包时,将所述缓存队列中的数据添加至数据包中,并与当次发送数据发送,当检测到数据包的发送时长超过超时时长时,丢弃该数据包;
回调模块,用于接收数据包后,对所述数据包进行缓存,直至接收到的多个数据包组成完整的协议包时,将相应的数据包取出并向上层回调。
23.一种计算机设备,其特征在于,包括:
一个或多个处理器;
存储器;
一个或多个应用程序,其中所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于:执行根据权利要求1~9或10~13或14~19任一项所述的数据传输方法。
24.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现权利要求1~9或10~13或14~19任一项所述的数据传输方法。
CN201811641443.3A 2018-12-29 2018-12-29 数据传输方法和装置 Active CN111385269B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201811641443.3A CN111385269B (zh) 2018-12-29 2018-12-29 数据传输方法和装置
PCT/CN2019/120037 WO2020134755A1 (zh) 2018-12-29 2019-11-21 数据传输方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811641443.3A CN111385269B (zh) 2018-12-29 2018-12-29 数据传输方法和装置

Publications (2)

Publication Number Publication Date
CN111385269A CN111385269A (zh) 2020-07-07
CN111385269B true CN111385269B (zh) 2021-02-12

Family

ID=71126581

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811641443.3A Active CN111385269B (zh) 2018-12-29 2018-12-29 数据传输方法和装置

Country Status (2)

Country Link
CN (1) CN111385269B (zh)
WO (1) WO2020134755A1 (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111865827B (zh) * 2020-08-31 2023-10-27 上海兆芯集成电路股份有限公司 数据链路层设备及其组包方法
CN112615732A (zh) * 2020-12-04 2021-04-06 浪潮电子信息产业股份有限公司 基于简单网络管理协议的信息发送方法、系统及相关装置
CN112738229B (zh) * 2020-12-29 2022-08-12 北京航天自动控制研究所 一种实现数据自动续传的通信方法
CN113595932A (zh) * 2021-08-06 2021-11-02 上海金仕达软件科技有限公司 数据乱序报文的处理方法及专用集成电路
CN114124850B (zh) * 2022-01-26 2022-07-12 浙江宇视系统技术有限公司 一种网络通信方法及装置、存储介质
CN115134320B (zh) * 2022-08-25 2023-01-03 四川汉唐云分布式存储技术有限公司 一种基于消息分发确定时序的交易系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105656507A (zh) * 2016-03-24 2016-06-08 中国电子科技集团公司第三十四研究所 一种无线光与射频混合通信系统及使用方法
WO2018127152A1 (zh) * 2017-01-05 2018-07-12 华为技术有限公司 信息处理的方法、设备和通信系统

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6714562B1 (en) * 2000-03-10 2004-03-30 International Business Machines Corporation Method and apparatus for segmenting network traffic variable length frames
EP1526701A1 (en) * 2003-10-22 2005-04-27 Mitsubishi Denki Kabushiki Kaisha Methods and devices for transferring and for recovering data packets
CN1816042A (zh) * 2005-01-31 2006-08-09 华为技术有限公司 一种处理器间数据传输方法
CN101388900B (zh) * 2007-09-12 2014-05-28 电信科学技术研究院 一种协议数据单元填充的处理方法、装置及系统
JP5417438B2 (ja) * 2008-06-26 2014-02-12 ノキア シーメンス ネットワークス オサケユキチュア ショートメッセージ配信に対する課金
CN101577709A (zh) * 2008-08-06 2009-11-11 中兴通讯股份有限公司 一种可避免分片的ip分组复用控制方法及设备
CN101488967B (zh) * 2009-01-14 2015-05-13 深圳市同洲电子股份有限公司 一种视频传输方法、嵌入式监控终端及监控平台服务器
CN101640636A (zh) * 2009-07-31 2010-02-03 北京师范大学 一种4over6隧道中避免报文重组的方法及系统
CN101931919B (zh) * 2010-08-18 2013-03-20 中国电信股份有限公司 长短信发送处理方法与装置、业务网关及通信系统
CN102025638A (zh) * 2010-12-21 2011-04-20 福建星网锐捷网络有限公司 基于优先级的数据传输方法、装置及网络设备
CN102665140B (zh) * 2012-05-16 2014-04-09 哈尔滨工业大学深圳研究生院 一种avs视频帧的rtp封装方法
CN103533075B (zh) * 2013-10-23 2017-05-03 中国科学院声学研究所 将数据导入iSCSI目标器的方法和iSCSI启动器
CN105790887A (zh) * 2014-12-26 2016-07-20 上海贝尔股份有限公司 用于为分组生成并行crc值的方法和设备
CN104506868B (zh) * 2014-12-31 2017-08-25 深圳市大疆创新科技有限公司 视频码流传输方法,装置及系统

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105656507A (zh) * 2016-03-24 2016-06-08 中国电子科技集团公司第三十四研究所 一种无线光与射频混合通信系统及使用方法
WO2018127152A1 (zh) * 2017-01-05 2018-07-12 华为技术有限公司 信息处理的方法、设备和通信系统

Also Published As

Publication number Publication date
WO2020134755A1 (zh) 2020-07-02
CN111385269A (zh) 2020-07-07

Similar Documents

Publication Publication Date Title
CN111385269B (zh) 数据传输方法和装置
CN109117361B (zh) 一种小程序的远程调试方法、相关设备及系统
JP2022552986A (ja) 情報送信方法、装置、読み取り可能な記憶媒体及び電子装置
US20130094501A1 (en) Processing data packets in performance enhancing proxy (pep) environment
US11349962B2 (en) Data transmission method and device
CN106304203A (zh) 数据传输方法及装置
CN101304302A (zh) 视频数据的传输方法及其系统
CN109547162B (zh) 基于两套单向边界的数据通信方法
CN103746938A (zh) 一种发送数据包的方法及装置
KR20200093614A (ko) 비디오 전송 방법, 장치, 및 시스템과 컴퓨터 판독가능 저장 매체
CN112583529B (zh) 一种数据处理方法、装置、设备及存储介质
CN101136870A (zh) 基于符号的消息传送方法及系统
CN113489575A (zh) 一种数据传输方法、装置及电子设备
CN103209195A (zh) 数据获取方法、终端以及远端设备
CN117278628B (zh) 数据传输方法、装置、系统、计算机设备和存储介质
CN106993311B (zh) 基站数据优化传输方法与系统
CN103034632A (zh) 一种信息传送方法和系统
CN111935316B (zh) 一种前端设备目录获取方法及装置
WO2019015487A1 (zh) 一种数据重传处理方法、rlc实体和mac实体
CN115348336A (zh) 异构数据流的通用传输架构
US8819107B2 (en) Relay apparatus, recording medium storing a relay program, and a relay method
CN109688085B (zh) 传输控制协议代理方法、存储介质及服务器
CN111222882A (zh) 基于区块链的数据传输方法、装置、设备及可读存储介质
CN112291207B (zh) 一种前端设备目录获取方法及装置
CN113078986B (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
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20231009

Address after: 31a, 15 / F, building 30, maple mall, bangrang Road, Brazil, Singapore

Patentee after: Baiguoyuan Technology (Singapore) Co.,Ltd.

Address before: 511442 25 / F, building B-1, Wanda Plaza North, Wanbo business district, 79 Wanbo 2nd Road, Nancun Town, Panyu District, Guangzhou City, Guangdong Province

Patentee before: GUANGZHOU BAIGUOYUAN NETWORK TECHNOLOGY Co.,Ltd.