《计算机网络》(第8版)第8章 互联网上的音频/视频服务 复习笔记
第 8 章 互联网上的音频/视频服务
一、概述
1 多媒体信息的特点
多媒体信息(包括声音和图像信息)最主要的两个特点如下:
(1)多媒体信息的信息量往往很大;
(2)在传输多媒体数据时,对时延和时延抖动均有较高的要求。
2 音频/视频服务的分类
目前互联网提供的音频/视频服务大体上可分为三种类型:
(1)流式存储音频/视频:能边下载边播放;
(2)流式实况音频/视频:发送方边录制音频/视频节目边发送,接收时也能够连续播 放;
(3)交互式音频/视频:用户使用互联网和其他人进行实时交互式通信。
二、流式存储音频/视频
1 具有元文件的万维网服务器
在万维网服务器中,除了真正的音频/视频文件外,还增加一个元文件以提高流式存储 音频/视频的下载效率。
2 媒体服务器
为了更好地提供播放流式音频/视频文件的服务,可以使用两个分开的服务器,即一个 普通的万维网服务器和一个媒体播放器。
媒体服务器又称流式服务器,媒体服务器与普通的万维网服务器的最大区别就是:媒 体服务器是专门为播放流式音频/视频文件而设计的。
3 实时流式协议 RTSP
实时流式协议 RTSP 又称为带外协议,它以客户/服务器方式工作,其本身并不传送数 据,而仅仅是使媒体播放器能够控制多媒体流的传送。
图 8-1 表示使用RTSP 的媒体服务器的工作过程。
图 8-1 使用RTSP 的媒体服务器的工作过程
三、交互式音频/视频
1 IP 电话概述
(1)IP 电话的定义
狭义的 IP 电话就是指在 IP 网络上打电话,广义的 IP 电话则不仅仅是电话通信,而且 还可以是 IP 网络上进行的交互式多媒体实时通信(包括话音、视像等),甚至还包括 即时传信 IM。
(2)IP 电话网关
IP 电话网关是公用电话网与 IP 网络的接口设备,它的作用是: ①在电话呼叫阶段和呼叫释放阶段进行电话信令的转换;
②在通话期间进行话音编码的转换。
(3)IP 电话的通话质量
IP 电话的通话质量主要由通话双方端到端的时延和时延抖动、话音分组的丢失率决定。
2 IP 电话所需要的几种应用协议
在 IP 电话的通信中,至少需要两种应用协议:
(1)信令协议:使我们在互联网上能找到被叫用户;
(2)话音分组的传送协议:使用于电话通信的话音数据能够以时延敏感属性在互联网 中传送。
3 实时运输协议 RTP
实时运输协议 RTP 为实时应用提供端到端的的运输,但不提供任何服务质量的保证。
4 实时运输控制协议 RTCP
实时运输控制协议 RTCP 的主要功能是:服务质量的监视与反馈、媒体间的同步(如 某一个 RTP 发送的声音和图像的配合),以及多播组中成员的标志。
5 H.323
H.323 是互联网的端系统之间进行实时声音和视频会议的标准;它不是一个单独的协 议而是一组协议。
6 会话发起协议 SIP
由于 H.323 太过复杂而不便于发展基于 IP 的新业务,所以需要一套简单的标准;会话 发起协议 SIP 也就成为了互联网的建议标准;SIP 使用文本方式的客户/服务器协议,
包含两种构件(用户代理和网络服务器)。
四、改进“尽最大努力交付”的服务
1 使互联网提供服务质量
服务质量 QoS 是服务性能的总效果,它决定了一个用户对服务的满意程度;互联网应 当设法增加一些机制(分组的分类、管制、调度以及呼叫接纳)来提供一定的服务质 量。
2 调度和管制机制
(1)调度机制
“调度”就是指排队的规则,常见有以下几种策略:
①先进先出 FIFO;
②简单地按优先级排队;
③公平排队;
④加权公平排队 WFQ。
(2)管制机制
对一个数据流,可根据以下三个方面进行管制:
①平均速率:一定时间间隔内通过的分组数;
②峰值速率:峰值速率限制了数据流在非常短的时间间隔内的流量;
③突发长度:非常短的时间间隔内连续注入到网络中的分组数。
3 综合服务 IntServ 与资源预留协议 RSVP
(1)综合服务 IntServ
IntServ 可对单个的应用会话提供服务质量的保证,它定义了两类服务:
①有保证的服务:保证一个分组在通过路由器时的排队时延有一个严格的上限;
②负载受控的服务:可以使应用程序得到比通常的“尽最大努力”更加可靠的服务。
IntServ 共有以下四个组成部分:
①资源预留协议 RSVP:它是 IntServ 的信令协议;
②接纳控制:决定是否同意对某一资源的请求;
③分类器:把进入路由器的分组进行分类,并根据分类的结果把不同类别的分组放入 特定的队列;
④调度器:根据服务质量要求决定分组发送的前后顺序。
(2)资源预留协议 RSVP
一个会话声明它所需的服务质量后,路由器能够确认是否有足够的资源来满足该会话 的要求;而 RSVP 协议使得应用能将自己的 QoS 要求通过信令通知给网络,网络可以 对此应用预留相应的资源,它在进行资源预留时采用了多播树的方式。
4 区分服务 DiffServ
由于综合服务 IntServ 和资源预留协议 RSVP 较为复杂,很难在大规模的网络中实现, 为此提出区分服务的策略,区分服务 DiffServ 的要点如下:
(1)DiffServ 力图不改变网络的基础结构,但在路由器中增加区分服务的功能;
(2)网络被划分为许多个 DS 域;
(3)边界路由器中的功能较多,可分为分类器和通信量调节器两大部分;
(4)DiffServ 提供了一种聚合功能。
相关文章:

