Upgrades the wing package to the latest version. The most important
changes are:

* revised implementation of the minstrel rate control algorithm
* the openwrt makefile now point to the new repository, the old one
in not available anymore

Signed-off-by: Roberto Riggio <roberto.rig...@create-net.org>

--

Index: net/wing/files/lib/network/wing.sh
===================================================================
--- net/wing/files/lib/network/wing.sh    (revision 26355)
+++ net/wing/files/lib/network/wing.sh    (working copy)
@@ -36,32 +36,32 @@
         exit 1
     fi

-    local profile rc ls prefix debug
+    local profile rc ls metric prefix period tau debug

     config_get profile $config profile "bulk"
-    config_get rc $config rc "static"
+    config_get rc $config rc "minstrel"
     config_get ls $config ls "fcfs"
     config_get metric $config metric "wcett"
     config_get prefix $config prefix "6"
     config_get period $config period "10000"
     config_get tau $config tau "100000"
-    config_get_bool debug $config debug "False"
+    config_get_bool debug $config debug "false"

     local hwaddr=$(echo $hwaddrs | sed 's/ .*//');
local ipaddr=$(printf "$prefix.%d.%d.%d" $(echo $hwaddr | awk -F: '{printf "0x%s 0x%s 0x%s",$4,$5,$6}'))
     local netmask=255.0.0.0

-    if ! wing_template_available "profile" "$profile" "bulk"; then
+    if ! wing_template_available "profile" "$profile"; then
         logger -t "$config" "Unable to configure router. Exiting."
         exit 1
     fi

-    if ! wing_template_available "rc" "$rc" "static"; then
+    if ! wing_template_available "rc" "$rc"; then
         logger -t "$config" "Unable to configure rate control. Exiting."
         exit 1
     fi

-    if ! wing_template_available "ls" "$ls" "radiotap"; then
+    if ! wing_template_available "ls" "$ls"; then
         logger -t "$config" "Unable to configure link scheduler. Exiting."
         exit 1
     fi
@@ -115,10 +115,7 @@
 wing_template_available() { # prefix, template, default
     local template="/etc/wing/$1.$2.click"
     [ ! -f $template ] && {
-        template="/etc/wing/$1.$3.click"
-        [ ! -f $template ] && {
-            return 1
-        }
+        return 1
     }
     return 0
 }
@@ -131,8 +128,12 @@
     config_get ifname $1 ifname
     config_get device $1 device
     config_get hwmode $device hwmode "11bg"
- freq=$(iwlist $ifname freq | grep "Current Frequency" | sed -n "s/^.*Current Frequency:\([0-9.]*\) GHz (Channel \([0-9]*\))/\1/p" | awk '{print $1*1000}')
-    freq=${freq:-"0"}
+    config_get channel $device channel "0"
+    [ "$channel" = "0" -o "$channel" = "auto" ] && {
+        logger -t "$device" "Channel not specified. Ignoring."
+        return 0
+    }
+ freq=$(iwlist $ifname freq | sed -n "s/^.*Channel 0*$channel : \([0-9.]*\).*/\1/p" | awk '{print $1*1000}') hwaddr=$(/sbin/ifconfig $ifname 2>&1 | sed -n 's/^.*HWaddr \([0-9A-Za-z\-]*\).*/\1/p' | sed -e 's/\-/:/g' | cut -c1-17)
     freqs=${freqs:+"$freqs "}$freq
     hwmodes=${hwmodes:+"$hwmodes "}$hwmode
Index: net/wing/files/etc/uci-defaults/wing
===================================================================
--- net/wing/files/etc/uci-defaults/wing    (revision 26355)
+++ net/wing/files/etc/uci-defaults/wing    (working copy)
@@ -1,13 +1,13 @@
 uci set network.mesh=interface
 uci set network.mesh.proto=wing
 uci set network.mesh.profile=bulk
-uci set network.mesh.rc=static
+uci set network.mesh.rc=minstrel
 uci set network.mesh.ls=fcfs
 uci set network.mesh.metric=wcett
 uci set network.mesh.prefix=6
-uci set network.mesh.period=36000
-uci set network.mesh.tau=360000
-uci set network.mesh.debug=true
+uci set network.mesh.period=10000
+uci set network.mesh.tau=100000
+uci set network.mesh.debug=false

 cfg=$(uci add firewall zone)
 uci set firewall.$cfg.name="mesh"
Index: net/wing/Makefile
===================================================================
--- net/wing/Makefile    (revision 26355)
+++ net/wing/Makefile    (working copy)
@@ -8,12 +8,12 @@
 include $(TOPDIR)/rules.mk

 PKG_NAME:=wing
-PKG_VERSION:=20101023
+PKG_VERSION:=20110329
 PKG_RELEASE:=1
-PKG_REV:=daffb8d7642c4a343951d67159504ff4f4da49ed
+PKG_REV:=5c93a28b13921608750b2b5050a7e58fe3b69901

 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
-PKG_SOURCE_URL:=http://github.com/create-net/click-wing.git
+PKG_SOURCE_URL:=git://github.com/rriggio/click.git
 PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
 PKG_SOURCE_VERSION:=$(PKG_REV)
 PKG_SOURCE_PROTO:=git
@@ -29,7 +29,6 @@
     TITLE:=Wireless mesh networking toolkit
     SECTION:=net
     CATEGORY:=Network
-    SUBMENU:=Routing and Redirection
     MAINTAINER:=Roberto Riggio <roberto.rig...@create-net.org>
     DEPENDS:=+kmod-tun +libpcap +libstdcpp
     URL:=http://www.wing-project.org/
@@ -48,12 +47,14 @@
     --enable-userlevel \
     --enable-wifi \
     --enable-wing \
+    --enable-diffserv \
     --disable-linuxmodule \
     --disable-dynamic-linking \

 HOST_CONFIGURE_ARGS += \
     --enable-userlevel \
     --enable-wifi \
+    --enable-diffserv \
     --enable-wing \
     --disable-linuxmodule \

@@ -65,11 +66,11 @@
     (cd $(PKG_BUILD_DIR)/userlevel; \
$(STAGING_DIR_HOST)/bin/click-mkmindriver -p $(PKG_NAME) -C $(STAGING_DIR_HOST) \
         -f $(PKG_BUILD_DIR)/conf/wing/sample.click \
-        -A --all -E Discard -E Print -E Null \
+        -A --all -E Discard -E Print -E PrintWifi -E Null \
         -E InfiniteSource -E RatedSource -E EtherEncap -E UDPIPEncap \
-        -E RadiotapDecap -E RadiotapEncap \
+        -E WINGETTMetric -E WINGETXMetric -E WINGHopCountMetric \
         -E ProbeTXRate -E MadwifiRate -E AutoRateFallback -E Minstrel \
-        -E RoundRobinSched -E DRRSched; \
+ -E FairBuffer -E DeAggregator -E DWRRSched -E WFQSched -E WRRSched; \
     );
     $(call Build/Install/Default, MINDRIVER=$(PKG_NAME) install)
 endef
_______________________________________________
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel

Reply via email to