我想建立一个低延迟的有线局域网 (LAN)。我有几台 ubuntu linux 机器(正在运行),但我只能通过命令行访问其中一台,称为box-a
。
作为低延迟措施的一部分, 上的 DHCP 服务器dhcpd
和 DHCP 客户端dhclient
已被禁用box-a
。其他盒子上不存在 DHCP 服务器。我知道网络中每个盒子的 MAC 地址。 box-a
在接口 上分配了一个静态 IPv4地址eth1
。192.168.100.1
如何在没有 DHCP 的情况下让流量流通?
我正在尝试手动添加邻居box-a
?
例如:
# Show the current neighbor table (ARP cache)
ip neighbor show
# Manually add each client device, associating an arbitrary, but
# unique IPv4 address to its unique MAC address
ip neighbor add 192.168.100.2 lladdr aa:bb:cc:dd:ee:02 dev eth1 nud permanent
ip neighbor add 192.168.100.3 lladdr aa:bb:cc:dd:ee:03 dev eth1 nud permanent
ip neighbor add 192.168.100.4 lladdr aa:bb:cc:dd:ee:04 dev eth1 nud permanent
# Show the updated neighbor table (ARP cache)
ip neighbor show
答案1
尽管由于某种原因,框 a 通过与开关相反方向的箭头连接,但您没有在图表中显示任何网关。
我假设这都是关于 LAN 上 A 到 D 盒之间的通信。
1)潜伏是发送数据包和数据包到达之间的延迟。这是网络上路由器、网桥等的特性。就您而言,这仅仅是交换机。
您在盒子 A 上执行的任何操作都不会改变延迟。
吞吐量是您可以通过 LAN 传输的最大流量(无论需要多长时间才能到达)。您可以通过避免不必要的流量稍微提高吞吐量,但是:
2)禁用 DHCP 对吞吐量的影响微乎其微。DHCP 会交换少量数据包一次当新机器连接到 LAN 时。这种情况很少发生,而且数据包很小,不值得避免这种流量。
3) 尽量避免 ARP 数据包对吞吐量几乎没有影响。是的,您可以设置静态 ARP 关联,但 ARP 缓存足够大,因此很少交换 ARP 数据包。
4)也就是说,设置没有 DHCP 的 LAN 的正确方法是给每台机器一个静态地址。您必须在所有机器上执行此操作,因此这需要所有机器的 root 访问权限。如果您没有该权限,则无法执行此操作。
5) 同样,没有 DHCP 和 ARP 的 LAN 需要在所有机器上进行静态 ARP 分配。因此,如果没有对所有机器的 root 访问权限,这是不可能的。
TL;DR:由于限制,您尝试做的事情是不可能的,即使您可以做到,它也不会以任何可以衡量的方式增加吞吐量,并且根据定义它不会改变延迟。