OSI TCP/IP参考模型

网络工程(hcia)笔记3

数据的封装与解封装

OSI / RM —— 开放式系统互连参考模型

由国际化标准组织(ISO)发布的用于参考的标准模型
意义:

  1. 降低网络复杂度,便于学习
  2. 标准化
  3. 解耦,弱化各层次之间的联系。

类似于我们在前面给PC的通信过程所划分的五个层次

层级名称
第五层应用层
第四层表示层
第三层网络层
第二层介质访问控制层
第一层物理层
OSI 七层模型

OSI / RM 中,该过程被划分为了七层 —— OSI 七层模型

应用层连接用户与服务或应用抽象语言 => 编码
表示层数据的转换,加密,压缩编码 => 二进制
会话层建立,维护 应用与服务器之间的联系(会话)
传输层实现端到端(应用与应用)的传输,定义协议和端口号封装端口号
网络层基于IP地址进行逻辑寻址(根据源目IP找路径建联)封装源目IP
数据链路层(介质访问控制层(MAC)+逻辑链路控制层(LLC))控制物理层进行实际的数据传输二进制 => 电信号
物理层进行实际的数据传输电信号传输
知名端口号
协议端口号
HTTP(超文本传输协议)80
HTTPS(HTTP+SSL/TSL(网络安全协议)安全传输协议)443
DHCP{动态主机配置协议)67 68
DNS(域名解析系统)53
FTP{文件传输协议)20 21
TFTP(简单文件传输协议)69
Telnet{远程控制协议)23
SSL(安全远程控制协议)Telnet+SSL/TSL22

TCP/IP参考模型(因特网使用的参考模型)

TCP/IP协议是多种协议的统称,是一个协议簇。其中以TCP协议和IP协议最为重要,所以称这个协议簇为TCP/IP协议
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
虽然TCP/IP模型OSI参考模型分层略有不同,但实际上的每层功能是一样的,因此不做过多介绍。

PDU(协议数据单元)

对于每一层的数据,我们都需要不同的单位,以便于我们去分辨和称呼,因此,我们引入== PDU(协议数据单元)这个概念

TCP/IP参考模型PDU
应用层报文
传输层数据段
网络层数据包
数据链路层数据帧
物理层比特流

封装与解封装

我们知道,数据的传输是按照我们划分的层,去逐层传递的,它在每一层中都会被做不同的处理,并被加入各层的一些标志性信息,最后完成数据的打包,我们称该过程为——封装
反之,打包好的信息被接收后会逐层拆封,我们称之为——解封装

封装

在这里插入图片描述

解封装

在这里插入图片描述

我们知道,TCP/IP模型本质上一个协议簇,那么,在数据的封装与解封装过程中,PC只是做出了封装与解封装的预指令,实际上来执行的是每层的一个个协议(这不是我们在白纸上看到的文件,而是一个类似于应用,具体去提供服务的东西),不同的传输类型 不同形式的数据,使用不同的协议

协议

协议
传输层TCP, UDP协议
网络层IP协议
数据链路层以太网协议
以太网协议

以太网Ⅱ型帧(封装后数据帧的结构)
在这里插入图片描述

Preamble前导符
Type上层协议类型(即该用何种协议解封装)
FCS帧检验序列,检验数据的完整性
TCP协议 —— 传输控制协议

TCP协议头部(数据的头)
在这里插入图片描述

第一行封装源目端口
序号TCP传输时会将数据分段,序号用于依次标识每个字节,以便于拆封的数据重组
确认序号回复时使用,例:收到分段后序号为0~300的数据段,回复确认序号为301的数据段,表示我已收到,你继续发剩下的
首部长度标识头部的长度,为”选项“而存在的,不看选项,头部固定长度为20个字节
保留位保留,无用位
URG紧急指针标志位,该为置1,该数据加急处理
ACK确认标志位
PSH该位置1,接收该数据的应用应立即清空缓存区
RST该位置1,直接断开连接,重新建连
SYN该位置1,请求建联
FIN该位置1. 请求断连
窗口实现流控,标注自己的缓存大小,对端会据此控制数据的发送速度
校验和(协议必备)用各自独特的算法来对数据段的长度求和,检验数据完整性
紧急指针指针偏移量
三次握手,四次挥手

三次握手
在这里插入图片描述
注:两次不可靠,三次没必要
四次挥手
在这里插入图片描述
不一定是四次挥手

UDP协议 —— 用户数据协议

UDP协议头部
在这里插入图片描述
只管发完,不做检验

TCP 和 UDP 的比较
TCPUDP
建联后传输(面向连接)不建联
实现流控
可靠不可靠
数据分段数据不分段
占的多,传得慢恰恰相反

在这里插入图片描述

IP协议 —— 因特网协议

IP协议首部
在这里插入图片描述

类比于TCP协议学习

  1. 4位版本:确定IP v6还是IP v4
  2. TOS:”3位优先级权字段(现已被忽略),4位TOS字段和1位保留字段(必须置0).4位TOS字段分别表示:最小延迟,最大吞吐量、最高可靠性和最小费用,其中最多1个能置为1。“
  3. TTL:生存时间,给定一个初始值,该数据包每被路由器转发一次,TTL - 1 当TTL减到0时,路由器不再转发该数据,而会直接丢弃

MTU:最大传输单元,即数据链路层最大可承载字节数=1500字节
MSS: 最大传输段,真正在传输层传输的最大数据(排除各种协议的头部)= 1460 = 1500 - 20(TCP头部) - 20(IP头部)
在这里插入图片描述
4. 16位标识:MTU的存在使得数据包的传输的字节数受限,所以我们往往需要继续对数据包进行分片,减少每个数据包的字节长度,此时IP的16位标识就相当于TCP分段时的标识.
5. 三位标识位:
在这里插入图片描述
第一位:reserved bit 保留位,不启用
第二位:don’t fragment 不分片 – 标识这个数据包是否被分片,置 1 表示未分片,置 0 表示分片
第三位:more fragment 更多片 – 表示如果分片,这是否是最后一片,置 1 表示后面还有,置 0 表示这是最后一片
6. 13 位片偏移(fragment offset): 通过前两个标识,只能将一个数据包分出的片集结起来,但是没办法还原成完整的数据包,所以这一位会标识每个分片后的数据包偏移量,比如分片后的第一个数据包,偏移量为 0,第二个偏移量是第一个的字节数+1 这样就能够根据偏移量拼成完整的数据包

  • 18
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值