【网络基础】OSI模型与TCP连接管理

OSI模型、数据封装以及TCP三次握手四次挥手介绍

1. OSI 模型

1.1 OSI参考模型和TCP/IP模型基本介绍

  • OSI参考模型:由ISO国际标准组织颁布的开放式体系结构,共七层。

    层数分层功能
    L7应用层网络服务与最终用户的一个接口
    L6表示层数据的表示、安全和压缩
    L5会话层建立,管理,终止会话
    L4传输层定义传输数据的协议端口号,流量控制,差错校验
    L3网络层进行逻辑地址寻址,实现不同网络之间的路径选择
    L2数据链路层建立逻辑连接,进行物理地址寻址,差错校验等功能
    L1物理层建立连接,维护和断开物理连接

  • TCP/IP模型:共五层。

    层数分层功能
    L5应用层建立两端的会话连接
    L4传输层TCP/UDP 协议(一个稳定/传输效率更快)
    L3网络层IP地址进行寻址
    L2数据链路层MAC地址进行寻址
    L1物理层bit流传输

1.2 核心分层

层数分层设备功能/关键技术常用协议
L5应用层服务器HTTP、HTTPS、FTP、SMTP、SNMP、DNS
L4传输层防火墙TCP、UDP
L3网络层路由器IP 地址IP、ICMP、IGMP、ARP、RARP
L2数据链路层交换机、集线器MAC地址
L1物理层网卡、光纤、网线传输介质、接收数据

注:

  1. MAC地址:由16进制表示。在网卡生产出来时,会绑定一个MAC地址,此地址用于表示该网卡在局域网中的位置,通常情况下,不 可更改。
  2. 在局域网内,网络设备之间的通信,基于MAC地址寻找目标的物理地址。
  3. IP地址:由10进制表示。表示一个网络设备在万维网中的逻辑位置。
  4. 在万维网中,基于IP地址寻找目标的逻辑地址。

1.3 OSI分层协议

层数分层协议中文端口号功能
L7应用层HTTP超文本传输协议80用于网页浏览等数据传输
HTTPS超文本传输安全协议443加密的HTTP,用于安全传输
FTP文件传输协议控制连接:21 数据连接:20可靠的文件上传下载,支持认证和目录操作
TFTP简单文件传输协议69(仅用于数据连接)简单的文件传输,无认证,用于设备固件更新等
SMTP简单邮件传输协议25用于发送电子邮件
SNMP简单网络管理协议161用于网络设备管理和监控
DNS域名系统53将域名解析为IP地址
L4传输层TCP传输控制协议面向连接的可靠传输,提供流量控制和重传机制
UDP用户数据报协议无连接的简单传输,延迟低但不可靠
L3网络层IP网际协议负责网络寻址和路由,实现数据包的端到端传输
ICMP互联网控制消息协议用于网络连通性测试和错误报告
IGMP互联网组管理协议管理多播组成员关系
ARP地址解析协议通过IP地址查找对应的MAC地址
RARP逆向地址解析协议通过MAC地址查找对应的IP地址

注:

  1. TCP : 面向连接,工作方式是先建立连接,再传输数据。
  2. UDP : 面向传输,只有简单的数据完整性的校验机制。
  3. Ping命令基于ICMP协议,测试网络连通性。

2. 数据传输过程中的封装与解封装

2.1 封装/解封装

层数分层封装/解封装过程设备封装
L5应用层上层数据服务器数据
L4传输层传输协议头部 + 上层数据防火墙数据段
L3网络层IP头部 + 传输协议头部 + 上层数据路由器数据包
L2数据链路层MAC头部 + IP头部 + 传输协议头部 + 上层数据交换机、集线器数据帧
L1物理层比特流网卡、光纤、网线比特流

注:

  1. IP头部包含源IP和目标IP。
  2. MAC头部包含源MAC和目标MAC。
  3. 数据封装/解封装的目的:将数据安全、准确地传输到目标位置。

3. TCP协议

3.1 TCP协议介绍

  1. TCP是面向连接的、可靠的进程到进程通信的协议。
  2. TCP提供全双工服务,即数据可在同一时间双向传输。
  3. TCP报文段:TCP将若干个字节构成一个分组,叫报文段(Segment),TCP报文段封装在IP数据报中。

在这里插入图片描述

标志位全称中文功能
SYNSynchronize同步用于建立连接。在三次握手过程中,SYN=1 表示这是一个连接请求或连接接受报文。
ACKAcknowledgment确认表示确认字段有效。ACK=1 时,表示这是一个确认报文,确认号字段包含有效的下一个期望收到的序列号。
FINFinish结束用于释放连接。FIN=1 表示发送方已经没有数据要发送了,希望断开连接。
seqSequence Number序列号用于标识从 TCP 发送端向接收端发送的数据字节流的编号
ackAcknowledgment Number确认号用于确认发送端的信息,实际数据

3.2 TCP三次握手、四次挥手

  1. 三次握手
建立连接过程标志位
客户端 → 服务器发送 [SYN=1, ACK=0, seq=x]
服务器 → 客户端发送 [SYN=1, ACK=1, seq=y, ack=x+1]
客户端 → 服务器发送 [SYN=0, ACK=1, seq=x+1, ack=y+1]
  1. 四次挥手
断开连接过程标志位
主动关闭方 → 被动关闭方发送 [FIN=1, ACK=1, seq=u]
被动关闭方 → 主动关闭方发送 [ACK=1, ack=u+1]
被动关闭方 → 主动关闭方发送 [FIN=1, ACK=1, seq=v]
主动关闭方 → 被动关闭方发送 [ACK=1, ack=v+1]

注:

  1. 为什么握手是三次,挥手是四次?

    答:TCP 连接是全双工的,而建立连接和断开连接时,双方的状态变化并不同步。可能出现一个半断开的特殊状态,一方的数据并没有传输完成。

思维导图:
在这里插入图片描述

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值