Wi-Fi 7

Per i dispositivi con Android 13 o versioni successive, Android supporta lo standard Wi-Fi 7 (IEEE 802.11be). Questa pagina descrive le funzionalità Wi-Fi 7 di Android, tra cui il funzionamento di base e multi-link (MLO).

Funzionalità di base del Wi-Fi 7

Questa sezione descrive le funzionalità di base del Wi-Fi 7 incluse in Android 13 e versioni successive.

Supporto del Wi-Fi 7 per i dispositivi

Il framework Android include l'API WifiManager#isWifiStandardSupported(int standard), che le app possono chiamare con l'argomento ScanResults.WIFI_STANDARD_11BE per verificare se un dispositivo supporta il Wi-Fi 7.

Quando viene chiamata questa API, il modulo Wi-Fi controlla se l'overlay di configurazione config_wifi11beSupportOverride viene utilizzato come override e svolge le seguenti operazioni:

  • Se l'overlay è impostato su true, si presume che il dispositivo supporti il Wi-Fi 7 indipendentemente dalla risposta di nl80211. Questo override è utile solo per i produttori di dispositivi che non dispongono di driver che supportano il Wi-Fi 7.
  • Se l'overlay è impostato su false (valore predefinito), il modulo Wi-Fi utilizza le informazioni di nl80211. Il modulo Wi-Fi richiede le informazioni a wificond, che chiama il comando nl80211 NL80211_CMD_GET_WIPHY. Se l'attributo NL80211_BAND_IFTYPE_ATTR_EHT_CAP_PHY è presente nella risposta del driver, si presume che il dispositivo supporti il Wi-Fi 7.

Supporto Wi-Fi 7 AP scansionato

Il framework Android include l'API int ScanResult#getWifiStandard(), che le app possono chiamare per verificare se un punto di accesso (AP) scansionato supporta il Wi-Fi 7. Se il punto di accesso supporta il Wi-Fi 7, l'API restituisce ScanResults.WIFI_STANDARD_11BE. Per utilizzare questa API, non è necessario che il dispositivo supporti il Wi-Fi 7.

Quando viene chiamata questa API, il modulo Wi-Fi controlla se EHT Capability IE è nei risultati restituiti della scansione della connettività. Se EHT Capability IE è presente nei risultati della scansione, il punto di accesso scansionato supporta il Wi-Fi 7. La classe AOSP WifiTracker mostra queste informazioni di assistenza nell'interfaccia utente quando viene eseguita in modalità dettagliata.

Modalità di connessione STA

Il framework Android include l'API int WifiInfo#getWifiStandard(), che le app possono chiamare per verificare se la modalità di connessione della stazione (STA) attuale è Wi-Fi 7. La modalità di connessione STA è Wi-Fi 7 quando sia il dispositivo sia l'AP connesso supportano Wi-Fi 7. Se la modalità di connessione è Wi-Fi 7, l'API restituisce ScanResults.WIFI_STANDARD_11BE.

Quando viene chiamato getWifiStandard, il modulo Wi-Fi determina la modalità chiamando l'API HAL ISupplicantStaIface#getConnectionCapabilities(). L'implementazione di questa API HAL nel livello AIDL wpa_supplicant controlla se EHT Capability IE è sia in AssocReq che in AssocRsp durante la configurazione della connessione.

Selezione rete

In Android 13, la selezione della rete utilizza diversi parametri per determinare a quale AP connettersi. Uno dei parametri è la velocità effettiva stimata del punto di accesso, che viene stimata utilizzando il blocco ThroughputPredictor. Il blocco ThroughputPredictor utilizza i parametri PHY sia del dispositivo sia dell'AP scansionato.

In Android 13, ThroughputPredictor utilizza le seguenti funzionalità dell'API nel calcolo:

  • Supporto del Wi-Fi 7 (802.11be)
  • Supporto della larghezza del canale di 320 MHz

