Logo

Linux 核心

6.16.0-rc4

快速搜尋

目錄

  • 開發流程
  • 提交補丁
  • 行為準則
  • 維護者手冊
  • 所有開發流程文件
  • 核心 API
  • 驅動 API
  • 子系統
    • 核心子系統
    • 人機介面
    • 網路介面
      • 網路
      • NetLabel
      • InfiniBand
      • ISDN
      • MHI
    • 儲存介面
    • 其他子系統
  • 鎖定
  • 許可規則
  • 編寫文件
  • 開發工具
  • 測試指南
  • 開發指南
  • 追蹤
  • 故障注入
  • 熱補丁
  • Rust
  • 管理
  • 構建系統
  • 報告問題
  • 使用者空間工具
  • 使用者空間 API
  • 韌體
  • 韌體和裝置樹
  • CPU 架構
  • 未分類文件
  • 翻譯

本頁

  • 顯示源

Family net-shaper netlink 規範¶

目錄

  • Family net-shaper netlink 規範

    • 概述

    • 操作

      • 獲取

      • 設定

      • 刪除

      • 分組

      • 獲取能力

    • 定義

      • 範圍

      • 度量單位

    • 屬性集

      • 流量整形器

      • 控制代碼

      • 葉子資訊

      • 能力

概述¶

網路硬體限速配置。

此 API 允許在不同級別(佇列、網路裝置)配置網路裝置上可用的硬體流量整形器,並允許對相關整形器的排程樹進行任意操作。

每個 @shaper 在給定裝置中透過一個 @handle 標識,該 @handle 包含 @scope 和 @id。

根據 @scope 值,整形器可以連線到特定的硬體物件(佇列、裝置),或者對於 @node 範圍,表示一個排程組,可以放置在排程樹中的任意位置。

整形器可以透過兩種不同的操作建立:@set 操作用於建立和更新單個“附加”整形器,@group 操作用於建立和更新排程組。只有 @group 操作才能建立 @node 範圍的整形器。

現有整形器可以透過 @delete 操作進行刪除/重置。

使用者可以透過 @get 操作查詢當前執行的配置。

不同的裝置可以提供不同的特性集,例如不支援複雜的排程層次結構,或不支援某些整形引數。使用者可以透過 @cap-get 操作檢查硬體能力。

操作¶

獲取¶

獲取給定裝置的整形器資訊。

屬性集:

流量整形器

執行:
前置

net-shaper-nl-pre-doit

後置

net-shaper-nl-post-doit

請求
屬性:

[ifindex, handle]

回覆
屬性:

[ifindex, parent, handle, metric, bw-min, bw-max, burst, priority, weight]

轉儲:
前置

net-shaper-nl-pre-dumpit

後置

net-shaper-nl-post-dumpit

請求
屬性:

[ifindex]

回覆
屬性:

[ifindex, parent, handle, metric, bw-min, bw-max, burst, priority, weight]

設定¶

建立或更新指定的整形器。設定操作不能用於建立 @node 範圍的整形器,請改用 @group 操作。

屬性集:

流量整形器

標誌:

[admin-perm]

執行:
前置

net-shaper-nl-pre-doit

後置

net-shaper-nl-post-doit

請求
屬性:

[ifindex, handle, metric, bw-min, bw-max, burst, priority, weight]

刪除¶

清除(移除)指定的整形器。當刪除一個 @node 整形器時,將其所有葉子重新連線到被刪除節點的父級。如果刪除後,父整形器沒有更多的葉子且父整形器範圍是 @node,則父節點將被遞迴刪除。當刪除 @queue 整形器或 @netdev 整形器時,整形器會從層次結構中消失,但佇列/裝置仍然可以傳送流量:它有一個無限頻寬的隱式節點。佇列的隱式節點會饋送到層次結構根部的隱式輪詢節點。

屬性集:

流量整形器

標誌:

[admin-perm]

執行:
前置

net-shaper-nl-pre-doit

後置

net-shaper-nl-post-doit

請求
屬性:

[ifindex, handle]

分組¶

建立或更新一個排程組,將指定的 @leaves 整形器附加到由 @handle 標識的指定節點下。@leaves 整形器的範圍必須是 @queue,並且節點整形器的範圍必須是 @node 或 @netdev。當節點整形器具有 @node 範圍時,如果未指定 @handle @id,則會建立該範圍的新整形器,否則指定的節點必須已經存在。當更新現有節點整形器時,指定的 @leaves 會新增到現有節點;該節點也將保留任何預先存在的葉子。新節點整形器的 @parent 控制代碼預設為所有葉子的父級,前提是所有葉子共享相同的父級。否則必須指定 @parent 控制代碼。使用者可以選擇為節點整形器提供整形屬性。此操作是原子的,失敗時不會對裝置整形配置應用任何更改,否則會以回覆的形式提供 @node 整形器的完整識別符號(包括 @binding 和 @handle)。

