11.5 媒体服务器的特征和接纳控制

这篇具有很好参考价值的文章主要介绍了11.5 媒体服务器的特征和接纳控制。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

11.5 媒体服务器的特征和接纳控制,程序猿之计算机操作系统,计算机操作系统

11.5 媒体服务器的特征和接纳控制,程序猿之计算机操作系统,计算机操作系统

11.5 媒体服务器的特征和接纳控制

随着数字化媒体内容的日益增长,媒体服务器在提供高效、可靠的多媒体数据存储和传输方面发挥着重要作用。媒体服务器的设计和实现面临着独特的挑战,这些挑战主要源于多媒体数据的特性,如大数据量、高数据传输率和对实时性的严格要求。本节将探讨媒体服务器的几个关键特征及其对接纳控制机制的影响。

11.5.1 媒体服务器的特征

1. 多媒体文件的多种媒体性

数字电影或任何多媒体内容通常包含多种媒体类型,如视频、音频(可能有多种语言)、以及不同国家文字的字幕。这些不同类型的媒体数据流在播放时必须保持同步,以提供连贯的观看体验。媒体服务器必须具备同步这些多种媒体数据流的能力,以防止播放过程中的任何不同步现象。

2. 拉型和推型文件服务器
  • 拉型服务器:传统文件服务器采用的模式,用户需要不断发出请求以“拉”取数据。这种模式对于多媒体文件而言可能导致实时性要求难以满足,因为它要求用户以精确的时间间隔发出读取命令,同时要求服务器能及时提供数据。
  • 推型服务器:为了解决拉型模式的问题,多媒体(视频)服务器采用了类似录像机的工作方式,即在接收到开始命令后,服务器会定时“推”送数据到客户端。这种方式更适合于处理多媒体数据,因为它能更好地保证数据的连续性和实时性。
3. 多媒体文件的存储空间分配方式

与传统文件系统采用的基于盘块的离散分配方式不同,多媒体文件系统主要采用连续分配方式来存储文件。这是因为多媒体应用需要提供恒定速率的数据流,并能及时检索数据。虽然这种方式可能导致更多的内部和外部磁盘碎片,但它能够以牺牲空间为代价换取时间,从而满足多媒体数据传输的实时性要求。

4. 人机交互性

媒体服务器应支持强大的人机交互功能,允许用户根据个人喜好选择、播放和控制媒体内容。这包括语言选择、字幕切换、暂停/播放、快进/快退等操作。相较于传统电视传输,实现这种交互性的媒体服务器在技术上更为复杂,主要体现在需要为每个用户独立维护一个或多个信道,并能同时支持多用户对多种节目的个性化观看和控制。

接纳控制

媒体服务器的设计必须考虑到如何有效管理和调度资源,以支持上述特征所述的高级功能。接纳控制是媒体服务器用来保证系统资源不会被过度请求的机制,它基于系统的当前负载和可用资源,决定是否接受新的用户请求。这一机制对于保持系统性能和确保所有用户获得满意的服务质量(QoS)至关重要。

在实际应用中,媒体服务器的接纳控制策略需要综合考虑多种因素,如服务器的处理能力、存储空间的分配策略、网络带宽的限制,以及用户的交互需求等,以实现对多媒体数据高效、稳定的管理和传输。

 11.5 媒体服务器的特征和接纳控制,程序猿之计算机操作系统,计算机操作系统

 

11.5.2 存储器管理中的接纳控制

为了确保软实时(SRT)任务的实时性,存储器管理系统必须能够及时提供数据。这一能力的关键在于确保SRT任务运行所需的数据始终驻留在物理内存中,从而避免因数据不在内存而导致的缺页中断。为此,引入了存储器页面锁定功能,以及存储器代理和控制器的概念,旨在优化存储器的管理和分配,保障任务的实时性。

1. 存储器页面锁定功能

存储器页面锁定是一种避免SRT任务在运行时发生缺页中断的有效方法。通过将任务运行所需的代码和数据锁定在物理内存中,可以确保任务的截止时间得到保障。然而,鉴于物理内存的容量有限且十分宝贵,必须谨慎地管理锁定内存的使用。大多数操作系统规定,只有一部分内存空间(通常是60%~70%)可以分配给SRT任务,以减少对系统综合性能的影响。

2. 存储器代理

