資料用量標記說明

標記代表資料用量計數器會追蹤的指標之一。根據預設,標籤會隱含地以 UID 為依據。系統會使用 UID 做為監控依據,因此無法忽略。因此,標記一律會至少代表 UID (uid_tag)。標記可以明確附加與 UID 相關聯的「會計標記」。使用者空間可使用 TrafficStats.setThreadStatsTag() 設定標記的 acct_tag 部分,然後與 Socket 搭配使用:屬於該 Socket 的所有資料都會計入標記。系統會根據標記的 uid_tag 部分進行監控,並分別收集 acct_tag 部分的統計資料。

如果沒有明確標記,qtaguid 模組會假設 default_tag:  {acct_tag=0, uid_tag=10003}

    a:  {acct_tag=1, uid_tag=10003}
    b:  {acct_tag=2, uid_tag=10003}
    c:  {acct_tag=3, uid_tag=10003}

a, b, c… 代表與特定通訊端相關聯的明確標記。

default_tag (acct_tag=0) 是預設的會計代碼,其中包含該 uid 的總流量,包括所有未標記的流量,通常用於強制執行監控/配額規則。

這些標記可用於將應用程式的網路流量分類為不同的邏輯類別 (在網路通訊端連線層級)。這些標記可在執行階段移除、重新套用或修改。

android-3.0 的 kernel/common 分支上已實作 qtaguid 模組