[packages] multiwan: Changed failover probabilities for

MultiWanLoadBalancer 


git-svn-id: svn://svn.openwrt.org/openwrt/packages@21414 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
craigc 2010-05-10 02:04:52 +00:00
parent 95bec05f00
commit b56076fdb1
2 changed files with 14 additions and 7 deletions

View File

@ -8,7 +8,7 @@
include $(TOPDIR)/rules.mk include $(TOPDIR)/rules.mk
PKG_NAME:=multiwan PKG_NAME:=multiwan
PKG_VERSION:=1.0.5 PKG_VERSION:=1.0.6
PKG_RELEASE:=1 PKG_RELEASE:=1
include $(INCLUDE_DIR)/package.mk include $(INCLUDE_DIR)/package.mk

View File

@ -664,8 +664,13 @@ i=0
while [ $i -lt $wancount ]; do while [ $i -lt $wancount ]; do
i=`expr $i + 1` i=`expr $i + 1`
group=$(query_config group $i) group=$(query_config group $i)
failchk=$(query_config failchk $group)
gateway=$(query_config gateway $group)
ifname=$(query_config ifname $group)
weight=`uci -q -P /var/state get multiwan.${group}.weight` weight=`uci -q -P /var/state get multiwan.${group}.weight`
total_weight=$(expr $total_weight + $weight) if [ "$gateway" != "x" -a "$ifname" != "x" -a "$failchk" != "x" -a "$weight" != "disable" ]; then
total_weight=$(expr $total_weight + $weight)
fi
done done
i=0 i=0
@ -682,11 +687,13 @@ if [ "$gateway" != "x" -a "$ifname" != "x" -a "$failchk" != "x" -a "$weight" !=
nexthop="$nexthop nexthop via $gateway dev $ifname weight $weight" nexthop="$nexthop nexthop via $gateway dev $ifname weight $weight"
rand_probability=$(expr $(expr $weight \* 100) / $total_weight) rand_probability=$(expr $(expr $weight \* 100) / $total_weight)
if [ $rand_probability -lt 10 ]; then if [ $rand_probability -lt 10 ]; then
rand_probability="0.0${rand_probability}" rand_probability="0.0${rand_probability}"
else elif [ $rand_probability -lt 100 ]; then
rand_probability="0.${rand_probability}" rand_probability="0.${rand_probability}"
fi else
rand_probability="1.0"
fi
if [ -z "$CHKFORMODULE" ]; then if [ -z "$CHKFORMODULE" ]; then
iptables -A MultiWanLoadBalancer -t mangle -m mark --mark 0x123 -m statistic --mode random --probability $rand_probability -j FW${i}MARK iptables -A MultiWanLoadBalancer -t mangle -m mark --mark 0x123 -m statistic --mode random --probability $rand_probability -j FW${i}MARK