存储器代理的引入旨在为每个SRT任务预留必要的存储空间。这一机制类似于处理器资源的预留,通过锁定一定量的内存空间,分为接纳存储空间(已分配给接纳的SRT任务)和可利用存储空间(可供新预留请求使用)两部分。在分配全局预留存储空间时,必须确保为内核和交互式进程保留足够空间,避免这些进程因内存不足而频繁发生页面交换。SRT任务在请求加入系统时,必须向存储器代理申明其所需的内存量。如果请求的存储空间小于或等于可用存储空间,存储器代理则接纳该请求并为之预留存储空间;否则,请求将被拒绝。每个被接纳的SRT任务都会获得一个预留标识符ID,以便存储器控制器的管理和验证。

3. 存储器控制器

存储器控制器负责管理和锁定为SRT任务预留的内存页面,确保CPU能够及时访问到数据。当SRT任务执行时,它会将其预留ID传递给存储器控制器,后者通过预留表验证ID的合法性。验证通过后,控制器为SRT任务分配并锁定相应的存储器,并建立起存储段与任务地址空间之间的映射关系。SRT任务执行完成后,需要向存储器管理程序发出释放请求,包含存储器的钥匙,以便释放所占用的锁定存储空间,并将其返回给存储器代理,以便再次利用。

通过这样的存储器管理和接纳控制策略,可以有效保障SRT任务的实时性,同时合理利用有限的物理内存资源,保持系统的高性能运行。这种方法在多媒体服务器、实时计算系统等场合尤为重要,其中对数据访问的实时性有严格要求。

 11.5 媒体服务器的特征和接纳控制,程序猿之计算机操作系统,计算机操作系统

 

11.5.3 媒体服务器的接纳控制

媒体服务器的接纳控制是确保服务质量(QoS)的关键机制,特别是在面对多用户请求多媒体数据流时。由于每个数据流都有其定时要求,接纳控制功能的作用是根据特定的算法决定是否接受某个用户对特定数据流的请求,从而保证所有服务请求的实时性。

媒体服务器的服务质量

媒体服务器需提供不同级别的服务质量以满足不同用户需求,通常分为以下三种类型:

  1. 确定型保证:提供最高级别的服务质量,确保所有SRT任务的截止时间得到完全保障。实现此类保证需要在接纳控制算法中考虑到系统运行中所有与实时性相关部分的最坏情况,如最长的磁盘寻道时间和旋转延迟时间等。

  2. 统计型保证:以较高概率保证SRT任务的截止时间,假定系统运行在一般情况下而非最坏情况,提供的是一种概率上的服务质量保证。

  3. 尽力而为型保证:不为SRT任务提供截止时间保障,仅在处理所有确定型和统计型服务后,如果仍有剩余资源,则调度此类任务运行。

接纳控制

接纳控制的条件因服务质量保证的不同而异。基本上,接纳控制需要考虑以下两方面的计算:

  1. 服务时间计算:首先计算播放每一帧所需的服务时间,然后计算每个周期内播放一帧时所需的总服务时间。这包括了每个客户端请求的数字电影的帧数据块数Ki,从而处理机需处理K1, K2, ..., Kj, ..., Kn序列中的数据块。

  2. 传送速率计算:计算媒体服务器传送每一帧数据所需的时间,以及每个周期内所需的总时间。如果每个周期播放一帧所需的总服务时间大于媒体服务器在相应周期内传送相关数据所需的总时间,则所有任务的实时性得以保证;反之,则不能。

对于确定型和统计型的服务质量保证,计算方法相同,但所使用的参数不同。确定型保证使用的是最坏情况下的参数(例如,最长的磁盘寻道时间),而统计型保证则使用统计参数。

通过这样的接纳控制机制,媒体服务器能够在资源有限的情况下,有效地管理并满足多用户的多媒体数据流请求,同时保证各种服务质量要求得到满足。这对于维持高客户满意度和优化服务器性能至关重要。

 11.5 媒体服务器的特征和接纳控制,程序猿之计算机操作系统,计算机操作系统

11.5 媒体服务器的特征和接纳控制,程序猿之计算机操作系统,计算机操作系统 文章来源地址https://www.toymoban.com/news/detail-838919.html

