Informazioni sui tag di utilizzo dei dati

I tag rappresentano una delle metriche in base alla quale verranno monitorati i contatori di utilizzo dei dati. Per impostazione predefinita e implicitamente, un tag si basa solo sull'UID. L'UID viene utilizzato come base per il monitoraggio e non può essere ignorato. Pertanto, un tag rappresenterà sempre almeno un UID (uid_tag). Un tag può essere aumentato esplicitamente con un "tag contabile" associato a un UID. Lo spazio utente può utilizzare TrafficStats.setThreadStatsTag() per impostare la parte acct_tag del tag che viene poi utilizzata con le socket: tutti i dati appartenenti alla socket verranno conteggiati nel tag. Il controllo si basa quindi sulla parte uid_tag del tag e le statistiche vengono raccolte separatamente per la parte acct_tag.

Senza il tagging esplicito, il modulo qtaguid assumerà il valore 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… rappresentano tag espliciti associati a socket specifici.

default_tag (acct_tag=0) è il tag di conteggio predefinito che contiene il traffico totale per l'uid, incluso tutto il traffico non taggato, e in genere viene utilizzato per applicare le regole di applicazione delle norme/delle quote.

Questi tag possono essere utilizzati per profilare il traffico di rete di un'applicazione in categorie logiche distinte (a livello di socket di rete). Questi tag possono essere rimossi, riapplicati o modificati durante il runtime.

Il modulo qtaguid è stato implementato nel ramo kernel/common di android-3.0