《计算机网络》(第8版)第8章 互联网上的音频/视频服务 复习笔记
第 8 章 互联网上的音频/视频服务 一、概述 1 多媒体信息的特点 多媒体信息(包括声音和图像信息)最主要的两个特点如下: (1)多媒体信息的信息量往往很大; (2)在传输多媒体数据时&a…...

linux进程控制——进程替换——exec函数接口
前言: 本节内容进入linux进程控制板块的最后一个知识点——进程替换。 通过本板块的学习, 我们了解了进程的基本控制方法——进程创建, 进程退出, 进程终止, 进程替换。 进程控制章节和上一节进程概念板块都是在谈进程…...

Apache解析漏洞~CVE-2017-15715漏洞分析
Apache解析漏洞 漏洞原理 # Apache HTTPD 支持一个文件拥有多个后缀,并为不同后缀执行不同的指令。比如如下配置文件: AddType text/html .html AddLanguage zh-CN .cn# 其给 .html 后缀增加了 media-type ,值为 text/html ;给 …...

Xilinx管脚验证流程及常见问题
1 流程 1.1 新建I/O Planning Project I/O Planning Project中可以不需要RTL的top层.v代码,仅图形化界面即可配置管脚约束XDC文件的生成: Create I/O Ports: 导出XDC文件和自动生成的top_interface.v文件: 1.2 新建test Project …...
格雷厄姆的《聪明的投资者》被誉为“投资圣经”
本杰明格雷厄姆的《聪明的投资者》(The Intelligent Investor: A Book of Practical Counsel)是投资领域的一部经典之作,被誉为“投资圣经”。以下是对该书的详细解析: 一、书籍基本信息 书名:《聪明的投资者》&…...
TypeScript声明文件
TypeScript声明文件 在JavaScript的生态系统中,随着项目的复杂度和规模不断增加,开发者对于类型安全和代码质量的追求也日益增长。TypeScript,作为JavaScript的一个超集,通过添加静态类型检查和ES6等新特性支持,极大地…...

.NET_WPF_使用Livecharts数据绑定图表
相关概念 LiveCharts 是一个开源的图表库,适用于多种 .NET 平台,包括 WPF、UWP、WinForms 等。LiveCharts 通过数据绑定与 MVVM 模式兼容,使得视图模型可以直接控制图表的显示,无需直接操作 UI 元素。这使得代码更加模块化&#x…...

