Corte de red 5G

Para los dispositivos que ejecutan Android 12 o superior, Android brinda soporte para el corte de red 5G, el uso de la virtualización de red para dividir conexiones de red únicas en múltiples conexiones virtuales distintas que brindan diferentes cantidades de recursos para diferentes tipos de tráfico. La segmentación de la red 5G permite a los operadores de red dedicar una parte de la red a proporcionar características específicas para un segmento particular de clientes. Android 12 presenta las siguientes capacidades de corte de red empresarial 5G, que los operadores de red pueden proporcionar a sus clientes empresariales:

Segmentación de dispositivos empresariales para dispositivos totalmente administrados

Para las empresas que brindan dispositivos de la empresa totalmente administrados a sus empleados, los proveedores de red pueden proporcionarles un segmento de red empresarial activo al que se enruta todo el tráfico en los dispositivos de la empresa. En Android 12, Android permite que los operadores proporcionen segmentos empresariales a través de reglas URSP, en lugar de configurar segmentos a través de APN.

Segmentación de aplicaciones empresariales empresariales para dispositivos con perfiles de trabajo

Para las empresas que usan la solución de perfil de trabajo , Android 12 permite que los dispositivos enruten el tráfico de todas las aplicaciones en el perfil de trabajo a una porción de red empresarial. Las empresas pueden habilitar esta capacidad a través de un controlador de política de dispositivos (DPC) .

La solución de perfil de trabajo proporciona un nivel automático de autenticación y control de acceso que las empresas requieren para garantizar que solo el tráfico de las aplicaciones empresariales en el perfil de trabajo se enrute a la porción de red empresarial. No es necesario modificar las aplicaciones en el perfil de trabajo para solicitar explícitamente la porción de red empresarial.

Cómo funciona el corte de red 5G en AOSP

Android 12 presenta compatibilidad con el corte de red 5G a través de adiciones al código base de telefonía en AOSP y el módulo Tethering para incorporar las API de conectividad existentes que se requieren para el corte de red.

La plataforma de telefonía de Android proporciona HAL y API de telefonía para admitir el corte en función de las solicitudes de red presentadas por el código de red central y las capacidades de corte 5G en el módem. La figura 1 describe los componentes de la función de corte de red 5G.

Componentes de corte de red 5G

Figura 1. Arquitectura de corte de red 5G en AOSP.

La plataforma de telefonía y conectividad soporta:

  • Conversión de solicitudes de red para categorías de segmentos en descriptores de tráfico que luego se pasan al módem para la coincidencia de tráfico URSP y la selección de rutas
  • Volver a la red predeterminada si el segmento solicitado no está disponible
  • Enrutamiento del tráfico desde todas las aplicaciones bajo el perfil de trabajo a la conexión correspondiente
  • Apoyo a la segmentación empresarial

    • Detectar la presencia de un perfil de trabajo en el dispositivo
    • Comprobación de permisos o direcciones de enrutamiento proporcionados por el DPC utilizado por el administrador de TI de la empresa

El servicio de red principal incluye los siguientes cambios en el módulo Tethering en Android 12:

  • Agrega la mayoría de las clases de API públicas o del sistema android.net.* al módulo Tethering
  • Expande los límites del módulo Tethering para incluir:

    • 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
  • Mueve el código VPN fuera del módulo Tethering

Android 12 mueve el código con las siguientes capacidades al módulo Tethering:

  • Recibir solicitudes de aplicaciones para conexiones de red
  • Recibir solicitudes del sistema (por ejemplo, "colocar estas aplicaciones en una porción empresarial"; introducido en Android 12)
  • Envío de solicitudes desde el sistema al código de telefonía que intenta configurar redes o segmentos pasando por la API HAL y el módem
  • Informar a netd cómo enrutar el tráfico por aplicación (introducido en Android 12)
  • Informar a las aplicaciones de lo que sucede con su tráfico de red a través de las API de ConnectivityManager , como NetworkCallback , getActiveNetwork , getNetworkCapabilities .

Implementación

Para admitir la división 5G en un dispositivo, el dispositivo debe tener un módem que admita IRadio 1.6 HAL que tenga la API setupDataCall_1_6 . Esta API configura una conexión de datos e incluye los siguientes parámetros para admitir el corte 5G:

  • trafficDescriptor : especifica el descriptor de tráfico enviado al módem.
  • sliceInfo : especifica información para el segmento de red que se usará en caso de traspaso de EPDG a 5G
  • matchAllRuleAllowed : especifica si se permite el uso de una regla URSP de coincidencia total predeterminada

Los módems también deben implementar la API getSlicingConfig a menos que la API getHalDeviceCapabilities informe que no es compatible.

Requisitos de la empresa

