5-网络初识——封装和分用

news/2025/2/9 6:44:20/

目录

1.数据封装的过程

2.数据分用的过程

PS:网络数据传输的基本流程(以QQ为例,A给B发送一个hello):

一、发送方:

二、接收方:


  • 不同的协议层对数据包有不同的称谓,在传输层叫做段(segment),在网络层叫做数据报 (datagram),在链路层叫做帧(frame)。
  • 应用层数据通过协议栈发到网络上时,每层协议都要加上一个数据首部(header),称为封装 (Encapsulation)。
  • 首部信息中包含了一些类似于首部有多长,载荷(payload)有多长,上层协议是什么等信息。
  • 数据封装成帧后发到传输介质上,到达目的主机后每层协议再剥掉相应的首部,根据首部中 的 "上层协议字段" 将数据交给对应的上层协议处理。

1.数据封装的过程

2.数据分用的过程

PS:网络数据传输的基本流程(以QQ为例,A给B发送一个hello):

一、发送方:

用户A在输入框中输入hello这个字符串,qq这个应用程序,就把这个字符串构造成一个应用层数据报。

  • ①应用层:

所谓的应用层数据报,本质上就是一个遵守了约定格式的字符串。

应用层数据报具体的数据格式,咱们不清楚,每个应用程序都不一定一样,只有开发qq的程序员才知道。

一个假设的应用层协议格式:"发送方qq号;发送时间;接收方qq号;消息内容"

程序要调用操作系统的API,把这个应用层数据,交给传输层。

  • ②传输层(进入系统内核了):

在传输层中,要把上述应用层数据,构造成传输层数据。

传输层最知名的协议就是UDP协议和TCP协议。

此处是使用UDP,就需要构造出UDP数据报(在应用层数据基础上,加个UDP报头)。

这是另外一个特定格式的字符串(这里涉及到源端口和目的端口),此处就像字符串拼接一样,把这个报头和后面的数据拼到一起。

所谓的报头就是一个标签,通过标签表示出当前要把这个消息怎样进行传输。

为啥要往上拼报头?就像商家发货,要套上包装,不止一层。

  1. 防止里边的货物损坏。
  2. 可以在包装上贴上标签,用来写一些信息,如:发件人地址、发件人姓名、收件人地址、收件人姓名、货物名称等。

传输层把这个UDP数据报,交给网络层。

  • ③网络层:

网络层最知名的协议就是IP协议。

IP协议要基于上述数据,打包成一个IP数据报。

IP报头也相当于是一个字符串,包含了另外一组信息(最核心的信息:源IP和目的IP)

网络层数据报准备好,还需要进一步交给数据链路层。

  • ④数据链路层:

数据链路层最知名的协议是以太网。

基于上述数据,还要打包成一个"以太网数据帧"。

接下来这个数据继续往下传输,交给物理层。

  • ⑤物理层:

物理层把上述二进制数据转换成电信号/光信号,此时就真正把数据给发出去了。

上述过程,从应用层到物理层,层层加码,这个过程称为"封装"。

此处省略中间的转发过程,只考虑B的接收。

二、接收方:

  • ①物理层:

网卡接收到的是光信号和电信号,是在物理层,把这个光电信号转换回二进制的数据。

转换回的数据,其实是一个以太网数据帧。

  • ②数据链路层:

 数据链路层需要去掉帧头帧尾,取出中间的载荷,交给上层的网络层IP协议。

以太网数据帧帧头里也会记录这个载荷是不是一个IP数据报。

  • ③网络层:

IP协议针对这里进行解析,解析出IP报头,取出IP协议的载荷,把这里得到的传输层数据报交给上层传输。

IP报头里会记录,载荷是UDP还是TCP。

  • ④传输层:

UDP再进行解析,取出报头,取出载荷,再把这个载荷交给对应的应用层程序。

UDP报头里有一个重要的字段,"目的端口",目的端口是一个具体的应用程序,关联在一起的,因此就可以根据这个端口来把数据交给应用程序了。

  • ⑤应用层:

qq应用程序,qq就会针对应用层协议进行解析,显示到界面上。

上述,从下到上层层解析,就是"分用"。

表示一个网络传输的数据单位:

  • 包(package)
  • 报(datagram)
  • 帧(frame)
  • 段(segment)

http://www.ppmy.cn/news/125066.html

相关文章

knife4j、swagger、springdoc 返回接口分组排序问题

一、直击问题 解决前后顺序对比 解决方法: 在配置文件中添加排序规则方法sortTagsAlphabetically: package com.example.demo.config;import io.swagger.v3.oas.annotations.OpenAPIDefinition; import io.swagger.v3.oas.annotations.enums.Security…

Web基本漏洞--文件上传漏洞

目录 一、文件上传漏洞介绍 1.文件上传漏洞原理 2.文件上传漏洞识别 3. 攻击方式 4.文件上传漏洞的危害 5.文件上传漏洞的防御措施 6.文件上传漏洞的绕过 一、文件上传漏洞介绍 1.文件上传漏洞原理 文件上传漏洞是指由于程序员在对用户文件上传部分的控制不足或者处理缺…

Nginx的搭建和优化

目录 一. Nginx简介1.1 概述1.2 Nginx和Apache优缺点比较 二. Nginx编译安装步骤1 关闭防火墙,安装依赖包2. 创建运行用户和组3. 编译安装 Nginx4. 做软连接并启动nginx5. 停止Nginx6. 添加nginx系统服务方法一:编写脚本方法二 将nginx命令加入服务 7. 查…

ipad平板哪个比较好一点

很抱歉,我无法为您提供具体的推荐,因为我无法获知您的具体需求和偏好。您可以考虑根据自己的需要,比较不同型号 iPad 的配置、功能、价格和用户评价等因素,来选择合适的 iPad 平板电脑。也可以咨询相关销售人员或在线搜索相关信息…

一些平板以及笔记本电脑推荐

推荐一:苹果ipad mini5 7.9英寸 特点:A12芯片,7.9英寸,iPad OS系统,快充 上榜理由:iPad mini配备带神经网络引擎的A12仿生处理器和采用True Tone技术的7.9英寸Retina显示屏。此外,它还支持Appl…

达人评测 荣耀平板V7pro和小米平板5pro的区别 选哪个好

荣耀平板 V7 Pro 搭载了一块 11 英寸、屏幕分辨率为 2560x1600 像素的 2.5K 屏幕。 我用的平板电脑就是活动时8折抢购的 点击开抢 http://www.adiannao.cn/dy 除了支持 DCI-P3 色域显示与 120Hz 刷新率,还针对平板常见的网课常见加入了通过莱茵认证 TUV Full Care 2…

电容笔哪个品牌好?平板电脑好用的电容笔测评

当我们买了IPAD以后,我们都会去考虑要不要买苹果公司的Pencil?事实上,就算是用于绘画,也用不着花费这么多钱购买苹果的Pencil。目前平替电容笔,不但品质优良,而且价格低廉,是一种很好的学习与记…

电容笔和触控笔哪个好?平板电脑好用电容笔推荐

许多人不再只是使用电话设备,而是使用了平板电脑。无论是工作或观看影片,大的显示屏都能让画面更清楚。这将是目前和将来的一个重要的市场。如果能有一款易于使用的电容笔,不仅能极大地提升用户的使用兴趣,而且还能极大地提升工作…