The main areas of work where in the kernel config (which I am sure is terrible, but I havenāt had time to go clean it up), and finding arm64 versions of packages.
I did have to build it on an arm64 host as well - I ended up using Oracle Cloud for that, with free tier and the arm accelerator program for credits.
It is hosting a full IPv6 BGP view pretty well, and I havenāt noticed any major latency / speed issues using a 1gig internet connection, but multi gig speeds are still tbd.
Hi all,
I was asked about this by a customer, so I went and updated my build:
The mistake I made last time was not to āpinā each package version, so the builder broke horribly after recent changes in VyOS-current.
I have now āpinnedā everything so if you clone this, it should produce the āsameā image I just built.
I also wrote a ālocalā Jenkinsfile runner rather than doing each package by hand.
There was also a recent change to the image generation in vyos-build which meant we canāt build qcow2 images at the moment. I had to fight my way through a bunch of live-boot and GRUB issues as a result. But this also means the install and update process will work exactly the same as it does on x86.
Bonus: XDP works!
iperf3 Gbit/s throughput
iperf -P1
iperf -P4
iperf -P6
iperf -P8
OpenWrt
1.66
6.28
9.11
7.42
VyOS normal
1.93
5.37
8.52
9.41
VyOS XDP
5.72
9.41
9.4
9.41
XDP improvement
2.96x
1.75x
1.10x
1.00x
I reckon the āsingleā thread speed is capped by my iperf client so Iāll go setup MoonGen for some proper tests.
As the VyOS documentation notes, the XDP path doesnāt work with firewall and NAT. Iām still looking at ways to speed that up.
If you want a copy of the VyOS ISO, DM me. Iāve been reluctant to publish them given the VyOS project depends on subscriptions, but Iāll reach out to them about it.
I would like to offer a suggestion regarding the testing methodology. While using iperf(3) is valuable, it is worth noting that it may lead to misleading results. In order to achieve more accurate measurements, I recommend considering the use of TRex test tool. Furthermore, including session counts in the test would provide a more comprehensive evaluation.
I believe implementing these adjustments will enhance the accuracy and effectiveness of the testing process.
Congratulations on your great work, and thank you for considering my input.
ik keep running into the issue of missing owamp dependencies; the build command to compile those dependencies isnāt working, so i canāt really build them manually as well
Sorry, Iāve been too busy to update the VyOS builder. It usually takes a couple of days to rebase all the tree changes and prepare a new set of patches.
I am looking to revisit it when VPP on VyOS progresses more.
There was also another arm64 builder script posted recently, I understand it generates an EFI iso, but not sure if it has the right kernel options to work on a Ten64.
Thanks for the quick response @mcbridematt! No need to apologise, already appreciate the effort you put in this.
I was able to fix the sign issues, however, the current issue is with the OWAMP dependencies. The script isnāt able to build the corresponding projects correctly and Iāve tried different things like manually installing the OWAMP dependencies, but it keeps failing. Any idea whether those dependencies are really needed and if not, how I can remove these from the project (along with all references)? Perhaps that could do the trick for the time being.
A couple of patches (like changes to GRUB) have been sent and merged into VyOS already. The remaining changes are mostly hacks around kernel configurations and command line.