L'inclusione di queste funzionalità nella logica di ThroughputPredictor aumenta le probabilità di selezionare AP compatibili con il Wi-Fi 7 quando il dispositivo può utilizzare queste funzionalità.

Misurazione basata su Wi-Fi RTT

Android fornisce il supporto API per il preambolo EHT e la larghezza del canale di 320 MHz per Wi-Fi RTT. Ciò consente il supporto delle funzionalità relative al Wi-Fi 7 nella misurazione RTT ogni volta che è supportato dal chip.

API HAL

Le seguenti API HAL supportano le funzionalità Wi-Fi 7 per la misurazione della distanza basata su RTT:

API

Le app possono utilizzare le seguenti API per la misurazione della distanza basata su Wi-Fi 7 RTT:

Soft AP

Android supporta il Wi-Fi 7 in Soft AP e fornisce le seguenti funzionalità.

Avvia Soft AP

Android supporta l'avvio di Soft AP in modalità Wi-Fi 7. Questo aspetto è regolato dalla configurazione della sovrapposizione config_wifiSoftapIeee80211beSupported.

Il modulo Wi-Fi utilizza l'overlay config_wifiSoftapIeee80211beSupported per impostare il valore booleano HwModeParams#enable80211BE nella chiamata API IHostApd#addAccessPoint(). Nel livello AIDL hostapd, questo valore viene utilizzato per impostare i parametri hostapd.conf.

API HAL

Il enable80211BE booleano in HwModeParams nell'HAL hostapd supporta l'avvio di Soft AP in modalità Wi-Fi 7.

Segnalare informazioni sul Soft AP

Android include il supporto API per includere informazioni su Wi-Fi 7 e larghezza del canale di 320 MHz nelle informazioni Soft AP segnalate.

API HAL

La costante WIFI_STANDARD_11BE nell'interfaccia AIDL Generation.aidl nell'HAL hostapd, utilizzata in ApInfo segnalato nel callback IHostapdCallback#onApInstanceInfoChanged(), supporta la segnalazione delle informazioni Soft AP.

API

Le app possono utilizzare i seguenti metodi (API di sistema) in SoftApInfo per segnalare le informazioni sull'AP virtuale.

Funzionalità Wi-Fi 7 MLO

Il funzionamento multi-link (MLO) è la funzionalità principale della specifica Wi-Fi 7 (802.11be). MLO è una funzionalità obbligatoria per i dispositivi multi-link (MLD) che utilizzano Wi-Fi 7, in modo simultaneo o non simultaneo.

Diagramma MLO

Figura 1. Diagramma MLO.

Come mostrato nella figura 1, sia AP-MLD che STA-MLD hanno più istanze AP o STA in esecuzione su ogni link. Ogni link ha un indirizzo MAC AP o STA separato. L'AP o la STA dispone anche di un indirizzo MAC MLD per identificare il dispositivo.

La classe android.net.wifi.MloLink rappresenta il link MLO. Questa classe include i seguenti parametri:

Informazioni sugli AP Wi-Fi 7 MLO scansionati

Le app possono ottenere i parametri MLO per un AP MLD Wi-Fi 7 quando il modulo Wi-Fi riceve un oggetto ScanResult dall'AP-MLD. WifiTracker AOSP mostra i parametri MLO quando viene eseguito in modalità dettagliata.

Il modulo Wi-Fi raccoglie le informazioni MLO nel seguente modo:

  • Analizza l'elemento informativo (IE) multi-link incluso nella risposta del beacon o del probe per leggere l'indirizzo MAC MLD del punto di accesso e l'ID link corrente.
  • Analizza l'IE del report sui vicini ridotti (RNR) incluso nella risposta del beacon o della sonda per leggere l'elenco delle informazioni sui link affiliati.

API

Per ottenere informazioni AP MLO scansionate, le app possono utilizzare le seguenti API:

Informazioni sul punto di accesso Wi-Fi 7 MLO connesso

Quando un dispositivo si connette a un AP-MLD Wi-Fi 7, il framework raccoglie i parametri MLO della connessione dall'oggetto WifiInfo. L'oggetto AOSP WifiTracker mostra queste informazioni quando viene eseguito in modalità dettagliata.

Quando il dispositivo si connette all'AP-MLD, il modulo Wi-Fi copia le informazioni MLO dall'oggetto ScanResult ricevuto dall'AP. Il modulo chiama quindi l'API HAL ISupplicantStaIface#getConnectionMloLinksInfo() per leggere gli indirizzi MAC di ogni link sia per AP che per STA e per aggiornare lo stato dei link associati.

API

Per ottenere le informazioni di connessione MLO, le app possono utilizzare le seguenti API:

Scansione AP-MLD

Il software del fornitore fornisce al framework Wi-Fi i risultati della scansione per ogni beacon o risposta di probing che riceve. Ciò significa che il framework Wi-Fi:

  • Potrebbe ricevere più oggetti ScanResults dallo stesso AP-MLD (perché l'AP può avere più link di beaconing).
  • Potrebbe ricevere solo un insieme parziale dei risultati della scansione per i link AP di un AP-MLD perché alcuni di questi segnali di collegamento potrebbero non essere ricevuti dal firmware.

Il software del fornitore segnala solo i risultati della scansione ricevuti via etere e non deve creare (sintetizzare artificialmente) risultati della scansione in base ai link pubblicizzati dall'AP-MLD.

Il software del fornitore deve includere i componenti di base multi-link e RNR IE ricevuti dalle istanze AP nei risultati della scansione segnalata. Se i dettagli dell'AP affiliato non sono presenti nei risultati della scansione, il software del fornitore può inviare richieste di probe multi-link (frame della richiesta di probe che include un elemento multi-link della richiesta di probe) per includere l'insieme completo o parziale di funzionalità, parametri e elementi di operazione dell'AP con l'AP-MLD di destinazione nel frame di risposta.

Il software del fornitore può attivare l'analisi ML (utilizzando la variante ML IE della richiesta di probe nel frame della richiesta di probe) se necessario.

Associazione di rete AP-MLD

Quando un dispositivo si unisce a una rete AP-MLD, il software del fornitore utilizza il link AP (link associato) selezionato per la segnalazione. Il software del fornitore può associarsi a tutti o ad alcuni dei link supportati dal dispositivo.

Una volta eseguita l'associazione, il driver segnala ISupplicantStaIfaceCallback#onStateChanged() con il BSSID di un link per l'AP-MLD. Il driver seleziona quindi un link dell'AP-MLD a condizione che i risultati della scansione siano stati segnalati al framework per quel link.

Punteggio della rete

Per i dispositivi con Android 14 o versioni successive, Selezione della rete Wi-Fi Android supporta Wi-Fi 7 MLO. Ciò significa che Android seleziona la migliore rete Wi-Fi per il dispositivo in base al numero di link disponibili per MLO.

Per supportare MLO, l'algoritmo di selezione della rete utilizza le seguenti funzionalità MLO del chip Wi-Fi:

  • Numero massimo di link STR
  • Numero massimo di link di associazione
  • Combinazioni di bande simultanee

Selezione della rete Wi-Fi MLO

Figura 2. Selezione della rete MLO.

La trasmissione e ricezione simultanea (STR) è uno schema di contesa del mezzo Wi-Fi per il funzionamento multi-link. L'isolamento del segnale tra i diversi link è sufficiente in modo che i link possano funzionare in modo indipendente e siano in grado di trasmettere e ricevere simultaneamente in link diversi. STR è diverso dalla STA legacy a collegamento singolo (SL) e dalla STA legacy a doppia banda e doppia simultaneità (DBDC). Le STA affiliate a una STA MLD condividono un numero di sequenza (SN) del trasmettitore comune e uno spazio comune per la trasmissione dei dati allocato a link diversi se la trasmissione di più link ha la stessa categoria di accesso (AC).

Il numero massimo di link STR utilizzati può essere diverso dal numero massimo di emittenti supportate dal chip. Nell'esempio della Figura 2, il numero massimo di link STR è 2.

Le seguenti interfacce HAL AIDL supportano il numero massimo di link STR e il numero massimo di funzionalità di conteggio dei link di associazione:

Più link possono operare su una singola radio utilizzando lo schema di contesa Enhanced Multi-Link Single Radio (eMLSR). Un dispositivo multi-link utilizza eMLSR su un insieme di link se può ricevere determinati frame di controllo di base ed eseguire la valutazione del canale libero (CCA) contemporaneamente sull'insieme di link. Tuttavia, il MLD trasmette o riceve dati su un solo link (quello scelto dinamicamente in ogni periodo di opportunità di trasmissione (TXOP)) alla volta.

Una stazione MLD può massimizzare il numero di link di associazione per una migliore affidabilità, una migliore velocità effettiva e una latenza inferiore (rispetto a una stazione legacy a link singolo) operando contemporaneamente in STR ed eMLSR, se supportati dal chip. Nella Figura 2, il numero massimo di link di associazione è 3.

Le seguenti interfacce HAL AIDL supportano la funzionalità di conteggio massimo dei link di associazione:

Combinazioni di bande simultanee

Il framework esegue query sul chip per ottenere le combinazioni radio consentite (tramite l'interfaccia AIDL IWifiChip.aidl) che possono funzionare contemporaneamente. Da queste informazioni, il framework deriva possibili combinazioni di bande simultanee. Di seguito è riportato un elenco di esempio di combinazioni di bande simultanee (GHz):

  • 2.4
  • 5
  • 6
  • 2,4 x 5
  • 2,4 x 6
  • 5 x 6

La seguente interfaccia HAL AIDL supporta combinazioni radio simultanee:

Selezione rete

Durante la selezione della rete (MLO), l'elenco dei candidati viene raggruppato in base ai membri con lo stesso indirizzo MAC MLD. Il punteggio massimo di throughput multi-link previsto viene calcolato per ogni gruppo in base al numero massimo di link STR e alle combinazioni di bande simultanee supportate dal chip. Se il candidato è in grado di supportare più link e il chip supporta STR, il punteggio di throughput previsto viene sostituito con il punteggio di throughput previsto per più link. In questo modo, i candidati MLO ricevono un boost durante la selezione della rete.

Quando si accede a una rete AP-MLD, il framework esegue la selezione dell'SSID in base alle informazioni ricevute nell'oggetto ScanResults come riportato dal software del fornitore. Una volta selezionato l'SSID dal framework, il software del fornitore è responsabile della selezione del BSSID per il miglior AP (o collegamento AP) da utilizzare per l'associazione.

Gestione dell'indirizzo MAC STA del dispositivo

Questa sezione descrive come vengono gestiti gli indirizzi MAC STA del dispositivo (indirizzi MAC MLD e indirizzi MAC STA per collegamento).

Indirizzo MAC MLD

Il framework Wi-Fi gestisce l'indirizzo MAC MLD del dispositivo. L'indirizzo MAC MLD viene gestito allo stesso modo in cui un dispositivo non MLD gestisce il proprio indirizzo MAC. L'indirizzo MAC può essere un indirizzo MAC casuale o un indirizzo MAC di provisioning hardware in base alla scelta dell'utente. L'indirizzo MAC MLD viene impostato dal framework utilizzando l'API HAL IWifiStaIface#setMacAddress().

Il software del fornitore gestisce gli indirizzi MAC STA dell'istanza (per ogni link). Quando un dispositivo si associa a un punto di accesso, il software del fornitore assegna un indirizzo MAC dell'istanza per ogni link associato.

Il software del fornitore assegna indirizzi MAC per collegamento in base al suo algoritmo. L'algoritmo deve essere ripetibile e una funzione di quanto segue:

  • Indirizzo MAC STA-MLD impostato dal framework Wi-Fi.
  • ID collegamento (ricevuto dall'AP)

Ciò significa che se il framework riutilizza lo stesso indirizzo MAC MLD, il fornitore deve riutilizzare gli stessi indirizzi MAC per istanza associati e viceversa. Ciò garantisce che quando l'indirizzo STA-MLD generato dal framework è persistente per un SSID, anche gli indirizzi MAC per STA sono persistenti.

Di seguito è riportato un esempio di algoritmo per l'assegnazione dell'indirizzo MAC STA per collegamento (i fornitori possono implementare qualsiasi algoritmo che soddisfi i criteri dell'algoritmo):

  • Ottetto 0: assicurati che il bit amministrato localmente sia impostato
  • Ottetti 1-4: uguali all'indirizzo MAC STA-MLD
  • Ottetto 5: Per-STA = (STA-MLD + link ID + 1) MOD (256)

Il firmware del fornitore può eseguire il cambio di collegamento e gestire lo stato di risparmio energetico dei collegamenti per l'attivazione o la disattivazione senza input dal framework Wi-Fi.

Il framework Wi-Fi non prevede una notifica quando lo stato del link viene modificato.

Gestione dello stato di risparmio energetico

Lo stato di risparmio energetico è attivo per impostazione predefinita nel framework Wi-Fi. Nello stato di risparmio energetico, il firmware del fornitore gestisce lo stato di risparmio energetico dei singoli link in base ai pattern di traffico e alle decisioni di attivazione o disattivazione dei link.

Tuttavia, il framework Wi-Fi può forzare la disattivazione dello stato di risparmio energetico chiamando l'API HAL ISupplicantStaIface::setPowerSave(false). Se lo stato di risparmio energetico è disattivato dal framework, il firmware del fornitore deve mantenere almeno un collegamento attivo (risparmio energetico disattivato). In questo stato, l'implementazione del firmware decide quale link viene impostato.

Percorso dei dati

Descrive l'implementazione del firmware del fornitore per la gestione del traffico di uplink e download.

Il firmware indirizza il traffico di uplink a uno o più link in base alla sua implementazione interna. Il firmware del fornitore decide quando eseguire il bilanciamento del carico, la duplicazione o l'aggregazione del traffico in base ai pattern di traffico. Consigliamo la duplicazione del traffico del firmware su più link nei seguenti casi:

  • Quando la modalità a bassa latenza è impostata tramite l'API HAL IWifiChip#setLatencyMode().
  • Quando è presente traffico con priorità utente 6 e 7.

Il firmware deve sostituire l'indirizzo MAC per STA (destinazione) dell'intestazione MAC con l'indirizzo MAC MLD-STA e l'indirizzo MAC per AP (origine) dell'intestazione MAC con l'indirizzo MAC MLD-AP. Il firmware deve eseguire questa sostituzione dell'indirizzo MAC prima di passare attraverso il filtro APF perché i comandi del filtro APF hanno filtri basati sugli indirizzi MAC MLD. Esiste un unico filtro APF per tutti i link di un AP-MLD.

Concorrenza

Gli scenari di concorrenza, in cui una radio viene utilizzata per una nuova interfaccia, devono avere la priorità rispetto all'utilizzo di più radio per i link della stessa interfaccia. Anche gli scenari di concorrenza devono avere la priorità rispetto a MLO, indipendentemente da quale sia stato eseguito per primo. L'utilizzo di più link per una singola interfaccia è opportunistico, il che significa che più link vengono utilizzati solo quando:

  • MLO è obbligatorio in base alla decisione del firmware per il bilanciamento del carico, l'aggregazione o la duplicazione.
  • MLO è disponibile, il che significa che una radio non è richiesta da un'altra interfaccia.

Per i dispositivi con Android 14 o versioni successive, quando l'AP Wi-Fi 7 annuncia una disattivazione temporanea di uno dei link tramite un elemento di mapping TID-to-link trasmesso nei frame di beacon, risposta di probing e risposta di associazione, la stazione Wi-Fi 7 continua la connessione con l'AP utilizzando i link rimanenti configurati, senza eseguire un'altra associazione.

Per i dispositivi con Android 13 o versioni precedenti, il framework Wi-Fi non supporta la ricezione di notifiche quando lo stato del collegamento viene modificato a causa del mapping TID-collegamento, anche se il collegamento associato non è collegato a un TID.

Il supplicant Wi-Fi notifica al framework Wi-Fi le modifiche alla mappatura TID-to-link tramite le seguenti interfacce AIDL:

Le app possono ottenere informazioni sulle modifiche alla mappatura TID-link utilizzando le seguenti API:

Per i dispositivi con Android 14 o versioni successive, sono disponibili le seguenti API per ottenere le funzionalità di negoziazione della mappatura TID-to-link per la stazione e l'AP.

Funzionalità del chip

Le seguenti interfacce supportano la funzionalità del chip per la negoziazione della mappatura TID-to-link.

AIDL HAL

L'interfaccia AIDL per la negoziazione della mappatura TID-to-link si trova in FeatureSetMask in hardware/interfaces/wifi/aidl/android/hardware/wifi/IWifiChip.aidl. La funzionalità T2LM_NEGOTIATION = 1 << 8 indica che il chip supporta la mappatura TID-to-link. API

Funzionalità AP

Le seguenti interfacce supportano la funzionalità AP per la negoziazione della mappatura TID-to-link.

AIDL HAL

Il framework esegue query sulla funzionalità AP dal supplicante insieme alla funzionalità di connessione corrente.

API

Le statistiche del livello di collegamento includono dettagli specifici del collegamento Wi-Fi, come RSSI, vari contatori di pacchetti TX e RX e statistiche radio. Il framework Wi-Fi esegue periodicamente il polling delle statistiche del livello di collegamento e dell'RSSI per selezionare la rete migliore o per valutare la qualità della rete connessa. Per i dispositivi con Android 14 o versioni successive, le statistiche del livello di collegamento includono il supporto multi-link. Per supportare il Wi-Fi 7, Android supporta MLO sia nelle statistiche del livello di collegamento sia nel polling del segnale.

Le statistiche specifiche per i link si trovano nelle seguenti interfacce AIDL del livello di collegamento:

L'API di sistema android.net.wifi.WifiManager#addOnWifiUsabilityStatsListener() ascolta tutte le statistiche del livello di collegamento. Il framework richiama periodicamente questa API per aggiornare le statistiche di usabilità del Wi-Fi.

Le seguenti API specifiche per i link sono disponibili in android.net.wifi.WifiUsabilityStatsEntry.

int getRssi(int linkId)
int getLinkState(int linkId)
int getRadioId(int linkId)
int getTxLinkSpeedMbps(int linkId)
long getTotalTxSuccess(int linkId)
long getTotalTxRetries(int linkId)
long getTotalTxBad(int linkId)
long getTotalRxSuccess(int linkId)
long getTotalBeaconRx(int linkId)
int getRxLinkSpeedMbps(int linkId)
int getTimeSliceDutyCycleInPercent(int linkId)
ContentionTimeStats getContentionTimeStats(int linkId, @WmeAccessCategory int ac)
List<RateStats> getRateStats(int linkId)

Per eseguire una query sugli ID link disponibili, le app possono chiamare il metodo android.net.wifi.WifiUsabilityStatsEntry#getLinkIds().

Le API in android.net.wifi.WifiUsabilityStatsEntry per il singolo link (non MLO) restituiscono le statistiche aggregate per le connessioni MLO. Di seguito sono riportati i criteri di aggregazione:

  • Le seguenti statistiche sui pacchetti aggregati utilizzano la somma delle statistiche per link:

    public long getTotalTxSuccess()
    public long getTotalTxRetries()
    public long getTotalTxBad()
    public long getTotalRxSuccess()
    public int getRxLinkSpeedMbps()
    
  • Le seguenti statistiche utilizzano i dati del collegamento con l'RSSI più alto:

    public int getRssi()
    public int getLinkSpeedMbps()
    public long getTotalBeaconRx()
    public int getTimeSliceDutyCycleInPercent()
    public ContentionTimeStats getContentionTimeStats(@WmeAccessCategory int ac)
    public List<RateStats> getRateStats()
    

Per i dispositivi con Android 13, le statistiche del livello di collegamento non tengono conto dell'utilizzo di più collegamenti per una singola interfaccia. Per supportare MLO, il software del fornitore deve applicare la seguente logica di aggregazione quando segnala LinkLayerStats tramite l'API HAL IWifi# getLinkLayerStats_1_6(). Il collegamento migliore è quello con l'RSSI più alto.

  • StaLinkLayerStats.iface.beaconRx: segnala il conteggio dei beacon per il collegamento migliore utilizzato per l'interfaccia.
  • StaLinkLayerStats.iface.avgRssiMgmt: segnala avgRssiMgmt per il miglior link utilizzato per l'interfaccia.
  • StaLinkLayerStats.iface.wmeXxPktStats (Xx = Vo, Vi, Be,Bk): Report the aggregated packet stats (total) over the links of the interface.
  • StaLinkLayerStats.iface.wmeXxContentionTimeStats (Xx = Vo, Vi, Be,Bk): riporta le statistiche sul tempo di contesa per il miglior link utilizzato sull'interfaccia (le statistiche sul tempo di contesa più basse).

Quando uno dei link del punto di accesso Wi-Fi 7 viene riassegnato, il punto di accesso può annunciare la rimozione del link tramite la riconfigurazione del link MLO. Le stazioni possono mantenere una connettività continua con il punto di accesso senza una riassociazione sui link rimanenti.

L'interfaccia onMloLinksInfoChanged AIDL, che si trova nel supplicante Wi-Fi all'indirizzo ISupplicantStaIfaceCallback.aidl, supporta la riconfigurazione del link (rimozione del link AP).

Quando il framework Wi-Fi elabora la rimozione di un link, lo stato del link viene impostato su MLO_LINK_STATE_UNASSOCIATED. Il framework attiva quindi ConnectivityManager.NetworkCallback#onCapabilitiesChanged() per una modifica dello stato del link.

Il metodo WifiInfo#getAffiliatedMloLinks restituisce i link MLO affiliati. Il metodo MloLink#getState restituisce lo stato del collegamento. Se il link viene rimosso, lo stato del link restituito è MLO_LINK_STATE_UNASSOCIATED.

Strategia Chip MLO

MLO consente ai dispositivi di inviare e ricevere dati su più link Wi-Fi contemporaneamente, il che può migliorare le prestazioni delle app che hanno requisiti specifici come bassa latenza, larghezza di banda elevata e basso consumo energetico. I fornitori di chip possono sviluppare algoritmi su come utilizzare i link disponibili.

Le app con privilegi possono modificare questi algoritmi utilizzando il metodo setMloMode in Wifimanager e impostare le seguenti modalità:

  • MLO_MODE_DEFAULT = 0
  • MLO_MODE_LOW_LATENCY = 1
  • MLO_MODE_HIGH_THROUGHPUT = 2
  • MLO_MODE_LOW_POWER = 3

Il framework utilizza setMloMode nell'interfaccia AIDL IWifiChip per impostare la modalità MLO.