先宏观上知道有啥功能?
- Packet Processing(数据包处理)
描述
Packet Reception:通过 DPDK 从网络接口接收数据包。
Packet Parsing:解析数据包,提取 L2/L3/L4 头部信息。
Packet Classification:根据数据包类型进行分类(如 TCP、UDP、ICMP 等)。
Packet Dispatch:将数据包分发到相应的处理模块(如 NAT、Load Balancing 等)。
+---------------------------+
| Packet Processing |
+---------------------------+
| +---------------------+ |
| | Packet Reception | |
| +---------------------+ |
| | Packet Parsing | |
| +---------------------+ |
| | Packet Classification| |
| +---------------------+ |
| | Packet Dispatch | |
| +---------------------+ |
+---------------------------+
- Connection Tracking(连接跟踪)
描述
State Table:维护连接状态表,记录每个连接的状态。
State Update:根据数据包更新连接状态。
Timeout Management:管理连接超时,清理过期连接。
Connection Reuse:处理连接重用,优化资源利用。
+---------------------------+
| Connection Tracking |
+---------------------------+
| +---------------------+ |
| | State Table | |
| +---------------------+ |
| | State Update | |
| +---------------------+ |
| | Timeout Management | |
| +---------------------+ |
| | Connection Reuse | |
| +---------------------+ |
+---------------------------+
- Load Balancing(负载均衡)
描述
Algorithm Selection:选择负载均衡算法(如轮询、最少连接、源地址哈希等)。
Server Selection:根据算法选择后端服务器。
Health Check:定期检查后端服务器的健康状态。
Session Persistence:维护会话持久性,确保同一会话的请求分配到同一服务器。
+---------------------------+
| Load Balancing |
+---------------------------+
| +---------------------+ |
| | Algorithm Selection | |
| +---------------------+ |
| | Server Selection | |
| +---------------------+ |
| | Health Check | |
| +---------------------+ |
| | Session Persistence | |
| +---------------------+ |
+---------------------------+
- NAT(网络地址转换)
描述
Source NAT:源地址转换,将内部地址转换为外部地址。
Destination NAT:目的地址转换,将外部地址转换为内部地址。
Port Mapping:端口映射,处理端口转换。
NAT Table:维护 NAT 映射表,记录地址和端口映射关系。
+---------------------------+
| NAT |
+---------------------------+
| +---------------------+ |
| | Source NAT | |
| +---------------------+ |
| | Destination NAT | |
| +---------------------+ |
| | Port Mapping | |
| +---------------------+ |
| | NAT Table | |
| +---------------------+ |
+---------------------------+
- SYNPROXY(SYN 代理)
描述
SYN Interception:拦截 SYN 包,防止 SYN 洪泛攻击。
SYN-ACK Generation:生成 SYN-ACK 响应,验证客户端。
ACK Validation:验证客户端的 ACK 包,确保连接合法。
Connection Establishment:在验证通过后建立连接。
+---------------------------+
| SYNPROXY |
+---------------------------+
| +---------------------+ |
| | SYN Interception | |
| +---------------------+ |
| | SYN-ACK Generation | |
| +---------------------+ |
| | ACK Validation | |
| +---------------------+ |
| | Connection Establishment| |
| +---------------------+ |
+---------------------------+
- Defence(防御)
描述
IP Fragmentation Defence:防御 IP 分片攻击。
TCP Defence:防御 TCP 攻击,如 SYN 洪泛、RST 洪泛等。
UDP Defence:防御 UDP 攻击,如 UDP 洪泛。
Traffic Filtering:流量过滤,阻止恶意流量。
+---------------------------+
| Defence |
+---------------------------+
| +---------------------+ |
| | IP Fragmentation | |
| | Defence | |
| +---------------------+ |
| | TCP Defence | |
| +---------------------+ |
| | UDP Defence | |
| +---------------------+ |
| | Traffic Filtering | |
| +---------------------+ |
+---------------------------+
- Statistics(统计)
描述
Packet Counters:数据包计数器,记录接收和发送的数据包数量。
Connection Counters:连接计数器,记录连接的创建、重用和删除数量。
Error Counters:错误计数器,记录各种错误事件。
Performance Metrics:性能指标,记录处理延迟、吞吐量等。
+---------------------------+
| Statistics |
+---------------------------+
| +---------------------+ |
| | Packet Counters | |
| +---------------------+ |
| | Connection Counters | |
| +---------------------+ |
| | Error Counters | |
| +---------------------+ |
| | Performance Metrics | |
| +---------------------+ |
+---------------------------+
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。