极简版本的 TCP / IP 协议栈介绍

TCP/IP协议栈采用分层架构,从上层到下层依次为应用层、TCP层(传输层)、IP层(网络层)、数据链路层和物理层,ARP协议与子网掩码作为核心辅助机制,保障通信高效准确。

一、TCP/IP协议栈各层核心功能

协议栈核心逻辑为"上层调用下层,下层服务上层",各层分工如下:

1. 应用层

直接面向用户应用,调用TCP层服务,传递关键数据(数据体、目标IP、目标端口),不参与底层传输细节。

2. TCP层(传输层)

负责数据可靠传输,处理端口逻辑,将数据交付IP层,不参与IP寻址。
TCP发起方(如客户端) 会临时分配一个端口,该端口与目标方(如服务器)的监听端口配合,实现TCP连接的双向通信(发起方通过自身端口发送请求、接收响应,确保数据准确回传)。

3. IP层(网络层)

TCP/IP协议栈核心,承接TCP层请求, 添加源/目标 IP 地址,形成 IP 数据报,交付数据链路层;通过ARP协议解析目标MAC地址并传递给数据链路层。
ARP 在功能上服务于 IP 层 ,但 在协议分层中通常归为数据链路层或介于网络层与数据链路层之间。

4. 数据链路层

接收IP层的IP报文和MAC地址,将MAC地址封装到帧头,完成以太网帧封装后交付物理层,不参与MAC地址解析。

5. 物理层

将数据链路层的以太网帧转换为电信号(或光、无线信号),通过物理链路传输,不参与任何数据解析与决策。

二、核心辅助机制:ARP协议与子网掩码

1. ARP协议

核心作用是将IP地址解析为MAC地址,为数据链路层封装提供支持。
核心工作流程:「广播查询,单播应答」------IP层 **请求 ARP 模块解析,**广播查询目标IP对应的MAC,目标设备单播回复自身MAC,兼顾准确性与带宽效率。

2. 子网掩码

工作于IP通信的「寻址判定前置阶段」,优先级高于ARP解析,是IP报文发送前的首个逻辑判断。

(1)配置方式

设备接入网络后,通过手动配置或DHCP自动获取,将「IP+子网掩码+网关」绑定到网络接口(网卡、WLAN口)。

(2)工作流程
  1. IP层提取目标IP,取出绑定的子网掩码;
  2. 对自身IP+子网掩码、目标IP+同一子网掩码分别做按位与运算,得到两个网络地址;
  3. 对比网络地址:
    1. 相同(同网段):ARP解析目标IP的MAC,交付数据链路层封装传输;
    2. 不同(不同网段):ARP解析网关MAC,发送给网关由其完成跨网段路由。

三、总结

TCP/IP完整通信流程:应用层发起请求→TCP层交付IP层→IP层子网掩码判网段、ARP解析MAC→数据链路层封装帧→物理层转电信号传输。
各层分工协作,ARP解决IP转MAC难题,子网掩码解决网段判定难题,共同构成互联网通信基础框架。

四、网关

网关的核心决策依据是「目标IP所属网段」,结合自身路由表(记录不同网段的转发路径),判断消息需继续在内网流转还是转发至其他网络,核心逻辑与子网掩码的网段判定一致,具体步骤如下:

  1. 网关接收消息后,首先提取消息中的「目标IP地址」;
  2. 调用自身配置的子网掩码,对「目标IP + 子网掩码」做按位与运算,得到目标网络地址;
  3. 将目标网络地址与自身内网网段地址对比,结合路由表判断:
    1. 若目标网络地址与内网网段一致(同网段):决定继续在内网流转,通过ARP协议解析目标IP对应的内网设备MAC地址,将消息转发至该内网设备;
  4. 若目标网络地址与内网网段不一致(不同网段):决定将消息转走,根据路由表找到对应网段的下一跳路由(或公网出口),解析下一跳设备的MAC地址,封装消息后转发,完成跨网段/公网传输。
    在典型家用或企业网关中,多个内网物理接口通常连接到同一个内部交换网络(如同一 VLAN),因此仅需在一个逻辑接口上配置一个内网 IP 地址,所有物理端口共享该网段,无需为每个端口单独分配 IP;

五、关联文章

通俗理解 TCP 的 三次握手 和 四次挥手

内网穿透技术 -- NAT ngrok 花生壳

相关推荐
Jony_3 小时前
高可用移动网络连接
网络协议
chilix8 小时前
Linux 跨网段路由转发配置
网络协议
DianSan_ERP2 天前
电商API接口全链路监控:构建坚不可摧的线上运维防线
大数据·运维·网络·人工智能·git·servlet
呉師傅2 天前
火狐浏览器报错配置文件缺失如何解决#操作技巧#
运维·网络·windows·电脑
gihigo19982 天前
基于TCP协议实现视频采集与通信
网络协议·tcp/ip·音视频
2501_946205522 天前
晶圆机器人双臂怎么选型?适配2-12寸晶圆的末端效应器有哪些?
服务器·网络·机器人
linux kernel2 天前
第七部分:高级IO
服务器·网络
数字护盾(和中)2 天前
BAS+ATT&CK:企业主动防御的黄金组合
服务器·网络·数据库
~远在太平洋~2 天前
Debian系统如何删除多余的kernel
linux·网络·debian
龙仔7252 天前
在麒麟V10服务器安全加固,sshd防暴力破解加固,实现“密码错误3次封IP”的需求
服务器·tcp/ip·安全