Re: udhcpc: throttled down data transmission
Am Thu, Feb 15, 2024 at 12:23:06PM + schrieb Laurent Bercot: > > I'm using 'udhcpc' on my ARM64 platform with the following scenario: I have > > one > > 'eth0' interface that has a static ip address and the 'udhcpc' client on the > > same interface. That leads to low data transmission performace on that > > interface. > > Most people use udhcpc when they *don't* have a static IP address on > an interface, the point of DHCP being to assign an IP address. In that > common use case, it is impossible to use UDP, since IPv4 is not > configured yet! Listening on a raw socket is the only option. > > Your use case is pretty niche, already having IPv4 configured on your > interface before you use udhcpc. It's not surprising that udhcpc isn't > optimized for it: it's a small client after all. > > I suppose it could be patched to add an option to use UDP when the > interface already has an address, but it would mean effort, and more code > in busybox, which is probably not worth the trade-off. > > -- > Laurent > Thank you for the clear explanation. I'm going to disable the 'udhcpc' client when the interface 'eth0' has already an static IP address. Best regards Alexander Wilhelm ___ busybox mailing list busybox@busybox.net http://lists.busybox.net/mailman/listinfo/busybox
Re: udhcpc: throttled down data transmission
I'm using 'udhcpc' on my ARM64 platform with the following scenario: I have one 'eth0' interface that has a static ip address and the 'udhcpc' client on the same interface. That leads to low data transmission performace on that interface. Most people use udhcpc when they *don't* have a static IP address on an interface, the point of DHCP being to assign an IP address. In that common use case, it is impossible to use UDP, since IPv4 is not configured yet! Listening on a raw socket is the only option. Your use case is pretty niche, already having IPv4 configured on your interface before you use udhcpc. It's not surprising that udhcpc isn't optimized for it: it's a small client after all. I suppose it could be patched to add an option to use UDP when the interface already has an address, but it would mean effort, and more code in busybox, which is probably not worth the trade-off. -- Laurent ___ busybox mailing list busybox@busybox.net http://lists.busybox.net/mailman/listinfo/busybox
udhcpc: throttled down data transmission
Hello devs, I'm using 'udhcpc' on my ARM64 platform with the following scenario: I have one 'eth0' interface that has a static ip address and the 'udhcpc' client on the same interface. That leads to low data transmission performace on that interface. I analyzed a code a little and found out, that the 'udhcpc' client has an internal state machine. For the setting of file descriptors to use with polling the tool uses either UDP sockets or RAW sockets. As it seems it uses in it's beginning state (INIT_SELECTING) the LISTEN_RAW mode. Thus all IPv4 packets are monitored by 'udhcpc' until DHCPOFFER is received which leads to low performace on 'eth0'. Is it a design desicion or a configurable option? How can I change it, if possible? Best regards Alexander Wilhelm ___ busybox mailing list busybox@busybox.net http://lists.busybox.net/mailman/listinfo/busybox