戎腾网络网络分流器又名核心网采集器,又分为固网采集器和移动信令采集器两大类!网络分流器是整个网络安全前端网络监控的重要基础装备! 我们在网络安全当中经常听到旁路,镜像,流量采集,DPI深度数据包检测,五元组过滤等相关词汇,今天网络分流器为大家讲讲TCP报文重组和会话规则!
网络分流器高密度兼顾10G和100G
一、基本概念
四元组:源IP地址、目的IP地址、源端口、目的端口。
五元组:源IP地址、目的IP地址、协议号、源端口、目的端口。
六元组:源MAC地址、源IP地址、源端口号、目的MAC地址、目的IP地址和目的IP地址。
七元组:源MAC地址、源IP地址、源端口号、目的MAC地址、目的IP地址和目的IP地址和协议号。
二、五元组确定一个会话还是四元组?
五元组通常是指由源IP地址,源端口,目的IP地址,目的端口和传输层协议号这五个量组成的一个集合。例如:192.168.0.1/10000/TCP/121.14.88.76/80就构成了一个五元组。其意义是,一个IP地址为192.168.1.1的终端通过端口10000,利用TCP协议,和IP地址为121.14.88.76,端口为80的终端进行连接通讯。
五元组能够唯一确定一个会话。
在TCP会话重组时,使用序列号确定TCP报文顺序可以解决数据报文不按顺序到达及其重传问题,并且利用二维链表对TCP会话就行还原。难点在于解决多连接问题、IP包乱序到达和TCP会话重传的问题。
原因:TCP协议是TCP/IP协议族中一个重要组成部分,TCP数据流的重组是高层协议分析系统设计和实现的基础。TCP协议是面向连接的可靠传输协议,而TCP下层的IP协议却是面向报文的不可靠协议,这回带来问题:IP不能保证TCP报文可靠的、顺序的传输。为了解决这个问题,TCP采取滑动窗口机制、字节流编号机制和快速重传算法机制等。这可以保证数据的可靠传输。
TCP会话(TCP_Session_IDT)可以通过四元组<源IP地址、目的IP地址、源端口号和目的端口号>唯一标识。
使用HASH表快速查找定位的特征,解决多个TCP会话同时处理的问题,快速处理多个会话问题。
在TCP头中Sequence Number是判断该数据包是否重传和包乱序的重要参数。在TCP连接刚建立时,会为后续TCP传输设置一个初始的SequenceNumber,每传送一个包含有效数据的TCP包,后续传送的TCP数据包的Sequence Number会作响应的修改,如果前一个包长度为N,则这个包的Sequence Number为前一个包Sequence Number加N。它是为保证TCP数据包按序传输来设计的,可以有效的实现TCP数据的完整传输,特别是当数据传输出现错误时可以有效进行错误纠正。
TCP重组数据文件写指针的SYN算法如下:
File_Init_Write_Pointer= Init_Sequence Number + 1;
File_write_Pointer= Current Sequence Number – File_init_Write_point;
检查TCP会话中是否存在空洞,可以来确定会话重组成功、失败和超时。
TCP建立连接需要3次握手,而终止一个连接需要4次握手。这是因为一个TCP连接时全双工的,每个方向必须单独的进行关闭。
规则1:六元组<源MAC地址、源IP地址、源端口号、目的MAC地址、目的IP地址和目的IP地址>,协议号是TCP,它应该是唯一的会话。
规则2:TCP头中4元组 < s y n、 f i n、s e q、l e n >,它应该是唯一的,不唯一说明存在重传情况。
网络分流器
原文地址:http://blog.51cto.com/13853577/2322076