데이터 사용 태그 설명

태그는 데이터 사용량 카운터가 추적할 메트릭 중 하나를 나타냅니다. 기본적으로 암시적으로 태그는 UID를 기반으로 합니다. UID는 정책의 기반으로 사용되며 무시할 수 없습니다. 따라서 태그는 항상 최소한 UID(uid_tag)를 나타냅니다. 태그는 UID와 연결된 "회계 태그"로 명시적으로 보강될 수 있습니다. 사용자 공간은 TrafficStats.setThreadStatsTag() 를 사용하여 태그의 acct_tag 부분을 설정할 수 있으며 이 부분은 소켓과 함께 사용됩니다. 해당 소켓에 속한 모든 데이터는 태그에 대해 계산됩니다. 그런 다음 정책은 태그의 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에 대한 총 트래픽을 포함하는 기본 계정 태그이며 일반적으로 정책/할당량 규칙을 시행하는 데 사용됩니다.

이러한 태그는 애플리케이션의 네트워크 트래픽을 별도의 논리적 범주(네트워크 소켓 수준에서)로 프로파일링하는 데 사용할 수 있습니다. 이러한 태그는 런타임 중에 제거, 재적용 또는 수정할 수 있습니다.

qtaguid 모듈은 android-3.0의 커널/공통 분기에 구현되었습니다.