The application relates to a system and method for processing packets in a transmission control protocol session. A device may include one or more memories and one or more processors coupled to one or more memories to receive a plurality of data packets of a transmission control protocol (TCP) session; a specific TCP segment that determines a TCP session that includes a synchronous confirmation (SYNACK) flag has already been in the TCP session that includes the synchronization (SYN) flag. A sequence number of a specific TCP segment is stored as an initial sequence number for a stream for a TCP session; and a set of data packets of a TCP session is reorganized or rearranged based on one or more sequence numbers for the set of data packets, which are used for the TCP session.
【技术实现步骤摘要】
处理传输控制协议会话中的分组的系统和方法
本申请涉及计算机领域,更具体地涉及处理传输控制协议会话中的分组的系统和方法。
技术介绍
网络设备使用一个或多个通信协议在网络上进行通信。例如,在诸如使用因特网协议(IP)的分组网络上使用的通信协议之一是传输控制协议(TCP)。TCP被用于确保发起(源)网络设备传送的所有字节都在目的地网络设备处被接收。TCP业务流被分成多个段,每个段包括来自数据流的数据块和TCP报头。在一些网络中,解析数据分组中的TCP段的网络设备有时实现在数据流的两个方向(例如,接收路径和发送路径,TCP会话中的两个流)上的数据分组被互锁的位置中。例如,解析TCP段的网络设备可以实现在客户端或服务器上,或者可以与TCP业务流一起实现。
技术实现思路
一种设备可以包括一个或多个存储器以及与所述一个或多个存储器通信耦合的一个或多个处理器,用于:接收传输控制协议(TCP)会话的多个数据分组;确定TCP会话的包括同步确认(SYN-ACK)标志的特定TCP段已经在所述TCP会话的包括同步(SYN)标志的对应TCP段之前被接收;将所述特定TCP段的序列号存储为用于所述TCP会话的流的初始序列号;以及基于用于所述流的所述初始序列号并且基于所述TCP会话的数据分组集合的一个或多个序列号来重组或重排所述数据分组集合。一种由网络设备执行的用于处理TCP会话中的数据分组的方法,所述方法可以包括:接收多个数据分组;基于所述多个数据分组中的至少一个数据分组中的一个或多个值,针对所述TCP会话的一个或多个数据流的每个方向生成经修改的TCP状态机,所述至少一个数据分组包括TCP段 ...
【技术保护点】
1.一种设备,包括:用于接收传输控制协议(TCP)会话的多个数据分组的装置;用于确定所述TCP会话的包括同步确认(SYN‑ACK)标志的特定TCP段已经在所述TCP会话的包括同步(SYN)标志的对应TCP段之前被接收的装置;用于将所述特定TCP段的序列号存储为所述TCP会话的流的初始序列号的装置;和用于基于所述流的所述初始序列号并且基于所述TCP会话的数据分组的集合的一个或多个序列号来重组或重排所述数据分组的集合的装置。
【技术特征摘要】
2016.12.29 IN 201611044894;2017.12.21 US 15/850,491.一种设备,包括:用于接收传输控制协议(TCP)会话的多个数据分组的装置;用于确定所述TCP会话的包括同步确认(SYN-ACK)标志的特定TCP段已经在所述TCP会话的包括同步(SYN)标志的对应TCP段之前被接收的装置;用于将所述特定TCP段的序列号存储为所述TCP会话的流的初始序列号的装置;和用于基于所述流的所述初始序列号并且基于所述TCP会话的数据分组的集合的一个或多个序列号来重组或重排所述数据分组的集合的装置。2.如权利要求1所述的设备,其中所述流是第一流;以及其中所述设备还包括:用于基于与所述SYN-ACK标志相关联的值来生成用于第二流的初始序列号的装置。3.如权利要求1所述的设备,其中所述流包括客户端流或服务器流中的至少一个。4.如权利要求1所述的设备,还包括:用于基于与所述TCP会话相关联的一个或多个值来生成所述TCP会话的TCP状态机的装置;以及其中用于确定所述TCP会话的包括SYN-ACK标志的特定TCP段已经在所述TCP会话的包括SYN标志的对应TCP段之前被接收的装置还包括:用于基于所述TCP状态机来确定所述TCP会话的包括所述SYN-ACK标志的所述特定TCP段已经在所述TCP会话的包括所述SYN标志的所述对应TCP段之前被接收的装置。5.如权利要求4所述的设备,其中所述TCP状态机标识以下中的至少一个:所述序列号或所述一个或多个序列号,所述流的方向,所述流的最后字节序列号,所述流的最后看到的ACK值,或者指示标识已经执行重组或重排的数据分组的字节值的值。6.如权利要求1所述的设备,其中所述设备包括网络接口卡。7.如权利要求1所述的设备,其中所述重组或重排是基于所述多个数据分组的完成标志或重置标志中的至少一个来执行的。8.如权利要求7所述的设备,其中所述完成标志或所述重置标志被用于确定要执行所述重组或重排的最后字节。9.如权利要求1所述的设备,其中所述对应TCP段由所述特定TCP段的确认值来标识。10.一种由网络设备执行的用于处理传输控制协议(TCP)会话中的数据分组的方法,所述方法包括:接收多个数据分组;基于所述多个数据分组中的至少一个数据分组中的一个或多个值,针对所述TCP会话的一个或多个数据流的每个方向生成经修改的TCP状态机,所述至少一个数据分组包括TCP段;针对一个或多个标志来分析所述至少一个数据分组的所述TCP段,以在对所述TCP会话的另一TCP段包括同步(S...
【专利技术属性】
技术研发人员:A·W·萨尔达尼亚,M·哈,
申请(专利权)人:西普霍特公司,
类型:发明
国别省市:美国,US
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。