inner_ttl_ipv4 - openconfig/featureprofiles GitHub Wiki
Create a policy-forwarding configuration using gNMI with action set-ip-ttl.
TODO: Complete test environment setup steps
inner_ipv6_dst_A = "2001:aa:bb::1/128" inner_ipv6_dst_B = "2001:aa:bb::2/128" inner_ipv6_default = "::/0"
ipv4_inner_dst_A = "10.5.1.1/32" ipv4_inner_dst_B = "10.5.1.2/32" ipv4_inner_default = "0.0.0.0/0"
outer_ipv6_src = "2001:f:a:1::0" outer_ipv6_dst_A = "2001:f:c:e::1" outer_ipv6_dst_B = "2001:f:c:e::2" outer_ipv6_dst_def = "2001:1:1:1::0" outer_dst_udp_port = "6635" outer_dscp = "26" outer_ip-ttl = "64"
[TODO] Test code needs to be implemented.
Canonical OpenConfig for policy forwarding, matching IP prefix and TTL = 1 with action set inner packet TTL = 1.
{
"openconfig-network-instance": {
"network-instances": [
{
"afts": {
"policy-forwarding": {
"policies": [
{
"config": {
"policy-id": "retain ttl",
"type": "PBR_POLICY"
},
"policy": "retain ttl",
"rules": [
{
"config": {
"sequence-id": 1,
},
"ipv6": {
"config": {
"destination-address": "router_ip"
"hop-limit": 1
}
},
"action": {
"set-ip-ttl": 1 #TODO: Add set-ip-ttl [https://github.com/openconfig/public/pull/1263/files]
}
}
]
}
]
}
}
}
]
}
}
- Push the gNMI the policy forwarding configuration
- Push the configuration to DUT using gnmi.Set with REPLACE option
- Send traffic from ATE port 1 to DUT port 1 with inner packet TTL as 1.
- Using OTG, validate ATE port 2 receives MPLS-IN-GRE packets
- Validate destination IPs are outer_ipv6_dst_A and outer_ipv6_dst_B
- Validate MPLS label is set
- Validate inner packet ttl as 1.
- Validate outer packet ttl to be "outer_ip-ttl"
paths:
/network-instances/network-instance/policy-forwarding/policies/policy/rules/rule/ipv6/config/destination-address:
/network-instances/network-instance/policy-forwarding/policies/policy/rules/rule/ipv6/config/hop-limit:
rpcs:
gnmi:
gNMI.Set:
union_replace: true
replace: true
gNMI.Subscribe:
on_change: true
- FFF