Add a screenshot of Wireshark; do not say 'pop' but rather 'decrement' because the Segment List remains intact
All checks were successful
continuous-integration/drone/push Build is passing
All checks were successful
continuous-integration/drone/push Build is passing
This commit is contained in:
@@ -354,15 +354,25 @@ packet.
|
|||||||
is expected to go.
|
is expected to go.
|
||||||
1. on vlan 21, because the first segment wants the packet to go to `vpp0-2`. and `vpp0-1` is
|
1. on vlan 21, because the first segment wants the packet to go to `vpp0-2`. and `vpp0-1` is
|
||||||
acting as a transit router (just normally using IPv6 FIB lookup to pass it along)
|
acting as a transit router (just normally using IPv6 FIB lookup to pass it along)
|
||||||
1. on vlan 21 again, because when `vpp0-2` got it, it popped the SRH list, and sent it to the
|
1. on vlan 21 again, because when `vpp0-2` got it, it decremented the SRH _Segments Left_ from 2
|
||||||
second segment, which is onwards to `vpp0-1`.
|
to 1, and sent it to the second segment, which is onwards to `vpp0-1`.
|
||||||
1. on vlan 21 yet again, because when `vpp0-1` got it, it popped the SRH list, and sent it to the
|
1. on vlan 21 yet again, because when `vpp0-1` got it, it decremented the SRH _Segments Left_ from
|
||||||
third and final segment, which is onwards to `vpp0-3`.
|
1 to 0, and sent it to the third and final segment, which is onwards to `vpp0-3`.
|
||||||
1. on vlan 22, because `vpp0-2` is a transit router, using its FIB to pass it along to `vpp0-3`,
|
1. on vlan 22, because `vpp0-2` is a transit router, using its FIB to pass it along to `vpp0-3`,
|
||||||
which decapsulates it with End.DX2 and sends it as an L2 packet on Gi10/0/3.
|
which decapsulates it with End.DX2 and sends it as an L2 packet on Gi10/0/3.
|
||||||
1. coming out of vlan 43 (between `vpp0-3:Gi10/0/3` and `host0-1`), where it is simply an IPv4
|
1. coming out of vlan 43 (between `vpp0-3:Gi10/0/3` and `host0-1`), where it is simply an IPv4
|
||||||
packet again.
|
packet again.
|
||||||
|
|
||||||
|
Some folks find it easier to visualize packets by looking at Wireshark output. I grabbed one of the
|
||||||
|
packets from the wire, and here's what it looks like:
|
||||||
|
|
||||||
|
{{< image width="100%" src="/assets/vpp-srv6/wireshark.png" alt="Wireshark SRv6 packet with SRH" >}}
|
||||||
|
|
||||||
|
The screenshot shows the packet observed on step 4 above - it is coming from `vpp0-0`'s loopback address and
|
||||||
|
destined to the End localsid on `vpp0-1`, and I can see that the SRH has the list of 3 Segments in
|
||||||
|
reversed order with the `Address[0]` is the last one, a _LocalSID_ on `vpp0-3` that is an End.DX2. I
|
||||||
|
can also see that _Segments Left_ is set to 1.
|
||||||
|
|
||||||
VPP has a few relevant dataplane nodes:
|
VPP has a few relevant dataplane nodes:
|
||||||
1. ***sr-pl-rewrite-encaps-l2***: This node encapsulates ethernet at the ingress point by steering
|
1. ***sr-pl-rewrite-encaps-l2***: This node encapsulates ethernet at the ingress point by steering
|
||||||
packets into an _SR Policy_ named by its _Binding Segment ID_
|
packets into an _SR Policy_ named by its _Binding Segment ID_
|
||||||
|
|||||||
BIN
static/assets/vpp-srv6/wireshark.png
LFS
Normal file
BIN
static/assets/vpp-srv6/wireshark.png
LFS
Normal file
Binary file not shown.
Reference in New Issue
Block a user