TPA
IOS-XRThird Party Application (TPA) manages the communication between IOS-XR and Linux applications running on the router. TPA controls how Linux applications access the network through IOS-XR, including update source configuration for routing Linux traffic through specific interfaces, east-west interface forwarding between VRFs, and statistics collection for monitoring TPA activity.
Diagram
Section titled “Diagram”Classes
Section titled “Classes”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| devices | List | devices | No | |
| device_groups | List | device_groups | No | |
| global | Class | global | No |
devices (iosxr)
Section titled “devices (iosxr)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| configuration | Class | configuration | No |
device_groups (iosxr)
Section titled “device_groups (iosxr)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| configuration | Class | configuration | No |
global (iosxr)
Section titled “global (iosxr)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| configuration | Class | configuration | No |
configuration (iosxr.devices)
Section titled “configuration (iosxr.devices)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| tpa | Class | tpa | No |
tpa (iosxr.devices.configuration)
Section titled “tpa (iosxr.devices.configuration)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| logging | Class | logging | No | |
| statistics | Class | statistics | No | |
| vrfs | List | vrfs | No |
logging (iosxr.devices.configuration.tpa)
Section titled “logging (iosxr.devices.configuration.tpa)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| file_ | Integer | min: 1 | No | |
| rotation_ | Integer | min: 1 | No |
statistics (iosxr.devices.configuration.tpa)
Section titled “statistics (iosxr.devices.configuration.tpa)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| disable | Boolean | true, false | No | |
| max_intf_events | Integer | min: 1 | No | |
| max_lpts_events | Integer | min: 1 | No | |
| update_ | Integer | min: 1 | No |
vrfs (iosxr.devices.configuration.tpa)
Section titled “vrfs (iosxr.devices.configuration.tpa)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| name | String | Yes | ||
| address_ | Class | address_ | No | |
| address_ | Class | address_ | No | |
| east_ | List | east_ | No |
address_family_ipv4 (iosxr.devices.configuration.tpa.vrfs)
Section titled “address_family_ipv4 (iosxr.devices.configuration.tpa.vrfs)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| default_ | Boolean | true, false | No | |
| update_source | String | No | ||
| update_ | Boolean | true, false | No |
address_family_ipv6 (iosxr.devices.configuration.tpa.vrfs)
Section titled “address_family_ipv6 (iosxr.devices.configuration.tpa.vrfs)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| default_ | Boolean | true, false | No | |
| update_source | String | No | ||
| update_ | Boolean | true, false | No |
east_west_interfaces (iosxr.devices.configuration.tpa.vrfs)
Section titled “east_west_interfaces (iosxr.devices.configuration.tpa.vrfs)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| name | String | Yes |
Example YAML Code:
Section titled “Example YAML Code:”Example-1: TPA with statistics and logging
iosxr: devices: - name: router-1 host: 10.10.10.1:57400 configuration: hostname: router-1 tpa: statistics: update_frequency: 60 max_lpts_events: 10000000 max_intf_events: 10000000 logging: file_max_size_kb: 1024 rotation_max_files: 10 vrfs: - name: default address_family_ipv4: default_route_mgmt: true address_family_ipv6: default_route_mgmt: trueExample-2: TPA with update source and east-west interfaces
iosxr: devices: - name: router-1 host: 10.10.10.1:57400 configuration: hostname: router-1 tpa: statistics: update_frequency: 120 vrfs: - name: default address_family_ipv4: default_route_mgmt: true update_source: GigabitEthernet0/0/0/0 address_family_ipv6: default_route_mgmt: true update_source: GigabitEthernet0/0/0/0 east_west_interfaces: - name: GigabitEthernet0/0/0/1