到了这里,关于11.5 媒体服务器的特征和接纳控制的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 流媒体服务器与视频服务器有什么区别?

    流媒体服务器与视频服务器有什么区别? 流媒体服务器用在远程教育,视频点播、网络电台、网络视频等方面。 直播过程中就需要使用流媒体服务器,一个完整的直播过程,包括采集、处理、编码、封包、推流、传输、转码、分发、解码、播放等过程,流媒体服务器主要负

    2024年02月11日
    浏览(44)
  • 学着搭建流媒体服务器

    操作系统:NAME=\\\"openEuler\\\",架构:aarch64,CPU 运行模式:64-bit 目前有多个开发源代码可以搭建流媒体服务,但要先依赖gcc和cmake,所以首先安装gcc和cmake,查了一通资料,cmake安装记录如下: 1、依赖环境安装 yum -y install libyaml libyaml-devel python-setuptools libcurl-devel python-devel gmp gmp

    2024年02月11日
    浏览(53)
  • 搭建SRS流媒体服务器

    一、获取 SRS git clone https://github.com/ossrs/srs cd srs/trunk 二、编译SRS ./configure make 三、编写SRS配置文件(我的这个文件是原始的,未修改) vim conf/srs.conf 四、启动SRS ./objs/srs -c conf/srs.conf 五、启动ip摄像头进行推流 手机下载一个ip摄像头软件,然后设置中修改RTMP推流地址 rtmp://你的阿里

    2024年02月16日
    浏览(49)
  • 搭建家庭影音媒体中心 --公网远程连接Jellyfin流媒体服务器

    转载自远程穿透的文章:【智能家居】Home Assistant入门安装并内网穿透实现远程安全控制 Home Assistant(以下简称HA)是个开源的智能家居平台,也叫家庭助手,就像一个软件,比如我们的QQ软件,微信软件。 Home Assistant把家中的智能家居设备整合到HA中,它能够接入的设备非常的

    2024年02月01日
    浏览(62)
  • 基于 Docker 搭建 Jellyfin 媒体服务器

    本文源码:https://github.com/chen2438/chenhaotian.top/tree/main/source/_posts/linux-app/jellyfin.md 在我的博客上查看: https://chenhaotian.top/2022/10/27/linux-app/jellyfin/ 官方教程 如果未安装 docker-compose, 只需要 sudo apt install docker-compose 即可 编写 docker-compose.yml 启动服务 启动后可以通过 docker ps 查看容

    2024年02月07日
    浏览(39)
  • 华为云云耀云服务器L实例评测|部署个人音乐流媒体服务器 navidrome

    云服务器是现代应用程序部署的理想选择。首先,云服务器提供了高度可扩展性,您可以根据需求灵活地增加或减少计算资源,这有助于节省成本和应对流量波动。其次,云服务器具备高可用性,数据备份和冗余使您的应用程序更加稳定,降低了停机时间。此外,云服务器还

    2024年02月07日
    浏览(47)
  • 给数字人生成加上界面,基于ER-NeRF/RAD-NeRF/AD-NeRF,Gradio框架构建WEBUI,使用HLS流媒体,实现边推理边播放——之一:在WEBUI中实时输出服务器控制台日志

    目前数字人实现技术众多,我这里采用基于ER-NeRF,在这里可以看到其介绍:ICCV 2023 | ER-NeRF: 用于合成高保真Talking Portrait的高效区域感知神经辐射场-https://zhuanlan.zhihu.com/p/644520609 ER-NeRF的项目地址:https://github.com/Fictionarry/ER-NeRF ER-NeRF,RAD-NeRF,他们都继承自AD-NeRF,都有一个基于

    2024年02月05日
    浏览(47)
  • Plex踩坑——plex web无法找到媒体服务器

    现象:之前安装过plex server,然后卸载了。再次重装后,plex web无法找到媒体服务器。 原因:卸载plex server时需要手动将plex的注册表删除:HKEY_CURRENT_USERSoftwarePlex, Inc. 原文链接Uninstall Plex Media Server | Plex Support

    2024年02月08日
    浏览(40)
  • FFmpeg 的使用与Docker安装流媒体服务器

    本文阐述的均为命令行的使用方式,并不牵扯FFmpeg 的 C++音视频开发内容,补充一句,C++的资料真的少,能把C++学好的人,我真的是觉得巨佬。 我主要是使用FFmpeg 推流方面的知识,案例大都是靠近这方面。 一、FFmpeg 介绍 本文读者会比较小众~ 看到此文的朋友,大概率是需要

    2024年01月17日
    浏览(57)
  • ZLMediaKit流媒体服务器 RTSP推流时候的堆栈

    先直接看图 这是ffmpeg向流媒体服务器推流时候的堆栈 引入C++ 11之后  堆栈会显得特别繁复冗余 看起来 也没有 以前没有C++11之前那样 简单明了   太复杂了 标记下  很多函数名字被我改了 因为原来的看起来 同名函数太多了 C++11 和lambada 匿名函数 让看堆栈 成了地狱模式 

    2023年04月20日
    浏览(57)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包