The technology for tracking unordered network packets includes the target computing node coupled to the source computing node through the communication channel. The target computing node is configured to allocate a small window in the memory, in which the bit mask corresponding to the number of the disordered network packets received from the source computing node is stored in the small window. The target computing node is also configured to update the bit mask in the small window after receiving the unordered network packets coming from the source computation node. The target computing node is also configured to allocate large windows in the memory in response to the size of the ascertained mask greater than the size of the small window, store the bit mask in a large window, and store the pointer pointing to a large window in a small window. Other embodiments are described and required to be protected.
【技术实现步骤摘要】
【国外来华专利技术】用于跟踪无序网络分组的技术政府权利条款本专利技术是在政府支持下根据由国防部授予的合同号H98230-13-D-0124完成的。政府对本专利技术享有一定的权利。相关申请的交叉引用本申请要求享有于2015年12月22日提交的题为“TECHNOLOGIESFORTRACKINGOUT-OF-ORDERNETWORKPACKET”的美国实用专利申请第14/979,131号的优先权。
技术介绍
现代计算设备已经变成用于个人、商业和社会用途的无处不在的工具。因此,许多现代计算设备能够连接到各种数据网络,包括互联网和公司内联网,以便以不同速率通过各种数据网络发送和接收数据通信。为了促进计算设备之间的通信,数据网络典型地包括一个或多个计算节点(例如,网络交换机、网络路由器、服务器、其他计算和/或存储计算设备等)以将通信(即,网络分组)从源计算设备路由到目的地计算设备。某些网络基础设施(例如,数据中心)可能包括成千上万或更多这样的计算节点,使得按顺序的次序进行网络分组的发送和接收难以做到。因此,已经实现了各种无序的端到端协议,以对在任何给定时间发送和接收可能在使用中的潜在地数千个网络分组进行管理。例如,为了处理这样大的无序网络业务量,已经实现了微架构技术来提供硬件级别的端到端重试协议,以简单地利用接受网络分组序列中的下一分组,而不管这些网络分组被接收到的次序。在一些情况下,软件已经被用于通过在不进行硬件检查的情况下对网络分组的报头重新排序以恢复顺序的次序来应用可靠性;然而,这种基于软件的重新排序典型地不适用于直接数据放置操作或原子操作。类似地,传输控制协议(TCP)支持选择性拒绝 ...
【技术保护点】
1.一种用于跟踪无序网络分组的目标计算节点,所述目标计算节点包括:一个或多个处理器;以及一个或多个存储器设备,其中存储有多个指令,所述多个指令当由所述一个或多个处理器执行时使所述目标计算节点进行以下操作:经由网络建立与源计算节点的通信信道;生成分组序列号表中的、与所述通信信道相对应的条目,其中,所述条目包括小窗口,所述小窗口定义所述目标计算节点的存储器的一部分,所述部分被分配用于存储与由所述目标计算节点通过所述通信信道接收的无序网络分组的编号相对应的位掩码;经由所述通信信道接收来自所述源计算节点的多个无序网络分组;以及根据从所述源计算节点接收的所述多个无序网络分组中的每个无序网络分组的分组序列号,更新所述分组序列号表中的、与所述通信信道相对应的所述小窗口中的所述位掩码。
【技术特征摘要】
【国外来华专利技术】2015.12.22 US 14/979,1311.一种用于跟踪无序网络分组的目标计算节点,所述目标计算节点包括:一个或多个处理器;以及一个或多个存储器设备,其中存储有多个指令,所述多个指令当由所述一个或多个处理器执行时使所述目标计算节点进行以下操作:经由网络建立与源计算节点的通信信道;生成分组序列号表中的、与所述通信信道相对应的条目,其中,所述条目包括小窗口,所述小窗口定义所述目标计算节点的存储器的一部分,所述部分被分配用于存储与由所述目标计算节点通过所述通信信道接收的无序网络分组的编号相对应的位掩码;经由所述通信信道接收来自所述源计算节点的多个无序网络分组;以及根据从所述源计算节点接收的所述多个无序网络分组中的每个无序网络分组的分组序列号,更新所述分组序列号表中的、与所述通信信道相对应的所述小窗口中的所述位掩码。2.根据权利要求1所述的目标计算节点,其中,更新所述分组序列号表中的所述位掩码包括:(i)确定所述位掩码的大小是否大于所述小窗口的大小,(ii)响应于确定所述位掩码的大小大于所述小窗口的大小,分配大窗口,所述大窗口定义所述目标计算节点的存储器的另一部分,所述另一部分被分配用于存储与由所述目标计算节点通过所述通信信道接收的无序网络分组的编号相对应的所述位掩码,其中,所述大窗口的大小超过所述位掩码的大小,(iii)将所述位掩码存储在所述大窗口中,以及(iv)将指向所述大窗口的指针存储在所述小窗口中。3.根据权利要求2所述的目标计算节点,其中,所述多个指令还使所述目标计算节点进行以下操作:接收附加无序网络分组;根据接收到的附加无序网络分组来更新所述大窗口中的所述位掩码;确定更新后的位掩码的大小是否大于所述小窗口的大小;以及响应于确定所述更新后的位掩码的大小不大于所述小窗口的大小,用所述更新后的位掩码来替换指向所述大窗口的所述指针。4.根据权利要求3所述的目标计算节点,其中,所述多个指令还使所述目标计算节点:在确定没有附加网络分组正在被跟踪之后,释放分配给所述大窗口的所述存储器。5.根据权利要求3所述的目标计算节点,其中,所述多个指令还使所述目标计算节点:在确定没有附加网络分组正在被跟踪之后,将所述大窗口标记为可用并且分配给所述源计算节点。6.根据权利要求1所述的目标计算节点,其中,所述条目另外包括指示所述通信信道是否活动的连接状态指示符。7.根据权利要求1所述的目标计算节点,其中,所述条目另外包括与下一个预期网络分组的分组序列号相对应的失序分组序列号指示符。8.根据权利要求1所述的目标计算节点,其中,所述条目另外包括指示所述小窗口是否与所述位掩码或指向其中存储所述位掩码的大窗口的指针中的一个相对应的窗口使用指示符。9.一种用于跟踪无序网络分组的方法,所述方法包括:由目标计算节点经由网络建立与源计...
【专利技术属性】
技术研发人员:K·D·安德伍德,C·A·吉费尔,B·M·皮里,K·P·布鲁梅尔,
申请(专利权)人:英特尔公司,
类型:发明
国别省市:美国,US
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。