Skip to content

Conversation

@eb-eqm
Copy link
Contributor

@eb-eqm eb-eqm commented Aug 13, 2024

Relevant JIRA

https://equinixjira.atlassian.net/browse/BMS-898

What does this PR do?

Updates the Alpine bonded template to remove the bond-master option from the ethX stanzas.

Why is this necessary?

When both bond-master and bond-slaves are present, bond-slaves is ignored. This leads to the bond-* options associated with the bond-slaves stanza to be ignored as well. We observed that this led to provisioned Alpine linux machines to have balance-rr (mode 3) bonding mode instead of 802.3ad (mode 4) bonding mode. This caused packets to be sent out-of-order, leading to TCP/IP congestion control due to packet loss.

Removing the bond-master option from the ethX stanzas fixes this issue and ensures the bonding driver uses our declared bond-* options in the bond stanzas.

(How) Has This Been Tested?

In CI, by hand with a3.large.x86 and n3.xlarge.x86 provisions, and OSIE

When both bond-master and bond-slaves are present, bond-slaves is
ignored. This leads to the bond-* options associated with the
bond-slaves stanza to be ignored as well. We observed that this led to
provisioned Alpine linux machines to have balance-rr (mode 3) bonding mode
instead of 802.3ad (mode 4) bonding mode. This caused packets to be sent
out-of-order, leading to TCP/IP congestion control due to packet loss.

Removing the bond-master option from the ethX stanzas fixes this issue
and ensures the bonding driver uses our declared bond-* options in the
bond stanzas.
@eb-eqm eb-eqm merged commit 85d33f3 into master Aug 14, 2024
@eb-eqm eb-eqm deleted the BMS-898-fix-alpine-bonded-packetloss branch August 14, 2024 16:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants