Describes the Packet I/O framework that exposes Cisco IOS XR network interfaces to the Linux kernel, enabling the use of standard Linux networking tools, VRF isolation, and CPU-based packet generation for diagnostics.
Packet I/O communications
Explains how Packet I/O provides communications between IOS XR interfaces and Linux applications using the Linux networking stack.
Packet I/O infrastructure reachability
Describes how IOS XR interfaces are exposed to the Linux kernel and how the global virtual routing and forwarding (VRF) namespace reaches IOS XR routing through the to_xr interface.
Programme routes in the kernel
Programme default and connected routes into the Linux kernel to allow Linux applications to send and receive traffic through the IOS XR network stack using the to_xr interface.
Configure VRFs in the kernel
Configure a custom VRF in IOS XR and verify that it is automatically synchronized to the Linux kernel as a network namespace, enabling Linux applications to operate within isolated VRF contexts.
Open Linux sockets
Open TCP or UDP Linux sockets from the bash shell and verify that the socket entries are programmed into the Local Packet Transport Services (LPTS) infrastructure to distribute traffic to the hosted application.
Send and receive traffic through a Linux socket
Send traffic from an external server to an open Linux socket on the router to verify that the Packet I/O infrastructure correctly delivers packets to hosted Linux applications.
Manage IOS XR interfaces through Linux
Linux-managed interfaces allow standard Linux automation tools to configure and manage IOS XR interfaces, enabling IP address changes, MTU settings, and state management to propagate bidirectionally between Linux and IOS XR.
Configure traffic protection for Linux networking
Configure Linux firewall rules from IOS XR to restrict traffic reaching Linux applications, allowing you to permit or deny traffic based on protocol, port, and ingress interface.
Synchronize statistics between IOS XR and Linux
Configure IOS XR to periodically synchronize interface packet statistics from IOS XR to the Linux kernel so that Linux counters reflect the full traffic flow on the interface.
CPU-based packet generators
The CPU-based packet generator is a built-in Linux application that generates diverse traffic streams directly within the production environment, enabling in-production network diagnostics without physically isolating routers.