linux/include/uapi
Jarod Wilson 7b8fc0103b bonding: add a vlan+srcmac tx hashing option
This comes from an end-user request, where they're running multiple VMs on
hosts with bonded interfaces connected to some interest switch topologies,
where 802.3ad isn't an option. They're currently running a proprietary
solution that effectively achieves load-balancing of VMs and bandwidth
utilization improvements with a similar form of transmission algorithm.

Basically, each VM has it's own vlan, so it always sends its traffic out
the same interface, unless that interface fails. Traffic gets split
between the interfaces, maintaining a consistent path, with failover still
available if an interface goes down.

Unlike bond_eth_hash(), this hash function is using the full source MAC
address instead of just the last byte, as there are so few components to
the hash, and in the no-vlan case, we would be returning just the last
byte of the source MAC as the hash value. It's entirely possible to have
two NICs in a bond with the same last byte of their MAC, but not the same
MAC, so this adjustment should guarantee distinct hashes in all cases.

This has been rudimetarily tested to provide similar results to the
proprietary solution it is aiming to replace. A patch for iproute2 is also
posted, to properly support the new mode there as well.

Cc: Jay Vosburgh <j.vosburgh@gmail.com>
Cc: Veaceslav Falico <vfalico@gmail.com>
Cc: Andy Gospodarek <andy@greyhouse.net>
Cc: Thomas Davis <tadavis@lbl.gov>
Signed-off-by: Jarod Wilson <jarod@redhat.com>
Link: https://lore.kernel.org/r/20210119010927.1191922-1-jarod@redhat.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2021-01-19 19:30:32 -08:00
..
asm-generic epoll: wire up syscall epoll_pwait2 2020-12-19 11:18:38 -08:00
drm drm-misc-next for 5.11: 2020-12-15 10:21:48 +01:00
linux bonding: add a vlan+srcmac tx hashing option 2021-01-19 19:30:32 -08:00
misc habanalabs: add validation cs counter, fix misplaced counters 2020-12-28 08:47:39 +02:00
mtd MTD: mtd-abi.h: drop a duplicated word 2020-08-02 23:00:10 +02:00
rdma RDMA/rxe: Use acquire/release for memory ordering 2020-12-11 19:57:48 -04:00
scsi scsi: fc: Update formal FPIN descriptor definitions 2020-10-26 18:06:45 -04:00
sound Auxiliary Bus support tag for 5.11-rc1 2020-12-04 20:39:45 +00:00
video
xen xen/gntdev: gntdev.h: drop a duplicated word 2020-08-03 07:46:42 +02:00
Kbuild