pkelsey/libuinet

Enabling TCP Vegas in libuinet

Opened this issue · 0 comments

I would like to use Vegas congestion control in libuinet. I have added cc_vegas.c and h_ertt.c to the libuinet Makefile and managed to compile it. However, the vegas module fails to load and the e_rtt khelp module reports some error as well.

uinet starting: cpus=1, nmbclusters=131072
callwheelsize=524288
callwheelsize=524288
link_elf_lookup_symbol: missing symbol hash table
link_elf_lookup_symbol: missing symbol hash table
UINET multiprocessor subsystem configured with 1 CPUs
WARNING: VIMAGE (virtualized network stack) is a highly experimental feature.
Timecounters tick every 10.000 msec
vegas_mod_init: h_ertt module not found
module_register_init: MOD_LOAD (vegas, 0x485581, 0x6c78a0) error 2
khelp_init: Failed to add hooks for helper "ertt" (0x6c7ac0) to vnet 0xb85440.

This is my first time working with the FreeBSD kernel code but it looks like the modules are being loaded in the wrong order. The VNET should be initialized first, e_rtt loaded followed by vegas.

Any pointers to fix the issue or at least help me understand what would need to be fixed?