TPA
Third 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”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_max_size_kb | Integer | min: 1 | No | |
| rotation_max_files | 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_frequency | 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_family_ipv4 | Class | [address_family_ipv4] | No | |
| address_family_ipv6 | Class | [address_family_ipv6] | No | |
| east_west_interfaces | List | [east_west_interfaces] | 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_route_mgmt | Boolean | true, false | No | |
| update_source | String | No | ||
| update_source_active_management | 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