屬性集:

流量整形器

標誌:

[admin-perm]

執行:
前置

net-shaper-nl-pre-doit

後置

net-shaper-nl-post-doit

請求
屬性:

[ifindex, parent, handle, metric, bw-min, bw-max, burst, priority, weight, leaves]

回覆
屬性:

[ifindex, handle]

獲取能力¶

獲取給定裝置在指定範圍內支援的整形器能力。

屬性集:

能力

執行:
前置

net-shaper-nl-cap-pre-doit

後置

net-shaper-nl-cap-post-doit

請求
屬性:

[ifindex, scope]

回覆
屬性:

[ifindex, scope, support-metric-bps, support-metric-pps, support-nesting, support-bw-min, support-bw-max, support-burst, support-priority, support-weight]

轉儲:
前置

net-shaper-nl-cap-pre-dumpit

後置

net-shaper-nl-cap-post-dumpit

請求
屬性:

[ifindex]

回覆
屬性:

[ifindex, scope, support-metric-bps, support-metric-pps, support-nesting, support-bw-min, support-bw-max, support-burst, support-priority, support-weight]

定義¶

範圍¶

型別:

列舉

文件:

定義整形器 @id 的解釋方式。

條目:
未指定:

範圍未指定。

網路裝置:

給定網路裝置的主整形器。

佇列:

整形器連線到給定裝置的佇列,@id 表示佇列號。

節點:

整形器允許對佇列或其他節點整形器進行分組;可以巢狀在 @netdev 整形器或其他 @node 整形器中,允許放置在排程樹的任何位置,除了葉子和根。

度量單位¶

型別:

列舉

文件:

整形器支援的不同度量單位。

條目:
bps:

整形器以位元每秒為單位執行。

pps:

整形器以包每秒為單位執行。

屬性集¶

流量整形器¶

控制代碼(nest)¶

巢狀屬性:

控制代碼

文件:

給定整形器在其所屬裝置內的唯一識別符號。

度量單位(u32)¶

列舉:

度量單位

文件:

給定整形器用於最小頻寬、最大頻寬和突發量的度量單位。

最小頻寬(uint)¶

文件:

給定整形器的保證頻寬。

最大頻寬(uint)¶

文件:

給定整形器的最大頻寬,或0表示無限制。

突發量(uint)¶

文件:

整形的最大突發量。不應解釋為量子。

優先順序(u32)¶

文件:

給定整形器的排程優先順序。優先順序排程應用於同級整形器。

權重(u32)¶

文件:

給定整形器進行輪詢排程的相對權重。該排程應用於所有具有相同優先順序的同級整形器。

介面索引(u32)¶

文件:

擁有指定整形器的介面索引。

父級(nest)¶

巢狀屬性:

控制代碼

文件:

受影響整形器的父級識別符號。僅在 @group 操作中需要。

葉子(nest)¶

多屬性:

真

巢狀屬性:

葉子資訊

文件:

描述 @group 操作的葉子整形器集。

控制代碼¶

範圍(u32)¶

列舉:

範圍

文件:

定義整形器 @id 的解釋方式。

ID(u32)¶

文件:

整形器的數字識別符號。ID的語義取決於範圍。對於 @queue 範圍,它是佇列ID;對於 @node 範圍,它是節點識別符號。

葉子資訊¶

控制代碼¶

優先順序¶

權重¶

能力¶

介面索引(u32)¶

文件:

查詢整形器能力的介面索引。

範圍(u32)¶

列舉:

範圍

文件:

查詢的能力所適用的範圍。

支援位元每秒度量單位(flag)¶

文件:

裝置接受“bps”作為最小頻寬、最大頻寬和突發量的度量單位。

支援包每秒度量單位(flag)¶

文件:

裝置接受“pps”作為最小頻寬、最大頻寬和突發量的度量單位。

支援巢狀(flag)¶

文件:

裝置支援將屬於此範圍的整形器巢狀在“節點”範圍的整形器下方。只有“佇列”和“節點”範圍可以具有“支援巢狀”標誌。

支援最小頻寬(flag)¶

文件:

裝置支援最小保證頻寬。

支援最大頻寬(flag)¶

文件:

裝置支援最大頻寬整形。

支援突發量(flag)¶

文件:

裝置支援最大突發量。

支援優先順序(flag)¶

文件:

裝置支援優先順序排程。

支援權重(flag)¶

文件:

裝置支援加權輪詢排程。

©核心開發社群。 | 由 Sphinx 5.3.0 & Alabaster 0.7.16 驅動 | 頁面源