Skip to content

Use Sonic VPP image#301

Draft
l0wl3vel wants to merge 24 commits into
masterfrom
feat/sonic-vpp
Draft

Use Sonic VPP image#301
l0wl3vel wants to merge 24 commits into
masterfrom
feat/sonic-vpp

Conversation

@l0wl3vel
Copy link
Copy Markdown

@l0wl3vel l0wl3vel commented May 20, 2026

Description

Use Sonic VPP image to emulate switch behaviour more accurately

What works

  • SONiC image building (locally)
  • Static breakout configuration (Dynamic breakouts are not supported)
  • SONiC config_db.json generation and loading

Outstanding issues

mini-lab

sonic-vpp related

  • isc/pixiecore do not receive DHCP requests from machine PXE because of an upstream issue with VLANs/Bridged Interfaces/L2 broadcasts Create vlan-bvi HLD sonic-net/sonic-platform-vpp#228 BVI support sonic-net/sonic-platform-vpp#199
    • Maybe mitigated by moving pixiecore and isc off the switches and letting sonic dhcp relay route the DHCP traffic. Great opportunity to get mini-lab closer to the reference architecture
  • unnumbered bgp does not come up between leaf switches and exit nodes due to IPv6 RAs not getting relayed to host interfaces on the host switch, leaving the BGP session idle on the switch, while the exit node tries to unsuccessfully establish a session.
    • looks like a similar root cause to the dhcp issue of traffic not getting punted to the host, only without the VLAN situation

In summary:

  • sonic-vpp is missing required multicast punting for icmpv6 (IPv6 Router Advertisements) and DHCP. Proper fixes would have to happen upstream.

  • Changes to the launch.py shoud be merged anyway, since it makes sonic bootup easier to understand

closes: #300

Used AI-Tools ✨

  • Claude Opus used as research buddy/stand-in in for missing SONiC documentation

l0wl3vel added 14 commits May 8, 2026 16:58
Signed-off-by: Benjamin Ritter <benjamin.ritter@x-cellent.com>
Signed-off-by: Benjamin Ritter <benjamin.ritter@x-cellent.com>
Signed-off-by: Benjamin Ritter <benjamin.ritter@x-cellent.com>
Signed-off-by: Benjamin Ritter <benjamin.ritter@x-cellent.com>
Signed-off-by: Benjamin Ritter <benjamin.ritter@x-cellent.com>
Signed-off-by: Benjamin Ritter <benjamin.ritter@x-cellent.com>
Signed-off-by: Benjamin Ritter <benjamin.ritter@x-cellent.com>
Signed-off-by: Benjamin Ritter <benjamin.ritter@x-cellent.com>
Signed-off-by: Benjamin Ritter <benjamin.ritter@x-cellent.com>
Signed-off-by: Benjamin Ritter <benjamin.ritter@x-cellent.com>
Signed-off-by: Benjamin Ritter <benjamin.ritter@x-cellent.com>
Signed-off-by: Benjamin Ritter <benjamin.ritter@x-cellent.com>
Signed-off-by: Benjamin Ritter <benjamin.ritter@x-cellent.com>
Signed-off-by: Benjamin Ritter <benjamin.ritter@x-cellent.com>
l0wl3vel added 5 commits May 20, 2026 21:53
it is hold together by hopes and dreams, is slow as all hell, but it works

Signed-off-by: Benjamin Ritter <benjamin.ritter@x-cellent.com>
current issue: DHCP discovers from machines do not arrive

Signed-off-by: Benjamin Ritter <benjamin.ritter@x-cellent.com>
Signed-off-by: Benjamin Ritter <benjamin.ritter@x-cellent.com>
Signed-off-by: Benjamin Ritter <benjamin.ritter@x-cellent.com>
l0wl3vel added 3 commits May 28, 2026 11:03
e1000 did not play well with vpp due to tx/rx queue count mismatch
(vpp expected two, e1000 had one, second tx queue did overflow since
it never got emptied by the virtual nic)

Signed-off-by: Benjamin Ritter <benjamin.ritter@x-cellent.com>
troubleshooting steps to isolate why the dhcp return path via dhcp relay
does not work

Signed-off-by: Benjamin Ritter <benjamin.ritter@x-cellent.com>
includes
sonic-net/sonic-platform-vpp#212
and sonic-net/sonic-platform-vpp#220
for troubleshooting reasons

Signed-off-by: Benjamin Ritter <benjamin.ritter@x-cellent.com>
Removed hacks, that just about worked in sonic-vs but broke in sonic-vpp
- sonic-vpp requires first time init to generate
  VPP config files from hwsku lanemap and port
  config. If skipped the syncd container, in which
  vpp runs, will crash immediately
- /etc/sonic/sonic-environment is generated on first boot from
  /usr/share/sonic/device/x86_64-kvm_x86_64-r0/default_sku,
  so writing it serves no purpose as we reenabled firstboot
- switch to telnetlib3, due to telnetlib being deprecated

Signed-off-by: Benjamin Ritter <benjamin.ritter@x-cellent.com>
Signed-off-by: Benjamin Ritter <benjamin.ritter@x-cellent.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: No status

Development

Successfully merging this pull request may close these issues.

Use sonic-vpp target for OSS SONiC images

1 participant