Pour les appareils exécutant Android 12 ou version ultérieure, Android prend en charge le découpage en tranches de réseau 5G, l'utilisation de la virtualisation du réseau pour diviser des connexions réseau uniques en plusieurs connexions virtuelles distinctes qui fournissent différentes quantités de ressources à différents types de trafic. Le découpage du réseau 5G permet aux opérateurs de réseau de dédier une partie du réseau à la fourniture de fonctionnalités spécifiques pour un segment particulier de clients. Android 12 introduit les fonctionnalités de découpage de réseau d'entreprise 5G suivantes, que les opérateurs de réseau peuvent fournir à leurs entreprises clientes :
Découpage d'appareils d'entreprise pour les appareils entièrement gérés
Pour les entreprises qui fournissent des appareils d'entreprise entièrement gérés à leurs employés, les fournisseurs de réseau peuvent leur fournir une ou plusieurs tranches de réseau d'entreprise actives vers lesquelles le trafic sur les appareils de l'entreprise est acheminé. À partir d'Android 12, Android permet aux opérateurs de fournir des tranches d'entreprise via des règles URSP, au lieu de configurer des tranches via des APN.
Découpage d'applications professionnelles d'entreprise pour les appareils avec des profils professionnels
Pour les entreprises utilisant la solution de profil professionnel , Android 12 permet aux appareils d'acheminer le trafic de toutes les applications du profil professionnel vers une tranche de réseau d'entreprise. Les entreprises peuvent activer cette fonctionnalité via un Device Policy Controller (DPC) .
La solution de profil professionnel fournit un niveau automatique d'authentification et de contrôle d'accès dont les entreprises ont besoin pour s'assurer que seul le trafic provenant des applications d'entreprise dans le profil professionnel est acheminé vers la tranche de réseau d'entreprise. Les applications du profil professionnel n'ont pas besoin d'être modifiées pour demander explicitement la tranche de réseau d'entreprise.
Fonctionnement du découpage du réseau 5G dans AOSP
Android 12 introduit la prise en charge du découpage du réseau 5G grâce à des ajouts à la base de code de téléphonie dans AOSP et au module Tethering pour incorporer les API de connectivité existantes requises pour le découpage du réseau.
La plate-forme de téléphonie Android fournit des API HAL et de téléphonie pour prendre en charge le découpage en tranches basé sur les demandes de réseau déposées par le code de réseau central et les capacités de découpage 5G dans le modem. La figure 1 décrit les composants de la fonction de découpage du réseau 5G.
Figure 1. Architecture de découpage du réseau 5G dans AOSP.
La plateforme de téléphonie et de connectivité prend en charge :
- Conversion des requêtes réseau pour les catégories de tranches en descripteurs de trafic qui sont ensuite transmis au modem pour la correspondance du trafic URSP et la sélection de l'itinéraire
- Revenir au réseau par défaut si la tranche demandée n'est pas disponible
- Routage du trafic de toutes les applications sous le profil professionnel vers la connexion correspondante
Prise en charge du découpage d'entreprise
- Détecter la présence d'un profil professionnel sur l'appareil
- Vérification des autorisations ou des directions de routage fournies par le DPC utilisé par l'administrateur informatique de l'entreprise
Le service de mise en réseau de base inclut les modifications suivantes apportées au module Tethering dans Android 12 :
- Ajoute la plupart des classes d'API publiques ou système
android.net.*
au module Tethering Étend les limites du module Tethering pour inclure :
-
f/b/core/java/android/net/…
-
f/b/services/net/…
-
f/b/services/core/java/com/android/server/connectivity/…
-
f/b/services/core/java/com/android/server/ConnectivityService.java
-
f/b/services/core/java/com/android/server/TestNetworkService.java
-
Déplace le code VPN hors du module Tethering
Android 12 déplace le code avec les fonctionnalités suivantes vers le module Tethering :
- Recevoir des demandes d'applications pour les connexions réseau
- Recevoir des demandes du système (par exemple, "placer ces applications sur une tranche d'entreprise" ; introduit dans Android 12)
- Envoi de requêtes du système au code de téléphonie qui tente de mettre en place des réseaux ou tranches en passant par l'API HAL et le modem
- Informer netd sur la manière d'acheminer le trafic par application (introduit dans Android 12)
- Informer les applications de ce qui arrive à leur trafic réseau via les API
ConnectivityManager
telles queNetworkCallback
,getActiveNetwork
,getNetworkCapabilities
.
Mise en œuvre
Pour prendre en charge le découpage en tranches 5G sur un appareil, l'appareil doit disposer d'un modem qui prend en charge l'IRadio 1.6 HAL qui a l'API setupDataCall_1_6
. Cette API configure une connexion de données et inclut les paramètres suivants pour la prise en charge du découpage 5G :
-
trafficDescriptor
: spécifie le descripteur de trafic envoyé au modem -
sliceInfo
: spécifie les informations de la tranche de réseau à utiliser en cas de transfert EPDG vers 5G -
matchAllRuleAllowed
: spécifie si l'utilisation d'une règle URSP générique par défaut est autorisée. La téléphonie définit ce paramètre sur vrai pour les réseaux par défaut, mais pas pour les tranches. La règle match all est appliquée aux réseaux par défaut. Lorsqu'une application demande une tranche spécifique qui n'est pas disponible, la tranche spécifique est signalée comme non disponible, mais l'application peut revenir au réseau par défaut.
Les modems doivent également implémenter l'API getSlicingConfig
à moins qu'elle ne soit signalée comme non prise en charge par l'API getHalDeviceCapabilities
.
Exigences de l'entreprise
La section suivante décrit les conditions requises pour que les entreprises utilisent le découpage de réseau 5G sur les appareils dans un déploiement d'entreprise Android.
- Assurez-vous que les appareils entièrement gérés ou employés configurés avec un profil professionnel sont compatibles 5G SA avec des modems qui prennent en charge l'API
setupDataCall_1_6
. - Travaillez avec le partenaire opérateur sur la configuration et les performances des tranches ou les caractéristiques SLA.
Activer le découpage 5G sur les appareils configurés avec un profil professionnel
Pour les appareils configurés avec des profils professionnels, le découpage du réseau 5G est désactivé par défaut dans AOSP. Pour activer le découpage du réseau, les administrateurs informatiques de l'entreprise peuvent activer ou désactiver le routage du trafic des applications de profil professionnel vers le découpage du réseau de l'entreprise pour chaque employé via le DPC EMM, qui utilise la méthode setPreferentialNetworkServiceEnabled
dans l' DevicePolicyManager
(DPM) (introduite dans Android 12).
Les fournisseurs EMM avec des DPC personnalisés doivent intégrer l'API DevicePolicyManager
pour prendre en charge les clients d'entreprise.
Règles URSP
Cette section comprend des informations pour les opérateurs sur la configuration des règles URSP pour différentes catégories de tranches, notamment le trafic d'entreprise, CBS, à faible latence et à bande passante élevée. Lors de la configuration des règles URSP pour différentes catégories de tranches, les opérateurs doivent utiliser les valeurs spécifiques à Android suivantes.
IDENTIFIANT | Évaluer | La description |
---|---|---|
ID d'OSI | 97a498e3-fc92-5c94-8986-0333d06e4e47 | L'OSId pour Android est un UUID version 5 généré avec l'espace de noms ISO OID et le nom "Android". |
Les opérateurs doivent configurer les règles URSP pour chaque tranche de trafic avec le composant de descripteur de trafic en tant que "OS Id + OS App Id type". Par exemple, la tranche "ENTERPRISE" doit avoir une valeur de 0x97A498E3FC925C9489860333D06E4E470A454E5445525052495345
. Cette valeur est une concaténation de l'OSId, de la longueur de l'OSAppId ( 0x0A
) et de l'OSAppId. Pour plus d'informations sur le type de composant de descripteur de trafic, voir 3GPP TS 24.526 Tableau 5.2.1 .
Le tableau suivant décrit les valeurs OSAppId pour différentes catégories de tranches.
Catégorie tranche | OSAppId | La description |
---|---|---|
ENTREPRISE | 0x454E5445525052495345 | L'OSAppId est une représentation de tableau d'octets de la chaîne "ENTERPRISE" |
ENTREPRISE2 | 0x454E544552505249534532 | L'OSAppId est une représentation de tableau d'octets de la chaîne "ENTERPRISE2" |
ENTREPRISE3 | 0x454E544552505249534533 | L'OSAppId est une représentation de tableau d'octets de la chaîne "ENTERPRISE3" |
ENTREPRISE4 | 0x454E544552505249534534 | L'OSAppId est une représentation de tableau d'octets de la chaîne "ENTERPRISE4" |
ENTREPRISE5 | 0x454E544552505249534535 | L'OSAppId est une représentation de tableau d'octets de la chaîne "ENTERPRISE5" |
SCS | 0x454E544552505249534535 | L'OSAppId est une représentation de tableau d'octets de la chaîne "CBS" |
PRIORITIZE_LATENCY | 0x5052494f524954495a455f4c4154454e4359 | L'OSAppId est une représentation de tableau d'octets de la chaîne "PRIORITIZE_LATENCY" |
PRIORITIZE_BANDWIDTH | 0x5052494f524954495a455f42414e445749445448 | L'OSAppId est une représentation de tableau d'octets de la chaîne "PRIORITIZE_BANDWIDTH" |
Exemple de règles URSP
Les tableaux suivants présentent des exemples de règles URSP pour le trafic d'entreprise, CBS, à faible latence, à bande passante élevée et par défaut.
Entreprise 1
La prise en charge d'Enterprise 1 est disponible dans Android 12 et versions ultérieures. Voici un exemple de règle URSP pour le trafic ENTERPRISE1 :
Règle URSP #1 (entreprise1) | |
---|---|
Priorité | 1 (0x01) |
Descripteur de trafic #1 | |
Identifiant du système d'exploitation + type d'identifiant de l'application du système d'exploitation | 0x97A498E3FC925C9489860333D06E4E470A454E5445525052495345 |
Descripteur de sélection d'itinéraire #1 | |
Priorité | 1 (0x01) |
Composante #1 : S-NSSAI | SST:XX SD:AAAAAAAA |
Composant #2 : DNN | entreprise |
Descripteur de sélection d'itinéraire #2 | |
Priorité | 2 (0x02) |
Composant #1 : DNN | entreprise |
Entreprise 2
La prise en charge d'Enterprise 2 est disponible dans Android 13 et versions ultérieures. Voici un exemple de règle URSP pour le trafic ENTERPRISE2 :
Règle URSP #2 (entreprise2) | |
---|---|
Priorité | 2 (0x02) |
Descripteur de trafic #1 | |
Identifiant du système d'exploitation + type d'identifiant de l'application du système d'exploitation | 0x97A498E3FC925C9489860333D06E4E470A454E544552505249534532 |
Descripteur de sélection d'itinéraire #1 | |
Priorité | 1 (0x01) |
Composante #1 : S-NSSAI | SST:XX SD:AAAAAAAA |
Composant #2 : DNN | entreprise2 |
Descripteur de sélection d'itinéraire #2 | |
Priorité | 2 (0x02) |
Composant #1 : DNN | entreprise2 |
Entreprise 3
La prise en charge d'Enterprise 3 est disponible dans Android 13 et versions ultérieures. Voici un exemple de règle URSP pour le trafic ENTERPRISE3 :
Règle URSP #3 (entreprise3) | |
---|---|
Priorité | 3 (0x03) |
Descripteur de trafic #1 | |
Identifiant du système d'exploitation + type d'identifiant de l'application du système d'exploitation | 0x97A498E3FC925C9489860333D06E4E470A454E544552505249534533 |
Descripteur de sélection d'itinéraire #1 | |
Priorité | 1 (0x01) |
Composante #1 : S-NSSAI | SST:XX SD:AAAAAAAA |
Composant #2 : DNN | entreprise3 |
Descripteur de sélection d'itinéraire #2 | |
Priorité | 2 (0x02) |
Composant #1 : DNN | entreprise3 |
Entreprise 4
La prise en charge d'Enterprise 4 est disponible dans Android 13 et versions ultérieures. Voici un exemple de règle URSP pour le trafic ENTERPRISE4 :
Règle URSP #4 (entreprise4) | |
---|---|
Priorité | 4 (0x04) |
Descripteur de trafic #1 | |
Identifiant du système d'exploitation + type d'identifiant de l'application du système d'exploitation | 0x97A498E3FC925C9489860333D06E4E470A454E544552505249534534 |
Descripteur de sélection d'itinéraire #1 | |
Priorité | 1 (0x01) |
Composante #1 : S-NSSAI | SST:XX SD:AAAAAAAA |
Composant #2 : DNN | entreprise4 |
Descripteur de sélection d'itinéraire #2 | |
Priorité | 2 (0x02) |
Composant #1 : DNN | entreprise4 |
Entreprise 5
La prise en charge d'Enterprise 5 est disponible dans Android 13 et versions ultérieures. Voici un exemple de règle URSP pour le trafic ENTERPRISE5 :
Règle URSP #5 (entreprise5) | |
---|---|
Priorité | 5 (0x05) |
Descripteur de trafic #1 | |
Identifiant du système d'exploitation + type d'identifiant de l'application du système d'exploitation | 0x97A498E3FC925C9489860333D06E4E470A454E544552505249534535 |
Descripteur de sélection d'itinéraire #1 | |
Priorité | 1 (0x01) |
Composante #1 : S-NSSAI | SST:XX SD:AAAAAAAA |
Composant #2 : DNN | entreprise5 |
Descripteur de sélection d'itinéraire #2 | |
Priorité | 2 (0x02) |
Composant #1 : DNN | entreprise5 |
SCS
La prise en charge de CBS est disponible dans Android 13 et supérieur. Voici un exemple de règle URSP pour le trafic CBS :
Règle URSP #6 (CBS) | |
---|---|
Priorité | 6 (0x06) |
Descripteur de trafic #1 | |
Identifiant du système d'exploitation + type d'identifiant de l'application du système d'exploitation | 0x97A498E3FC925C9489860333D06E4E470A434253 |
Descripteur de sélection d'itinéraire #1 | |
Priorité | 1 (0x01) |
Composante #1 : S-NSSAI | SST:XX SD:AAAAAAAA |
Composant #2 : DNN | cbs |
Descripteur de sélection d'itinéraire #2 | |
Priorité | 2 (0x02) |
Composant #1 : DNN | cbs |
Faible latence
La prise en charge de la faible latence est disponible dans Android 13 et versions ultérieures. Voici un exemple de règle URSP pour le trafic LOW_LATENCY :
Règle URSP #7 (faible latence) | |
---|---|
Priorité | 7 (0x07) |
Descripteur de trafic #1 | |
Identifiant du système d'exploitation + type d'identifiant de l'application du système d'exploitation | 0x97A498E3FC925C9489860333D06E4E470A5052494f524954495a455f4c4154454e4359 |
Descripteur de sélection d'itinéraire #1 | |
Priorité | 1 (0x01) |
Composante #1 : S-NSSAI | SST:XX SD:AAAAAAAA |
Composant #2 : DNN | latence |
Descripteur de sélection d'itinéraire #2 | |
Priorité | 2 (0x02) |
Composant #1 : DNN | latence |
Bande passante élevée
La prise en charge de la bande passante élevée est disponible dans Android 13 et versions ultérieures. Voici un exemple de règle URSP pour le trafic HIGH_BANDWIDTH :
Règle URSP #8 (bande passante élevée) | |
---|---|
Priorité | 8 (0x08) |
Descripteur de trafic #1 | |
Identifiant du système d'exploitation + type d'identifiant de l'application du système d'exploitation | 97A498E3FC925C9489860333D06E4E470A5052494f524954495a455f42414e445749445448 |
Descripteur de sélection d'itinéraire #1 | |
Priorité | 1 (0x01) |
Composante #1 : S-NSSAI | SST:XX SD:AAAAAAAA |
Composant #2 : DNN | bande passante |
Descripteur de sélection d'itinéraire #2 | |
Priorité | 2 (0x02) |
Composant #1 : DNN | bande passante |
Défaut
Règle URSP #9 (par défaut) | |
---|---|
Priorité | 9 (0x09) |
Descripteur de trafic #1 | |
match-all | N / A |
Descripteur de sélection d'itinéraire #1 | |
Priorité | 1 (0x01) |
Composante #1 : S-NSSAI | SST:XX SD:AAAAAAAA |
Essai
Pour tester le découpage du réseau 5G, utilisez le test manuel suivant.
Pour configurer un appareil pour le test, procédez comme suit :
Assurez-vous que la stratégie URSP est configurée avec une règle autre que celle par défaut qui correspond à la catégorie d'entreprise et que le descripteur de sélection de route correspondant mappe la catégorie d'entreprise à la tranche d'entreprise ; et une règle par défaut dirigeant le trafic vers la tranche Internet par défaut.
Assurez-vous qu'un profil professionnel est configuré sur l'appareil.
Accepter d'utiliser le découpage du réseau via le DPC
Pour tester le comportement de découpage du réseau 5G, procédez comme suit :
- Vérifiez qu'une session PDU est établie avec la tranche entreprise (par exemple, en utilisant une adresse IP spécifique) et que les applications du profil professionnel utilisent cette session PDU.
- Vérifiez qu'une session PDU distincte est établie avec la tranche Internet par défaut et que les applications du profil personnel utilisent la session PDU.