一句JS代码,实现随机颜色的生成
今天我们只用 一句JS代码,实现随机颜色的生成,首先看一下效果: 每次刷新浏览器背景颜色都不一样 实现此效果的JS函数 : let randomColor () > ...: 定义一个箭头函数randomColor,用于生成一个随机颜色。 Math.ra…...

校园抢课助手【7】-抢课接口限流
在上一节中,该接口已经接受过风控的处理,过滤掉了机器人脚本请求,剩下都是人为的下单请求。为了防止用户短时间内高频率点击抢课链接,海量请求造成服务器过载,这里使用接口限流算法。 先介绍下几种常用的接口限流策略…...
char类型和int类型
一、char类型 在Java中,char(字符)类型用于表示单个字符,它是基本数据类型之一。以下是关于Java中char类型的一些重要信息: 表示方式: char类型用于存储Unicode字符,占用16位(即2个字…...
C++参悟:stl中的比较最大最小操作
stl中的比较最大最小操作 一、概述二、最小值1. min2. min_element 三、最大值1. max2. max_element 四、混合1. minmax2. minmax_element 一、概述 记录这里C11中常用的最小值和最大值的比较函数,最好的参考资料其实就是 https://zh.cppreference.com 最重要的查…...
JAVA读取netCdf文件并绘制热力图
读取netCdf的依赖 <dependency><groupId>ucar</groupId><artifactId>netcdfAll</artifactId><version>5.5.3</version><scope>system</scope><exclusions><exclusion><groupId>org.slf4j</groupId…...

数据结构——八大排序
一.排序的概念和其应用 1.1排序的概念 排序:排列或排序是将一组数据按照一定的规则或顺序重新组织的过程,数据既可以被组织成递增顺序(升序),或者递减顺序(降序)。稳定性:假定在待…...
【Unity】RPG2D龙城纷争(十九)流程与UI界面(终章)
更新日期:2024年8月1日。 项目源码:第五章发布(正式开始游戏逻辑的章节) 索引 简介一、游戏流程1.初始化流程2.开始流程3.关卡流程4.关卡结束流程5.启用所有流程二、UI界面逻辑1.开始界面2.存档界面3.关卡界面DataRegion 数据显示逻辑区域RoundRegion 回合逻辑区域RoleMenu…...

C#类和结构体的区别
1、类class是引用类型,多个引用类型变量的值会互相影响。存储在堆(heap)上 2、结构体struct是值类型,多个值类型变量的值不会互相影响。存储在栈(stack)上 类结构关键字classstruct类型引用类型值类型存储…...
【RabbitMQ】RabbitMQ持久化
一、简介 RabbitMQ的持久化机制是一种确保数据在RabbitMQ服务重启或异常情况下不会丢失的重要特性。RabbitMQ的持久化主要包括三个方面的内容:交换器的持久化、队列的持久化、消息的持久化。 二、交换器的持久化 1、实现方式 在RabbitMQ中,实现交换器…...
算法刷题笔记 Kruskal算法求最小生成树(详细算法介绍,详细注释C++代码实现)
文章目录 题目描述基本思路实现代码 题目描述 给定一个n个点m条边的无向图,图中可能存在重边和自环,边权可能为负数。求最小生成树的树边权重之和,如果最小生成树不存在则输出impossible。 最小生成树的概念:给定一张边带权的无向…...

5年经验的软件测试人员,碰到这样的面试题居然会心虚......
我们这边最近的面试机会比较多,但是根据他们的反馈,结束后大部分都没音信了,因为现在企业面试问的非常多,范围非常广,而且开放性的问题很多,很多人即便面试前刷了成百上千道面试题,也很难碰到一…...

C#进阶-轻量级ORM框架Dapper的使用教程与原理详解
本文详细介绍了Dapper在C#中的使用方法,包括Dapper的基本概念、与其他持久层框架的比较、基本语法和高级语法的使用,并通过实例讲解了如何在项目中集成和使用Dapper。Dapper以其高效的性能和简洁的API受到开发者的青睐,适用于各种数据库操作需…...
Windows图形界面(GUI)-MFC-C/C++ - 编辑框(Edit Control) - CEdit
公开视频 -> 链接点击跳转公开课程博客首页 -> 链接点击跳转博客主页 目录 编辑框(Edit Control) - CEdit 基本概念 成员函数 示例代码 编辑框(Edit Control) - CEdit 基本概念 编辑框(Edit Control)是一个允许用户输入和编辑文本的窗…...
FFmpeg 低延迟同屏方案
引言 在实时互动需求激增的当下,无论是在线教育中的师生同屏演示、远程办公的屏幕共享协作,还是游戏直播的画面实时传输,低延迟同屏已成为保障用户体验的核心指标。FFmpeg 作为一款功能强大的多媒体框架,凭借其灵活的编解码、数据…...
LLM基础1_语言模型如何处理文本
基于GitHub项目:https://github.com/datawhalechina/llms-from-scratch-cn 工具介绍 tiktoken:OpenAI开发的专业"分词器" torch:Facebook开发的强力计算引擎,相当于超级计算器 理解词嵌入:给词语画"…...
3403. 从盒子中找出字典序最大的字符串 I
3403. 从盒子中找出字典序最大的字符串 I 题目链接:3403. 从盒子中找出字典序最大的字符串 I 代码如下: class Solution { public:string answerString(string word, int numFriends) {if (numFriends 1) {return word;}string res;for (int i 0;i &…...

三分算法与DeepSeek辅助证明是单峰函数
前置 单峰函数有唯一的最大值,最大值左侧的数值严格单调递增,最大值右侧的数值严格单调递减。 单谷函数有唯一的最小值,最小值左侧的数值严格单调递减,最小值右侧的数值严格单调递增。 三分的本质 三分和二分一样都是通过不断缩…...

零知开源——STM32F103RBT6驱动 ICM20948 九轴传感器及 vofa + 上位机可视化教程
STM32F1 本教程使用零知标准板(STM32F103RBT6)通过I2C驱动ICM20948九轴传感器,实现姿态解算,并通过串口将数据实时发送至VOFA上位机进行3D可视化。代码基于开源库修改优化,适合嵌入式及物联网开发者。在基础驱动上新增…...

【LeetCode】算法详解#6 ---除自身以外数组的乘积
1.题目介绍 给定一个整数数组 nums,返回 数组 answer ,其中 answer[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积 。 题目数据 保证 数组 nums之中任意元素的全部前缀元素和后缀的乘积都在 32 位 整数范围内。 请 不要使用除法,且在 O…...
SpringAI实战:ChatModel智能对话全解
一、引言:Spring AI 与 Chat Model 的核心价值 🚀 在 Java 生态中集成大模型能力,Spring AI 提供了高效的解决方案 🤖。其中 Chat Model 作为核心交互组件,通过标准化接口简化了与大语言模型(LLM࿰…...
Python 高效图像帧提取与视频编码:实战指南
Python 高效图像帧提取与视频编码:实战指南 在音视频处理领域,图像帧提取与视频编码是基础但极具挑战性的任务。Python 结合强大的第三方库(如 OpenCV、FFmpeg、PyAV),可以高效处理视频流,实现快速帧提取、压缩编码等关键功能。本文将深入介绍如何优化这些流程,提高处理…...

针对药品仓库的效期管理问题,如何利用WMS系统“破局”
案例: 某医药分销企业,主要经营各类药品的批发与零售。由于药品的特殊性,效期管理至关重要,但该企业一直面临效期问题的困扰。在未使用WMS系统之前,其药品入库、存储、出库等环节的效期管理主要依赖人工记录与检查。库…...
Vue 3 + WebSocket 实战:公司通知实时推送功能详解
📢 Vue 3 WebSocket 实战:公司通知实时推送功能详解 📌 收藏 点赞 关注,项目中要用到推送功能时就不怕找不到了! 实时通知是企业系统中常见的功能,比如:管理员发布通知后,所有用户…...