CN105376165A - Udp组播方法、***、发送装置及接收装置 - Google Patents
Udp组播方法、***、发送装置及接收装置 Download PDFInfo
- Publication number
- CN105376165A CN105376165A CN201510664937.3A CN201510664937A CN105376165A CN 105376165 A CN105376165 A CN 105376165A CN 201510664937 A CN201510664937 A CN 201510664937A CN 105376165 A CN105376165 A CN 105376165A
- Authority
- CN
- China
- Prior art keywords
- message
- burst
- sent
- dispensing device
- sequence number
- 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.)
- Granted
Links
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/164—Adaptation or special uses of UDP protocol
-
- 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/16—Multipoint routing
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
本发明适用于通信技术领域,提供了UDP组播方法、***、发送装置及接收装置。该UDP组播方法包括:发送装置获取待发送的消息,并为待发送的消息分配消息序列号;发送装置将待发送的消息划分为多个消息分片,并为每个消息分片分配分片序列号;发送装置将消息分片发送至接收装置,消息分片携带有发送装置的唯一标识符、消息序列号以及分片序列号;接收装置建立二级缓存区,并通过二级缓存区对消息分片进行缓存;接收装置在任意一个消息序列号对应的所有消息分片接收完成时,从二级缓存区中提取消息序列号对应的所有消息分片。本发明实现了高效的数据丢包侦测,能处理数据包乱序的情况,降低了时间复杂度,提高了UDP组播的可靠性和稳定性。
Description
技术领域
本发明属于通信技术领域,尤其涉及UDP组播方法、***、发送装置及接收装置。
背景技术
现有技术中,大多数操作***上的传输层都采用TCP(TransmissionControlProtocol,传输控制协议),以实现可靠的点对点通信。当需要实现一组进程间的可靠通信时,多数应用层上的实现方式为为每个进程建立与之通信的各个进程之间的点对点连接,显然,这种进程组的通信方式消耗了大量的带宽,效率较低。现有技术中,UDP(UserDatagramProtocol,用户数据报协议)组播虽然能实现进程组之间的组播,但不能保证可靠的数据传输。此外,UDP封包受到数据长度的限制,现有的UDP组播并不属于流式传输。
进程组之间的通信在分布式***中应用十分广泛,高效低延迟的组通信在金融软件***等实时***中是极为重要的。例如,在金融软件***中,组通信常用于传输实时数据,如行情数据和交易数据等。在实现本发明过程中,发明人发现现有技术中至少存在如下问题:现有的UDP组播方式的可靠性较低。
发明内容
鉴于此,本发明实施例提供了一种UDP组播方法、***、发送装置及接收装置,以解决现有的UDP组播方式的可靠性较低的问题。
第一方面,本发明实施例提供了一种UDP组播方法,包括:
发送装置获取待发送的消息,并为所述待发送的消息分配消息序列号;
所述发送装置将所述待发送的消息划分为多个消息分片,并为每个消息分片分配分片序列号;
所述发送装置将所述消息分片发送至接收装置,所述消息分片携带有所述发送装置的唯一标识符、所述消息序列号以及所述分片序列号;
所述接收装置建立二级缓存区,并通过所述二级缓存区对所述消息分片进行缓存;
所述接收装置在任意一个所述消息序列号对应的所有所述消息分片接收完成时,从所述二级缓存区中提取所述消息序列号对应的所有所述消息分片。
第二方面,本发明实施例提供了一种UDP组播***,包括:
发送装置和接收装置;
所述发送装置,用于获取待发送的消息,为所述待发送的消息分配消息序列号,将所述待发送的消息划分为多个消息分片,为每个消息分片分配分片序列号,并将所述消息分片发送至所述接收装置,所述消息分片携带有所述发送装置的唯一标识符、所述消息序列号以及所述分片序列号;
所述接收装置,用于建立二级缓存区,通过所述二级缓存区对所述消息分片进行缓存,并在任意一个所述消息序列号对应的所有所述消息分片接收完成时,从所述二级缓存区中提取所述消息序列号对应的所有所述消息分片。
第三方面,本发明实施例提供了一种UDP组播的发送装置,包括:
消息序列号分配单元,用于获取待发送的消息,并为所述待发送的消息分配消息序列号;
分片序列号分配单元,用于将所述待发送的消息划分为多个消息分片,并为每个消息分片分配分片序列号;
发送单元,用于将所述消息分片发送至接收装置,以使所述接收装置通过二级缓存区对所述消息分片进行缓存,所述消息分片携带有所述发送装置的唯一标识符、所述消息序列号以及所述分片序列号。
第四方面,本发明实施例提供了一种UDP组播的接收装置,包括:
缓存单元,用于建立二级缓存区,并通过所述二级缓存区对发送装置发送的消息分片进行缓存,所述消息分片携带有所述发送装置的唯一标识符、所述消息分片对应的消息序列号以及分片序列号;
提取单元,用于在任意一个所述消息序列号对应的所有所述消息分片接收完成时,从所述二级缓存区中提取所述消息序列号对应的所有所述消息分片。
本发明实施例与现有技术相比存在的有益效果是:本发明实施例通过采用消息序列号和分片序列号的两级序列号,并在接收端采用二级缓存区,实现了高效的数据丢包侦测,并能处理数据包乱序的异常情况,保证消息的有序推送,从而实现了可靠的UDP组播;通过采用二级缓存区,在发生丢包乱序等异常情况时降低了接收端处理的时间复杂度;通过在消息分片中携带发送装置的唯一标识符,实现了多发送端同时发送同种数据,接收端可根据两级序列号对多个发送端的数据进行去重,从而在某个发送端的进程异常掉线时进行容错,提高了UDP组播的稳定性。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的UDP组播***的***架构图;
图2是本发明实施例提供的UDP组播方法的实现流程图;
图3是本发明实施例提供的UDP组播方法中消息序列号与分片序列号的示意图;
图4是本发明实施例提供的UDP组播方法中消息插槽和分片插槽的示意图;
图5是本发明实施例提供的UDP组播的发送装置的结构框图;
图6是本发明实施例提供的UDP组播的接收装置的结构框图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
图1示出了本发明实施例提供的UDP组播***的***架构图,为了便于说明,仅示出了与本发明实施例相关的部分。
参照图1,该UDP组播***包括:
发送装置11和接收装置12。
需要说明的是,该UDP组播***可以包括多个发送装置11和多个接收装置12。
所述发送装置11,用于获取待发送的消息,为所述待发送的消息分配消息序列号,将所述待发送的消息划分为多个消息分片,为每个消息分片分配分片序列号,并将所述消息分片发送至所述接收装置12,所述消息分片携带有所述发送装置11的唯一标识符、所述消息序列号以及所述分片序列号;
所述接收装置12,用于建立二级缓存区,通过所述二级缓存区对所述消息分片进行缓存,并在任意一个所述消息序列号对应的所有所述消息分片接收完成时,从所述二级缓存区中提取所述消息序列号对应的所有所述消息分片。
优选地,所述二级缓存区包括第一级缓存区和第二级缓存区,所述第一级缓存区的任意一个数组用于存储任意一个所述消息序列号对应的所有所述分片序列号,所述第二级缓存区的任意一个数组用于存储任意一个所述分片序列号对应的所述消息分片。
优选地,所述发送装置11具体用于:
获取待发送的消息,并根据调用者信息为所述待发送的消息分配消息序列号。
优选地,所述接收装置12还用于:
在任意一个所述消息序列号对应的所述消息分片接收超时时,发送所述消息序列号对应的重传请求至所述发送装置11。
本发明实施例通过采用消息序列号和分片序列号的两级序列号,并在接收端采用二级缓存区,实现了高效的数据丢包侦测,并能处理数据包乱序的异常情况,保证消息的有序推送,从而实现了可靠的UDP组播;通过采用二级缓存区,在发生丢包乱序等异常情况时降低了接收端处理的时间复杂度;通过在消息分片中携带发送装置的唯一标识符,实现了多发送端同时发送同种数据,接收端可根据两级序列号对多个发送端的数据进行去重,从而在某个发送端的进程异常掉线时进行容错,提高了UDP组播的稳定性。
图2示出了本发明实施例提供的UDP组播方法的实现流程图,详述如下:
在步骤S201中,发送装置获取待发送的消息,并为待发送的消息分配消息序列号。
优选地,所述发送装置获取待发送的消息,并为所述待发送的消息分配消息序列号具体为:
发送装置获取待发送的消息,并根据调用者信息为所述待发送的消息分配消息序列号。
在本发明实施例中,采用消息序列号与分片序列号两级序列号的方式,其中,消息序列号直接暴露于外层,与调用者相关联,可与调用者应用层的消息编号进行统一,从而支持任意范围的消息序列号的数据丢包侦测与恢复。
在步骤S202中,发送装置将待发送的消息划分为多个消息分片,并为每个消息分片分配分片序列号。
图3示出了本发明实施例提供的UDP组播方法中消息序列号与分片序列号的示意图。参照图3,每个消息序列号对应于多个分片序列号,即消息序列号与分片序列号是一对多的关系,每个消息序列号对应于多个消息分片。例如,消息序列号为n,对应的分片序列号包括0至m。
在步骤S203中,发送装置将消息分片发送至接收装置,消息分片携带有发送装置的唯一标识符、消息序列号以及分片序列号。
发送装置按照消息分片的分片序列号的先后顺序依次发送某一消息序列号对应的所有消息分片。
在这里,通过在消息分片中携带发送装置的唯一标识符,从而在多个发送装置同时发送同种数据时,接收装置可根据两级序列号对多个发送装置的数据进行去重,从而在某个发送装置的进程异常掉线或者出错时进行容错,提高了UDP组播的稳定性。此外,在接收装置申请重传数据时,接收装置根据发送装置的基本信息,通过轮询调度(Round-RobinScheduling)的方式向多个发送装置中的其中一个发送装置进行申请,起到了负载分摊的作用。
在步骤S204中,接收装置建立二级缓存区,并通过二级缓存区对消息分片进行缓存。
在本发明实施例中,接收装置建立二级缓存区,用于对接收到的序列号超前的偏离数据进行缓存,以保证数据包推送的有序性、连续性,从而在网络发生数据乱序跳包或丢包等异常情况时根据消息序列号对超前的消息分片进行缓存,待缺失的消息分片被接收到或者通过重传恢复后,一并推送至上层。
优选地,所述二级缓存区包括第一级缓存区和第二级缓存区,所述第一级缓存区的任意一个数组用于存储任意一个所述消息序列号对应的所有所述分片序列号,所述第二级缓存区的任意一个数组用于存储任意一个所述分片序列号对应的所述消息分片。
可选地,二级缓存区具体为二级循环缓存区,第一级缓存区为第一级循环缓存区,第二季缓存区为第二级循环缓存区。
图4示出了本发明实施例提供的UDP组播方法中消息插槽和分片插槽的示意图。参照图4,分片插槽挂载于消息插槽之下,例如,消息插槽包括消息插槽n、消息插槽n+1和消息插槽n+2等,消息插槽n对应的分片插槽包括分片插槽0、分片插槽1和分片插槽2。第一级缓存区包括消息插槽n、消息插槽n+1和消息插槽n+2等,每个消息插槽分别用于存储任意一个消息序列号对应的所有分片序列号;第二级缓存区包括分片插槽0、分片插槽1和分片插槽2,每个分片插槽分别用于存储一个消息分片。需要说明的是,第一级缓存区的最大消息插槽数即为第一级滑动窗口的长度,第二级缓存区的最大分片插槽数即为第二级滑动窗口的长度,第一级滑动窗口的长度与第二级滑动窗口的长度预先配置。通过采用二级缓存区,在发生丢包、跳包等情况时,对序列号超前的消息分片进行缓存,先通过消息序列号在第一级缓存区中通过偏移方式定位消息插槽的位置,再通过分片序列号定位第二级缓存区中分片插槽的位置,待数据重传恢复连续后,通过数组偏移的方式对缓存的数据进行访问、提取及清除。
在本发明实施例中,通过采用二级缓存区大大降低了发生丢包乱序等异常情况时接收端处理的时间复杂度。在缓存超前的消息分片时,采用二级缓存区的时间复杂度为O(1);若采用平衡二叉树对超前的消息分片进行缓存,则时间复杂度为O(log(N))。在重传恢复时,假设连续缓存的消息分片的数量为m,则采用二级缓存区的时间复杂度为O(m);若采用平衡二叉树一次性顺序遍历并取出连续的m个消息分片,则时间复杂度为O(m×log(N))。
在步骤S205中,接收装置在任意一个消息序列号对应的所有消息分片接收完成时,从二级缓存区中提取消息序列号对应的所有消息分片。
优选地,所述UDP组播方法还包括:
所述接收装置在任意一个所述消息序列号对应的所述消息分片接收超时时,发送所述消息序列号对应的重传请求至所述发送装置。
可选地,所述接收装置在任意一个所述消息序列号对应的所述消息分片接收超时时,发送所述消息序列号对应的重传请求至所述发送装置具体为:接收装置在任意一个消息序列号对应的消息分片接收超时时,生成重传请求;接收装置记录该次重传请求的生成时间点;接收装置在该次重传请求的生成时间点与上一次发送重传请求的时间点之间的时间间隔大于第一预设值时,发送该次重传请求至发送装置;接收装置在该次重传请求的生成时间点与上一次发送重传请求的时间点之间的时间间隔小于或等于第一预设值时,忽略该次重传请求。其中,第一预设值由接收装置预先配置。
需要说明的是,在UDP组播的过程中,若有额外的接收装置启动加入,则根据接收装置启动的初始消息序列号,对发送装置已发送的大量缺失数据自动进行重传恢复,在恢复过程中对接收到的发送装置发来的实时数据,根据消息序列号和分片序列号视为偏离数据进行滑动窗口缓存操作。若实时数据超出滑动窗口的长度则直接丢弃。
应理解,在本发明实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
本发明实施例通过采用消息序列号和分片序列号的两级序列号,并在接收端采用二级缓存区,实现了高效的数据丢包侦测,并能处理数据包乱序的异常情况,保证消息的有序推送,从而实现了可靠的UDP组播;通过采用二级缓存区,在发生丢包乱序等异常情况时降低了接收端处理的时间复杂度;通过在消息分片中携带发送装置的唯一标识符,实现了多发送端同时发送同种数据,接收端可根据两级序列号对多个发送端的数据进行去重,从而在某个发送端的进程异常掉线时进行容错,提高了UDP组播的稳定性。
图5示出了本发明实施例提供的UDP组播的发送装置的结构框图,该UDP组播的发送装置可以为图1中的发送装置11。为了便于说明,仅示出了与本发明实施例相关的部分。
参照图5,该UDP组播的发送装置包括:
消息序列号分配单元51,用于获取待发送的消息,并为所述待发送的消息分配消息序列号;
分片序列号分配单元52,用于将所述待发送的消息划分为多个消息分片,并为每个消息分片分配分片序列号;
发送单元53,用于将所述消息分片发送至接收装置,以使所述接收装置通过二级缓存区对所述消息分片进行缓存,所述消息分片携带有所述发送装置的唯一标识符、所述消息序列号以及所述分片序列号。
本发明实施例通过采用消息序列号和分片序列号的两级序列号,并在接收端采用二级缓存区,实现了高效的数据丢包侦测,并能处理数据包乱序的异常情况,保证消息的有序推送,从而实现了可靠的UDP组播;通过采用二级缓存区,在发生丢包乱序等异常情况时降低了接收端处理的时间复杂度;通过在消息分片中携带发送装置的唯一标识符,实现了多发送端同时发送同种数据,接收端可根据两级序列号对多个发送端的数据进行去重,从而在某个发送端的进程异常掉线时进行容错,提高了UDP组播的稳定性。
图6示出了本发明实施例提供的UDP组播的接收装置的结构框图,该UDP组播的接收装置可以为图1中的接收装置12。为了便于说明,仅示出了与本发明实施例相关的部分。
参照图6,该UDP组播的接收装置包括:
缓存单元61,用于建立二级缓存区,并通过所述二级缓存区对发送装置发送的消息分片进行缓存,所述消息分片携带有所述发送装置的唯一标识符、所述消息分片对应的消息序列号以及分片序列号;
提取单元62,用于在任意一个所述消息序列号对应的所有所述消息分片接收完成时,从所述二级缓存区中提取所述消息序列号对应的所有所述消息分片。
本发明实施例通过采用消息序列号和分片序列号的两级序列号,并在接收端采用二级缓存区,实现了高效的数据丢包侦测,并能处理数据包乱序的异常情况,保证消息的有序推送,从而实现了可靠的UDP组播;通过采用二级缓存区,在发生丢包乱序等异常情况时降低了接收端处理的时间复杂度;通过在消息分片中携带发送装置的唯一标识符,实现了多发送端同时发送同种数据,接收端可根据两级序列号对多个发送端的数据进行去重,从而在某个发送端的进程异常掉线时进行容错,提高了UDP组播的稳定性。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的***、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的***、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,RandomAccessMemory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
Claims (10)
1.一种UDP组播方法,其特征在于,包括:
发送装置获取待发送的消息,并为所述待发送的消息分配消息序列号;
所述发送装置将所述待发送的消息划分为多个消息分片,并为每个消息分片分配分片序列号;
所述发送装置将所述消息分片发送至接收装置,所述消息分片携带有所述发送装置的唯一标识符、所述消息序列号以及所述分片序列号;
所述接收装置建立二级缓存区,并通过所述二级缓存区对所述消息分片进行缓存;
所述接收装置在任意一个所述消息序列号对应的所有所述消息分片接收完成时,从所述二级缓存区中提取所述消息序列号对应的所有所述消息分片。
2.如权利要求1所述的UDP组播方法,其特征在于,所述二级缓存区包括第一级缓存区和第二级缓存区,所述第一级缓存区的任意一个数组用于存储任意一个所述消息序列号对应的所有所述分片序列号,所述第二级缓存区的任意一个数组用于存储任意一个所述分片序列号对应的所述消息分片。
3.如权利要求1所述的UDP组播方法,其特征在于,所述发送装置获取待发送的消息,并为所述待发送的消息分配消息序列号具体为:
发送装置获取待发送的消息,并根据调用者信息为所述待发送的消息分配消息序列号。
4.如权利要求1所述的UDP组播方法,其特征在于,所述UDP组播方法还包括:
所述接收装置在任意一个所述消息序列号对应的所述消息分片接收超时时,发送所述消息序列号对应的重传请求至所述发送装置。
5.一种UDP组播***,其特征在于,包括:
发送装置和接收装置;
所述发送装置,用于获取待发送的消息,为所述待发送的消息分配消息序列号,将所述待发送的消息划分为多个消息分片,为每个消息分片分配分片序列号,并将所述消息分片发送至所述接收装置,所述消息分片携带有所述发送装置的唯一标识符、所述消息序列号以及所述分片序列号;
所述接收装置,用于建立二级缓存区,通过所述二级缓存区对所述消息分片进行缓存,并在任意一个所述消息序列号对应的所有所述消息分片接收完成时,从所述二级缓存区中提取所述消息序列号对应的所有所述消息分片。
6.如权利要求5所述的UDP组播***,其特征在于,所述二级缓存区包括第一级缓存区和第二级缓存区,所述第一级缓存区的任意一个数组用于存储任意一个所述消息序列号对应的所有所述分片序列号,所述第二级缓存区的任意一个数组用于存储任意一个所述分片序列号对应的所述消息分片。
7.如权利要求5所述的UDP组播***,其特征在于,所述发送装置具体用于:
获取待发送的消息,并根据调用者信息为所述待发送的消息分配消息序列号。
8.如权利要求5所述的UDP组播***,其特征在于,所述接收装置还用于:
在任意一个所述消息序列号对应的所述消息分片接收超时时,发送所述消息序列号对应的重传请求至所述发送装置。
9.一种UDP组播的发送装置,其特征在于,包括:
消息序列号分配单元,用于获取待发送的消息,并为所述待发送的消息分配消息序列号;
分片序列号分配单元,用于将所述待发送的消息划分为多个消息分片,并为每个消息分片分配分片序列号;
发送单元,用于将所述消息分片发送至接收装置,以使所述接收装置通过二级缓存区对所述消息分片进行缓存,所述消息分片携带有所述发送装置的唯一标识符、所述消息序列号以及所述分片序列号。
10.一种UDP组播的接收装置,其特征在于,包括:
缓存单元,用于建立二级缓存区,并通过所述二级缓存区对发送装置发送的消息分片进行缓存,所述消息分片携带有所述发送装置的唯一标识符、所述消息分片对应的消息序列号以及分片序列号;
提取单元,用于在任意一个所述消息序列号对应的所有所述消息分片接收完成时,从所述二级缓存区中提取所述消息序列号对应的所有所述消息分片。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510664937.3A CN105376165B (zh) | 2015-10-15 | 2015-10-15 | Udp组播方法、***、发送装置及接收装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510664937.3A CN105376165B (zh) | 2015-10-15 | 2015-10-15 | Udp组播方法、***、发送装置及接收装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105376165A true CN105376165A (zh) | 2016-03-02 |
CN105376165B CN105376165B (zh) | 2019-02-22 |
Family
ID=55377984
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510664937.3A Active CN105376165B (zh) | 2015-10-15 | 2015-10-15 | Udp组播方法、***、发送装置及接收装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105376165B (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107229660A (zh) * | 2016-03-25 | 2017-10-03 | 阿里巴巴集团控股有限公司 | 一种数据去重的方法和设备 |
CN108075820A (zh) * | 2016-11-18 | 2018-05-25 | 杭州优能通信***有限公司 | 一种提高卫星广播信道分片数据传输可靠性的方法 |
CN108155999A (zh) * | 2017-12-27 | 2018-06-12 | 罗建平 | 带tcp补包机制的智能udp组播文件分发***及方法 |
CN108234327A (zh) * | 2016-12-13 | 2018-06-29 | 英业达科技有限公司 | 数据传输***、数据接收方法、及数据传输方法 |
CN109474642A (zh) * | 2019-01-08 | 2019-03-15 | 郑州云海信息技术有限公司 | 基于以太网udp协议数据传输方法、装置、设备及介质 |
CN110049120A (zh) * | 2019-04-12 | 2019-07-23 | 海能达通信股份有限公司 | 多媒体文件传输方法、***、核心网及装置 |
CN112398744A (zh) * | 2019-08-16 | 2021-02-23 | 阿里巴巴集团控股有限公司 | 网络通信方法、装置及电子设备 |
CN113032295A (zh) * | 2021-02-25 | 2021-06-25 | 西安电子科技大学 | 一种数据包二级缓存方法、***及应用 |
CN113573159A (zh) * | 2021-06-11 | 2021-10-29 | 中国大恒(集团)有限公司北京图像视觉技术分公司 | 一种提高千兆网工业相机传输稳定性的方法及*** |
US11516698B2 (en) | 2019-05-02 | 2022-11-29 | Nokia Technologies Oy | Sending a duplicate of an original data packet to a target device in a network |
Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101026478A (zh) * | 2007-02-02 | 2007-08-29 | 华为技术有限公司 | 网络设备内部节点可靠组播的方法、***及设备 |
CN101159520A (zh) * | 2007-10-29 | 2008-04-09 | 中兴通讯股份有限公司 | 数据传输方法 |
CN101262321A (zh) * | 2008-02-03 | 2008-09-10 | 杭州华三通信技术有限公司 | 媒体数据处理方法、编码设备及媒体平台 |
CN101286945A (zh) * | 2008-05-22 | 2008-10-15 | 北京星网锐捷网络技术有限公司 | 数据分片处理方法及装置 |
US7554917B1 (en) * | 2004-06-28 | 2009-06-30 | Francis Tieu | TCP retransmission and exception processing in high speed, low memory hardware devices |
CN101645927A (zh) * | 2009-09-02 | 2010-02-10 | 中兴通讯股份有限公司 | 一种媒体文件的切片***、方法及切片服务器 |
CN101656639A (zh) * | 2009-08-27 | 2010-02-24 | 华为技术有限公司 | Mlppp链路的空洞识别方法、装置及接收设备 |
CN101662461A (zh) * | 2008-08-27 | 2010-03-03 | 华为技术有限公司 | 一种多链路协议分片数据的重组方法、装置及*** |
CN101727465A (zh) * | 2008-11-03 | 2010-06-09 | ***通信集团公司 | 分布式列存储数据库索引建立、查询方法及装置与*** |
CN101795236A (zh) * | 2010-03-31 | 2010-08-04 | 成都市华为赛门铁克科技有限公司 | 报文保序方法及装置 |
CN101917472A (zh) * | 2010-08-12 | 2010-12-15 | 北京星网锐捷网络技术有限公司 | 一种多链路报文的重组方法、装置及设备 |
CN101945129A (zh) * | 2010-09-10 | 2011-01-12 | 北京易视腾科技有限公司 | P2p流媒体直播的低延时传输方法及*** |
CN102355342A (zh) * | 2011-10-19 | 2012-02-15 | 山东中创软件工程股份有限公司 | 一种消息发送和接收的方法及装置 |
CN102571635A (zh) * | 2012-01-18 | 2012-07-11 | 浪潮(北京)电子信息产业有限公司 | 一种消息传输方法及设备 |
CN102685000A (zh) * | 2012-04-24 | 2012-09-19 | 中兴通讯股份有限公司 | 一种mp碎片序号同步实现方法、设备及*** |
CN104065643A (zh) * | 2014-05-07 | 2014-09-24 | 上海文广互动电视有限公司 | 基于树形逻辑的多媒体网络传输方法及*** |
-
2015
- 2015-10-15 CN CN201510664937.3A patent/CN105376165B/zh active Active
Patent Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7554917B1 (en) * | 2004-06-28 | 2009-06-30 | Francis Tieu | TCP retransmission and exception processing in high speed, low memory hardware devices |
CN101026478A (zh) * | 2007-02-02 | 2007-08-29 | 华为技术有限公司 | 网络设备内部节点可靠组播的方法、***及设备 |
CN101159520A (zh) * | 2007-10-29 | 2008-04-09 | 中兴通讯股份有限公司 | 数据传输方法 |
CN101262321A (zh) * | 2008-02-03 | 2008-09-10 | 杭州华三通信技术有限公司 | 媒体数据处理方法、编码设备及媒体平台 |
CN101286945A (zh) * | 2008-05-22 | 2008-10-15 | 北京星网锐捷网络技术有限公司 | 数据分片处理方法及装置 |
CN101662461A (zh) * | 2008-08-27 | 2010-03-03 | 华为技术有限公司 | 一种多链路协议分片数据的重组方法、装置及*** |
CN101727465A (zh) * | 2008-11-03 | 2010-06-09 | ***通信集团公司 | 分布式列存储数据库索引建立、查询方法及装置与*** |
CN101656639A (zh) * | 2009-08-27 | 2010-02-24 | 华为技术有限公司 | Mlppp链路的空洞识别方法、装置及接收设备 |
CN101645927A (zh) * | 2009-09-02 | 2010-02-10 | 中兴通讯股份有限公司 | 一种媒体文件的切片***、方法及切片服务器 |
CN101795236A (zh) * | 2010-03-31 | 2010-08-04 | 成都市华为赛门铁克科技有限公司 | 报文保序方法及装置 |
CN101917472A (zh) * | 2010-08-12 | 2010-12-15 | 北京星网锐捷网络技术有限公司 | 一种多链路报文的重组方法、装置及设备 |
CN101945129A (zh) * | 2010-09-10 | 2011-01-12 | 北京易视腾科技有限公司 | P2p流媒体直播的低延时传输方法及*** |
CN102355342A (zh) * | 2011-10-19 | 2012-02-15 | 山东中创软件工程股份有限公司 | 一种消息发送和接收的方法及装置 |
CN102571635A (zh) * | 2012-01-18 | 2012-07-11 | 浪潮(北京)电子信息产业有限公司 | 一种消息传输方法及设备 |
CN102685000A (zh) * | 2012-04-24 | 2012-09-19 | 中兴通讯股份有限公司 | 一种mp碎片序号同步实现方法、设备及*** |
CN104065643A (zh) * | 2014-05-07 | 2014-09-24 | 上海文广互动电视有限公司 | 基于树形逻辑的多媒体网络传输方法及*** |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107229660A (zh) * | 2016-03-25 | 2017-10-03 | 阿里巴巴集团控股有限公司 | 一种数据去重的方法和设备 |
CN108075820A (zh) * | 2016-11-18 | 2018-05-25 | 杭州优能通信***有限公司 | 一种提高卫星广播信道分片数据传输可靠性的方法 |
CN108234327A (zh) * | 2016-12-13 | 2018-06-29 | 英业达科技有限公司 | 数据传输***、数据接收方法、及数据传输方法 |
CN108155999A (zh) * | 2017-12-27 | 2018-06-12 | 罗建平 | 带tcp补包机制的智能udp组播文件分发***及方法 |
CN108155999B (zh) * | 2017-12-27 | 2020-08-07 | 乐自科技(南京)有限公司 | 带tcp补包机制的智能udp组播文件分发***及方法 |
CN109474642A (zh) * | 2019-01-08 | 2019-03-15 | 郑州云海信息技术有限公司 | 基于以太网udp协议数据传输方法、装置、设备及介质 |
CN110049120A (zh) * | 2019-04-12 | 2019-07-23 | 海能达通信股份有限公司 | 多媒体文件传输方法、***、核心网及装置 |
US11516698B2 (en) | 2019-05-02 | 2022-11-29 | Nokia Technologies Oy | Sending a duplicate of an original data packet to a target device in a network |
CN112398744A (zh) * | 2019-08-16 | 2021-02-23 | 阿里巴巴集团控股有限公司 | 网络通信方法、装置及电子设备 |
CN113032295A (zh) * | 2021-02-25 | 2021-06-25 | 西安电子科技大学 | 一种数据包二级缓存方法、***及应用 |
CN113573159A (zh) * | 2021-06-11 | 2021-10-29 | 中国大恒(集团)有限公司北京图像视觉技术分公司 | 一种提高千兆网工业相机传输稳定性的方法及*** |
Also Published As
Publication number | Publication date |
---|---|
CN105376165B (zh) | 2019-02-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105376165A (zh) | Udp组播方法、***、发送装置及接收装置 | |
Comer et al. | A new design for distributed systems: The remote memory model | |
CN104092719B (zh) | 文件传输方法、装置及分布式集群文件*** | |
CN104025690A (zh) | 一种调整发送时间的方法及用户设备 | |
CN101010880A (zh) | 分组网络中的转发差错纠正 | |
CN104933114A (zh) | 一种海量日志管理云平台 | |
CN101552652A (zh) | 一种文件传输方法及传输装置 | |
CN103220206A (zh) | 一种消息发送方法、装置和一种消息接收方法、装置 | |
CN101594308B (zh) | 报文传输方法及*** | |
CN110460412A (zh) | 用于数据传输的方法和rdma网卡 | |
CN102412990B (zh) | 具有集中管理和实时传输功能遥感卫星原始数据记录*** | |
CN104468548A (zh) | 一种数据验证的方法、灾备存储器和生产存储器 | |
CN104065465B (zh) | 一种报文重传的方法、请求端、响应端以及*** | |
CN104679596A (zh) | 一种提高服务器端并发性能的消息处理方法及其*** | |
CN104917590A (zh) | 一种信道编码纠错方法 | |
CN105162727B (zh) | 一种基于VxWorks***在DSFA***中实现快速对等通信的方法 | |
CN104104475A (zh) | 一种应答信号的生成方法、接收方法与装置 | |
CN113992654A (zh) | 一种高速的文件传输方法、***、设备及介质 | |
CN105933453A (zh) | 一种传输数据的方法和*** | |
CN101771718A (zh) | 剪贴板同步方法及*** | |
CN107809302A (zh) | 一种不可靠链路下的文件元数据冗余传输、接收方法及*** | |
CN105354110A (zh) | 云服务器数据备份方法及装置 | |
CN105095502A (zh) | 一种集群存储***的日志收集方法 | |
US11184114B2 (en) | Dynamic management of packet loss | |
US7100078B1 (en) | Method and apparatus for restoration of lost blocks in a multicast data transmission |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |