【TCP/IP】18. 因特網服務質量

18. 因特網服務質量

  • 18. 因特網服務質量
    • 18.1 服務質量(QoS)
    • 18.2 實時傳輸協議(RTP)
    • 18.3 實時傳輸控制協議(RTCP)
    • 18.4 集成業務(IntServ)
    • 18.5 區分業務(DiffServ)
    • 本章要點

18. 因特網服務質量

18.1 服務質量(QoS)

服務質量(QoS,Quality of Service)是網絡傳輸數據流時需滿足的一系列服務請求及實現機制,核心目標是提供端到端的服務質量控制或保證。

  1. QoS 的衡量指標
    • 帶寬:網絡傳輸數據的速率(如 Mbps),確保業務有足夠的傳輸能力;
    • 傳輸延遲:數據從源到目的地的時間(如毫秒),實時業務(如語音)對延遲敏感;
    • 延遲抖動:連續數據包到達時間的差異,抖動過大會導致音視頻卡頓;
    • 可靠性:數據無丟失、無差錯傳輸的能力;
    • 丟失率:傳輸過程中丟失的數據包比例;
    • 吞吐量:單位時間內成功傳輸的數據量。
  2. 主要 IP QoS 技術
    • 1. 集成業務(IntServ)
      • 基本思想:在傳輸數據前,根據業務的 QoS 需求預留網絡資源(帶寬、緩存等),實現端到端的 QoS 保證。
      • 適用場景:非骨干網(如接入網),業務流數量較少的場景。
      • 優點:能提供嚴格的端到端 QoS;支持組播業務的資源分配和動態管理。
      • 缺點:擴展性差(基于 “每流” 管理,需保存大量狀態信息);依賴路徑上所有路由器支持,難以在骨干網部署。
    • 2. 區分業務(DiffServ)
      • 基本思想:將用戶數據流按 QoS 需求劃分等級,網絡僅承諾 “相對服務質量”(而非具體指標),通過 “匯聚(aggregate)” 和 “逐跳行為(PHB)” 實現 QoS。
        • 匯聚:將 QoS 需求相近的流視為一類,減少隊列管理復雜度;
        • PHB:每跳路由器對相同等級的流采用一致的轉發策略(如調度優先級)。
      • 適用場景:骨干網,業務流數量龐大的場景。
      • 優點:簡化信令,狀態信息少,擴展性好;實現簡單,適合大規模網絡。
      • 缺點:難以提供基于單流的端到端 QoS 保證。
    • 3. QoS 路由
      • 基本思想:基于多指標(帶寬、時延、成本、可靠性等)選擇路由,而非僅基于最短路徑(如傳統路由)。
      • 優點:能滿足業務的 QoS 需求,提高資源利用率。
      • 缺點:路由計算復雜,增加網絡開銷;實用算法難以設計。
    • 4. 多協議標簽交換(MPLS)
      • 基本思想:通過 “標簽” 標識數據流,基于標簽進行路徑控制和帶寬管理,實現流匯聚的 QoS 保障。
      • 特點:目前骨干網最常用的 QoS 機制,常與 DiffServ 結合(MPLS+DiffServ 是運營商首選方案)。
    • 技術結合:核心網用 DiffServ,接入網用 IntServ,MPLS 與 DiffServ 結合是主流趨勢。

18.2 實時傳輸協議(RTP)

實時傳輸協議(RTP,Real-time Transport Protocol)是針對多媒體數據流(如音視頻)的傳輸協議,核心功能是提供時間信息和流同步,定義于 RFC 1889。

  1. 基本特性

    • 通常基于UDP傳輸(無連接,低延遲),也可運行在 TCP 或 ATM 上;
    • 不提供可靠傳輸、流量控制或擁塞控制,依賴RTCP(實時傳輸控制協議)實現這些功能;
    • 適合組播和點播場景,支持實時數據(視頻、音頻、仿真數據)的傳輸。
  2. RTP 首部格式(12 字節固定部分 + 可選擴展)

    字段位數含義
    V(版本)2RTP 版本(當前為 2,版本 1 用于早期草案)。
    P(填充)1置 1 時,首部后附加填充字節(最后一字節記錄填充長度),用于加密對齊。
    X(擴展)1置 1 時,首部后附加變長擴展首部。
    CC(CSRC 計數)4固定首部后 “貢獻源標識(CSRC)” 的數量(0-15)。
    M(標記)1標記數據流中的重要事件(如幀邊界),具體含義由應用定義。
    PT(負荷類型)7標識媒體類型或編碼格式(如音頻 / 視頻,具體解碼器),接收端據此選擇解碼方式。
    順序號16按發送順序遞增,用于接收端檢測丟包和恢復順序(初始值隨機)。
    時戳32記錄數據產生的時間(單位由應用定義,如采樣周期),用于同步和計算抖動。
    SSRC(同步源標識)32唯一標識同步源(如一個麥克風),隨機生成以避免沖突。
    CSRC(貢獻源標識)0-15×32標識對當前數據有貢獻的源(如混音器輸入的多個音頻源),數量由 CC 決定。
  3. 報文封裝

    • 格式:IP首部 + UDP首部 + RTP首部 + 多媒體數據
    • 端口分配:RTP 使用偶數端口,對應的 RTCP 使用其后的奇數端口(如 RTP 用 5004,RTCP 用 5005),實現數據流與控制流分離。
  4. 數據傳輸流程

    • 數據源(如 S1、S2)生成媒體流,經 RTP 封裝后發送;
    • 中間節點(如混合器)可合并多個流(如多路音頻混音),插入 CSRC 標識貢獻源;
    • 接收端(如 R1)通過 RTP 首部的時戳和順序號實現同步和丟包檢測。
  5. 協議特點

    • 輕量:僅提供實時傳輸機制,不保證 QoS;
    • 靈活:傳輸與控制策略分離,允許開發者自主實現高效算法;
    • 協議獨立:與下層協議(UDP/TCP/ATM)無關;
    • 安全:支持數據加密和身份認證。

18.3 實時傳輸控制協議(RTCP)

實時傳輸控制協議(RTCP)與 RTP 配合使用,提供流量控制、擁塞控制和質量反饋,確保實時數據傳輸的效率。

  1. 核心功能

    • 提供數據發布的質量反饋(如丟包率、延遲);
    • 提供 RTP 源的持久傳輸層標識(如 SSRC 的映射);
    • 控制傳輸速率(避免網絡擁塞);
    • 傳送最小連接控制信息(如會話結束通知)。
  2. RTCP 首部格式

    字段位數含義
    版本2與 RTP 一致(當前為 2)。
    填充1置 1 時,包尾附加填充字節(最后一字節記錄填充長度),僅復合包的最后一個包需填充。
    報告計數5接收端報告塊的數量。
    包類型8標識 RTCP 包類型(共 5 種)。
    長度16包大小(32 位字的數量 - 1,含首部、數據和填充)。
  3. RTCP 包類型

    • 發送端報告(SR):發送端發送,包含發送統計(如發送包數、字節數、時戳);
    • 接收端報告(RR):接收端發送,包含接收統計(如丟包率、延遲);
    • 源描述(SDES):提供源的附加信息(如用戶名、郵箱);
    • 結束參與(BYE):通知離開會話;
    • 特殊應用(APP):自定義應用功能。
  4. 工作機制

    • 會話期間,參與者周期性發送 RTCP 包(頻率隨會話規模動態調整,避免擁塞);
    • 發送端通過 RTCP 反饋調整傳輸速率或編碼方式(如丟包率高則降低速率);
    • 接收端通過 RTCP 同步多源流(如音頻與視頻同步)。

18.4 集成業務(IntServ)

集成業務(IntServ,Integrated Services)通過資源預留實現端到端 QoS 保證,核心是資源預留協議(RSVP),定義于 RFC 1633。

  1. 基本思想
    • 傳輸數據前,根據業務的 QoS 需求(如帶寬、延遲)在路徑上的所有路由器中預留資源,確保數據流全程獲得所需服務。
  2. 體系結構
    由四個核心部分組成:
    • 1. 信令協議 RSVP:逐跳建立 / 拆除資源預留的 “軟狀態”(需周期性刷新,超時自動釋放);
    • 2. 接入控制器:判斷是否接受資源預留請求(基于鏈路資源和 QoS 需求);
    • 3. 分類器:將數據包按流分類(如基于 5 元組:源 IP、目的 IP、源端口、目的端口、協議),放入對應隊列;
    • 4. 包調度器:按預定策略調度不同隊列的數據包(如優先級調度、加權公平隊列)。
  3. 資源預留協議(RSVP)
    • 工作原理:接收端主動發起資源預留請求,沿組播 / 單播路徑逐跳向上游路由器傳播,路由器合并重復請求,最終在整條路徑上建立預留。
    • 特性:
      • 接收端導向(由接收端啟動和維護預留);
      • 支持組播(單播是組播的特殊情況);
      • 軟狀態機制(預留狀態需周期性刷新,超時失效,提高容錯性)。
    • 優點:兼容性好(與非 RSVP 網絡兼容);軟狀態支持故障恢復;適合組播場景。
    • 缺點:依賴路徑上所有路由器支持 RSVP;信令復雜,可擴展性差(骨干網流數量大時狀態信息過多);建立時延可能較長(消息丟失需重傳)。
  4. IntServ 的優缺點
    • 優點:提供端到端 QoS 保證;支持組播的資源動態分配;適合多媒體實時業務。
    • 缺點:擴展性差(每流維護狀態);實現復雜(依賴全路徑路由器支持);僅適合小規模網絡。

18.5 區分業務(DiffServ)

區分業務(DiffServ,Differentiated Services)是一種簡化的 QoS 機制,通過業務分級和逐跳行為提供可擴展的服務,適合骨干網。

  1. 基本思想
    • 將用戶數據流按 QoS 需求劃分為有限等級,網絡對同一等級的流采用一致的轉發策略(PHB),不承諾具體指標,僅保證 “相對優先級”。
  2. 體系結構
    由三個核心部件組成:
    • 1. QoS 資源策略管理器:定義 QoS 策略(如分級規則),下載到邊緣和核心模塊;
    • 2. 邊緣模塊:位于 DiffServ 區域入口,執行流的分類、計量、標記(根據與用戶的服務等級協議 SLA);
    • 3. 核心模塊:位于 DiffServ 區域內部,基于數據包的標記(DSCP)執行 PHB,無需維護流狀態。
  3. 關鍵機制
    • 服務等級協議(SLA):用戶與 ISP 簽訂的協議,明確支持的業務等級、流量限制等;
    • DS 字段:IP 首部中的 8 位字段,分為:
      • 6 位DSCP(Differentiated Services Code Point):標記業務等級(0-63),對應不同 PHB;
      • 2 位ECN(Explicit Congestion Notification):顯式擁塞通告(標識網絡擁塞狀態)。
    • 逐跳行為(PHB):核心路由器對相同 DSCP 的數據包采用的轉發策略(如優先級調度、帶寬保證)。
  4. 工作流程
    1. 用戶與 ISP 簽訂 SLA,明確業務等級;
    2. 用戶標記數據包的 DSCP(或由邊緣路由器根據 SLA 和多字段分類標記);
    3. 邊緣路由器對進入 DiffServ 區域的流量進行分類、計量(確保符合 SLA);
    4. 核心路由器根據 DSCP 執行 PHB,轉發數據包。
  5. 研究熱點
    • DiffServ 與 IntServ 結合(如接入網用 IntServ,核心網用 DiffServ);
    • 組播支持(在組播路由表中加入 DSCP 字段);
    • 公平性(解決同一聚合流中不同微流的資源搶占問題);
    • PHB 實現(優化隊列調度和管理,平衡實時性、丟包率和帶寬利用率)。
  6. 優缺點
    • 優點:擴展性好(狀態信息少);實現簡單,適合骨干網;支持大規模業務流。
    • 缺點:難以提供基于單流的端到端 QoS;依賴邊緣節點的正確分類和標記。

本章要點

  • QoS 是網絡傳輸數據流時的服務保證,衡量指標包括帶寬、延遲、抖動等,核心技術有 IntServ、DiffServ、QoS 路由、MPLS。
  • RTP 用于多媒體數據傳輸,提供時間信息和同步,依賴 UDP,首部含版本、時戳、SSRC 等字段;RTCP 配合 RTP 提供質量反饋和控制,支持五種包類型。
  • IntServ 基于資源預留(RSVP),提供端到端 QoS,但擴展性差,適合小規模網絡;RSVP 是其核心信令,接收端導向,支持組播。
  • DiffServ 基于業務分級(DSCP)和逐跳行為(PHB),擴展性好,適合骨干網,體系結構包括邊緣模塊(分類標記)和核心模塊(PHB 轉發)。
  • 實際部署中,常結合多種技術(如 MPLS+DiffServ)以平衡 QoS 保證和擴展性。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/914035.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/914035.shtml
英文地址,請注明出處:http://en.pswp.cn/news/914035.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

數據集相關類代碼回顧理解 | StratifiedShuffleSplit\transforms.ToTensor\Counter

【PyTorch】圖像多分類項目 目錄 StratifiedShuffleSplit transforms.ToTensor Counter StratifiedShuffleSplit sss StratifiedShuffleSplit(n_splits1, test_size0.2, random_state0) 創建StratifiedShuffleSplit對象,用于將數據集劃分為訓練集和測試集。 …

【環境配置】KAG - Windows 安裝部署

前言 本博客將介紹如何在 Windows 系統上 部署運行 KAG 項目,將使用 WSL 和 Docker 和 Vscode 幫助我們之后利用 KAG 開發個人知識庫問答項目。 KAG(Knowledge-Augmented Generation)知識增強生成系統 是一個融合知識圖譜與大語言模型能力的…

《探索電腦麥克風聲音采集多窗口實時可視化技術》

引言在當今數字化信息飛速發展的時代,聲音作為一種重要的信息載體,其處理和分析技術日益受到廣泛關注。聲音可視化技術,作為聲音處理領域的關鍵技術之一,具有極為重要的價值。它能夠將抽象的聲音信號轉化為直觀的視覺圖像&#xf…

加工進化論:SPL 一鍵加速日志轉指標

作者:勞貴泓(泓逸) 1. 背景 日志服務的 SPL(Search Processing Language)自推出以來,憑借其強大的數據處理能力,已經成為眾多開發者和企業實現高效數據分析的首選工具。隨著業務場景的不斷拓展…

Web 應用防火墻:守護應用安全的核心屏障

當你在調試 Web 應用時,是否遇到過這樣的情況:剛修復的 XSS 漏洞又被繞過,數據庫日志里突然出現詭異的 SQL 語句,或者用戶反饋登錄后信息被篡改?這些問題的背后,往往是 Web 應用面臨的持續安全威脅。據 OWA…

Python 網絡爬蟲的基本流程及 robots 協議詳解

數據驅動的時代,網絡爬蟲作為高效獲取互聯網信息的工具,其規范化開發離不開對基本流程的掌握和對 robots 協議的遵守。本文將系統梳理 Python 網絡爬蟲的核心流程,并深入解讀 robots 協議的重要性及實踐規范。 一、Python 網絡爬蟲的基本流程 Python 網絡爬蟲的工作過程可…

字節二面(狠狠拷打系列):什么是http1.1,2.0,3.0,分別在什么場景里面用的多

文章目錄從單行到新紀元:HTTP/0.9、1.0、1.1、2.0與3.0的核心區別HTTP/0.9:協議的黎明 (1991)HTTP/1.0:功能擴展與標準化 (1996)HTTP/1.1:持久連接與性能優化 (1997)HTTP/2.0:二進制與多路復用 (2015)HTTP/3.0&#xf…

Java教程:JavaWeb ---MySQL高級

?博客主頁: https://blog.csdn.net/m0_63815035?typeblog 💗《博客內容》:大數據開發、.NET、Java.測試開發、Python、Android、Go、Node、Android前端小程序等相關領域知識 📢博客專欄: https://blog.csdn.net/m0_…

Audio筆試和面試題型解析

本專欄預計更新90期左右。當前第27期-音頻部分. 音頻硬件在消費電子(手機、電腦、耳機、智能音箱)、汽車、專業音響等領域是用戶體驗的關鍵組成部分。大廠(如蘋果、三星、Google、華為、小米、各種汽車Tier 1供應商等)的硬件工程師在設計和優化音頻系統時,需要對喇叭(揚…

DeepSeek俄羅斯方塊網頁版HTML5(附源碼)

用DeepSeek生成一個俄羅斯方塊游戲網頁版的,基于HTML5,效果很棒。 提示詞prompt 幫我做一個俄羅斯方塊 網頁版的 基于HTML5游戲功能說明 基本功能: 完整的俄羅斯方塊游戲邏輯 7種不同形狀的方塊 分數計算系統 等級提升系統(速度會隨等級提高)…

企業電商平臺搭建:ZKmall開源商城服務器部署與容災方案

企業級電商平臺最核心的訴求,就是得讓 “業務一直在線”—— 不管是平時運營要穩如磐石,還是突然出故障了能火速恢復,都離不開靠譜的服務器部署架構和周全的容災方案。ZKmall 開源商城攢了 6000 多家企業客戶的實戰經驗,琢磨出一套…

【軟件運維】前后端部署啟動的幾種方式

.sh啟動 #!/bin/bash# 解析軟鏈接,獲取真實腳本目錄 SOURCE"${BASH_SOURCE[0]}" while [ -L "$SOURCE" ]; doDIR"$( cd -P "$( dirname "$SOURCE" )" && pwd )"SOURCE"$(readlink "$SOURCE&q…

[爬蟲知識] DrissionPage:強大的自動化工具

相關爬蟲實戰案例:[爬蟲實戰] 使用 DrissionPage 自動化采集小紅書筆記 相關爬蟲專欄:JS逆向爬蟲實戰 爬蟲知識點合集 爬蟲實戰案例 逆向知識點合集 前言: 在當今數據驅動的世界里,網絡爬蟲和自動化測試扮演著越來越重要的角…

數據分析師如何構建自己的底層邏輯?

目錄 一、什么是“底層邏輯”? 二、底層邏輯的核心是什么?三句話講清楚 1. 你到底在解決什么問題? 2. 你有沒有一套“框架”來組織你的分析思路? 3. 你能不能用數據說出“結論 因果 建議”? 三、從 BI 視角出發…

殘差連接+層歸一化:Transformer訓練穩定秘訣

什么是:殘差連接+層歸一化 殘差連接 (Residual Connection):防止梯度消失 核心原理 簡單理解:走樓梯時,既可以走樓梯,也可以坐電梯,最后在同一層匯合。 # 殘差連接的數學表示 輸出 = F(輸入) + 輸入 # ↑處理后 ↑原始輸入具體數值例子 處理句子"我愛學習…

公網 IP 不穩定監控實戰:用多點 Ping 策略實現高可達率保障

更多云服務器知識,盡在hostol.com 你有沒有遇到過這種情況:明明服務器的監控系統說一切正常,服務狀態綠油油一片,但用戶那邊卻反饋“時好時壞”、“丟包嚴重”甚至“根本連不上”。你掏出手機連上公網去試試,誒&#…

uniapp類似抖音視頻滑動

最近需求說要做個類似抖音那種視頻的&#xff0c;我二話不說就用了swiper-view組件&#xff0c;但是效果不太理想&#xff0c;后面改用css屬性先放效果圖&#xff1a;<template><view class"video-scroll-container" touchstart"handleTouchStart"…

Umi-OCR 的 Docker(win制作鏡像,Linux(Ubuntu Server 22.04)離線部署)

前置博客&#xff1a;Ubuntu-Server 22.04.4 詳細安裝圖文教程 wget命令在windows終端下不能使用的原因及解決辦法 在 Ubuntu 22.04 LTS 上離線安裝 Docker 手把手教你在Win11下安裝docker Umi-OCR 完整部署流程 第一步&#xff1a;在 Windows 上構建/獲取 Umi-OCR Docker…

AI Agent革命:當大模型學會使用工具、記憶與規劃

以下是針對Lilian Weng的AI Agent綜述文章&#xff08;原文鏈接&#xff09;的深度解析與整理&#xff1a; AI Agent革命&#xff1a;當大模型學會使用工具、記憶與規劃 ——解析LLM驅動的下一代智能體技術架構 一、核心范式轉變 傳統AI模型&#xff08;如ChatGPT&#xff09…

Claude Code:完爆 Cursor 的編程體驗

前言 最近&#xff0c;聽說Claude Code這款代碼輔助編寫產品很強&#xff0c;有人把Cursor比作實習生水平&#xff0c;Claude Code比作高級工程師水平。 起初不以為意&#xff0c;因為特殊原因&#xff0c;Claude 無法直接訪問。然而&#xff0c;有人做了鏡像站&#xff0c;可以…