Capítulo 7. Ruta de datos exprés

Este trabajo se ha traducido utilizando IA. Agradecemos tus opiniones y comentarios: translation-feedback@oreilly.com

Express Data Path (XDP) es un procesador de paquetes seguro, programable, de alto rendimiento e integrado en el núcleo de la ruta de datos de red de Linux, que ejecuta programas BPF cuando el controlador NIC recibe un paquete. Esto permite a los programas XDP tomar decisiones sobre el paquete recibido (eliminarlo, modificarlo o simplemente permitirlo) en el momento más temprano posible.

El punto de ejecución no es el único aspecto que hace que los programas XDP sean rápidos; hay otras decisiones de diseño que influyen en ello:

  • No hay asignaciones de memoria mientras se procesan paquetes con XDP.

  • Los programas XDP sólo funcionan con paquetes lineales, no fragmentados, y disponen de los punteros de inicio y fin del paquete.

  • No hay acceso a los metadatos completos del paquete, por lo que el contexto de entrada que recibe este tipo de programa será del tipo xdp_buff en lugar de la estructura sk_buff que encontraste en el Capítulo 6.

  • Al ser programas eBPF, los programas XDP tienen un tiempo de ejecución acotado, y la consecuencia de ello es que su uso tiene un coste fijo en la canalización de red.

Al hablar del XDP, es importante recordar que no es un mecanismo de elusión del núcleo; está diseñado para integrarse con otros componentes del núcleo y con el modelo de seguridad interno de Linux.

Nota

La estructura xdp_buff se utiliza ...

Get Observabilidad de Linux con BPF now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.