任务二 应用层11
知识点
1.应用层是什么
- 应用:就是指计算机或手机中安装的各种软件。
- 应用层规定了应用程序之间如何通信(交换信息)
- 应用层负责制定应用程序之间通信的协议规则。
- 应用层是为应用程序之间实现通信的协议的集合。
- 简言之:应用层就是通信协议层。
- 写信格式和对话规则,比如 HTTP、SMTP、DNS;
- 它定义了数据长什么样、双方怎么交互,并且它产生的报文确实会被下层传输
- 应用层是OSI参考模型中的第 7 层,也是最高层。
- 为应用程序提供访问网络服务的接口和协议。
- 应用层不等于浏览器、微信、邮件客户端等具体软件,而是这些软件在通信时使用的网络协议和服务规范。
- 支持常见网络功能,如网页浏览、邮件、文件传输、域名解析、远程登录等
- 为应用程序提供访问网络服务的接口
应用层是应用进程之间通信所遵循的协议规则、数据格式、语义和交互时序的集合。
2.应用层的职责是什么
应用层只负责为用户的应用程序提供网络服务。
3.应用层的功能特点
- 应用层是OSI 模型中最靠近用户的一层。
- 只为应用程序提供网络服务
- 不为其他任何OSI层提供服务
4.常见应用层协议
- 网页浏览:HTTP、HTTPS
- 文件传输:FTP、TFTP
- 电子邮件:SMTP、POP3、IMAP
- 域名解析:DNS
- 远程登录:Telnet、SSH
5.数据单位
应用层处理的数据通常称为 报文 / 消息(Message)。
6.OSI高 3 层共同特点是什么?
答:包含会话层、表示层、应用层。 共同特点: ①处理的信息单位都是报文; ②提供面向用户的服务; ③端到端的数据处理,不考虑信息怎么传输。
7.区分会话层、表示层、应用层的作用
答:
- 会话层:管理通信会话(建立 / 维持 / 断开连接,同步检查点);
- 表示层:处理数据的表示形式(格式转换、加密压缩);
- 应用层:直接给用户应用程序提供网络服务。
应用层扩展
举例:微信图片
- 微信(应用层程序)拿到图片文件。
- 调用应用层协议,把图片打包成应用层报文,标记发给谁。
- **交给下一层(表示层)**继续处理。
模拟报文(真实报文不会明文裸传,是私有加密协议)
【应用层报文】
头部标记:目标用户ID:0086-张三
头部标记:发送方ID:0086-我
头部标记:消息类型:图片
头部标记:图片文件名:海边.jpg
头部标记:图片大小:2.3MB
——————————
数据载荷:(图片二进制数据)
报头
报头标记写明
- 是谁发、
- 发给谁、
- 什么类型的数据(图片/文字)**
发送端:照片什么时候进入应用层?
当应用程序决定把照片发到网络时,比如:
- 浏览器上传照片
- 微信发送图片
- 邮件添加附件
- FTP 上传文件
应用程序会读取照片文件,把照片字节流交给某个应用层协议处理,比如:
- HTTP / HTTPS
- FTP
- SMTP
- 微信私有协议等
这时,照片数据就进入应用层。
更准确地说:
应用程序把照片交给应用层协议进行封装的那一刻,照片进入应用层处理范围。
在应用层里,照片可能被:
- 放进 HTTP 请求体;
- 做成 MIME 附件;
- 用 base64 编码;
- 分块、压缩、加密;
- 加上文件名、类型等元信息。
此时照片是应用层报文的一部分。
发送端:照片什么时候离开应用层?
应用层协议把照片封装好后,会生成一个应用层报文,比如:
POST /upload HTTP/1.1
Host: example.com
Content-Type: multipart/form-data
...照片二进制数据...
然后这个应用层报文被交给下面的传输层,比如 TCP 或 UDP。
这一刻:
照片数据离开应用层,进入传输层处理。
注意:照片并没有消失,它变成了 TCP/UDP 载荷的一部分,继续往下走:
应用层 → 传输层 → 网络层 → 链路层 → 物理层
所以“离开应用层”不是离开网络,而是不再由应用层协议处理,改由传输层处理。
接收端:照片什么时候进入应用层?
数据经过网络到达接收端后,会从下往上走:
物理层 → 链路层 → 网络层 → 传输层 → 应用层
当传输层把重组好的数据交给应用层协议时,比如:
- Web 服务器收到 HTTP 请求;
- FTP 服务器收到文件数据;
- 邮件服务器收到 SMTP 数据;
- 微信服务器收到图片消息。
这时,照片数据进入接收端的应用层。
应用层协议开始解析:
- HTTP 服务器解析 multipart;
- 邮件客户端解析 MIME;
- FTP 服务器接收文件流;
- 私有协议解析图片消息。
然后提取出照片的原始字节。
接收端:照片什么时候离开应用层?
当应用层协议解析完成,把照片字节流交给接收方的应用程序时,照片就离开应用层。
比如:
- HTTP 服务器把照片交给后端程序;
- 后端程序把照片保存到磁盘;
- 微信把照片显示到聊天窗口;
- 邮件客户端把附件保存到本地。
这时照片进入的是:
应用程序、文件系统、相册、数据库等,不再是网络协议栈的应用层。
用一张表总结
| 阶段 | 发送端 | 接收端 |
|---|---|---|
| 进入应用层 | 应用程序读取照片,交给 HTTP/FTP/SMTP 等协议封装 | 传输层把数据交给 HTTP/FTP/SMTP 等应用层协议 |
| 在应用层 | 照片成为应用层报文载荷,可能被编码、分块、加密 | 应用层协议解析报文,提取照片数据 |
| 离开应用层 | 应用层报文交给 TCP/UDP,进入传输层 | 应用层把照片字节流交给应用程序保存/显示 |
关键理解
- 应用层不实际搬运照片,搬运靠 TCP/IP、网卡、路由器等。
- 但照片必须经过应用层协议的封装和解封装。
- “进入应用层”= 照片开始被应用层协议处理。
- “离开应用层”= 照片不再由应用层协议处理,交给下层或交给应用程序。
- 如果照片只是本地查看,不经过网络,那它根本不经过应用层网络协议栈。
一句话:
发送端:应用程序把照片交给应用层协议时进入,应用层封装完交给 TCP/UDP 时离开。接收端:传输层把数据交给应用层协议时进入,应用层解析完交给应用程序时离开。
豆包作业
一、填空题(共15空,每空2分,共30分)
- OSI模型高3层分别是会话层、______、应用层。
- 高3层处理的信息单位都是______。
- 会话层通过______来协调半双工通信,只有持有它的一方才可以发送数据。
- 会话层在数据流中定义______,网络故障时可以从此位置恢复重传,不需要从头传输。
- 会话连接与传输连接存在一对一、一对多、______三种关系。
- 常见会话层协议有结构化查询语言SQL、______。
- 表示层关心传输信息的语法和______。
- 表示层核心工作包含语法转换、语法协商、______。
- 表示层可以完成数据格式转换、加密、______三类典型操作。
- 语法转换中,发送端将抽象语法转换为______,接收端反向转换。
- ______是OSI参考模型中最靠近用户的一层,为应用程序提供网络服务。
- 应用层协议举例:文件传输协议、电子邮件协议、______。
- 会话层负责在两个网络节点建立、维护和______面向用户的连接。
- 表示层语法转换可以解决不同计算机______不兼容的问题。
- OSI高层属于端到端数据处理,不考虑信息的______问题。
二、单项选择题(每题2分,共40分)
- 下列不属于OSI高三层的是( ) A.会话层 B.表示层 C.应用层 D.传输层
- OSI高三层处理的数据单位是( ) A.比特 B.帧 C.报文 D.分组
- 会话层半双工通信依靠( )控制发送权限 A.校验码 B.数据令牌 C.端口号 D.IP地址
- 会话层的检查点功能主要目的是( ) A.加密数据 B.故障断点续传 C.压缩文件 D.编码转换
- 一个会话连接对应多个传输连接,这种关系叫做( ) A.一对一 B.一对多 C.多对一 D.多对多
- 下面属于会话层协议的是( ) A.HTTP B.RPC C.FTP D.SMTP
- 表示层不包含以下哪项功能( ) A.数据加密 B.数据压缩 C.编码转换 D.端口寻址
- 表示层负责转换( ) A.数据表示格式 B.物理电平信号 C.路由选择 D.建立端口连接
- 抽象语法与传送语法的转换,是哪一层的功能( ) A.物理层 B.会话层 C.表示层 D.应用层
- 表示层协商传送语法的功能称为( ) A.语法转换 B.语法协商 C.会话同步 D.令牌管理
- OSI模型中最靠近用户的层次是( ) A.会话层 B.表示层 C.应用层 D.物理层
- 应用层的作用是( ) A.直接为应用程序提供网络服务 B.产生比特流 C.控制对话谁能发言 D.加密数据包
- 下列属于应用层协议的是( ) A.SQL B.RPC C.超文本传输协议 D.以上都不是
- 会话层在OSI七层模型中的层级是( ) A.第4层 B.第5层 C.第6层 D.第7层
- 表示层位于OSI模型的( ) A.第5层 B.第6层 C.第7层 D.第3层
- 物理层传输的数据单位是( ) A.报文 B.比特 C.帧 D.段
- 物理层主要传输的是( ) A.比特流 B.报文 C.分组 D.数据段
- 多个会话连接共用同一个传输连接,该关系是( ) A.一对一 B.一对多 C.多对一 D.以上都不对
- 表示层处理信息的( ) A.语法、语义 B.路由 C.端口 D.比特电平
- 会话层同步服务使用( )实现断点续传 A.令牌 B.检查点 C.密钥 D.压缩算法
三、多项选择题(每题3分,共30分)
- OSI高3层包含( ) A.会话层 B.表示层 C.应用层 D.网络层
- 会话连接与传输连接的关系包含( ) A.一对一 B.一对多 C.多对一 D.多对多
- 表示层可以实现的功能有( ) A.语法转换 B.数据加密 C.数据压缩 D.会话令牌管理
- 属于表示层典型数据处理操作的是( ) A.数据格式转换 B.加密 C.压缩 D.会话同步
- 会话层的功能包含( ) A.建立维护释放会话连接 B.令牌协调半双工通信 C.设置检查点同步 D.编码格式转换
- 下列属于会话层协议的有( ) A.SQL B.RPC C.HTTP D.FTP
- 应用层协议例子包含( ) A.文件传输协议 B.电子邮件协议 C.超文本传输协议 D.远程过程调用RPC
- OSI高三层共同特点有( ) A.处理报文 B.面向用户服务 C.端到端处理 D.考虑链路如何传输
- 表示层连接管理包含( ) A.建立表示连接 B.传输同步控制 C.终止连接 D.数据令牌分配
- 会话层支持的通信模式有( ) A.全双工 B.半双工 C.单工 D.以上都不对
四、判断题(每题1分,共10分,对打√,错打×)
- OSI高三层处理信息单位是报文。( )
- 会话层使用数据令牌用于半双工通信控制。( )
- 表示层可以完成数据加密、数据压缩。( )
- 应用层负责把不同编码格式互相转换。( )
- 会话层设置检查点,故障后可以从检查点继续传输。( )
- 多对一代表多个会话连接共用同一个传输连接。( )
- 应用层是OSI七层模型的第7层,最靠近用户。( )
- 表示层关心传输信息的语法和语义。( )
- 物理层传输的数据单元是帧。( )
- 会话层协议包含SQL和RPC。( )
参考答案
一、填空题
- 表示层
- 报文
- 数据令牌
- 检查点
- 多对一
- 远程过程调用RPC
- 语义
- 连接管理
- 数据压缩
- 传送语法
- 应用层
- 超文本传输协议
- 释放
- 数据表示方式
- 传输及怎样传输
二、单选题 1.D 2.C 3.B 4.B 5.B 6.B 7.D 8.A 9.C 10.B 11.C 12.A 13.C 14.B 15.B 16.B 17.A 18.C 19.A 20.B
三、多选题 1.ABC 2.ABC 3.ABC 4.ABC 5.ABC 6.AB 7.ABC 8.ABC 9.ABC 10.AB
四、判断题 1.√ 2.√ 3.√ 4.× 5.√ 6.√ 7.√ 8.√ 9.× 10.√