爱滑雪的码农头像
关注
计算机TCP/IP四层模型与通讯协议封面图

计算机TCP/IP四层模型与通讯协议

一、什么是通讯协议?

通讯协议 = 设备之间对话的统一语法、规则、格式(你可以理解通讯协议相当于不同品牌的电脑之间要实现信息的互通,就需要制定一套标准的通讯流程和标准配置规则)

TCP/IP 四层模型是互联网真实运行的协议栈,所有电脑、服务器、物联网设备、大屏后台接口全部使用这套分层。
从上到下顺序:应用层 → 传输层 → 网际层(网络层) → 网络接口层

TCP/IP四层模型属于分层架构模型,通讯协议是跑在这套架构里的一堆协议集合

二、分层逐一详解

应用层

当前的四层模型的应用层是合并了 OSI 应用层 + 表示层 + 会话层(七层模型)

应用层主要分为三类传统互联网通用协议(面向电脑、浏览器、服务器后台、用于网页、接口、与域名、文件传输代表:HTTP/HTTPS、DNS、FTP/SFTP),物联网lot协议(面向低功耗传感器、监测网关、小型采集设备代表:MQTT、CoAP),工业以太网协议(面向 PLC、工控柜、工业采集终端,专门读写硬件寄存器、控制设备启停,满足工业实时采集、设备控制需求代表:Modbus-TCP、OPC UA、Profinet、EtherNet/IP

传输层                

找设备内的程序是传输层必备的基础功能,但不是它最核心的,最独特的作用-实现端到端(进程到进程)的数据通信,极易混淆的概念:网际层(ip)-主机-主机(通过IP地址找到目标电脑);传输层:进程-进程(通过端口号找到电脑上具体运行的软件)

传输层定义两大核心协议:TCP (可靠),UDP(不可靠)

TCP连接生命周期

三次握手:建立连接

客户端主动发起请求,协商通信参数,确认双方收发能力正常;

数据传输:依靠滑动窗口持续通信;

四次挥手:断开连接

通道关闭

网际层

实现跨网络的主机到主机的数据交互

网络接口层

负责同一个局域网内,相邻两台设备之间的数据传输;完成IP数据包和物理信息的转换

场景演示

场景分为两部分:发送方(发送和接收),接收方(发送和接收)

阶段一:客户端发送请求

  • 应用层 Git 客户端生成 HTTPS 请求:请求拉取 packline5.0 仓库代码,将原始请求数据向下交给传输层。
  • 传输层(TCP) 添加 TCP 头部: 源端口:本机随机临时端口(例如 52130) 目标端口:服务器 443(HTTPS) 组成 TCP 段,下发网际层。
  • 网际层(IP 层) 添加 IP 头部: 源 IP:你电脑 IP 目标 IP:仓库服务器公网 IP 生成 IP 数据包,下发网络接口层。
  • 网络接口层 增加以太网帧头部(源 MAC:本机网卡 MAC,目标 MAC:网关路由器 MAC),转为电 / WiFi 信号向外传输。

阶段二:服务端接口客户端请求

  • 网络接口层 网卡收到二进制信号,拼成以太网帧;剥离帧头,提取内部 IP 数据包,向上传递网际层。
  • 网际层 剥离 IP 头部,确认目标 IP 是服务器本机 IP;取出 TCP 报文,向上交付传输层。
  • 传输层(TCP) 剥离 TCP 头部,查看目标端口 = 443;操作系统根据端口,把数据向上分发给监听 443 端口的 Git 服务程序。
  • 应用层 服务器 Git 服务解析 HTTPS 请求,识别到客户端想要拉取项目代码,准备响应数据

阶段三:服务端发送响应数据

  • 应用层 Git 服务封装 HTTPS 响应,携带项目代码二进制数据,下发传输层。
  • 传输层(TCP) 添加 TCP 头部(端口互换): 源端口:443 目标端口:客户端随机端口(52130) 生成 TCP 段,下发网际层。
  • 网际层(IP 层) 添加 IP 头部(IP 互换): 源 IP:服务器公网 IP 目标 IP:你电脑公网 IP 生成 IP 数据包,下发网络接口层。
  • 网络接口层 封装以太网帧,转换成网络信号,经过路由器跨网络转发,发往你的电脑。

阶段四:客户端接收服务器返回的代码数据

  • 网络接口层 网卡接收信号,组装以太网帧;剥离帧头部,取出 IP 包,向上交给网际层。
  • 网际层 剥离 IP 头部,确认目标 IP 为本机;提取 TCP 报文,向上交给传输层。
  • 传输层(TCP) 剥离 TCP 头部,读取目标端口:52130;操作系统找到占用 52130 端口的进程 ——Git 客户端,把数据向上递交。
  • 应用层 Git 客户端解析 HTTPS 响应,接收代码文件,写入本地 packline5.0 文件夹

转载自 CSDN-专业IT技术社区

原文链接:https://blog.csdn.net/qq_73477845/article/details/163235633

文章来源crawl

评论

赞0

评论列表

微信小程序
QQ小程序

关于作者

点赞数:0
关注数:0
粉丝:0
文章:0
关注标签:0
加入于:--