| View previous topic :: View next topic |
| Author |
Message |
renato.morano
Joined: 21 Apr 2011 Posts: 42
|
Posted: Thu Jun 28, 2012 5:02 am Post subject: new bonding type |
|
|
Ciao,
mode=0 (balance-rr)
Round-robin policy: Transmit packets in sequential order from the first available slave through the last. This mode provides load balancing and fault tolerance.
mode=1 (active-backup)
Active-backup policy: Only one slave in the bond is active. A different slave becomes active if, and only if, the active slave fails. The bond's MAC address is externally visible on only one port (network adapter) to avoid confusing the switch. This mode provides fault tolerance. The primary option affects the behavior of this mode.
mode=2 (balance-xor)
XOR policy: Transmit based on [(source MAC address XOR'd with destination MAC address) modulo slave count]. This selects the same slave for each destination MAC address. This mode provides load balancing and fault tolerance.
mode=3 (broadcast)
Broadcast policy: transmits everything on all slave interfaces. This mode provides fault tolerance.
mode=4 (802.3ad)
IEEE 802.3ad Dynamic link aggregation. Creates aggregation groups that share the same speed and duplex settings. Utilizes all slaves in the active aggregator according to the 802.3ad specification.
Pre-requisites:
1. Ethtool support in the base drivers for retrieving
the speed and duplex of each slave.
2. A switch that supports IEEE 802.3ad Dynamic link
aggregation.
Most switches will require some type of configuration
to enable 802.3ad mode.
mode=5 (balance-tlb)
Adaptive transmit load balancing: channel bonding that does not require any special switch support. The outgoing traffic is distributed according to the current load (computed relative to the speed) on each slave. Incoming traffic is received by the current slave. If the receiving slave fails, another slave takes over the MAC address of the failed receiving slave.
Prerequisite:
Ethtool support in the base drivers for retrieving the
speed of each slave.
mode=6 (balance-alb)
Adaptive load balancing: includes balance-tlb plus receive load balancing (rlb) for IPV4 traffic, and does not require any special switch support. The receive load balancing is achieved by ARP negotiation. The bonding driver intercepts the ARP Replies sent by the local system on their way out and overwrites the source hardware address with the unique hardware address of one of the slaves in the bond such that different peers use different hardware addresses for the server.
The most used are the first four mode types...
Now we have mode=0 (balance-rr) and mode=1 (active-backup).
but if we need mode 5,6 we can change the file
/root/kerbynet.cgi/template/bondconfig
and add the rows:
<input type=radio name=Type value=5 <xvar ATLBCHECKED>
onclick="typechanged()"> Adaptive transmit load
balancing<br>
<input type=radio name=Type value=6 <xvar ALBCHECKED>
onclick="typechanged()"> Adaptive load balancing<br>
to have an persistent configuration
in active profile mkdir dir bond
and cp /root/kerbynet.cgi/template/bondconfig /Database/bond/
then in tab Pre Boot script
we add
cat /Database/bond/bondconfig >/root/kerbynet.cgi/template/bondconfig
.
at the end
 |
|
| Back to top |
|
 |
webtime
Joined: 02 Jul 2012 Posts: 5
|
|
| Back to top |
|
 |
renato.morano
Joined: 21 Apr 2011 Posts: 42
|
Posted: Thu Jul 05, 2012 3:42 pm Post subject: |
|
|
Hi,
you have to change the file /root/kerbynet.cgi/scripts/mkbonddev
Please let we know your "experiment" are working and why you need to do this .
Another question: but when you speak about "other hardware" what hardware is ?
ciao |
|
| Back to top |
|
 |
webtime
Joined: 02 Jul 2012 Posts: 5
|
Posted: Mon Jul 09, 2012 10:01 am Post subject: |
|
|
Renato,
thanks for answer...
This is my net schema:
VPN00 --> VPN with another site (we call this Site1)
ETH02 --> VPN IPSEC with site1 (private address of connection 172.16.x.1 and 172.16.x.2)
I make a bond with two interfaces (eth02 and vpn00) with eth02 as primary.
This above interfaces arent gateway for zeroshelll..... there is a static route
with site1 private address on bond00.
I need that the bond route traffic between eth02 and vpn00 only when private ip (172.16xxx) are not pingable..
.... other hardware: my zeroshell developer version is on virtualbox... my real hardware is an mini atx atom... |
|
| Back to top |
|
 |
renato.morano
Joined: 21 Apr 2011 Posts: 42
|
Posted: Tue Jul 10, 2012 11:28 am Post subject: |
|
|
Hi,
so you can't use the net balance and bond ( active-backup) neither too ?
mode=1 (active-backup)
Active-backup policy: Only one slave in the bond is active. A different slave becomes active if, and only if, the active slave fails. The bond's MAC address is externally visible on only one port (network adapter) to avoid confusing the switch. This mode provides fault tolerance. The primary option affects the behavior of this mode. |
|
| Back to top |
|
 |
dandcg
Joined: 20 Dec 2012 Posts: 1
|
Posted: Thu Dec 20, 2012 2:47 pm Post subject: |
|
|
Does this patch work on across VPN connections?
Looking to bond two different ADSL connection with different speeds without suffering the ill affects of round robin.
At the moment I just get double the slowest speed. |
|
| Back to top |
|
 |
Mani
Joined: 02 Feb 2013 Posts: 2
|
Posted: Sat Feb 02, 2013 1:25 am Post subject: |
|
|
| dandcg wrote: | Does this patch work on across VPN connections?
Looking to bond two different ADSL connection with different speeds without suffering the ill affects of round robin.
At the moment I just get double the slowest speed. | It doesn't work for me.
Every time I try to set it to "Adaptive Load Balancing" it switches back to "Fault Tolerance only".
Maybe fulvio adds mode 5 and 6 officially in a future release of ZS? |
|
| Back to top |
|
 |
|