SRv6 perf test with service chaining:
A. Endpoint to SR-unaware app via static proxy - End.AS function
Traffic flow in direction0 (opposite direction1 has the corresponding configuration)
1. Traffic goes from TG_if1 to DUT1_if1
2. Encapsulation with srh insertion on DUT1
sr policy add bsid {dut1_bsid} next {dut2_sid1} next {out_sid1} encap
sr steer l3 {dut1_sid1} via bsid {dut1_bsid}
- encapsulated traffic goes to DUT2
3. End.AS behavior on DUT2
sr localsid address {dut2_sid1} behavior end.as nh {dut2_nh1} oif {dut2_vhost1} iif {dut2_vhost2} src {dut1_sid1} next {dut2_sid1} next {out_sid1}
- Decapsulated traffic goes via interface {dut2_vhost1} to DUT2_VM1
- Traffic is forwarded through DUT2_VM1 via interface {dut2_vhost2} back to DUT2
- Encapsulation with srh insertion on DUT2 and encapsulated traffic is routed to DUT2_if2
4. Encapsulated traffic received on TG_if2
B. Endpoint to SR-unaware app via dynamic proxy - End.AD function
Traffic flow in direction0 (opposite direction1 has the corresponding configuration)
1. Traffic goes from TG_if1 to DUT1_if1
2. Encapsulation with srh insertion on DUT1
sr policy add bsid {dut1_bsid} next {dut2_sid1} next {out_sid1} encap
sr steer l3 {dut1_sid1} via bsid {dut1_bsid}
- encapsulated traffic goes to DUT2
3. End.AD behavior on DUT2
sr localsid address {dut2_sid1} behavior end.ad nh {dut2_nh1} oif {dut2_vhost1} iif {dut2_vhost2}
- Decapsulated traffic goes via interface {dut2_vhost1} to DUT2_VM1
- Traffic is forwarded through DUT2_VM1 via interface {dut2_vhost2} back to DUT2
- Encapsulation with srh insertion on DUT2 and encapsulated traffic is routed to DUT2_if2
4. Encapsulated traffic received on TG_if2
C. Endpoint to SR-unaware app via masquerading - End.AM function
Traffic flow in direction0 (opposite direction1 has the corresponding configuration)
1. Traffic goes from TG_if1 to DUT1_if1
2. Encapsulation with srh insertion on DUT1
sr policy add bsid {dut1_bsid} next {dut2_sid1} next {out_sid1} encap
sr steer l3 {dut1_sid1} via bsid {dut1_bsid}
- encapsulated traffic goes to DUT2
3. End.AM behavior on DUT2
sr localsid address {dut2_sid1} behavior end.am nh {dut2_nh1} oif {dut2_vhost1} iif {dut2_vhost2}
- Traffic with replaced DA in outer IPv6 Hdr goes via interface {dut2_vhost1} to DUT2_VM1
- Traffic is forwarded through DUT2_VM1 via interface {dut2_vhost2} back to DUT2
- Traffic with updated DA based on SRH is routed to DUT2_if2
4. Encapsulated traffic received on TG_if2