Google se compromete a impulsar la igualdad racial para las comunidades afrodescendientes. Obtén información al respecto.

Redes

Android 10 incluye los siguientes módulos de red:

  • El módulo de Componentes de red proporciona servicios IP comunes, monitoreo de conectividad de red y detección de portal de inicio de sesión cautivo.
  • El módulo de configuración de permisos de pila de red define un permiso que permite a los módulos realizar tareas relacionadas con la red.

Módulo de componentes de red

El módulo de Componentes de red asegura que Android pueda adaptarse a los estándares de red en evolución y permite la interoperabilidad con nuevas implementaciones. Por ejemplo, las actualizaciones de la detección del portal cautivo y el código de inicio de sesión permiten que Android se mantenga actualizado con los cambios en los modelos de portal cautivo, y las actualizaciones de Advanced Policy Firewall (APF) permiten que Android ahorre energía en Wi-Fi a medida que los nuevos tipos de paquetes se vuelven comunes.

Cambios en Android 10

El módulo Componentes de red contiene los siguientes componentes.

  • Servicios de propiedad intelectual. El componente IpClient (anteriormente IpManager) maneja el aprovisionamiento y el mantenimiento de la capa IP. En Android 9, se utilizó en procesos cruzados por componentes como Bluetooth y en proceso por componentes como Wi-Fi. El componente DhcpClient obtiene direcciones IP de servidores DHCP para que puedan asignarse a interfaces.
  • NetworkMonitor. El componente NetworkMonitor prueba la accesibilidad a Internet al conectarse a una nueva red o ante fallas de red, al detectar portales cautivos y al validar redes.
  • Aplicación de inicio de sesión del portal cautivo. La aplicación de inicio de sesión del portal cautivo es una aplicación preinstalada que se encarga de administrar el inicio de sesión en los portales cautivos. Esta ha sido una aplicación separada desde Android 5.0, pero interactúa con NetworkMonitor para reenviar algunas opciones del usuario al sistema.

En los dispositivos utilizando el módulo de componentes de red, los servicios anteriores se refactorizan a un proceso diferente y se accede mediante una interfaz AIDL estable . Las rutas de refactorización se muestran en las siguientes tablas.

Rutas de refactorización de servicios IP

Android 9 y versiones anteriores En frameworks/base/services/net/java/android/net/ :
  • apf
  • dhcp
  • ip
  • netlink
  • util (en parte)
Android 10 y superior packages/modules/NetworkStack

Rutas de refactorización de inicio de sesión de portal cautivo

Android 9 y versiones anteriores En frameworks/base/ :
  • core/java/android/net/captiveportal/
  • services/core/java/com/android/server/connectivity/NetworkMonitor.java
  • packages/CaptivePortalLogin/* (donde * = comodín)
Android 10 y superior packages/modules/CaptivePortalLogin (y algunos otros lugares compartidos)

Formato y dependencias

El módulo de componentes de red se entrega como tres APK: una para los servicios IP, una para entrada de portal cautivo, y otro para la red Pila Permiso Config .

El módulo de Componentes de red depende de lo siguiente:

  • Privilegiadas @hide métodos en el servidor del sistema (por ejemplo, en IConnectivityManager.aidl ). Estas API se han anotado con @SystemApi y apropiadamente protegido para que sean accesibles para el módulo, pero no otras aplicaciones privilegiadas (por ejemplo, el uso de un nuevo permiso de la firma).
  • Carpeta IPC a netd definido en INetd.aidl . Esta interfaz se ha convertido a AIDL estable y está sujeta a pruebas de conformidad.

Módulo de configuración de permisos de pila de red

El módulo Network Stack Permission Config no contiene código, sino que define un permiso destinado a ser utilizado por los módulos Network Stack y Captive Portal Login. El sistema permite que los módulos a los que se les ha concedido este permiso realicen tareas de configuración de red relacionadas en el dispositivo.