Linux Kernel TCP/IP Stack — L3 Layer — netfilter 框架 — conntrack(CT,连接跟踪)
Posted 范桂飓
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux Kernel TCP/IP Stack — L3 Layer — netfilter 框架 — conntrack(CT,连接跟踪)相关的知识,希望对你有一定的参考价值。
目录
CT
CT(conntrack,connection tracking,连接跟踪),顾名思义,就是跟踪(并记录)连接的状态,是许多网络应用的基础。例如:iptables、LVS/IPVS、OvS、Docker Network、Kubernetes Service、ServiceMesh Sidecar 等。
CT 在 netfilter 框架中完成了 Connection 信息的采集和录入功能,单并不会修改或丢弃数据包,后者是其他模块(e.g. NAT)基于 Netfilter Hook 机制完成的。
需要注意的是,CT 中的 connection,与 TCP 的 connection 并不完全相同。CT 中,一个 IP 5-tuple 定义的一条 Flow 就表示一条 Connection。
例如,上图是一台 IP 地址为 10.1.1.2 的 Linux 机器,我们能看到这台机器上有三条连接:
- 机器访问外部
以上是关于Linux Kernel TCP/IP Stack — L3 Layer — netfilter 框架 — conntrack(CT,连接跟踪)的主要内容,如果未能解决你的问题,请参考以下文章
Linux Kernel TCP/IP Stack — L4 Layer
Linux Kernel TCP/IP Stack — 协议栈发包处理流程
Linux Kernel TCP/IP Stack — Overview
Linux Kernel TCP/IP Stack — Overview