A continuación, se describen los requisitos para que las empresas usen el corte de red 5G en dispositivos en una implementación empresarial de Android.

  • Asegúrese de que los dispositivos completamente administrados o de los empleados configurados con un perfil de trabajo sean compatibles con 5G SA con módems que admitan la API setupDataCall_1_6 .
  • Trabaje con el socio transportista en la configuración y el rendimiento de la división o las características del SLA.

Habilitar el corte 5G en dispositivos configurados con un perfil de trabajo

Para los dispositivos que están configurados con perfiles de trabajo, el corte de red 5G está desactivado de forma predeterminada en AOSP. Para habilitar la segmentación de la red, los administradores de TI de la empresa pueden activar o desactivar el enrutamiento del tráfico de la aplicación del perfil de trabajo a la segmentación de la red empresarial por empleado a través de EMM DPC, que utiliza el método setPreferentialNetworkServiceEnabled en la API DevicePolicyManager (DPM) (introducida en Android 12).

Los proveedores de EMM con DPC personalizados deben integrar la API DevicePolicyManager para admitir clientes empresariales.

reglas URSP

Esta sección incluye información para los operadores sobre cómo configurar las reglas de URSP para diferentes categorías de segmentos, incluidos tráfico empresarial, CBS, de baja latencia y de alto ancho de banda. Al configurar las reglas de URSP para diferentes categorías de segmentos, los operadores deben usar los siguientes valores específicos de Android.

IDENTIFICACIÓN Valor Descripción
Id. de OSI 97a498e3-fc92-5c94-8986-0333d06e4e47 El OSId para Android es un UUID de la versión 5 generado con el espacio de nombres ISO OID y el nombre "Android".

Los operadores deben configurar las reglas de URSP para cada segmento de tráfico con el componente descriptor de tráfico como "Id. de SO + Tipo de Id. de aplicación de SO". Por ejemplo, el segmento "ENTERPRISE" debe tener un valor de 0x97A498E3FC925C9489860333D06E4E470A454E5445525052495345 . Este valor es una concatenación del OSId, la longitud del OSAppId ( 0x0A ) y el OSAppId. Para obtener más información sobre el tipo de componente del descriptor de tráfico, consulte la Tabla 5.2.1 de 3GPP TS 24.526 .

La siguiente tabla describe los valores de OSAppId para diferentes categorías de segmentos.

Categoría de rebanada OSAppId Descripción
EMPRESA 0x454E5445525052495345 OSAppId es una representación de matriz de bytes de la cadena "ENTERPRISE"
EMPRESA2 0x454E544552505249534532 OSAppId es una representación de matriz de bytes de la cadena "ENTERPRISE2"
EMPRESA3 0x454E544552505249534533 OSAppId es una representación de matriz de bytes de la cadena "ENTERPRISE3"
EMPRESA4 0x454E544552505249534534 OSAppId es una representación de matriz de bytes de la cadena "ENTERPRISE4"
EMPRESA5 0x454E544552505249534535 OSAppId es una representación de matriz de bytes de la cadena "ENTERPRISE5"
CBS 0x454E544552505249534535 OSAppId es una representación de matriz de bytes de la cadena "CBS"
PRIORIZAR_LATENCIA 0x5052494f524954495a455f4c4154454e4359 OSAppId es una representación de matriz de bytes de la cadena "PRIORITIZE_LATENCY"
PRIORIZAR_ANCHO DE BANDA 0x5052494f524954495a455f42414e445749445448 OSAppId es una representación de matriz de bytes de la cadena "PRIORITIZE_BANDWIDTH"

Ejemplo de reglas URSP

Las siguientes tablas muestran reglas de URSP de ejemplo para empresas, CBS, latencia baja, ancho de banda alto y tráfico predeterminado.

Empresa 1

Regla URSP n.º 1 (empresa 1)
Precedencia 1 (0x01)
Descriptor de tráfico #1
ID de sistema operativo + tipo de ID de aplicación de sistema operativo 0x97A498E3FC925C9489860333D06E4E470A454E5445525052495345
Descriptor de selección de ruta #1
Precedencia 1 (0x01)
Componente #1: S-NSSAI SST:XX SD:YYYYYY
Componente #2: DNN empresa
Descriptor de selección de ruta #2
Precedencia 2 (0x02)
Componente #1: DNN empresa

Empresa 2

Regla URSP #2 (empresa2)
Precedencia 2 (0x02)
Descriptor de tráfico #1
ID de sistema operativo + tipo de ID de aplicación de sistema operativo 0x97A498E3FC925C9489860333D06E4E470A454E544552505249534532
Descriptor de selección de ruta #1
Precedencia 1 (0x01)
Componente #1: S-NSSAI SST:XX SD:YYYYYY
Componente #2: DNN empresa2
Descriptor de selección de ruta #2
Precedencia 2 (0x02)
Componente #1: DNN empresa2

Empresa 3

Regla URSP n.º 3 (empresa 3)
Precedencia 3 (0x03)
Descriptor de tráfico #1
ID de sistema operativo + tipo de ID de aplicación de sistema operativo 0x97A498E3FC925C9489860333D06E4E470A454E544552505249534533
Descriptor de selección de ruta #1
Precedencia 1 (0x01)
Componente #1: S-NSSAI SST:XX SD:YYYYYY
Componente #2: DNN empresa3
Descriptor de selección de ruta #2
Precedencia 2 (0x02)
Componente #1: DNN empresa3

Empresa 4

Regla URSP #4 (empresa 4)
Precedencia 4 (0x04)
Descriptor de tráfico #1
ID de sistema operativo + tipo de ID de aplicación de sistema operativo 0x97A498E3FC925C9489860333D06E4E470A454E544552505249534534
Descriptor de selección de ruta #1
Precedencia 1 (0x01)
Componente #1: S-NSSAI SST:XX SD:YYYYYY
Componente #2: DNN empresa4
Descriptor de selección de ruta #2
Precedencia 2 (0x02)
Componente #1: DNN empresa4

Empresa 5

Regla URSP n.º 5 (empresa 5)
Precedencia 5 (0x05)
Descriptor de tráfico #1
ID de sistema operativo + tipo de ID de aplicación de sistema operativo 0x97A498E3FC925C9489860333D06E4E470A454E544552505249534535
Descriptor de selección de ruta #1
Precedencia 1 (0x01)
Componente #1: S-NSSAI SST:XX SD:YYYYYY
Componente #2: DNN empresa5
Descriptor de selección de ruta #2
Precedencia 2 (0x02)
Componente #1: DNN empresa5

CBS

El siguiente es un ejemplo de regla URSP para el tráfico CBS:

Regla URSP #6 (CBS)
Precedencia 6 (0x06)
Descriptor de tráfico #1
ID de sistema operativo + tipo de ID de aplicación de sistema operativo 0x97A498E3FC925C9489860333D06E4E470A434253
Descriptor de selección de ruta #1
Precedencia 1 (0x01)
Componente #1: S-NSSAI SST:XX SD:YYYYYY
Componente #2: DNN cbs
Descriptor de selección de ruta #2
Precedencia 2 (0x02)
Componente #1: DNN cbs

Baja latencia

Regla URSP #7 (baja latencia)
Precedencia 7 (0x07)
Descriptor de tráfico #1
ID de sistema operativo + tipo de ID de aplicación de sistema operativo 0x97A498E3FC925C9489860333D06E4E470A5052494f524954495a455f4c4154454e4359
Descriptor de selección de ruta #1
Precedencia 1 (0x01)
Componente #1: S-NSSAI SST:XX SD:YYYYYY
Componente #2: DNN latencia
Descriptor de selección de ruta #2
Precedencia 2 (0x02)
Componente #1: DNN latencia

Gran ancho de banda

Regla URSP #8 (gran ancho de banda)
Precedencia 8 (0x08)
Descriptor de tráfico #1
ID de sistema operativo + tipo de ID de aplicación de sistema operativo 97A498E3FC925C9489860333D06E4E470A5052494f524954495a455f42414e445749445448
Descriptor de selección de ruta #1
Precedencia 1 (0x01)
Componente #1: S-NSSAI SST:XX SD:YYYYYY
Componente #2: DNN banda ancha
Descriptor de selección de ruta #2
Precedencia 2 (0x02)
Componente #1: DNN banda ancha

Defecto

Regla URSP #9 (predeterminada)
Precedencia 9 (0x09)
Descriptor de tráfico #1
combinar todo N / A
Descriptor de selección de ruta #1
Precedencia 1 (0x01)
Componente #1: S-NSSAI SST:XX SD:YYYYYY

Pruebas

Para probar el corte de red 5G, use la siguiente prueba manual.

Para configurar un dispositivo para la prueba, haga lo siguiente:

  1. Asegúrese de que la política de URSP esté configurada con una regla no predeterminada que coincida con la categoría empresarial y que el descriptor de selección de ruta correspondiente asigne la categoría empresarial al sector empresarial; y una regla predeterminada que dirige el tráfico al segmento de Internet predeterminado.

  2. Asegúrese de que haya un perfil de trabajo configurado en el dispositivo.

  3. Opte por usar el corte de red a través del DPC

Para probar el comportamiento de corte de red 5G, haga lo siguiente:

  1. Verifique que se establezca una sesión de PDU con el sector empresarial (por ejemplo, mediante el uso de una dirección IP específica) y que las aplicaciones en el perfil de trabajo usen esa sesión de PDU.
  2. Verifique que se establezca una sesión de PDU separada con el segmento de Internet predeterminado y que las aplicaciones en el perfil personal usen la sesión de PDU.