CN103918233B - 多递送路线分组排序 - Google Patents
多递送路线分组排序 Download PDFInfo
- Publication number
- CN103918233B CN103918233B CN201280054127.0A CN201280054127A CN103918233B CN 103918233 B CN103918233 B CN 103918233B CN 201280054127 A CN201280054127 A CN 201280054127A CN 103918233 B CN103918233 B CN 103918233B
- Authority
- CN
- China
- Prior art keywords
- packet
- sequence
- sub
- identifier
- sequence identifier
- 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
- 238000012163 sequencing technique Methods 0.000 title claims description 9
- 238000004891 communication Methods 0.000 claims abstract description 111
- 238000000034 method Methods 0.000 claims description 70
- 230000004044 response Effects 0.000 claims description 61
- 230000008569 process Effects 0.000 claims description 46
- 230000006978 adaptation Effects 0.000 claims description 38
- 238000001514 detection method Methods 0.000 claims description 21
- 238000003780 insertion Methods 0.000 claims description 11
- 230000037431 insertion Effects 0.000 claims description 11
- 238000012545 processing Methods 0.000 claims description 11
- 230000008707 rearrangement Effects 0.000 claims description 9
- 230000008901 benefit Effects 0.000 claims description 2
- 238000000151 deposition Methods 0.000 claims 1
- 230000002265 prevention Effects 0.000 claims 1
- 238000005516 engineering process Methods 0.000 description 23
- 230000007246 mechanism Effects 0.000 description 21
- 230000005540 biological transmission Effects 0.000 description 20
- 230000006855 networking Effects 0.000 description 10
- 230000008859 change Effects 0.000 description 5
- 238000012790 confirmation Methods 0.000 description 5
- 238000004590 computer program Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 238000007726 management method Methods 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- RTZKZFJDLAIYFH-UHFFFAOYSA-N Diethyl ether Chemical compound CCOCC RTZKZFJDLAIYFH-UHFFFAOYSA-N 0.000 description 2
- 230000000295 complement effect Effects 0.000 description 2
- 238000000205 computational method Methods 0.000 description 2
- 230000005611 electricity Effects 0.000 description 2
- 238000003032 molecular docking Methods 0.000 description 2
- 230000002085 persistent effect Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 241000208340 Araliaceae Species 0.000 description 1
- 229930091051 Arenine Natural products 0.000 description 1
- 235000005035 Panax pseudoginseng ssp. pseudoginseng Nutrition 0.000 description 1
- 235000003140 Panax quinquefolius Nutrition 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000000712 assembly Effects 0.000 description 1
- 238000000429 assembly Methods 0.000 description 1
- 239000003990 capacitor Substances 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 239000012141 concentrate Substances 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 235000013399 edible fruits Nutrition 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 235000008434 ginseng Nutrition 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/34—Flow control; Congestion control ensuring sequence integrity, e.g. using sequence numbers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4641—Virtual LANs, VLANs, e.g. virtual private networks [VPN]
- H04L12/4645—Details on frame tagging
- H04L12/465—Details on frame tagging wherein a single frame includes a plurality of VLAN tags
-
- 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/02—Topology update or discovery
- H04L45/023—Delayed use of routing table updates
-
- 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/22—Alternate routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
- H04L47/125—Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/43—Assembling or disassembling of packets, e.g. segmentation and reassembly [SAR]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Communication Control (AREA)
Abstract
一种混合网络设备能够实现用于指示经由多个分组路线传送的与共同分组流相关联的各个分组的顺序以及用于管理脱序分组到达的功能性。在混合通信网络中,第一网络设备可确定与经由第一网络设备和第二网络设备之间的多个分组路线从第二网络设备接收到的关联于一分组流的多个分组相关联的序列标识符。第一网络设备可以至少部分地基于与该多个分组相关联的序列标识符来检测接收到的该多个分组中的一个或多个分组的脱序递送。因此,第一网络设备可基于与该多个分组相关联的序列标识符来对该多个分组的至少一子集进行重排序。
Description
相关申请
本申请要求于2011年11月3日提交的美国申请No.13/288,319的优先权权益。
背景
本发明主题内容的实施例一般涉及通信系统领域,尤其涉及多递送路线分组排序。
混合通信网络通常包括使用具备桥接能力的设备互连的多种联网技术(例如,无线局域网(WLAN)技术、电力线通信技术、以太网等),这些具备桥接能力的设备在这些不同网络技术和介质之间转发分组以便形成单个经扩展的通信网络。通常,通信机制和协议细节(例如设备和拓扑发现、与其他网络的桥接等等)是每种联网技术所特有的。混合通信网络可提供与一种或多种不同的网络技术相关联的不同路线以便将分组从源网络设备递送到目的地网络设备。
概述
在一些实施例中,一种方法包括:在通信网络中的第一网络设备处,确定与经由第一网络设备和第二网络设备之间的多个分组路线从第二网络设备接收到的关联于一分组流的多个分组相关联的序列标识符,其中经由该多个分组路线中的每一个分组路线接收到该多个分组的一子集;至少部分地基于与这多个分组相关联的序列标识符来检测经由该多个分组路线接收到的关联于该分组流的该多个分组中的一个或多个分组的脱序递送;以及响应于所述检测经由该多个分组路线接收到的关联于该分组流的该多个分组中的一个或多个分组的脱序递送,基于与该多个分组相关联的序列标识符来对该多个分组的至少一子集进行重排序。
在一些实施例中,所述确定与经由第一网络设备和第二网络设备之间的多个分组路线从第二网络设备接收到的关联于该分组流的多个分组相关联的序列标识符还包括确定该多个分组中的每一个分组是否包括由第二网络设备的混合适配层插入的副序列标识符;响应于确定该多个分组中的每一个分组包括由第二网络设备的混合适配层插入的副序列标识符,在第一网络设备处确定与该多个分组中的每一个分组相关联的副序列标识符;以及响应于确定该多个分组中的每一个分组不包括副序列标识符,在第一网络设备处确定与该多个分组中的每一个分组相关联的主序列标识符,其中与所述多个分组中的每一个分组相关联的主序列标识符是由第二网络设备的较高协议层插入的。
在一些实施例中,响应于确定多个分组中的每一个分组包括由第二网络设备的混合适配层插入的副序列标识符,所述确定与多个分组中的每一个分组相关联的副序列标识符还包括对于该多个分组中的每一个分组,从该分组的一个或多个报头字段中读取副序列标识符。
在一些实施例中,响应于确定多个分组中的每一个分组包括由第二网络设备的混合适配层插入的副序列标识符,所述确定与多个分组中的每一个分组相关联的副序列标识符还包括对于该多个分组中的每一个分组,基于分组的报头字段和分组的净荷中的至少一者来确定该分组的分组签名;将该分组的分组签名与序列表分组中的多个分组签名进行比较,其中该序列表分组包括与分组流中的该多个分组中的对应的每一个分组相关联的多个分组签名以及对应的多个序列标识符,其中该序列表分组是从第二网络设备向第一网络设备提供的;基于所述将分组的分组签名与序列表分组中的该多个分组签名进行比较来确定该分组的分组签名匹配于序列表分组中的该多个分组签名中的第一分组签名;以及响应于所述确定该分组的分组签名匹配于序列表分组中的该多个分组签名中的第一分组签名,将该多个序列标识符中对应于该多个分组签名中的第一分组签名的第一序列标识符标识为与该分组相关联的序列标识符。
在一些实施例中,副序列标识符是在与分组相关联的虚拟局域网(VLAN)标签的一个或多个位中的至少一个位中指示的,其中VLAN标签中的指示副序列标识符的该一个或多个位与预定编码相关联。
在一些实施例中,所述检测经由多个分组路线接收到的关联于分组流的多个分组中的一个或多个分组的脱序递送还包括,对于该多个分组中的每一个分组,确定与该分组相关联的序列标识符是否按照与先前在第一网络设备处接收到的关联于该分组流的对应的一个或多个先前接收到的分组相关联的一个或多个序列标识符的顺序;响应于确定与该分组相关联的序列标识符按照与关联于该分组流的对应的一个或多个先前接收到的分组相关联的一个或多个序列标识符的顺序,确定该分组对于关联于该分组流的该一个或多个先前接收到的分组是按序的;以及响应于确定与该分组相关联的序列标识符未按照与关联于该分组流的对应的一个或多个先前接收到的分组相关联的一个或多个序列标识符的顺序,确定该分组对于关联于该分组流的该一个或多个先前接收到的分组是脱序的。
在一些实施例中,所述检测经由多个分组路线接收到的关联于该分组流的多个分组中的一个或多个分组的脱序递送还包括将该多个分组中的该一个或多个分组存储在重排序缓冲器中;并且所述基于与该多个分组相关联的序列标识符来对该多个分组的至少该子集进行重排序还包括对于该多个分组的该子集中的每一个分组,将该分组与先前存储在该重排序缓冲器中的一个或多个分组一起进行重排序。
在一些实施例中,所述检测经由多个分组路线接收到的关联于该分组流的多个分组中的一个或多个分组的脱序递送还包括对于该多个分组中的每一个分组,基于与该分组相关联的序列标识符来确定该分组是否在顺序上早于该多分组中的已被提供给第一网络设备的较高协议层以便进行处理的最后一个分组;响应于确定该分组在顺序上早于该多个分组中的已被提供给第一网络设备的较高协议层以便进行处理的最后一个分组,在第一网络设备处丢弃该分组;以及响应于确定该分组在顺序上晚于该多个分组中的已被提供给第一网络设备的较高协议层以便进行处理的最后一个分组,基于与该分组相关联的序列标识符来对该分组进行重排序。
在一些实施例中,序列标识符包括序列号和时间戳中的至少一者。
在一些实施例中,响应于所述基于与多个分组相关联的序列标识符来对该多个分组的至少该子集进行重排序,该方法还包括向第一网络设备的较高协议层提供该多个分组的至少该子集以便进行处理。
在一些实施例中,所述检测经由多个分组路线接收到的关联于该分组流的该多个分组中的一个或多个分组的脱序递送包括至少部分地基于与该多个分组相关联的序列标识符来确定是否在第一网络设备处检测到与相同的序列标识符相关联的两个或更多分组;以及响应于确定在第一网络设备处检测到与相同的序列标识符相关联的两个或更多分组,提供与该相同的序列标识符相关联的该两个或更多分组中的第一分组,以便所述基于与该多个分组相关联的序列标识符来对该多个分组的至少该子集进行所述重排序,并且丢弃与相同的序列号相关联的该两个或更多分组中的其余分组。
在一些实施例中,一种方法包括:在通信网络中的第一网络设备处,确定要经由第一网络设备和该通信网络中的第二网络设备之间的多个分组路线来将关联于一分组流的多个分组传送到第二网络设备;将副序列标识符插入关联于该分组流的该多个分组中的每一个分组,其中该副序列标识符是由第一网络设备的混合适配层插入的;以及经由该多个分组路线将该多个分组传送到第二网络设备,其中调度经由该多个分组路线中的每一个分组路线来传送该多个分组的一子集。
在一些实施例中,所述将副序列标识符插入关联于该分组流的该多个分组中的每一个分组包括除了由第一网络设备的较高协议层插入的主序列标识符之外还将副序列标识符插入该多个分组中的每一个分组;或者响应于确定关联于该分组流的该多个分组不包括主序列标识符来将副序列标识符插入该多个分组中的每一个分组。
在一些实施例中,所述将副序列标识符插入关联于第二分组流的一个或多个分组中的每一个分组还包括对于该一个或多个分组中的每一个分组,将副序列标识符插入该分组的报头字段;以及将包括副序列标识符的该分组传送到第二网络设备。
在一些实施例中,所述将副序列标识符插入关联于该分组流的该多个分组中的每一个分组还包括对于该多个分组中的每一个分组,基于该分组的报头字段和该分组的净荷中的至少一者来确定唯一地标识该分组的分组签名;生成包括与该多个分组中的每一个分组相关联的分组签名以及与该多个分组中的每一个分组相关联的对应的副序列标识符的序列表分组;将该序列表分组传送到第二网络设备以指示将从第一网络设备向第二网络设备传送该一个或多个分组的次序;以及根据序列表分组中所指示的分组次序来向第二网络设备传送该多个分组。
在一些实施例中,该方法还包括在第一网络设备处确定经由该多个分组路线中的第一分组路线而不是该多个分组路线中的第二分组路线来传送该多个分组中的一个或多个分组;经由第二分组路线来传送该多个分组中的第一分组,其中该多个分组中的第一分组是将经由第二分组路线来传送的最后一个分组;响应于所述经由第二分组路线来传送该多个分组中的第一分组,在预定时间间隔内阻止经由第二分组路线和第一分组路线来传送该多个分组中的后续分组,其中该多个分组中的第一分组是将经由第二分组路线传送的最后一个分组;以及在该预定时间间隔逝去后经由第一分组路线传送该多个分组中的后续分组。
在一些实施例中,通信网络设备包括一个或多个网络接口以及与该一个或多个网络接口耦合的重排序单元,该重排序单元可操作用于:确定与在该通信网络设备处经由该网络设备和第二通信网络设备之间的多个分组路线从第二通信网络设备接收到的关联于一分组流的多个分组相关联的序列标识符,其中经由该多个分组路线中的每一个分组路线接收到该多个分组的一子集;至少部分地基于与该多个分组相关联的序列标识符来检测经由该多个分组路线接收到的关联于该分组流的该多个分组中的一个或多个分组的脱序递送;以及响应于重排序单元检测到经由该多个分组路线接收到的关联于该分组流的该多个分组中的一个或多个分组的脱序递送,基于与该多个分组相关联的序列标识符来对该多个分组的至少一子集进行重排序。
在一些实施例中,所述重排序单元可操作用于确定与经由该通信网络设备和第二通信网络设备之间的多个分组路线从第二通信网络设备接收到的关联于该分组流的该多个分组相关联的序列标识符还包括该重排序单元可操作用于确定该多个分组中的每一个分组是否包括由第二通信网络设备的混合适配层插入的副序列标识符;响应于所述重排序单元确定该多个分组中的每一个分组包括由第二通信网络设备的混合适配层插入的副序列标识符,确定与该多个分组中的每一个分组相关联的副序列标识符;以及响应于所述重排序单元确定该多个分组中的每一个分组不包括副序列标识符,确定与该多个分组中的每一个分组相关联的主序列标识符,其中与该多个分组中的每一个分组相关联的主序列标识符是由第二通信网络设备的较高协议层插入的。
在一些实施例中,响应于所述重排序单元确定该多个分组中的每一个分组包括由第二通信网络设备的混合适配层插入的副序列标识符,所述重排序单元可操作用于确定与该多个分组中的每一个分组相关联的副序列标识符还包括所述重排序单元可操作用于对于该多个分组中的每一个分组,从该分组的一个或多个报头字段中读取副序列标识符。
在一些实施例中,响应于所述重排序单元确定该多个分组中的每一个分组包括由第二通信网络设备的混合适配层插入的副序列标识符,所述重排序单元可操作用于确定与该多个分组中的每一个分组相关联的副序列标识符还包括所述重排序单元可操作用于对于该多个分组中的每一个分组,基于分组的报头字段和分组的净荷中的至少一者来确定该分组的分组签名;将该分组的分组签名与序列表分组中的多个分组签名进行比较,其中该序列表分组包括与该分组流中的该多个分组中的对应的每一个分组相关联的多个分组签名以及对应的多个序列标识符,其中该序列表分组是从第二通信网络设备向该通信网络设备提供的;基于所述重排序单元将该分组的分组签名与序列表分组中的该多个分组签名进行比较来确定该分组的分组签名匹配于序列表分组中的该多个分组签名中的第一分组签名;以及响应于所述重排序单元确定该分组的分组签名匹配于序列表分组中的该多个分组签名中的第一分组签名,将该多个序列标识符中对应于该多个分组签名中的第一分组签名的第一序列标识符标识为与该分组相关联的序列标识符。
在一些实施例中,所述重排序单元可操作用于检测经由该多个分组路线接收到的关联于该分组流的该多个分组中的一个或多个的脱序递送还包括所述重排序单元可操作用于对于该多个分组中的每一个分组,确定与该分组相关联的序列标识符是否按照与先前在该通信网络设备处接收到的关联于该分组流的对应的一个或多个先前接收到的分组相关联的一个或多个序列标识符的顺序;响应于所述重排序单元确定与该分组相关联的序列标识符按照与关联于该分组流的对应的一个或多个先前接收到的分组相关联的该一个或多个序列标识符的顺序,确定该分组对于关联于该分组流的该一个或多个先前接收到的分组是按序的;以及响应于所述重排序单元确定与该分组相关联的序列标识符未按照与关联于该分组流的对应的一个或多个先前接收到的分组相关联的该一个或多个序列标识符的顺序,确定该分组对于关联于该分组流的该一个或多个先前接收到的分组是脱序的。
在一些实施例中,所述重排序单元可操作用于检测经由该多个分组路线接收到的关联于该分组流的该多个分组中的一个或多个的脱序递送还包括所述重排序单元可操作用于将该多个分组中的该一个或多个存储在重排序缓冲器中;并且所述重排序单元可操作用于基于与该多个分组相关联的序列标识符来对该多个分组的至少该子集进行重排序还包括所述重排序单元可操作用于对于该多个分组的该子集中的每一个分组,将该分组与先前存储在重排序缓冲器中的一个或多个分组一起进行重排序。
在一些实施例中,所述重排序单元可操作用于检测经由该多个分组路线接收到的关联于该分组流的该多个分组中的一个或多个分组的脱序递送还包括所述重排序单元可操作用于对于该多个分组中的每一个分组,基于与该分组相关联的序列标识符来确定该分组是否在顺序上早于该多分组中的已被提供给该通信网络设备的较高协议层以便进行处理的最后一个分组;响应于所述重排序单元确定该分组在顺序上早于该多分组中的已被提供给该通信网络设备的较高协议层以便进行处理的最后一个分组,在该通信网络设备处丢弃该分组;以及响应于所述重排序单元可操作用于确定该分组在顺序上晚于该多分组中的已被提供给第一通信网络设备的较高协议层以便进行处理的最后一个分组,基于与该分组相关联的序列标识符来对该分组进行重排序。
在一些实施例中,有一个或多个其中存储有指令的机器可读存储介质,这些指令在被一个或多个处理器执行时使该一个或多个处理器执行以下操作,包括:确定与在第一网络设备处经由第一网络设备和第二网络设备之间的多个分组路线从第二网络设备接收到的关联于一分组流的多个分组相关联的序列标识符,其中经由该多个分组路线中的每一个分组路线接收到该多个分组的一子集;至少部分地基于与该多个分组相关联的序列标识符来检测经由该多个分组路线接收到的关联于该分组流的该多个分组中的一个或多个分组的脱序递送;以及响应于所述检测经由该多个分组路线接收到的关联于该分组流的该多个分组中的一个或多个分组的脱序递送的操作,基于与该多个分组相关联的序列标识符来对该多个分组的至少一子集进行重排序。
在一些实施例中,所述确定与经由第一网络设备和第二网络设备之间的多个分组路线从第二网络设备接收到的关联于该分组流的该多个分组相关联的序列标识符的操作还包括确定该多个分组中的每一个分组是否包括由第二网络设备的混合适配层插入的副序列标识符;响应于确定该多个分组中的每一个分组包括由第二网络设备的混合适配层插入的副序列标识符,确定与该多个分组中的每一个分组相关联的副序列标识符;以及响应于确定该多个分组中的每一个分组不包括副序列标识符,确定与该多个分组中的每一个分组相关联的主序列标识符,其中与该多个分组中的每一个分组相关联的主序列标识符是由第二网络设备的较高协议层插入的。
在一些实施例中,响应于确定该多个分组中的每一个分组包括由第二网络设备的混合适配层插入的副序列标识符,所述确定与该多个分组中的每一个分组相关联的副序列标识符的操作还包括对于该多个分组中的每一个分组,从该分组的一个或多个报头字段中读取副序列标识符。
在一些实施例中,响应于确定该多个分组中的每一个分组包括由第二网络设备的混合适配层插入的副序列标识符,所述确定与该多个分组中的每一个分组相关联的副序列标识符的操作还包括对于该多个分组中的每一个分组,基于分组的报头字段和分组的净荷中的至少一者来确定该分组的分组签名;将该分组的分组签名与序列表分组中的多个分组签名进行比较,其中该序列表分组包括与该分组流中的该多个分组中的对应的每一个分组相关联的多个分组签名以及对应的多个序列标识符,其中该序列表分组是从第二网络设备向第一网络设备提供的;基于所述将分组的分组签名与序列表分组中的该多个分组签名进行比较的操作来确定该分组的分组签名匹配于序列表分组中的该多个分组签名中的第一分组签名;以及响应于所述确定该分组的分组签名匹配与序列表分组中的该多个分组签名中的第一分组签名的操作,将该多个序列标识符中对应于该多个分组签名中的第一分组签名的第一序列标识符标识为与该分组相关联的序列标识符。
在一些实施例中,所述检测经由该多个分组路线接收到的关联于该分组流的该多个分组中的一个或多个的脱序递送的操作还包括对于该多个分组中的每一个分组,确定与该分组相关联的序列标识符是否按照与先前在第一网络设备处接收到的关联于该分组流的对应的一个或多个先前接收到的分组相关联的一个或多个序列标识符的顺序;响应于确定与该分组相关联的序列标识符按照与关联于该分组流的对应的一个或多个先前接收到的分组相关联的一个或多个序列标识符的顺序,确定该分组对于关联于该该分组流的该一个或多个先前接收到的分组是按序的;以及响应于确定与该分组相关联的序列标识符未按照与关联于该分组流的对应的一个或多个先前接收到的分组相关联的一个或多个序列标识符的顺序,确定该分组对于关联于该分组流的该一个或多个先前接收到的分组是脱序的。
附图简述
通过参考附图,可以更好地理解本发明的诸实施例并使众多目的、特征和优点为本领域技术人员所显见。
图1是解说混合通信网络中的示例分组重排序机制的框图;
图2是解说用于实现多个联网接口的混合设备的示例协议栈的概念图;
图3是解说用于指示与从源混合设备向目的地混合设备传送的分组相关联的传输次序的示例操作的流程图;
图4是解说用于在目的地混合设备处对脱序分组进行检测和重排序的示例操作的流程图;
图5是图4的继续并且也描绘了用于在目的地混合设备处对脱序分组进行检测和重排序的示例操作;以及
图6是解说包括用于混合通信网络中的分组重排序的机制的电子设备的一个实施例的框图。
实施例描述
以下描述包括体现本发明主题内容的技术的示例性系统、方法、技术、指令序列、以及计算机程序产品。然而应理解,所描述的实施例在没有这些具体细节的情况下也可实践。例如,尽管在一些实施例中,分组排序机制可针对包括无线局域网(WLAN)设备(例如,IEEE802.11设备)、电力线网络设备(例如,HomePlug AV)以及以太网设备的混合通信网络来实现,但是在其他实施例中,分组排序机制可以在可包括实现其他标准/协议(例如,WiMAX等等)的其他合适类型的网络设备的混合通信网络中实现。在其他实例中,公知的指令实例、协议、结构和技术未被详细示出以免混淆本描述。
源通信设备通常按有序的分组顺序向目的地通信设备传送数据。作为对接收到的数据进行分析的一部分,目的地通信设备通常确保以与源通信设备传送分组相同的次序处理这些分组。常规的通信网络通常提供两个通信设备之间经过该网络的单条路线,因为源和目的地通信设备只利用单个接口来彼此通信。然而,混合通信网络通常被形成为跨不同网络技术和通信介质的通信网段(或子网)的互连。混合通信网络可包括具有多个网络接口且被配置成跨不同网络技术进行操作的混合设备。混合设备可使用多个网络接口中的任一个网络接口来经由混合通信网络传送/接收分组。因此,在源混合设备和目的地混合设备之间可以存在多条路线。例如,如果源和目的地混合设备各自包括三个网络接口,则在源和目的地混合设备之间可至少存在九条路线。因为混合通信网络可提供源和目的地混合设备之间的多条路线,并且因为源混合设备可同时使用多个网络接口(以及多个分组路线)来传送与同一分组流相关联的各个分组,所以一个或多个分组可能脱序到达目的地混合设备。脱序分组到达可扰乱目的地混合设备的较高协议层或应用的操作。现有的用于管理脱序分组的技术通常是针对包括单个网络接口的常规通信设备、针对只提供通信设备之间的单条路线的常规通信网络、或针对即使有多条路线可用也只使用单条路线的通信设备来优化的。在用于管理脱序分组的某些协议中,脱序分组到达可能触发源设备处的拥塞控制,该拥塞控制进而可能由于拥塞控制扼流机制而导致低吞吐量。此外,目的地混合设备所采用的某些通信协议(例如,用户数据报协议(UDP))可能不包括内建的分组重排序机制。在目的地混合设备处缺少用于管理脱序分组的可靠机制可能降低混合设备的性能和吞吐量。
在一些实施例中,混合设备可实现用于管理由于使用多条路线来递送分组流而导致的脱序分组到达的机制。在一个实施例中,源混合设备可指示与被调度为要传送到目的地混合设备的每一个分组相关联的序列标识符。源混合设备还可确定与被调度为要传送的每一个分组相关联的分组流。基于该分组流,源混合设备可以从多个分组路线中确定要用于传送这些分组的两个或更多分组路线。源混合设备可以在多条分组路线之间进行主动切换以便传送与同一分组流相关联的分组。响应于接收到分组,目的地混合设备可标识与同一分组流相关联且经由多条分组路线接收到的分组。目的地混合设备可使用与接收到的分组相关联的序列标识符以及与(属于同一分组流的)先前接收到的分组相关联的序列标识符来确定接收到的分组是否是脱序的。基于序列标识符,目的地混合设备可以对与分组流相关联的各个分组进行重排序,并且能够以适当的次序释放这些分组以便进行后续处理。如本文描述的用于指示分组次序和用于基于序列标识符来对脱序分组进行重排序的这些和其它机制可使得目的地混合设备能够管理可能由于使用多条分组路线来传送与同一分组流相关联的各个分组而导致的脱序分组到达。
图1是解说混合通信网络100中的示例分组重排序机制的框图。混合通信网络100包括混合设备102和112以及转发设备120和122。混合设备102包括发射机单元104和接收机单元106。发射机单元104包括序列指示单元108和路由单元110。混合设备112还包括发射机单元114和接收机单元115。接收机单元115包括重排序单元116和重排序缓冲器118。虽然未在图1中描绘,但混合设备102的接收机单元106也可包括重排序单元和重排序缓冲器。同样,虽然未在图1中描绘,但混合设备112的发射机单元114也可包括序列指示单元和路由单元。转发设备120和122可以是常规(也被称为旧式)通信设备或混合通信设备。在一些实现中,混合设备102和110可以包括多个网络接口,这些网络接口中的每一个网络接口将该混合设备连接到通信网络的不同分段(此处被称为通信网段或网段)。例如,混合设备102和110各自可以包括三个网络接口(例如电力线接口、以太网接口和WLAN接口),这些网络接口分别使得混合设备102能够连接到电力线通信网段、以太网和WLAN。
在一个实现中,如图2所描绘的,混合设备102和110的联网功能性可使用根据国际标准组织(ISO)开放系统互连(OSI)参考模型的“分层”办法来分成各个子功能。该组联网协议层可被称为“协议栈”。图2描绘了用于实现多个联网接口的混合设备的示例协议栈200。注意,尽管将就源混合设备102来描述图2的协议栈,但目的地混合设备112也可实现如图2所描绘的相同(或相似)的协议栈。在图2的示例协议栈200中,混合设备与两个通信接口相关联。因此,该协议栈200包括两个物理(PHY)层202和204以及对应的两个媒体接入控制(MAC)层206和208。MAC层206和PHY202层将混合设备耦合到一个通信网段222(例如,以太网)。类似地,MAC层208和PHY层204将该混合设备耦合到另一个通信网段224(例如,电力线通信网络)。注意,通信网段222和204各自可以是扩展的桥接网络(诸如混合通信网络)的一部分。协议栈200包括网络层212。网络层212可实现网际协议版本4(IPv4)通信协议、网际协议版本6(IPv6)通信协议、通信协议或其它合适的网络层协议。协议栈200还包括网络层212和MAC层206和208之间的“混合适配层”210。在一个示例中,如图2所描绘的,混合适配层210可包括序列指示单元108、路由单元110、重排序单元116以及用于指示分组的传输次序和用于对脱序分组进行重排序的其它功能性。如将在以下图1和3-5中进一步描述的,序列指示单元108可确定和指示从(或将从)混合设备传送分组的顺序。路由单元110可确定用于将与分组流相关联的各个分组传送到目的地设备的两个或更多分组路线。分组流可包括传达与同一应用相关联且作为同一通信连接或会话的一部分的数据的一系列分组。响应于经由混合通信网络100接收到(与该分组流相关联的)各个分组,重排序单元116可执行用于以下动作的操作:确定与接收到的分组相关联的序列号,检测混合设备处的脱序分组到达,以及对脱序分组进行重排序(如果有必要的话)。协议栈200还包括跨网络层212操作的传输层214。传输层214可包括传输控制协议(TCP)、用户数据报协议(UDP)或取决于混合设备所实现的网络层协议的其它合适的传输层协议。协议栈200还描绘了利用其它协议层202-214来与其它设备通信的三个应用216、218和220。
在一些实现中,应用层(包括应用216、218和220)、传输层214和网络层212可被统称为“较高协议层”。MAC层206和208以及PHY层202和204可被统称为“较低协议层”。混合适配层210可实现用于管理混合设备中的与单组较高协议层(例如,所实现的每一种网络协议类型的单个网络层212和所实现的每一种传输协议类型的单个传输层214)但与多个联网接口(例如,多个PHY层和MAC层)的通信的功能性。在一个实现中,混合适配层210可以与下面的MAC层206和208对接,以管理联网资源并做出对协议栈中的较高层而言透明的迅速分组路线改变。混合适配层210还可使得较高协议层能够如同该源混合设备102仅包括单个MAC层和对应的单个PHY层那样来操作。注意,图2所描绘的协议栈200解说了混合设备102和110的架构的一个实施例。在其他实现中,混合设备102和110可包括其它合适的层或子层,这取决于可能实现的联网技术和可选协议。例如,某些联网技术可实现MAC层之上的以太网汇聚层。作为另一示例,某些联网技术可包括逻辑链路控制(LLC)协议层。此外,一个或多个其它子层可执行此处在图1、3-6中描述的功能性。回头参考图1,混合设备102(“源混合设备”)可提供分组顺序的指示(如将在阶段A中描述的),以使得能够在混合设备112(“目的地混合设备”)处进行分组重排序(在阶段B-D中描述)。
在阶段A,源混合设备102的序列指示单元108确定要在将经由两个或更多分组路线向目的地混合设备112传送的关联于一分组流的多个分组之中的每一个分组中插入序列标识符。序列标识符可以是时间戳、序列号或另一种类型的序列标识符。在一些实现中,源混合设备102的较高协议层(例如,传输协议层214)可以在向混合适配层210提供被调度为要向目的地混合设备112传送的分组之前在这些分组中插入序列标识符。由较高协议层插入的序列标识符此处被称为“主序列标识符”。在阶段A,混合适配层210的序列指示单元108可确定是否要向其中每一个分组添加与主序列标识符相异的序列标识符(例如,由混合适配层210生成)。由混合适配层210(即,序列指示单元108)生成和插入的序列标识符此处被称为“副序列标识符”。如将在以下参考图3进一步描述的,序列指示单元108可确定分组是否包括主序列标识符以及是否要添加与分组相关联的副序列标识符。
在一些实现中,混合通信网络100可提供源混合设备102和目的地混合设备112之间的多个分组路线。如图1的示例中所描绘的,混合通信网络100可经由转发设备120和122来提供源混合设备102和目的地混合设备112之间的三个分组路线。为了沿分组路线124传送分组,源混合设备102将分组传送到转发设备120,转发设备120进而将分组传送到目的地混合设备112。为了沿分组路线126传送分组,源混合设备102将分组传送到转发设备122,转发设备122进而将分组传送到目的地混合设备112。为了沿分组路线128传送分组,源混合设备102将分组传送到转发设备120。转发设备120将分组传送到转发设备122,转发设备122进而将分组传送到目的地混合设备112。在一些实现中,如图1所描绘的,分组路线124、126和128可以在将分组从源混合设备102路由至目的地混合设备112的转发设备(以及其它中间通信设备)方面有所不同。在其他实现中,分组路线124、126和128也可以在以下各项有所不同:从其传送分组的网络接口(“源通信接口”)、接收到分组的网络接口(“目的地通信接口”)和/或用于传送分组的通信网段。如将在图3中进一步描述的,在一些实现中,路由单元110可以至少部分地基于与用于传送与特定分组流相关联的各个分组的多个分组路线中的每一个分组路线相关联的路线特性(例如,话务量、拥塞、性能等)来在这些分组路线之间进行切换。在另一实现中,路由单元110可以至少部分地基于与要传送的分组相关联的分组流来选择用于向目的地混合设备112传送分组的两个或更多分组路线。在序列指示单元108将副序列标识符插入被调度为要传送的分组中之后,路由单元110可经由所选分组路线(例如,通过在两个或更多所选分组路线之间交替传送分组)向目的地混合设备112传送分组。目的地混合设备112可接收分组并可执行以下在阶段B-D中描述的操作,以便至少部分地基于序列标识符来对接收到的分组进行重排序(如果有必要的话)。
在阶段B,目的地混合设备112的重排序单元116至少部分地基于与该多个接收到的分组相关联的序列标识符来检测经由这两个或更多分组路线从源混合设备接收到的关联于该分组流的该多个接收到的分组中的一个或多个分组的脱序递送。响应于经由这两个或更多分组路线从源混合设备102接收到多个分组,重排序单元116可以读取与每一个接收到的分组相关联的序列标识符。在一些实现中,重排序单元116可将与接收到的分组相关联的序列标识符同与一个或多个先前接收到的关联于同一分组流的分组相关联的序列标识符(例如,与最后一个接收到的分组相关联的序列标识符)进行比较。相应地,重排序单元116可确定接收到的分组对于先前接收到的分组是否是脱序的以及是否应执行重排序操作。例如,对于特定分组流,重排序单元116可能在接收到具有序列号“7”的分组之后接收到具有序列号“5”的分组。因此,重排序单元116可确定接收到的分组(具有序列号5)未按照先前接收到的分组的顺序。
在阶段C,响应于检测到经由这两个或更多分组路线接收到的关联于该分组流的该多个分组中的一个或多个分组的脱序递送,重排序单元116基于与该多个分组相关联的序列标识符来对该多个分组的至少一子集进行重排序。在一些实现中,对于未按照同一分组流中的先前接收到的分组的顺序的每一个接收到的分组,重排序单元116将该接收到的分组存储在重排序缓冲器118中,直到它能够基于序列号来重新建立正确的次序。重排序单元116可执行任何合适的重排序技术以在重排序缓冲器118中对接收到的分组以及一个或多个先前接收到的分组进行重排序。注意,在一些实现中,如将在图4-5中进一步描述的,响应于确定接收到的分组未按照先前接收到的分组的顺序,重排序单元116可确定该分组是否是在已提供了该序列中的后续分组以供较高协议层处理之后接收到的。如果是,则重排序单元116可丢弃此接收到的分组。否则,重排序单元116可将该分组存储在重排序缓冲器118中并且可以对重排序缓冲器118中的分组进行重排序。
在阶段D,重排序单元116响应于确定要提供接收到的分组以供后续处理来释放存储在重排序缓冲器118中的每一个接收到的分组。如将在图5中进一步描述的,重排序单元116可以响应于确定一个或多个分组在重排序缓冲器118中是按顺序的,在预定时间间隔后,或者在重排序缓冲器118达到阈值容量时提供该一个或多个分组以供较高协议层进行后续处理。
图3是解说用于指示与从源混合设备向目的地混合设备传送的分组相关联的传输次序的示例操作的流程图(“流程”)300。流程300始于图3中的框302。
在框302,源混合设备确定要将多个分组传送到目的地混合设备。参考图1的示例,源混合设备102可确定要将该多个分组传送到目的地混合设备112。该流程在框304继续。
在框304,确定是否要向被调度为要传送到目的地混合设备的该多个分组添加副序列标识符。如上所述,在一些实现中,源混合设备102的较高协议层(例如,传输协议层214)可以在向混合适配层210提供被调度为要传送到目的地混合设备112的该多个分组之前在这些分组之中的每一个分组中插入主序列标识符。在框304,混合适配层210的序列指示单元108可确定是否要在该多个分组之中的每一个分组中插入相关联的副序列标识符。在一些实现中,序列指示单元108可确定分组是否已经包括主序列标识符(先前由较高协议层插入)。例如,如果源混合设备102实现TCP,则TCP传输层214可以在各分组中插入32字节主序列号。如果序列指示单元108确定分组包括主序列标识符,则序列指示单元108可确定不要在这些分组中插入副序列标识符。作为另一示例,如果源混合设备102实现UDP,则UDP传输层214可能并不在各分组中插入主序列标识符。如果序列指示单元108确定该多个分组不包括主序列标识符,则序列指示单元108可确定要在各分组中插入副序列标识符。
在一些实施例中,序列指示单元108可使用任何合适的归类技术来确定与被调度为要传送的该多个分组相关联的(诸)分组流,并相应地确定是否要在这些分组中插入序列标识符、要在这些分组中插入什么类型的序列标识符、以及应被插入这些分组中的序列标识符的值。例如,基于对被调度传送的多个分组进行分析,序列指示单元108可确定被调度为要传送的分组的一子集是第一分组流(例如由第一应用生成)的一部分,而其余分组是第二分组流(例如由第二应用生成)的一部分。序列指示单元108还可确定第一应用使用TCP(其插入主序列标识符的)而第二应用使用UDP(其不插入主序列标识符)。相应地,序列指示单元108可确定不要向作为第一分组流的一部分的那些分组添加副序列标识符,并且可确定要向作为第二分组流的一部分的那些分组添加副序列标识符。如果确定了要向分组添加副序列标识符,则该流程在框306继续。否则,如果确定不要向分组添加副序列标识符,则源混合设备102可依靠目的地混合设备112使用主序列标识符来检测脱序分组递送并对脱序分组进行重排序,并且流程在框308继续。
在框306,源混合设备将副序列标识符插入分组流的被调度为要向目的地混合设备传送的该多个分组中。在一些实现中,序列指示单元108可将适当的副序列号插入与分组流相关联的每一个分组中。(对于要传送的每一个分组)序列指示单元108可使得该分组的序列号字段递增“1”、递增该分组中所包含的字节的数量、或递增另一合适的递增值。在另一实现中,序列指示单元108可将适当的副时间戳(或时间戳和序列号两者)插入与分组流相关联的每一个分组中。序列指示单元108可采用各种技术来将副序列标识符插入被调度为要传送的分组中。例如,序列指示单元108可使用为指示分组次序而保留的特殊虚拟局域网(VLAN)标签编码、基于预定EtherType(以太类型)值的新标签、分组报头中的备用/未使用分组字段、分组报头中的新分组字段、或其它合适的技术来将副序列标识符插入分组中。具体而言,可以使用VLAN标签来插入副序列标识符,可以使用VLAN标签来对副序列标识符进行编码,可以使用特殊的保留编码来对副序列标识符连同其它信息(例如,VLAN标识符或流标识信息)进行编码。
在一些实现中,序列指示单元108可周期性地传送(例如,在单独的序列表分组中)分组签名或其它分组归类信息以及源混合设备102将传送分组的次序的指示。在一个示例中,序列表分组可包括与被调度为要传送的多个分组(例如,分组流的预定数量的分组)相关联的分组签名和对应的副序列标识符。在另一个示例中,序列表分组可包括与(分组流中的)已经被传送的多个分组相关联的分组签名和对应的主序列标识符。序列指示单元108可采用任何合适的技术来确定分组签名。例如,可使用循环冗余校验(CRC)计算方法(或独立于分组路线的另一种合适的计算方法)来生成分组签名(例如,CRC值)。如将在以下图4-5中进一步描述的,目的地混合设备112可使用该序列表分组来确定应按其来组织和处理这些分组的正确次序。
在一些实现中,除了指示将(或已经)传送的分组的顺序之外,序列指示单元108还可传送与分组相关联的分组流的指示(例如,作为该分组的一部分、在序列表分组中或者在另一不同的分组中)。与分组相关联的流标识信息可使用特殊的保留VLAN标签编码、基于预定EtherType值的新标签、备用/保留的分组报头字段、和/或分组中的新分组报头字段来添加。还注意,在一些实现中,与分组的第一传输和该分组的后续重传相关联的序列标识符可以是相同的,并且序列标识符可指示相对的传送顺序。该流程在框308继续。
在框308,确定用于传送与同一分组流相关联的该多个分组的两个或更多分组路线。响应于序列指示单元108将副序列标识符插入这些分组中,流程300从框306移至框308。响应于确定不应在这些分组中插入副序列标识符(例如,因为有主序列标识符可用),流程300还从框304移至框308。在一些实现中,路由单元110可以至少部分地基于与用于传送与特定分组流相关联的各个分组的多个分组路线中的每一个分组路线相关联的路线特性(例如,话务量、拥塞、性能等)来在这些分组路线之间进行切换。经由多个分组路线来传送与单个分组流相关联的分组可提高集总吞吐量,减少递送等待时间,并允许静态或动态网络链路负载平衡以便高效地使用可用网络资源。例如,路由单元110可确定分组路线124、126和128可被用于传送与第一分组流相关联的分组。路由单元110可确定(例如,基于对路线特性进行分析来确定)要经由分组路线124传送与该分组流相关联的分组中的1/5,经由分组路线128传送与该分组流相关联的分组中的另一1/5,并经由分组路线126传送与该分组流相关联的分组中的其余3/5。换言之,一旦确定要向目的地混合设备112传送分组流的5个分组,路由单元110可经由分组路线124传送第一分组,经由分组路线128传送第二分组,并经由分组路线126传送其余3个分组。作为另一示例,路由单元110可以在逐个分组的基础上在使用分组路线126和分组路线128之间交替。换言之,路由单元110可以沿分组路线126按顺序传送分组“n”、“n+2”等,并且可以沿着分组路线128传送分组“n+1”、“n+3”等,以便为该分组流获得最高吞吐量。如上所述,如果与分组路线128相关联的递送等待时间大于与分组路线126相关联的递送等待时间,则沿着分组路线128在时间上更早传送的分组可能比沿着分组路线126传送的分组到达得晚,从而导致目的地混合设备112处的脱序分组到达。该流程在框310继续。
在框310,经由这两个或更多分组路线将该多个分组传送到目的地混合设备。例如,路由单元110可以于在框308选择的适当分组路线上将该多个分组传送(或者可使传输单元传送)到目的地混合设备112。该流程从框310结束。响应于接收到与同一分组流相关联的该多个分组,目的地混合设备可基于序列标识符来对各分组进行重排序(如果有必要的话),如以下将在图4-5中描述的。
尽管图3描述了序列指示单元108基于分组是否包括主序列标识符来确定是否要将副序列标识符插入这些分组中,但实施例不受此限定。在其他实施例中,序列指示单元108可将副序列标识符插入分组中,而不管这些分组是否包括主序列标识符。这可简化用于在源混合设备102处指示分组次序以及用于在目的地混合设备112处对分组进行重排序的操作。
图4和图5描绘了解说用于在目的地混合设备处对脱序分组进行检测和重排序的示例操作的流程图400。流程400始于图4中的框402。
在框402,目的地混合设备接收源混合设备传送的分组。参考图1的示例,目的地混合设备112的重排序单元116可以沿一分组路线(从源混合设备102)接收与分组流相关联的分组。在一些实现中,该分组可以是与分组流相关联的、从源混合设备102经由两个或更多分组路线传送到目的地混合设备112的多个分组之一。例如,与分组流相关联的多个分组的一子集可经由第一分组路线接收,而该多个分组的其余子集可经由第二分组路线接收。作为另一示例,源混合设备102可以在逐个分组的基础上交替分组传输。源混合设备102可经由第一分组路线传送与分组流相关联的多个分组中的第一分组,在第二分组路线上传送与该分组流相关联的该多个分组中的第二分组,经由第一分组路线传送与该分组流相关联的该多个分组中的第三分组,以此类推。该流程在框404继续。
在框404,确定是否检测到与接收到的分组相关联的副序列标识符。例如,重排序单元116可确定接收到的分组是否包括副序列标识符。如上所述,在一些实现中,副序列标识符是由源混合设备102的混合适配层210添加到分组的并且可包括与该分组相关联的序列号、时间戳和/或其它合适的序列标识符。在一些实现中,重排序单元116可读取与接收到的分组相关联的一个或多个报头字段以确定接收到的分组是否包括副序列标识符。重排序单元116还可确定是否从源混合设备102接收到包括与对应的一个或多个分组相关联的一个或多个副序列标识符的列表的序列表分组(以上在图3中描述)。如果接收到序列表分组,则在框404,重排序单元116可确定是否能从该序列表分组中标识出与接收到的分组相关联的副序列标识符。如果检测到与接收到的分组相关联的副路由序列标识符,则流程在框408处继续。否则,该流程在框406继续。
在框406,如果未检测到副序列标识符,则检测由源混合设备的较高协议层插入的与该分组相关联的主序列标识符。如果重排序单元116确定接收到的分组不包括副序列标识符,则流程400从框404移至框406。在一些实现中,源混合设备102的(常规协议栈中的)较高协议层中的一个或多个协议层(网络层212、传输层214、应用216、218、220)可将主序列标识符插入被调度为要传送的分组中。例如,如果源混合设备102实现TCP,则TCP传输层212可以在被调度为要传送的分组中插入主序列号。重排序单元116可“窥探”接收到的分组的报头字段和/或可采用其它分组检视机制来确定与接收到的分组相关联的主序列标识符。在重排序单元116确定与接收到的分组相关联的主序列标识符之后,流程在框410处继续。
在框408,确定由源混合设备的混合适配层插入的与分组相关联的副序列标识符。如果重排序单元116确定接收到的分组包括副序列标识符,则流程400从框404移至框408。如上文在图3中描述的,源混合设备102的混合适配层210可取决于与被调度为要传送的分组相关联的分组流来在该分组中插入副序列标识符。在一个实现中,重排序单元116可读取接收到的分组的适当的报头字段以确定与接收到的分组相关联的副序列标识符。在另一个实现中,重排序单元116可使用先前接收到的序列表分组来确定与接收到的分组相关联的副序列标识符。在该实现中,重排序单元116可计算分组签名(例如,CRC值),从序列表分组中标识该分组签名,并读取与在序列表分组中所标识出的分组签名相对应的副序列标识符。在另一实现中,重排序单元116可暂时将接收到的分组存储在重排序缓冲器118中,等待从源混合设备102接收序列表分组,并响应于接收到序列表分组来确定与接收到的分组相关联的副序列标识符。在重排序单元116确定与接收到的分组相关联的副序列标识符之后,流程在框410处继续。
在框410,基于与分组相关联的序列标识符,确定在目的地混合设备处是否检测到脱序分组递送。在一些实现中,接收方重排序单元116可将接收到的分组分拣到各个分组流中(例如,基于与接收到的分组相关联的报头中的一个或多个字段,基于序列表分组中的信息等)。重排序单元116可使用分组归类技术和/或分组报头中的信息(例如,由源混合设备102插入)来标识属于特定分组流的分组。重排序单元116然后可确定与在框402接收到的分组属于同一分组流的一个或多个先前接收到的分组的序列标识符(例如,主序列标识符或副序列标识符)。在一些实现中,重排序单元116可跟踪(例如,在预定存储器位置)与关联于该分组流的最后一个接收到的分组相关联的序列标识符。在另一实现中,响应于确定与接收到的分组相关联的序列标识符,重排序单元116可检查重排序缓冲器118并且可确定与存储在重排序缓冲器118中的分组相关联的序列标识符。例如,重排序单元116可确定接收到的分组的序列号为50。重排序单元116可确定最后一个接收到的分组的序列号为45。因此,重排序单元116可确定接收到的分组被脱序或即未根据预定次序地递送到目的地混合设备112(“脱序分组递送”)。替换地,如果重排序单元116确定最后一个接收到的分组的序列号是49,则重排序单元116可确定没有检测到脱序分组递送。如果与接收到的分组相关联的序列标识符大于预期序列号(基于接收到的序列中的最后一个分组),则检测到脱序分组递送并且流程在图5中的框412处继续。否则,该流程在图5中的框422处继续。
在图5中的框412,确定接收到的分组在顺序上是否早于在目的地混合设备112处已经被提供以供进行处理的最后一个分组。如果重排序单元116确定检测到脱序分组递送,则流程400从图4中的框410移至图5中的框412。在框412,重排序单元116可确定与已被提供以供较高协议层处理的(与在框402接收到的分组属于同一分组流的)最后一个分组相关联的序列标识符。重排序单元116然后可确定接收到的分组的序列标识符是否小于已被提供以供处理的最后一个分组的序列标识符。例如,重排序单元116可确定接收到的分组的时间戳为16:20:00。重排序单元116还可确定与存储在重排序缓冲器118中的分组相关联的时间戳和/或已被提供以供处理的最后一个分组的时间戳的范围。如果已被提供以供处理的最后一个分组的时间戳是16:25:00(即,大于当前接收到的分组的时间戳),则重排序单元116然后可确定接收到的分组在顺序上早于已被提供以供在目的地混合设备112处进行处理的最后一个分组。因此,该流程在框414继续。然而,如果已被提供以供处理的最后一个分组的时间戳是16:19:00(即,小于当前接收到的分组的时间戳),则重排序单元116然后可确定接收到的分组在顺序上晚于已被提供以供处理的最后一个分组。因此,该流程在框416继续。
在框414,丢弃接收到的分组。如果重排序单元116基于序列标识符来确定接收到的分组在顺序上早于在目的地混合设备112处已被提供以供进行处理的最后一个分组,则流程400从框412移至框414。例如,重排序单元116可确定不要向较高协议层提供此接收到的分组并且可以在已经向目的地混合设备112提供在顺序上晚于此接收到的分组的分组以供处理的情况下丢弃该分组。作为另一示例,重排序单元116可以在该分组是在用于接收该分组的预定时间间隔逝去后接收到的情况下丢弃该分组。该流程在框418继续。
在框416,将接收到的分组存储在重排序缓冲器中,并且根据序列标识符来对接收到的分组进行重排序。如果重排序单元116确定接收到的分组在顺序上晚于已被提供以供处理的最后一个分组,则流程400从框412移至框416。重排序单元116可将接收到的分组存储在重排序缓冲器118中。在一些实现中,重排序缓冲器118的大小可至少部分地基于以下各项来动态(或静态)配置:往返行程延迟、在源混合设备102和目的地混合设备112所采用的通信协议支持多次重传尝试情况下的多个往返行程延迟、接收到序列中的最后一个分组与接收到脱序分组之间的最大可接受延迟、重传延迟、混合通信网络100中的预期延迟、以及其它此类因素等。例如,如果最大可接受往返行程延迟是100ms且每一个分组的最大长度是20ms,则重排序缓冲器118的大小(例如,可被存储在重排序缓冲器118中的分组数量)可被选择成使得在等待序列中的下一个分组到达目的地混合设备112的同时至少有4个脱序分组可被存储在重排序缓冲器中。
在一个实现中,重排序单元116可基于序列标识符来对重排序缓冲器118中的分组进行重排序,以使得与同一分组流相关联的分组按顺序(或近乎按顺序)被递送到较高协议层和应用。例如,重排序单元116可确定接收到的分组的序列号为50并且重排序缓冲器118包括具有序列号47、48、52和54的分组。相应地,重排序单元116可通过将具有序列号50的接收到的分组插入在具有序列标识符48和52的分组之间来对分组进行重排序。在另一实现中,重排序单元116可以按接收到分组的次序将这些分组存储在重排序缓冲器118中,并且可更新与重排序缓冲器118中的每一个条目相关联的列表或标志以指示应释放所存储的分组以供处理的次序。参考上述示例,在重排序缓冲器118包括具有序列号47、48、52和54的分组的情况下,重排序单元116可分别赋予标签“P1”、“P2”、“P3”和“P4”以指示应释放这些分组以供处理的次序。响应于接收到具有序列号50的分组,重排序单元116可将具有序列号50的该分组存储在具有序列号54的分组之后。重排序单元116可通过更新与存储在重排序缓冲器118中的分组相关联的标签来指示新分组次序。换言之,重排序单元116可以分别向具有序列号47、48、50、52和54的分组赋予标签“P1”、“P2”、“P3”、“P4”和新标签“P5”。如将在下文中在框420-422中描述的,重排序单元116可将分组从重排序缓冲器118释放到目的地混合设备112处的较高协议层和应用,以使得(在源混合设备102处建立的)原始分组次序得以维持。该流程在框418继续。
在框418,确定是否应提供一个或多个分组以供后续处理。例如,重排序单元116可确定是否应向目的地混合设备112的较高协议层提供来自重排序缓冲器118的分组以供后续处理。如上所述,在维护重排序缓冲器118时,重排序单元116可尝试按照与源混合设备102传送与一分组流相关联的分组相同的次序来释放(以供后续处理)这些分组。在一些实现中,重排序单元116可响应于检测到按正确次序的两个或更多分组来确定要向较高协议层提供重排序缓冲器118中的分组。在另一实现中,重排序单元116可响应于检测到接收到的分组按照已被提供给较高协议层的最后一个分组的顺序来直接将接收到的分组提供给较高协议层(而不存储在重排序缓冲器118中)。
在一些实现中,为了防止目的地混合设备112无限地等待为了接收到被放弃/丢弃的分组(或防止过度的分组递送延迟),重排序单元116可采用超时机制并且可以在预定的缓冲器时间间隔逝去后从重排序缓冲器118中释放分组。该预定的缓冲器时间间隔可至少部分地基于以下各项来确定:预期往返行程确认时间、重传延迟和/或用于递送与一分组流相关联的分组的各分组路线之间的递送等待时间的最大差异。例如,如果目的地混合设备112在预定的缓冲器时间间隔内未能接收到按顺序的分组,则重排序单元116可确定分组传输(或重传)失败、该分组将不会被递送,并且可以从重排序缓冲器118中释放具有比此失败分组更大的序列号的分组。在另一实现中,重排序单元116可以在重排序缓冲器118变满或超出缓冲器阈值水平时释放分组以供后续处理。缓冲器阈值水平可基于以下各项来选择:可以在目的地混合设备112处累积的最大数据量、用于递送与一分组流相关联的分组的各分组路线的递送等待时间、以及其它此类因素。如果确定应提供一个或多个分组以供较高协议层进行后续处理,则流程在框420处继续。否则,该流程结束。
在框420,标识要被释放以供目的地混合设备的较高协议层进行后续处理的一个或多个分组。该流程在框422继续。
在框422,按适当顺序提供一个或多个分组以供目的地混合设备的较高协议层进行处理。例如,重排序单元116可以按照适当顺序提供接收到的分组和/或来自重排序缓冲器118的一个或多个分组以供目的地混合设备112的较高协议层进行处理。在一些实现中,被释放到较高协议层的分组序列可以是按序的,但该序列在一个或多个丢失分组未被接收到(例如在预定的缓冲器时间间隔期间)或者已被丢弃的情况下可以不包括这些丢失分组。例如,如果在预定的缓冲器时间间隔期间或者在缓冲器达到其阈值容量之前没有接收到具有序列号5的分组,则可以按1、2、3、4、6、7等的次序向较高协议层提供来自重排序缓冲器118的分组。该流程从框422结束。
注意,尽管图4描述了重排序单元116确定(在框404)接收到的分组是否包括副序列标识符,但是诸实施例不受此限定。在如上所述的一些实施例中,源混合设备102可被配置成将副序列标识符插入分组中,而不管该分组是否包括主序列标识符。在该实施例中,目的地混合设备112可被配置成使用副序列标识符来对脱序分组进行检测和重排序,而不管该分组是否包括主序列标识符。在另一实施例中,目的地混合设备112可确定是要使用主序列标识符还是副序列标识符来对脱序分组进行检测和重排序。
应理解,图1-5是旨在帮助理解实施例的示例,而不应被用于限定实施例或限定权利要求的范围。诸实施例可执行附加操作、执行较少操作、以不同次序执行操作、并行地执行操作、以及以不同方式执行一些操作。尽管图5描述了目的地混合设备112响应于检测到脱序分组递送而对分组进行重排序,但各实施例不受此限定。在一些实施例中,取决于由源和目的地混合设备实现的通信协议、接收分组的应用等,在目的地混合设备112处可能不要求对较高协议层的按序分组递送。在一些实施例中,在确定是否在目的地混合设备112处检测到脱序分组递送(在图4的框410)之前,可以确定向目的地混合设备112的较高协议层按序地递送分组是否是必要或有用的。例如,混合适配层210的重排序单元116在确定了内建于较高协议层(例如,IPv4协议套集中的TCP)中的重排序机制足以处置脱序分组递送的情况下可以不执行以上在图4-5中描述的各项操作。作为另一示例,如在图4-5中描述的分组重排序机制可以在确定了较高协议层不包括用于对脱序分组进行重排序的功能性(或包括的功能性非常有限)的情况下执行。
在一些实现中,源混合设备102可被配置成在切换到第二分组路线(例如,分组路线126)之前等待对在第一分组路线(例如,分组路线124)上传送的分组的确认(例如,来自目的地混合设备112)。源混合设备102可以在第一分组路线124上重传分组直到接收到确认或者直到预定时间间隔逝去。源混合设备102可以直到在第一分组路线124上传送的分组已得到确认才经由第二分组路线126来传送分组。然而,在其他实现中,源混合设备102可以不等待来自目的地混合设备112的确认。源混合设备102可改为在经由第一分组路线124传送最后一个分组之后在不等待确认的情况下经由第二分组路线126来传送分组。例如,如果源混合设备102是每一个分组(或每隔一个分组)地在分组路线之间切换,则源混合设备102可以不等待来自目的地混合设备112的确认。替换地,在一些实现中,源混合设备102可经由第二分组路线126来传送第一分组路线124的未经确认的分组。
在一些实现中,源混合设备102可以在一个或多个替代分组路线(例如,分组路线126)上重复经由指定分组路线(例如,分组路线124)传送的分组。可通过将源混合设备101配置成传送一个或多个重复分组来减少与一分组路线相关联的递送特性(例如,吞吐量、等待时间、差错率、可靠性等)上的降级的影响。在一个示例中,路由单元110可通过沿着用于传送与一分组流相关联的各个分组的这两个或更多分组路线(例如,经由分组路线124和分组路线126两者)传送同一分组的副本来重复该分组,以提高该分组被成功地递送到目的地混合设备112的概率和/或减少分组递送等待时间。在一些实现中,路由单元110可确定要(在另一分组路线126上)重传先前经由分组路线之一124传送的预定数量的分组。在另一实现中,路由单元110可确定要重复沿着源混合设备102和目的地混合设备112之间的特定分组路线传送的分组。例如,路由单元110可以只重复经由分组路线124传送的分组。路由单元110可确定不要重复经由分组路线126和128传送的分组。在另一实现中,路由单元110可以在经由分组路线124传送的分组没有得到目的地混合设备112确认的情况下确定要在另一分组路线126上重传这些分组。例如,路由单元110可确定未在预定确认时间间隔内接收到对经由分组路线124传送的分组的确认。相应地,路由单元110可经由另一分组路线126将该分组重传到目的地混合设备112。
在目的地混合设备112处,重排序单元116可使用由源混合设备102的序列指示单元108(或较高协议层)插入在分组中的序列标识符来检测重复分组。例如,如果重复分组被赋予与原始分组相同的序列标识符,则接收到具有相同的序列标识符的多个分组可指示存在重复分组。在另一实现中,重排序单元116可基于分组签名来检测重复分组。例如,如果重排序单元116检测到具有相同的分组签名的两个分组,则这可指示这两个检测到的分组是彼此重复的。重排序单元116可维护与近期接收到的分组相关联的分组签名的记录,并且可使用接收到的分组签名的该记录来检测重复分组。重排序单元116然后可丢弃重复的分组。
尽管未在图1-5中描绘,但注意在一些实现中,源混合设备102可采用时延技术来维持目的地混合设备112处的适当的分组次序。参考图1的示例,路由单元110可以至少部分地基于与被调度为要传送的分组相关联的分组流、路线特性等来采用多个分组路线传送分组。在一些实现中,在沿着第一分组路线124传送最后一个分组后,发射机处理单元106可等待(并阻止分组传输)长达预定等待时间间隔以确保经由第一分组路线124传送的所有分组都在分组路线改变之前到达目的地混合设备112。预定等待时间间隔可以是经由第一分组路线124传送最后一个分组与经由下一个分组路线126传送第一个分组之间的持续时间,在该持续时间期间源混合设备102可以不向目的地混合设备112传送任何分组。例如,响应于确定在分组路线124和126上交替传输与一分组流相关联的分组,路由单元110可以在分组路线124上传输第一分组,等待预定时间间隔,在分组路线126上传送第二分组,等待预定时间间隔,在分组路线124上传送第三分组,以此类推。预定等待时间间隔可基于以下各项来动态(或静态)配置:通过混合通信网络100经由当前分组路线124来递送与特定流相关联的分组可能需要的估计时间、在其中可以从目的地混合设备112接收到较高协议层确认分组的最大时间间隔、当前分组路线延迟、与混合通信网络100相关联的等待时间、与被指派传送与一分组流相关联的分组的分组路线相关联的等待时间、接收到序列中的最后一个分组与接收到脱序分组之间的最大延迟、重传延迟、重排序缓冲器118的大小和/或其它此类因素。在一些实现中,如果源混合设备102和目的地混合设备112所采用的通信协议支持多次重传尝试,则预定等待时间间隔可以至少部分地基于多个往返行程延迟来确定。在一些实现中,目的地混合设备112可检测预定等待时间延迟并且可确定与该分组流相关联的分组路线的改变。在其它实现中,目的地混合设备112可能无法显式地检测预定等待时间延迟或分组路线改变。通过在用于传送与该分组流相关联的分组的分组路线的改变之间强制实施预定等待时间延迟,源混合设备102能够尽力确保在目的地混合设备112处以正确的次序接收到从源混合设备102传送的分组。此外,注意在一些实现中,源混合设备102可基于目的地混合设备112的处理能力来确定是否要使用上述时延机制。例如,如果目的地混合设备112未被配置成检测序列标识符和/或如果目的地设备110未被配置成对脱序分组进行重排序,则源混合设备102可确定要使用时延机制来使得能够在目的地混合设备112处按序地接收到分组。
在一些实施例中,时延机制和副序列标识符的传输可以是互斥操作。然而,在其他实施例中,除了传送与分组相关联的副序列标识符之外,源混合设备102还能够强制实施预定等待时间延迟(如上所述)。在其他实施例中,源混合设备102在分组包括主序列标识符的情况下能够强制实施预定等待时间延迟但可不实现副序列标识符。在其他实现中,源混合设备102能够实施预定等待时间延迟,并且即使在分组包括主序列标识符的情况下亦能实现副序列标识符。
虽然图5描述了用于在丢失的分组在预定的缓冲器时间间隔逝去后被接收到的情况下和/或在顺序上晚于接收到的丢失分组的分组已经被释放到较高协议层的情况下丢弃丢失分组的操作,但在一些实现中,重排序单元116可以将所有接收到的分组提供给较高协议层,而不管接收到的分组在顺序上早/晚于已经被提供给较高协议层的分组。在该实现中,重排序单元116可以只丢弃已经被提供给较高协议层的重复分组。然而,在其他实现中,通过观察确认分组和/或通过经由到达定时(例如,过度延迟的帧可被假定为重传)、到达接口、指示分组重传的报头或其它分组报头字段来推断出重传,重排序单元116能够显式地检测重传的分组。重排序单元116可以只提供重传的分组以供后续处理,而不管顺序上较晚的分组是否已经被提供给较高协议层。最后,注意序列指示单元108、路由单元110、重排序单元116和重排序缓冲器118可以与常规协议栈(例如,传输层214等)中实现的任何常规的较高层重排序机制分开并且作为对这些上层重排序机制的补充。
各实施例可采取全硬件实施例、全软件实施例(包括固件、常驻软件、微代码等)、或组合了软件与硬件方面的实施例的形式,其在本文可全部被统称为“电路”、“模块”或“系统”。此外,本发明主题内容的实施例可采取实施在任何有形表达介质中的计算机程序产品的形式,该有形表达介质具有实施在该介质中的计算机可使用程序代码。所描述的实施例可作为可包括其上存储有指令的机器可读介质的计算机程序产品、或软件来提供,这些指令可用来编程计算机系统(或其他(诸)电子设备)以根据实施例来执行过程——无论本文中是否有所描述,因为本文中未枚举每种可构想到的变体。机器可读介质包括用于以机器(例如,计算机)可读的形式(例如,软件、处理应用)来存储或传送信息的任何机构。机器可读介质可以是机器可读存储介质、或机器可读信号介质。例如,机器可读存储介质可包括但不限于磁存储介质(例如,软盘);光存储介质(例如,CD-ROM);磁光存储介质;只读存储器(ROM);随机存取存储器(RAM);可擦除可编程存储器(例如,EPROM和EEPROM);闪存;或适于存储电子指令的其它类型的有形介质。机器可读信号介质可包括其中实施有计算机可读程序代码的所传播数据信号,例如电、光、声、或其他形式的所传播信号(例如,载波、红外信号、数字信号等)。实施在机器可读信号介质上的程序代码可以使用任何合适的介质来传送,包括但不限于有线、无线、光纤缆线、RF或其他通信介质。
用于执行诸实施例的操作的计算机程序代码可以用一种或更多种编程语言的任何组合来编写,包括面向对象编程语言(诸如Java、Smalltalk、C++或类似语言)、以及常规过程编程语言(诸如“C编程语言或类似编程语言”)。该程序代码可完全地在用户的计算机上、部分地在用户的计算机上、作为自立软件包、部分地在用户的计算机上并且部分地在远程计算机上、或者完全地在远程计算机或服务器上执行。在后一情景中,远程计算机可通过任何类型的网络(包括局域网(LAN)、个域网(PAN)、或广域网(WAN))连接到用户的计算机,或者该连接可(例如,使用因特网服务供应商来通过因特网)对外部计算机进行。
图6是包括用于在混合通信网络中基于与分组相关联的序列标识符来进行分组重排序的机制的电子设备600的一个实施例的框图。在一些实现中,电子设备600可以是以下各项之一:膝上型计算机、平板计算机、上网本、移动电话、智能设施、电力线通信设备、游戏控制台、网络桥接设备、或包括被配置成跨多个通信网段进行通信的混合通信单元的其他电子系统。电子设备600包括处理器单元602(可能包括多个处理器、多个内核、多个节点、和/或实现多线程处理等等)。电子设备600包括存储器单元606。存储器单元606可以是系统存储器(例如,高速缓存、SRAM、DRAM、零电容器RAM、双晶体管RAM、eDRAM、EDO RAM、DDR RAM、EEPROM、NRAM、RRAM、SONOS、PRAM等中的一者或多者)或者上面已经描述的机器可读介质的可能实现中的任何一个或多个。电子设备600还包括总线610(例如,PCI、ISA、PCI-Express、 NuBus、AHB、AXI等)、以及网络接口604,该网络接口604包括无线网络接口(例如,WLAN接口、蓝牙接口、WiMAX接口、接口、无线USB接口等)和有线网络接口(例如,电力线通信接口、以太网接口等)中的至少一者。在一些实现中,电子设备600可包括多个网络接口——每一个网络接口将电子设备600耦合至不同的通信网段。例如,电子设备600可包括电力线通信接口、以太网接口、和WLAN接口,它们分别将电子设备600与电力线通信网段、以太网和无线局域网相耦合。
电子设备600还包括通信单元608。通信单元608包括发射机单元612和接收机单元618。发射机单元612包括序列指示单元614和路由单元616。接收机单元618包括重排序单元620和重排序缓冲器622。在某些实例中,电子设备600可用作向目的地设备传送一个或多个分组的源设备。在这些实例中,对于被调度为要沿两个或更多分组路线传送的关联于一分组流的多个分组,序列指示单元614可确定并插入(如果有必要的话)副序列标识符。路由单元616可标识应被用于传送分组的这两个或更多分组路线并且相应地能够传送这些分组,如以上在图1-3中描述的。在其它实例中,电子设备600可用作经由两个或更多分组路线从源设备接收关联于一分组流的多个分组的目的地设备。在这些实例中,重排序单元620可实现用于以下操作的功能性:基于序列标识符来检测脱序分组递送,对接收到的分组进行重排序(例如,使用重排序缓冲器622),以及提供分组以供后续处理,如以上在图1、4和5中描述的。这些功能性中的任一个都可部分地(或完全地)在硬件中和/或在处理器单元602上实现。例如,该功能性可用专用集成电路来实现、在处理器单元602中所实现的逻辑中实现、在外围设备或卡上的协处理器中实现等。此外,诸实现可包括更少的组件或包括图6中未解说的附加组件(例如,视频卡、音频卡、附加网络接口、外围设备等)。处理器单元602、存储器单元606以及网络接口604被耦合至总线610。尽管被解说为耦合至总线610,但是存储器单元606也可耦合至处理器单元602。
尽管各实施例是参考各种实现和利用来描述的,但是将理解,这些实施例是解说性的且本发明主题内容的范围并不限于这些实施例。一般而言,如本文中所描述的用于多递送路线分组排序的技术可以用符合任何一个或多个硬件系统的设施来实现。许多变体、修改、添加和改进都是可能的。
可为本文描述为单个实例的组件、操作、或结构提供复数个实例。最后,各种组件、操作、以及数据存储之间的边界在某种程度上是任意性的,并且在具体解说性配置的上下文中解说了特定操作。其他的功能性分配是已预见的并且可落在本发明主题内容的范围内。一般而言,在示例性配置中呈现为分开的组件的结构和功能性可被实现为组合式结构或组件。类似地,被呈现为单个组件的结构和功能性可被实现为分开的组件。这些以及其他变体、修改、添加及改进可落在本发明主题内容的范围内。
Claims (25)
1.一种用于多递送路线分组排序的方法,包括:
在第一网络设备处,确定与经由多个分组路线从第二网络设备接收到的多个分组相关联的主序列标识符和副序列标识符,其中经由第一分组路线接收到所述多个分组的第一子集并且经由第二分组路线接收到所述多个分组的第二子集,其中在所述多个分组被提供至第二网络设备的混合适配层之前由第二网络设备的较高协议层插入所述主序列标识符,并且所述副序列标识符与所述主序列标识符相异且由所述混合适配层插入,其中传输层和网络层被统称为较高协议层,并且所述混合适配层是所述较高协议层与多个网络接口之间的中间协议层;
至少部分地基于接收自第二网络设备的多个分组中的第一分组的副序列标识符和接收自第二网络设备的多个分组中的第二分组的副序列标识符来检测第一分组相对于第二分组的脱序递送;以及
响应于所述检测到第一分组相对于第二分组的脱序递送,至少部分地基于第一分组的副序列标识符和第二分组的副序列标识符来对第一分组和第二分组进行重排序。
2.如权利要求1所述的方法,其特征在于,还包括:
在所述第一网络设备处从所述第二网络设备接收序列表分组,所述序列表分组指示所述第二网络设备将向所述第一网络设备传送所述多个分组的次序。
3.如权利要求1所述的方法,其特征在于,所述确定与所述多个分组相关联的主序列标识符和副序列标识符还包括:
从所述第一分组的报头字段中读取所述第一分组的所述副序列标识符。
4.如权利要求1所述的方法,其特征在于,所述确定与所述多个分组相关联的主序列标识符和副序列标识符还包括:
至少部分地基于所述第一分组的报头字段和所述第一分组的净荷中的至少一者来确定所述第一分组的分组签名;
将所述第一分组的分组签名与序列表分组中的多个分组签名进行比较,其中所述序列表分组包括所述多个分组中的每一个分组的分组签名以及对应的副序列标识符,其中所述序列表分组是从所述第二网络设备向所述第一网络设备提供的;
确定所述第一分组的分组签名匹配于第一分组签名;以及
从所述序列表分组中选择对应于第一分组签名的第一副序列标识符为所述第一分组的副序列标识符。
5.如权利要求1所述的方法,其特征在于,所述副序列标识符是在所述第一分组的虚拟局域网VLAN标签的至少一个位中指示的,其中所述VLAN标签中的指示所述副序列标识符的所述至少一个位与预定编码相关联。
6.如权利要求1所述的方法,其特征在于,所述检测第一分组相对于第二分组的脱序递送还包括:
确定所述第一分组的副序列标识符是否按照先前接收到的分组的副序列标识符的顺序;
响应于确定所述第一分组的副序列标识符按照先前接收到的分组的副序列标识符的顺序,确定所述第一分组对于所述先前接收到的分组是按序的;以及
响应于确定所述第一分组的副序列标识符未按照所述先前接收到的分组的副序列标识符的顺序,确定所述第一分组对于所述先前接收到的分组是脱序的。
7.如权利要求1所述的方法,其特征在于:
所述检测第一分组相对于第二分组的脱序递送还包括将所述第一分组存储在重排序缓冲器中;以及
所述对第一和第二分组的进行重排序还包括将所述第二分组与先前存储在所述重排序缓冲器中的第一分组一起进行重排序。
8.如权利要求1所述的方法,其特征在于,所述检测第一分组相对于第二分组的脱序递送还包括:
基于所述第一分组的副序列标识符,确定所述第一分组是否在顺序上早于所述多个分组中的已被提供给所述第一网络设备的较高协议层以供处理的最后一个分组;
响应于确定所述第一分组在顺序上早于已被提供给较高协议层以供处理的最后一个分组,在所述第一网络设备处丢弃所述第一分组;以及
响应于确定所述第一分组在顺序上晚于已被提供给较高协议层以供处理的最后一个分组,基于所述第一分组的副序列标识符来对所述第一分组进行重排序。
9.如权利要求1所述的方法,其特征在于,所述第一分组的副序列标识符包括第一分组的序列号和第一分组的时间戳中的至少一者。
10.如权利要求1所述的方法,其特征在于,响应于对所述第一分组和所述第二分组进行重排序,所述方法还包括:
向所述第一网络设备的较高协议层提供所述第一分组和所述第二分组以供处理。
11.如权利要求1所述的方法,其特征在于,所述检测第一分组相对于所述第二分组的脱序递送包括:
在所述第一网络设备处确定第一分组和第三分组是否具有相同的副序列标识符;
响应于确定第一分组和第三分组具有所述相同的副序列标识符,
提供所述第一分组以便对所述第一分组和所述第二分组进行所述重排序;以及
丢弃所述第三分组。
12.如权利要求1所述的方法,其特征在于:
所述第一分组的所述主序列标识符是由所述第二网络设备的较高协议层插入的,
所述第一分组的所述副序列标识符是由所述第二网络设备的混合适配层插入的,以及
所述混合适配层是所述较高协议层与所述第二网络设备的多个网络接口之间的中间协议层。
13.一种用于多递送路线分组排序的方法,包括:
在第一网络设备处,确定要经由所述第一网络设备和第二网络设备之间的多个分组路线将多个分组传送到所述第二网络设备;
在所述多个分组被提供至第一网络设备的混合适配层之前由第一网络设备的较高协议层将主序列标识符插入所述多个分组中的每一分组中,其中传输层和网络层被统称为较高协议层,并且所述混合适配层是所述较高协议层与多个网络接口之间的中间协议层;
将副序列标识符插入所述多个分组中的每一个分组,其中所述副序列标识符是由所述第一网络设备的混合适配层插入的,其中所述副序列标识符与所述主序列标识符相异;以及
经由所述多个分组路线将所述多个分组传送到所述第二网络设备,其中经由第一分组路线来传送包括副序列标识符的所述多个分组的第一子集并经由第二分组路线来传送包括副序列标识符的所述多个分组的第二子集。
14.如权利要求13所述的方法,其特征在于,所述插入副序列标识符包括:
作为对由所述第一网络设备的较高协议层插入的主序列标识符的补充,将副序列标识符插入所述多个分组中的每个分组中。
15.如权利要求13所述的方法,其特征在于,所述插入副序列标识符还包括:
将所述副序列标识符插入第一分组的报头字段中;以及
将包括所述副序列标识符的所述第一分组传送到所述第二网络设备。
16.如权利要求13所述的方法,其特征在于,所述插入副序列标识符还包括:
对于所述多个分组中的每一个分组,基于所述分组的报头字段和所述分组的净荷中的至少一者来确定唯一地标识所述分组的分组签名;以及
生成包括所述多个分组中的每一个分组的分组签名以及对应的副序列标识符的序列表分组。
17.如权利要求16所述的方法,其特征在于,还包括:
向所述第二网络设备传送所述序列表分组以指示将从所述第一网络设备向所述第二网络设备传送所述多个分组的次序;以及
根据在所述序列表分组中所指示的分组次序来将所述多个分组传送到所述第二网络设备。
18.如权利要求13所述的方法,其特征在于,还包括:
在所述第一网络设备处,确定要经由第一分组路线而不是第二分组路线来传送第一分组;
经由所述第二分组路线来传送第二分组,其中所述第二分组是将经由所述第二分组路线来传送的最后一个分组;
响应于所述经由所述第二分组路线来传送所述第二分组,在预定时间间隔内阻止经由所述第二分组路线和所述第一分组路线来传送所述多个分组中的后续分组;以及
在所述预定时间间隔逝去后经由所述第一分组路线传送所述第一分组。
19.一种第一通信网络设备,包括:
网络接口;以及
与所述网络接口耦合的重排序单元,所述重排序单元能操作用于:
确定与经由所述第一通信网络设备和第二通信网络设备之间的多个分组路线从所述第二通信网络设备接收到的多个分组相关联的主序列标识符和副序列标识符,其中经由第一分组路线接收到所述多个分组的第一子集并且经由第二分组路线接收到所述多个分组的第二子集,其中在所述多个分组被提供至第二通信网络设备的混合适配层之前由第二通信网络设备的较高协议层插入所述主序列标识符,并且所述副序列标识符与所述主序列标识符相异且由所述混合适配层插入,其中传输层和网络层被统称为较高协议层,并且所述混合适配层是所述较高协议层与多个网络接口之间的中间协议层;
至少部分地基于接收自第二通信网络设备的所述多个分组中的第一分组的副序列标识符和接收自第二通信网络设备的所述多个分组中的第二分组的副序列标识符来检测所述第一分组相对于所述第二分组的脱序递送;以及
响应于所述重排序单元检测到所述第一分组相对于所述第二分组的脱序递送,至少部分地基于所述第一分组的副序列标识符和所述第二分组的副序列标识符来对所述第一分组和所述第二分组进行重排序。
20.如权利要求19所述的第一通信网络设备,其特征在于,所述重排序单元进一步能操作用于:
从所述第二通信网络设备接收序列表分组,所述序列表分组指示所述第二通信网络设备将向所述第一通信网络设备传送所述多个分组的次序。
21.如权利要求19所述的第一通信网络设备,其特征在于,所述重排序单元能操作用于确定与所述多个分组相关联的主序列标识符和副序列标识符还包括所述重排序单元能操作用于:
从所述第一分组的报头字段中读取所述第一分组的所述副序列标识符。
22.如权利要求19所述的第一通信网络设备,其特征在于,所述重排序单元能操作用于确定与所述多个分组相关联的主序列标识符和副序列标识符还包括所述重排序单元能操作用于:
至少部分地基于所述第一分组的报头字段和所述第一分组的净荷中的至少一者来确定所述第一分组的分组签名;
将所述第一分组的分组签名与序列表分组中的多个分组签名进行比较,其中所述序列表分组包括所述多个分组中的每一个分组的分组签名以及对应的副序列标识符,其中所述序列表分组是从所述第二通信网络设备向所述第一通信网络设备提供的;
确定所述第一分组的分组签名匹配于第一分组签名;以及
从所述序列表分组中选择对应于所述第一分组签名的第一副序列标识符标识为所述第一分组的副序列标识符。
23.如权利要求19所述的第一通信网络设备,其特征在于,所述重排序单元能操作用于检测第一分组相对于第二分组的脱序递送还包括所述重排序单元能操作用于:
确定第一分组的副序列标识符是否按照先前接收到的分组的副序列标识符的顺序;
响应于所述重排序单元确定第一分组的副序列标识符按照先前接收到的分组的副序列标识符的顺序,确定第一分组对于所述先前接收到的分组是按序的;以及
响应于所述重排序单元确定第一分组的副序列标识符未按照先前接收到的分组的副序列标识符的顺序,确定第一分组对于所述先前接收到的分组是脱序的。
24.如权利要求19所述的第一通信网络设备,其特征在于:
所述重排序单元能操作用于检测第一分组相对于第二分组的脱序递送还包括所述重排序单元能操作用于将第一分组存储在重排序缓冲器中;以及
所述重排序单元能操作用于对第一分组和第二分组进行重排序还包括所述重排序单元能操作用于将第二分组与先前存储在所述重排序缓冲器中的第一分组一起进行重排序。
25.如权利要求19所述的第一通信网络设备,其特征在于,所述重排序单元能操作用于检测第一分组相对于第二分组的脱序递送还包括所述重排序单元能操作用于:
基于第一分组的副序列标识符,确定第一分组是否在顺序上早于所述多个分组中的已被提供给所述第一通信网络设备的较高协议层以供处理的最后一个分组;
响应于所述重排序单元确定第一分组在顺序上早于已被提供给较高协议层以供处理的最后一个分组,在所述通信网络设备处丢弃第一分组;以及
响应于所述重排序单元确定第一分组在顺序上晚于已被提供给较高协议层以供处理的最后一个分组,至少部分地基于第一分组的副序列标识符来对第一分组进行重排序。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/288,319 US8824477B2 (en) | 2011-11-03 | 2011-11-03 | Multiple delivery route packet ordering |
US13/288,319 | 2011-11-03 | ||
PCT/US2012/063359 WO2013067377A2 (en) | 2011-11-03 | 2012-11-02 | Multiple delivery route packet ordering |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103918233A CN103918233A (zh) | 2014-07-09 |
CN103918233B true CN103918233B (zh) | 2016-08-24 |
Family
ID=47190184
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201280054127.0A Active CN103918233B (zh) | 2011-11-03 | 2012-11-02 | 多递送路线分组排序 |
Country Status (6)
Country | Link |
---|---|
US (1) | US8824477B2 (zh) |
EP (1) | EP2774334B1 (zh) |
JP (1) | JP5827413B2 (zh) |
KR (1) | KR101492510B1 (zh) |
CN (1) | CN103918233B (zh) |
WO (1) | WO2013067377A2 (zh) |
Families Citing this family (35)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8694618B2 (en) * | 2011-04-13 | 2014-04-08 | Microsoft Corporation | Maximizing data transfer through multiple network devices |
US8627412B2 (en) | 2011-04-14 | 2014-01-07 | Microsoft Corporation | Transparent database connection reconnect |
US8824477B2 (en) | 2011-11-03 | 2014-09-02 | Qualcomm Incorporated | Multiple delivery route packet ordering |
US9059932B2 (en) | 2011-11-03 | 2015-06-16 | Qualcomm Incorporated | Packet ordering based on delivery route changes in communication networks |
US20130311668A1 (en) * | 2012-05-15 | 2013-11-21 | Shahid Akhtar | Methods And Systems For Providing Fairness And Stability To Video Streams |
US9083649B2 (en) * | 2012-07-02 | 2015-07-14 | Cox Communications, Inc. | Systems and methods for managing network bandwidth via content buffering |
US9160650B2 (en) * | 2013-06-17 | 2015-10-13 | Futurewei Technologies, Inc. | Enhanced flow entry table cache replacement in a software-defined networking switch |
US20150063190A1 (en) * | 2013-08-28 | 2015-03-05 | Qualcomm Incorporated | Methods and apparatus for multiple user uplink |
US10516614B2 (en) | 2013-08-28 | 2019-12-24 | Qualcomm Incorporated | Methods and apparatus for multiple user uplink |
US9363209B1 (en) * | 2013-09-06 | 2016-06-07 | Cisco Technology, Inc. | Apparatus, system, and method for resequencing packets |
JP2015207996A (ja) * | 2014-04-07 | 2015-11-19 | パナソニックIpマネジメント株式会社 | 通信制御方法および通信制御装置 |
US9674303B1 (en) * | 2014-11-19 | 2017-06-06 | Qlogic, Corporation | Methods and systems for efficient data transmission in a data center by reducing transport layer processing |
US20170272376A1 (en) * | 2014-11-27 | 2017-09-21 | Philips Lighting Holding B.V. | Packet order identification with reduced overhead in packetized data transmission |
US10630585B2 (en) | 2015-04-16 | 2020-04-21 | Arista Networks, Inc. | Method and system for withdrawing programmed routes in network devices |
CN106533503B (zh) * | 2015-09-10 | 2019-05-31 | 深圳市中兴微电子技术有限公司 | 一种电力线网络通信的方法及装置 |
US10003466B1 (en) * | 2015-09-15 | 2018-06-19 | Amazon Technologies, Inc. | Network traffic with credential signatures |
US9985904B2 (en) * | 2015-12-29 | 2018-05-29 | Amazon Technolgies, Inc. | Reliable, out-of-order transmission of packets |
US20170195218A1 (en) * | 2015-12-30 | 2017-07-06 | Qualcomm Incorporated | Routing in a hybrid network |
DE102016002944C5 (de) * | 2016-03-11 | 2022-08-04 | Audi Ag | Steuervorrichtung und Verfahren zum Koppeln einer Antennenanordnung eines Kraftfahrzeugs mit zumindest einer Fahrzeugkomponente |
US10462744B2 (en) * | 2017-02-14 | 2019-10-29 | Intel IP Corporation | Methods and systems for reuse of a wireless medium during wake-up of a wireless device |
US10992603B2 (en) * | 2017-09-27 | 2021-04-27 | Apple Inc. | Block acknowledgement with out-of-order packets |
PL3531637T3 (pl) * | 2018-02-21 | 2020-07-13 | Deutsche Telekom Ag | Techniki wydajnego porządkowania pakietów danych w scenariuszach wielotorowych |
CN110858930B (zh) * | 2018-08-23 | 2022-03-18 | 慧与发展有限责任合伙企业 | 数据帧传输 |
US10531436B1 (en) * | 2018-09-12 | 2020-01-07 | Capital One Services, Llc | Multiple network connections to increase data throughput of mobile device |
EP3657758B1 (de) * | 2018-11-20 | 2021-05-26 | Siemens Aktiengesellschaft | Verfahren zur funktional sicheren verbindungsidentifizierung |
CN110099403B (zh) * | 2019-05-17 | 2022-07-19 | 腾讯科技(深圳)有限公司 | 一种数据传输方法、装置、设备及存储介质 |
CN112448794A (zh) * | 2019-08-29 | 2021-03-05 | 华为技术有限公司 | 一种帧处理方法和装置 |
CN112511449B (zh) * | 2019-09-16 | 2022-12-30 | 华为技术有限公司 | 一种报文流乱序检测方法、报文处理方法及装置 |
US11777846B2 (en) * | 2020-05-06 | 2023-10-03 | Nokia Solutions And Networks Oy | Ultra reliable segment routing |
US11392527B2 (en) | 2020-08-31 | 2022-07-19 | Micron Technology, Inc. | Ordered delivery of data packets based on type of path information in each packet |
US11658922B2 (en) * | 2020-08-31 | 2023-05-23 | Micron Technology, Inc. | Optional path ordering in packet-based network |
US11477138B2 (en) * | 2020-12-23 | 2022-10-18 | Nokia Solutions And Networks Oy | Packet reordering in packet switched networks |
US11575612B2 (en) | 2021-06-07 | 2023-02-07 | Cisco Technology, Inc. | Reducing packet misorderings in wireless networks |
JP2023031246A (ja) * | 2021-08-23 | 2023-03-08 | メラノックス テクノロジーズ、リミテッド | 冗長データ・パケットを生成及び排除する通信装置 |
CN116074258A (zh) * | 2021-11-04 | 2023-05-05 | 中兴通讯股份有限公司 | 用户报文的转发方法、装置、电子设备和存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101014001A (zh) * | 2006-11-13 | 2007-08-08 | 陈哲 | Rtp报文修补装置、rtp报文排序方法和填补方法 |
CN101068170A (zh) * | 2007-06-05 | 2007-11-07 | 华为技术有限公司 | 一种报文接收异常的检测方法、系统及其装置 |
CN101933298A (zh) * | 2008-02-01 | 2010-12-29 | 高通股份有限公司 | 无线通信系统中通过多条链路进行的分组传输 |
Family Cites Families (51)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2044718C (en) | 1990-06-18 | 1998-07-28 | Katsumi Omuro | Rerouting and change-back systems for asynchronous transfer mode network |
EP0562215A1 (en) | 1992-03-27 | 1993-09-29 | International Business Machines Corporation | Order preserving transmission of data streams |
US5946309A (en) * | 1996-08-21 | 1999-08-31 | Telefonaktiebolaget Lm Ericsson | Hybrid ATM adaptation layer |
US5864535A (en) | 1996-09-18 | 1999-01-26 | International Business Machines Corporation | Network server having dynamic load balancing of messages in both inbound and outbound directions |
US6574226B1 (en) * | 1996-12-26 | 2003-06-03 | Ntt Mobile Communications Network, Inc. | Data transmitting method |
US6130896A (en) | 1997-10-20 | 2000-10-10 | Intel Corporation | Wireless LAN segments with point coordination |
US6245684B1 (en) * | 1998-03-13 | 2001-06-12 | Applied Materials, Inc. | Method of obtaining a rounded top trench corner for semiconductor trench etch applications |
US6272551B1 (en) | 1998-04-08 | 2001-08-07 | Intel Corporation | Network adapter for transmitting network packets between a host device and a power line network |
US6970419B1 (en) | 1998-08-07 | 2005-11-29 | Nortel Networks Limited | Method and apparatus for preserving frame ordering across aggregated links between source and destination nodes |
JP4373012B2 (ja) | 1998-10-30 | 2009-11-25 | ブリティッシュ・テレコミュニケーションズ・パブリック・リミテッド・カンパニー | データ伝送 |
EP1679817B1 (en) | 2000-05-17 | 2008-02-27 | Matsushita Electric Industrial Co., Ltd. | Hybrid ARQ system with data and control channel for packet data transmission |
US7050392B2 (en) | 2001-03-30 | 2006-05-23 | Brocade Communications Systems, Inc. | In-order delivery of frames during topology change |
US6947379B1 (en) * | 2001-04-03 | 2005-09-20 | Cisco Technology, Inc. | Packet routing to reduce susceptibility to disturbances |
US6947736B2 (en) | 2001-11-20 | 2005-09-20 | Texas Instruments Incorporated | Universal broadband home network for scalable IEEE 802.11 based wireless and wireline networking |
US7113763B2 (en) | 2002-06-03 | 2006-09-26 | Nokia Corporation | Bluetooth access point and remote bluetooth modules for powerline based networking |
JP3807614B2 (ja) * | 2002-08-12 | 2006-08-09 | 株式会社Kddi研究所 | マルチリンク通信システムにおけるパケットの順序制御方法 |
US7415028B1 (en) | 2003-02-11 | 2008-08-19 | Network Equipment Technologies, Inc. | Method and system for optimizing routing table changes due to ARP cache invalidation in routers with split plane architecture |
US7159034B1 (en) | 2003-03-03 | 2007-01-02 | Novell, Inc. | System broadcasting ARP request from a server using a different IP address to balance incoming traffic load from clients via different network interface cards |
KR100568229B1 (ko) | 2003-07-10 | 2006-04-07 | 삼성전자주식회사 | 애드혹 네트워크상에서 동적으로 arp 캐시 테이블을갱신하는 방법 및 시스템 |
WO2005032158A2 (en) | 2003-09-23 | 2005-04-07 | Arkados, Inc. | Integrated universal network adapter |
US7382733B2 (en) * | 2004-02-12 | 2008-06-03 | International Business Machines Corporation | Method for handling reordered data packets |
JP3836110B2 (ja) | 2004-02-19 | 2006-10-18 | 松下電器産業株式会社 | 無線通信システム及びパケットルーティング方法 |
US7269403B1 (en) | 2004-06-03 | 2007-09-11 | Miao George J | Dual-mode wireless and wired power line communications |
US7391317B2 (en) | 2004-09-08 | 2008-06-24 | Satius, Inc. | Apparatus and method for transmitting digital data over various communication media |
US7262695B2 (en) | 2004-12-15 | 2007-08-28 | At&T Intellectual Property, Inc. | Network interface device |
US8755407B2 (en) | 2005-02-18 | 2014-06-17 | Qualcomm Incorporated | Radio link protocols for enhancing efficiency of multi-link communication systems |
US7349325B2 (en) | 2005-05-07 | 2008-03-25 | Motorola, Inc. | Broadband over low voltage power lines communications system and method |
US7899057B2 (en) | 2006-04-28 | 2011-03-01 | Jds Uniphase Corporation | Systems for ordering network packets |
KR100651737B1 (ko) | 2005-06-17 | 2006-12-01 | 한국전자통신연구원 | Plc 망과 무선망을 연동하는 액세스 포인터 및 그 방법 |
US7835743B2 (en) | 2005-08-03 | 2010-11-16 | Toshiba America Research, Inc. | Seamless network interface selection, handoff and management in multi-IP network interface mobile devices |
US8213895B2 (en) | 2005-10-03 | 2012-07-03 | Broadcom Europe Limited | Multi-wideband communications over multiple mediums within a network |
US20070076666A1 (en) | 2005-10-03 | 2007-04-05 | Riveiro Juan C | Multi-Wideband Communications over Power Lines |
EP1770870B1 (en) | 2005-10-03 | 2019-04-03 | Avago Technologies International Sales Pte. Limited | Powerline communication device and method |
US8406239B2 (en) | 2005-10-03 | 2013-03-26 | Broadcom Corporation | Multi-wideband communications over multiple mediums |
US20070130598A1 (en) | 2005-12-01 | 2007-06-07 | Electronics And Telecommunications Research Institute | Digital satellite broadcasting set-top box, and home network control system employing the same |
KR100809261B1 (ko) | 2006-09-29 | 2008-03-03 | 한국전자통신연구원 | QoS를 지원하는 고속 전력선 네트워크와 이더넷 간의브리지 시스템 |
KR100823737B1 (ko) | 2006-09-29 | 2008-04-21 | 한국전자통신연구원 | 서로 다른 QoS를 제공하는 네트워크들을 위한 브리지장치 |
JP4963226B2 (ja) * | 2006-12-15 | 2012-06-27 | 富士通株式会社 | 無線通信システムにおける復旧方法、および無線ネットワーク制御装置 |
US20080159288A1 (en) | 2006-12-29 | 2008-07-03 | Lucent Technologies Inc. | TRAFFIC ENGINEERING AND FAST PROTECTION USING IPv6 CAPABILITIES |
JP2008211682A (ja) | 2007-02-27 | 2008-09-11 | Fujitsu Ltd | 受信プログラム、送信プログラム、送受信システム、および送受信方法 |
US8358669B2 (en) * | 2007-05-01 | 2013-01-22 | Qualcomm Incorporated | Ciphering sequence number for an adjacent layer protocol in data packet communications |
JP4591789B2 (ja) * | 2007-12-13 | 2010-12-01 | Necエンジニアリング株式会社 | パケット転送方法およびパケット転送装置 |
KR20090062664A (ko) | 2007-12-13 | 2009-06-17 | 한국전자통신연구원 | 선박 내부 네트워크에서의 통신 시스템 및 방법 |
US7769002B2 (en) | 2008-02-15 | 2010-08-03 | Intel Corporation | Constrained dynamic path selection among multiple communication interfaces |
JP2009239444A (ja) * | 2008-03-26 | 2009-10-15 | Mitsubishi Electric Corp | パケット順序制御方法、受信装置、送信装置および通信システム |
WO2010075409A1 (en) * | 2008-12-22 | 2010-07-01 | LiveTimeNet, Inc. | A system and method for recovery of packets in overlay networks |
CN102652445B (zh) * | 2009-12-09 | 2016-02-03 | 皇家飞利浦电子股份有限公司 | 基于代理冗余的无线通信方法 |
US8824477B2 (en) | 2011-11-03 | 2014-09-02 | Qualcomm Incorporated | Multiple delivery route packet ordering |
US9059932B2 (en) | 2011-11-03 | 2015-06-16 | Qualcomm Incorporated | Packet ordering based on delivery route changes in communication networks |
US9608899B2 (en) * | 2011-11-21 | 2017-03-28 | Qualcomm Incorporated | Packet-based aggregation of data streams across disparate networking interfaces |
US9065749B2 (en) | 2011-11-21 | 2015-06-23 | Qualcomm Incorporated | Hybrid networking path selection and load balancing |
-
2011
- 2011-11-03 US US13/288,319 patent/US8824477B2/en active Active
-
2012
- 2012-11-02 WO PCT/US2012/063359 patent/WO2013067377A2/en active Application Filing
- 2012-11-02 EP EP12787614.2A patent/EP2774334B1/en active Active
- 2012-11-02 CN CN201280054127.0A patent/CN103918233B/zh active Active
- 2012-11-02 JP JP2014540142A patent/JP5827413B2/ja active Active
- 2012-11-02 KR KR1020147012078A patent/KR101492510B1/ko active IP Right Grant
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101014001A (zh) * | 2006-11-13 | 2007-08-08 | 陈哲 | Rtp报文修补装置、rtp报文排序方法和填补方法 |
CN101068170A (zh) * | 2007-06-05 | 2007-11-07 | 华为技术有限公司 | 一种报文接收异常的检测方法、系统及其装置 |
CN101933298A (zh) * | 2008-02-01 | 2010-12-29 | 高通股份有限公司 | 无线通信系统中通过多条链路进行的分组传输 |
Also Published As
Publication number | Publication date |
---|---|
KR101492510B1 (ko) | 2015-02-11 |
KR20140073561A (ko) | 2014-06-16 |
JP5827413B2 (ja) | 2015-12-02 |
US8824477B2 (en) | 2014-09-02 |
EP2774334B1 (en) | 2020-01-01 |
JP2014534779A (ja) | 2014-12-18 |
WO2013067377A3 (en) | 2013-07-11 |
CN103918233A (zh) | 2014-07-09 |
WO2013067377A2 (en) | 2013-05-10 |
US20130114606A1 (en) | 2013-05-09 |
EP2774334A2 (en) | 2014-09-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103918233B (zh) | 多递送路线分组排序 | |
JP5859669B2 (ja) | 通信ネットワークにおける配送ルート変化に基づくパケットオーダリング | |
CN105745885B (zh) | 用于高性能结构内的灵活信用交换的方法和系统 | |
KR101696776B1 (ko) | 향상된 확인응답 및 재송신 메커니즘 | |
CN103959722B (zh) | 改进以太网网络的系统 | |
CN103959724A (zh) | 在混合通信网络中提供路径信息 | |
CN105850086A (zh) | 用于高性能结构内的QoS的方法、装置和系统 | |
CN103959698A (zh) | 具有无缝路径切换的混合联网系统 | |
WO2001099355A1 (fr) | Procede et systeme de retransmission de paquets | |
TWI492588B (zh) | 用於多跳混合網路的無縫切換 | |
CN1505888A (zh) | 网络设备中的选择式数据帧丢失 | |
KR102046792B1 (ko) | 송신 노드로부터 목적지 노드로의 데이터 전송 방법 | |
JP4731155B2 (ja) | デジタルネットワークにおけるセグメントを基にするリンク層のための誤り制御機構 | |
CN105871512A (zh) | 一种数据传输方法及装置 | |
Amin et al. | Bandwidth Efficient TCP Frame Design without Acknowledgment Number Field | |
Ibrahim | Adaptive Mechanism for Aggregation with fragments retransmission in high-speed wireless networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |