在这里插入图片描述

文章目录

      • 应用层协议的核心定义:“通信合同”的关键内容🥝
      • 应用层协议的分类:公共标准 vs 专有协议🧾
        • 公共标准协议
        • 专有协议
      • 应用层协议与网络应用的关系🤔
        • 案例1:Web应用
        • 案例2:Netflix视频服务
      • 应用层协议的实际工作场景🥝
        • 场景1:HTTP在Web中的应用
        • 场景2:DASH在视频流中的应用

在计算机网络中,进程通过套接字发送和接收数据报文,但这些报文的格式、内容和交互规则是如何定义的?这就是 应用层协议 的作用。

应用层协议为不同端系统上的应用程序提供了通信的“规则手册”,确保双方能够理解彼此的数据。

应用层协议的核心定义:“通信合同”的关键内容🥝

应用层协议定义了以下关键内容,类似于双方达成的“通信合同”:

  1. 报文类型与结构

    • 报文类型:例如,请求报文(Request Message)和响应报文(Response Message)。
    • 报文语法:字段的排列方式和格式。例如,HTTP请求报文包含方法(GET/POST)、URL、协议版本等字段。
    • 字段语义:每个字段的具体含义。例如,HTTP的Content-Type字段表示数据的类型(如html表示网页内容)。
  2. 交互规则

    • 发送时机:进程何时发送报文。例如,Web浏览器在用户输入网址后立即发送HTTP请求。
    • 响应规则:如何处理收到的报文。例如,Web服务器在收到HTTP请求后返回对应的网页内容。

应用层协议的分类:公共标准 vs 专有协议🧾

应用层协议可分为两类,适用场景和特点各不相同:

公共标准协议

