CumulusNetworks / ifupdown2

GNU General Public License v2.0
161 stars 75 forks source link

bring up interfaces in parallel if no dependency #294

Open ggzengel opened 7 months ago

ggzengel commented 7 months ago

I have a lot of bridges for tagged VLANs. It needs 5 secs on each to bring up. That means it needs more than an hour to start a system if there are 1000 VLANs configured.

I think they all can be brought up in parallel, because they depends on vmbr0000.

# systemd-analyze blame
1min 49.366s networking.service
2.971s systemd-udev-settle.service
2.149s dev-mapper-VG1\x2dSYSTEM.device

#grep bridge_ports /etc/network/interfaces.d/lan | wc
     21      42     691

Example:
iface left
    rx 4096
    tx 4096
        mtu 9000

iface right
    rx 4096
    tx 4096
        mtu 9000

auto b_lan
iface b_lan
    bond_mode 802.3ad
    bond-xmit-hash-policy layer2+3
        bond_miimon  100
        bond_updelay 400
        bond_downdelay 200
        bond_slaves left right
        mtu 9000
#   up ifconfig $IFACE txqueuelen 10000

auto vmbr0000
iface vmbr0000 inet manual
        bridge_ports b_lan
        bridge_stp off
        bridge_maxwait 5
#RAW-LAN: tagged backbone

auto vmbr2001
iface vmbr2001 inet manual
        bridge_ports vmbr0000.2001
        bridge_stp off
        bridge_maxwait 5
#VLAN #2001: Guest