RFC(Request for Comments)文档标准化,供全球开发者自由使用。
典型例子:

  • HTTP(超文本传输协议):Web浏览器与服务器通信的标准协议(如访问https://www.baidu.com)。
  • SMTP(简单邮件传输协议):电子邮件的发送协议。
    特点:跨平台兼容性高。例如,任何遵循HTTP标准的浏览器都能访问任何符合标准的Web服务器。
专有协议

由企业或组织自定义,不对外公开。
典型例子:

  • Skype:使用专有的音视频传输协议,优化实时通信性能。
  • Netflix DASH(动态自适应流媒体协议):用于视频流的自适应码率传输。
    特点:灵活性高,但仅限内部或特定生态使用。

应用层协议与网络应用的关系🤔

应用层协议是网络应用的**“一部分”**,而非全部。网络应用通常由多个组件构成,而协议仅定义其中的数据交换规则。

案例1:Web应用

组成部分包括:

  • HTML/CSS/JavaScript:网页内容与交互逻辑的标准。
  • Web浏览器(如Chrome、Edge):解析并渲染网页。
  • Web服务器(如Apache、Nginx):存储并响应网页请求。
  • HTTP协议:定义浏览器与服务器之间的报文格式和交互规则(如GET /index.html HTTP/1.1)。
    可见,HTTP协议仅作为Web应用的“通信规则”,整个应用还包括内容格式、客户端程序等。
案例2:Netflix视频服务

组成部分包括:

  • 视频存储与传输服务器:存储电影并分发流媒体数据。
  • 客户端应用:手机、平板或电视上的Netflix程序。
  • DASH协议(动态自适应流媒体协议):定义客户端与服务器之间视频数据的传输规则(如根据带宽调整视频分辨率)。
    可见,DASH协议仅负责视频流的传输规则,整个服务还包括用户认证、计费系统等。

应用层协议的实际工作场景🥝

场景1:HTTP在Web中的应用

用户行为:在浏览器中输入https://www.google.com
协议流程:

  1. 浏览器发送HTTP请求报文(如GET / HTTP/1.1)。
  2. 服务器返回HTTP响应报文(如HTML页面内容)。
场景2:DASH在视频流中的应用

用户行为:在Netflix上播放《权力的游戏》。
协议流程:

  1. 客户端请求视频的“索引文件”,包含分段视频的地址。
  2. 客户端根据当前带宽下载不同分辨率的视频片段(如720p或1080p)。

如果我的内容对你有帮助,请 点赞 评论 收藏 。创作不易,大家的支持就是我坚持下去的动力!
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/bicheng/96888.shtml
繁体地址,请注明出处:http://hk.pswp.cn/bicheng/96888.shtml
英文地址,请注明出处:http://en.pswp.cn/bicheng/96888.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

小迪web自用笔记33

再次提到预编译,不会改变固定逻辑。id等于什么的只能更换页面。过滤器:代码一旦执行在页面中,就会执行,xss跨站。Js的特性是显示在页面中之后开始执行,那个代码是打印过后然后再渲染。是的,核心是**“打印&…

Zynq开发实践(FPGA之第一个vivado工程)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing 163.com】数字电路设计,如果仅仅是写写代码,做做verilog仿真,那么其实是不需要转移到fpga上面的。这就好比是算法工程师&a…

【Selenium】Selenium 测试失败排查:一次元素定位超时的完整解决之旅

Selenium 测试失败排查:一次元素定位超时的完整解决之旅 在自动化测试过程中,我们经常会遇到元素定位超时的问题。本文记录了一次完整的 Selenium TimeoutException 排查过程,从问题发现到最终解决,涵盖了各种常见陷阱和解决方案。 问题背景 测试用例在执行过程中失败,…

32.网络基础概念(二)

局域网网络传输流程图两台主机在同一个局域网,是否能够直接通信?以太网原理举例:上课,老师点名小王让他站起来回答问题。教室里的其他人是可以听见的,为什么其他人不响应?因为老师叫的是小王,和…

【高并发内存池】六、三种缓存的回收内存过程

文章目录前言Ⅰ. thread cache的内存回收Ⅱ. central cache的内存回收Ⅲ. page cache的内存回收前言 ​ 前面我们将内存的申请流程都走通了,现在就是内存回收的过程,主要是从 thread cache 开始,一层一层往下回收,因为我们调用的…

DeerFlow 实践:华为IPD流程的评审智能体设计

目录 一、项目背景与目标 二、IPD 流程关键评审点与 TR 点解析 (一)4 个关键评审点 (二)6 个 TR 点 三、评审智能体详细设计与协作机制 机制设计核心原则 (一)概念评审(CDCP)…

【ubuntu】ubuntu中找不到串口设备问题排查

ubuntu中找不到串口问题排查1. 检查设备识别情况2. 检查并安装驱动3. 检查内核消息4. 禁用brltty服务1. 停止并禁用 brltty 服务2. 完全移除 brltty 包3. 重启系统或重新插拔设备5.输出结果问题:虚拟机ubuntu中,已经显示串口设备连接成功,但是…

Unity 性能优化 之 静态资源优化 (音频 | 模型 | 纹理 | 动画)

Unity 之 性能优化 -- 静态资源优化参考性能指标静态资源资源工作流程资源分类原理小结Audio 实战优化建议模型导入工作流程DCC中模型导出.DCC中Mesh生产规范模型导出检查流程模型优化建议纹理优化纹理基础概念纹理类型纹理大小纹理颜色空间纹理压缩纹理图集纹理过滤纹理Mipmap…

GitHub 热榜项目 - 日榜(2025-09-13)

GitHub 热榜项目 - 日榜(2025-09-13) 生成于:2025-09-13 统计摘要 共发现热门项目:18 个 榜单类型:日榜 本期热点趋势总结 本期GitHub热榜项目呈现三大技术热点:AI开发工具化(如GenKit、ROMA多智能体框架&#xff…

Pytest 常见问题及其解决方案

常见问题及解决方案 1. 测试通过了,但覆盖率不达标 现象: 虽然所有测试都通过了,但覆盖率报告显示某些代码没有被覆盖。 解决方案: 检查覆盖率配置:确保 .coveragerc 或 pytest.ini 中正确设置了要分析的源代码路径。 使用标记(markers)排除测试文件本身:避免测试代…

直击3D内容创作痛点-火山引擎多媒体实验室首次主持SIGGRAPH Workshop,用前沿技术降低沉浸式内容生成门槛

当3D、VR技术在游戏、教育、医疗、文化领域遍地开花,“内容短缺”却成了制约行业爆发的关键瓶颈——传统3D/4D创作不仅耗时耗力、依赖专业技能,还难以适配消费级设备,让许多创作者望而却步。近日,由火山引擎多媒体实验室联合领域顶…

华为基本命令

我们使用的是华为官方的模拟器eNSP 一、华为设备的模式 华为的设备有两种模式: 用户视图和系统视图 用户视图只能读取,或者进行一些基础查询 系统视图能对设备和接口进行一些配置管理,和一些高级操作 在“用户视图”下使用system-view系统可…

2025.9.14英语红宝书【必背16-20】

单词组合 中文速记句子 英文句子 confine, misery, necessitate, negotiate, preach, precaution, precision, stretch 病人被 confine(限制) 在床上,感受 misery(痛苦),情况 necessitate(需要) 医生 negotiate(商讨),牧师 preach(布道) 并提醒 precaution(预防)…

HUST-STAR电控组视觉任务

视觉任务 注意:视觉部分建议采用 python 完成,下面教程也大多针对 python。其原因在于 python 配置相应环境更为轻松,且内置库较为丰富,属于初学者友好类型。没接触过 python 也不必担心,它的大体逻辑与 C 相近&#…

压缩和归档 文件传输

压缩和归档压缩:4G----1.5Gbzip2-bunzip2 gzip-gunzip xz-unxzgzip 要压缩的文件原来的文件就会被删除 (压缩和解压缩)会生成一个 aaa.gz 的文件归档: 4G----4G 打包tarc 创建归档文件 v 看到创建的详细过程 f 文件类型 t 不展开归档文件&…

深入探索 C++ 元组:从基础到高级应用

在现代 C 编程中,元组(std::tuple)是一个强大且灵活的容器,能够存储和操作多个不同类型的数据。它在标准库中扮演着重要角色,并在实际开发中提供了诸多便利。本文将全面探讨 C 元组的各个方面,从基础用法到…

Excel批量处理一列数据---分列功能

0 Preface/Foreword当有多行数据需要处理时,为了减少手动操作,可以EXCEL数据分列功能可以提高效率。1 数据分列1.1 数据分类步骤如下:选中需要处理的一列数据;选择菜单栏中的“数据”;选择分列按照需求设置即可1.2 查找…

HTTPS + 域名 + 双向证书认证(下)

文章目录1. .p12文件1.1 主要特点1.2 常见用途1.3 常见操作1.4 与其他格式的区别1.5 与公钥的区别和联系1.6 安全性注意事项2. Nginx 配置2.1 location指令2.2 alias 与 root 指令的区别3 双向认证配置3.1 创建根证书3.1.1 生成根CA的私钥3.1.2 生成请求证书3.1.3 生成自签署CA…

嵌入式 - ARM3

一、arm启动C语言1. 配置异常向量表2. 实现了软件中断的部分注:ldmfd sp!, {r0-r12, lr} ldmfd sp!, {r0-r12, pc}^ bx lr 左半部分:繁琐易理解的返回方式:先弹出所有通用寄存器和lr &…

如何通过标签和分类提升知识复用效率

通过标签和分类提升知识复用效率,其核心在于构建一个结构化与灵活性兼备的知识组织体系。这需要将分类的“确定性”与标签的“多维性”进行有效结合,为知识的存储与检索建立清晰的“骨架”和丰富的“神经网络”。具体实践中,要求我们进行顶层…