Antennen Autosensing: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
(→Wie: layout) |
Glenn (Diskussion | Beiträge) (+kat) |
||
(16 dazwischenliegende Versionen von einem anderen Benutzer werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
===Warum=== | ===Warum=== | ||
− | *Es ist immer wieder problematisch herauszufinden, welcher Antennenanschluss nun tatsaechlich auf welche Antenne zeigt. Antenne A ist manchmal links und manchmal rechts, je nach dem welche Wurst die Frau | + | *hat man _eine_ bessere Antenne an sein Geraet geschraubt, hat man folgendes Problem: |
+ | *Es ist immer wieder problematisch herauszufinden, welcher Antennenanschluss nun tatsaechlich auf welche Antenne zeigt. Antenne A ist manchmal links und manchmal rechts, je nach dem welche Wurst die Frau am Linksys-Fliessband zum Fruehstueck auf dem Broetchen hatte | ||
===Wie=== | ===Wie=== | ||
Zeile 6: | Zeile 7: | ||
**Antenne A einstellen. | **Antenne A einstellen. | ||
**eine komplette Windowsize warten | **eine komplette Windowsize warten | ||
− | **messen: wieviel nachbarn | + | **messen: |
+ | ***wieviel nachbarn | ||
+ | ***wieviel olsr-pakete | ||
+ | ***summe aller etx-werte | ||
**Antenne B einstellen. | **Antenne B einstellen. | ||
**eine komplette Windowsize warten | **eine komplette Windowsize warten | ||
Zeile 21: | Zeile 25: | ||
===Aber?=== | ===Aber?=== | ||
− | *Das | + | * das Skript wird nur durchlaufen, wenn die Antenneneinstellung auf "Auto" steht |
− | + | * das Skript baut Mist, wenn man eine Richtantenne montiert hat. Es wirkt also nur bei 2 verschieden guten Rundstrahlern, aber das wird noch behoben. | |
+ | * es wird AWK benoetigt - das wird aber noch wegrationalisiert | ||
+ | * das skript waehlt zwar die richtige antenne, aber ob mehr nachbarn automatisch besser sind?!! | ||
+ | ** Antenne A: 14 Total - aber nur 7 vernuenftige Nachbarn mit ETX <=3 | ||
+ | ** Antenne B: 15 Total - aber nur 1 vernueftiger Nachbarn und 4 mittelmaessige mit ETX <=5 | ||
+ | ** Das skript waehlt Antenne B, aber antenne A waere besser?!?!?: | ||
+ | <pre> | ||
+ | Sep 4 17:28:28 rex user.notice root: AUTOANT-WAHL: Start... | ||
+ | Sep 4 17:28:28 rex user.notice root: AUTOANT-WAHL: Antenne A einstellen und 500 sek. warten... | ||
+ | Sep 4 17:36:49 rex user.notice root: AUTOANT-WAHL: httpinfo-Plugin (Port 8080) erkannt... | ||
+ | Sep 4 17:36:50 rex user.notice root: AUTOANT-WAHL: 10.63.153.1 0.11 89/100 0.95 9.58 | ||
+ | Sep 4 17:36:50 rex user.notice root: AUTOANT-WAHL: 10.63.135.1 0.12 88/100 0.81 10.32 | ||
+ | Sep 4 17:36:50 rex user.notice root: AUTOANT-WAHL: 10.63.127.1 0.14 86/100 0.29 24.95 | ||
+ | Sep 4 17:36:50 rex user.notice root: AUTOANT-WAHL: 10.63.152.1 0.03 97/100 0.76 44.04 | ||
+ | Sep 4 17:36:50 rex user.notice root: AUTOANT-WAHL: 10.63.165.1 0.28 72/100 0.51 7.01 | ||
+ | Sep 4 17:36:50 rex user.notice root: AUTOANT-WAHL: 10.63.5.1 0.32 68/100 0.62 5.04 | ||
+ | Sep 4 17:36:50 rex user.notice root: AUTOANT-WAHL: 10.63.44.1 0.41 59/100 0.98 2.50 | ||
+ | Sep 4 17:36:50 rex user.notice root: AUTOANT-WAHL: 10.63.155.1 0.42 58/100 0.98 2.44 | ||
+ | Sep 4 17:36:50 rex user.notice root: AUTOANT-WAHL: 10.63.142.1 0.42 58/100 0.77 3.10 | ||
+ | Sep 4 17:36:50 rex user.notice root: AUTOANT-WAHL: 10.63.63.1 0.25 75/100 0.56 7.18 | ||
+ | Sep 4 17:36:50 rex user.notice root: AUTOANT-WAHL: 10.63.147.1 0.38 62/100 0.94 2.81 | ||
+ | Sep 4 17:36:50 rex user.notice root: AUTOANT-WAHL: 10.63.43.1 0.36 64/100 0.98 2.84 | ||
+ | Sep 4 17:36:50 rex user.notice root: AUTOANT-WAHL: 10.63.3.1 0.44 56/100 0.97 2.35 | ||
+ | Sep 4 17:36:50 rex user.notice root: AUTOANT-WAHL: 10.63.104.1 0.37 63/100 0.99 2.73 | ||
+ | Sep 4 17:36:50 rex user.notice root: AUTOANT-WAHL: Nachbarn,Pakete,ETXsum = 14, 1400, 126.89 | ||
+ | Sep 4 17:36:50 rex user.notice root: AUTOANT-WAHL: Antenne B einstellen, OLSR-Neustart erzwingen und 500 sek. warten... | ||
+ | Sep 4 17:45:19 rex user.notice root: AUTOANT-WAHL: 10.63.16.1 0.13 4/5 0.16 51.00 | ||
+ | Sep 4 17:45:19 rex user.notice root: AUTOANT-WAHL: 10.63.63.1 0.20 80/100 0.54 9.31 | ||
+ | Sep 4 17:45:19 rex user.notice root: AUTOANT-WAHL: 10.63.153.1 0.07 93/100 0.80 17.86 | ||
+ | Sep 4 17:45:19 rex user.notice root: AUTOANT-WAHL: 10.63.5.1 0.18 82/100 0.36 15.57 | ||
+ | Sep 4 17:45:19 rex user.notice root: AUTOANT-WAHL: 10.63.127.1 0.12 88/100 0.25 33.73 | ||
+ | Sep 4 17:45:19 rex user.notice root: AUTOANT-WAHL: 10.63.152.1 0.18 82/100 0.51 10.90 | ||
+ | Sep 4 17:45:19 rex user.notice root: AUTOANT-WAHL: 10.63.147.1 0.24 76/100 0.90 4.64 | ||
+ | Sep 4 17:45:19 rex user.notice root: AUTOANT-WAHL: 10.63.155.1 0.26 74/100 1.00 3.85 | ||
+ | Sep 4 17:45:19 rex user.notice root: AUTOANT-WAHL: 10.63.142.1 0.19 81/100 0.63 8.39 | ||
+ | Sep 4 17:45:20 rex user.notice root: AUTOANT-WAHL: 10.63.43.1 0.30 70/100 0.94 3.56 | ||
+ | Sep 4 17:45:20 rex user.notice root: AUTOANT-WAHL: 10.63.135.1 0.15 85/100 0.74 9.04 | ||
+ | Sep 4 17:45:20 rex user.notice root: AUTOANT-WAHL: 10.63.165.1 0.25 75/100 0.33 12.14 | ||
+ | Sep 4 17:45:20 rex user.notice root: AUTOANT-WAHL: 10.63.44.1 0.38 62/100 0.97 2.72 | ||
+ | Sep 4 17:45:20 rex user.notice root: AUTOANT-WAHL: 10.63.3.1 0.29 71/100 0.93 3.71 | ||
+ | Sep 4 17:45:20 rex user.notice root: AUTOANT-WAHL: 10.63.104.1 0.15 85/100 0.85 7.87 | ||
+ | Sep 4 17:45:20 rex user.notice root: AUTOANT-WAHL: Nachbarn,Pakete,ETXsum = 15, 1405, 194.29 | ||
+ | Sep 4 17:45:20 rex user.notice root: AUTOANT-WAHL: Nachbaranzahl vergleichen... | ||
+ | Sep 4 17:45:20 rex user.notice root: AUTOANT-WAHL: Antenne B wird genommen (bzw. gelassen)... | ||
+ | Sep 4 17:45:20 rex user.notice root: AUTOANT-WAHL: Ende... | ||
+ | </pre> | ||
+ | |||
+ | ===Syslog-Ausgabe=== | ||
+ | * die Ausgabe im Systemlog sieht ungefaehr so aus: | ||
+ | <pre> | ||
+ | Aug 31 13:13:08 frauentor3 user.notice root: AUTOANT-WAHL: Start... | ||
+ | Aug 31 13:13:08 frauentor3 user.notice root: AUTOANT-WAHL: Antenne A einstellen und 500 sek. warten... | ||
+ | Aug 31 13:21:28 frauentor3 user.notice root: AUTOANT-WAHL: httpinfo-Plugin (Port 8080) erkannt... | ||
+ | Aug 31 13:21:29 frauentor3 user.notice root: AUTOANT-WAHL: 10.63.70.1 0.05 51 54 0.00 0.00 | ||
+ | Aug 31 13:21:29 frauentor3 user.notice root: AUTOANT-WAHL: 10.63.33.1 0.22 78 100 0.17 26.96 | ||
+ | Aug 31 13:21:29 frauentor3 user.notice root: AUTOANT-WAHL: 10.63.82.1 0.16 84 100 0.23 27.48 | ||
+ | Aug 31 13:21:29 frauentor3 user.notice root: AUTOANT-WAHL: 10.63.71.1 0.36 64 100 0.11 25.30 | ||
+ | Aug 31 13:21:29 frauentor3 user.notice root: AUTOANT-WAHL: 10.63.99.1 0.58 42 100 0.35 4.94 | ||
+ | Aug 31 13:21:29 frauentor3 user.notice root: AUTOANT-WAHL: 10.63.95.1 0.42 58 100 0.00 0.00 | ||
+ | Aug 31 13:21:29 frauentor3 user.notice root: AUTOANT-WAHL: 10.63.45.1 0.35 65 100 0.80 3.57 | ||
+ | Aug 31 13:21:29 frauentor3 user.notice root: AUTOANT-WAHL: 10.63.140.1 0.13 87 100 0.57 13.53 | ||
+ | Aug 31 13:21:29 frauentor3 user.notice root: AUTOANT-WAHL: 10.63.116.1 0.26 74 100 0.92 4.19 | ||
+ | Aug 31 13:21:29 frauentor3 user.notice root: AUTOANT-WAHL: 10.63.5.1 0.71 29 100 0.85 1.66 | ||
+ | Aug 31 13:21:29 frauentor3 user.notice root: AUTOANT-WAHL: 10.63.63.1 0.34 66 100 0.00 0.00 | ||
+ | Aug 31 13:21:29 frauentor3 user.notice root: AUTOANT-WAHL: 10.63.164.1 0.40 60 100 0.12 21.25 | ||
+ | Aug 31 13:21:29 frauentor3 user.notice root: AUTOANT-WAHL: Nachbarn,Pakete,ETXsum = 12, 758, 128.88 | ||
+ | Aug 31 13:21:29 frauentor3 user.notice root: AUTOANT-WAHL: Antenne B einstellen, OLSR-Neustart erzwingen und 500 sek. warten... | ||
+ | Aug 31 13:29:55 frauentor3 user.notice root: AUTOANT-WAHL: 10.63.54.1 0.05 95 100 0.00 0.00 | ||
+ | Aug 31 13:29:55 frauentor3 user.notice root: AUTOANT-WAHL: 10.63.73.1 0.03 97 100 0.00 0.00 | ||
+ | Aug 31 13:29:55 frauentor3 user.notice root: AUTOANT-WAHL: 10.63.70.1 0.08 92 100 0.01 1593.75 | ||
+ | Aug 31 13:29:55 frauentor3 user.notice root: AUTOANT-WAHL: 10.63.140.1 0.24 76 100 0.55 7.59 | ||
+ | Aug 31 13:29:55 frauentor3 user.notice root: AUTOANT-WAHL: 10.63.116.1 0.28 72 100 0.25 14.46 | ||
+ | Aug 31 13:29:55 frauentor3 user.notice root: AUTOANT-WAHL: 10.63.82.1 0.21 79 100 0.22 21.68 | ||
+ | Aug 31 13:29:55 frauentor3 user.notice root: AUTOANT-WAHL: 10.63.95.1 0.43 57 100 0.00 0.00 | ||
+ | Aug 31 13:29:55 frauentor3 user.notice root: AUTOANT-WAHL: 10.63.5.1 0.72 28 100 0.93 1.49 | ||
+ | Aug 31 13:29:55 frauentor3 user.notice root: AUTOANT-WAHL: 10.63.63.1 0.25 75 100 0.00 0.00 | ||
+ | Aug 31 13:29:55 frauentor3 user.notice root: AUTOANT-WAHL: 10.63.45.1 0.42 58 100 0.74 3.23 | ||
+ | Aug 31 13:29:55 frauentor3 user.notice root: AUTOANT-WAHL: 10.63.164.1 0.35 65 100 0.18 16.19 | ||
+ | Aug 31 13:29:55 frauentor3 user.notice root: AUTOANT-WAHL: 10.63.71.1 0.39 61 100 0.06 43.59 | ||
+ | Aug 31 13:29:55 frauentor3 user.notice root: AUTOANT-WAHL: 10.63.33.1 0.19 81 100 0.26 20.33 | ||
+ | Aug 31 13:29:56 frauentor3 user.notice root: AUTOANT-WAHL: 10.63.99.1 0.66 34 100 0.36 4.25 | ||
+ | Aug 31 13:29:56 frauentor3 user.notice root: AUTOANT-WAHL: Nachbarn,Pakete,ETXsum = 14, 970, 1726.56 | ||
+ | Aug 31 13:29:56 frauentor3 user.notice root: AUTOANT-WAHL: Nachbaranzahl vergleichen... | ||
+ | Aug 31 13:29:56 frauentor3 user.notice root: AUTOANT-WAHL: Antenne B wird genommen (bzw. gelassen)... | ||
+ | Aug 31 13:29:56 frauentor3 user.notice root: AUTOANT-WAHL: Ende... | ||
+ | </pre> | ||
+ | |||
+ | ===Skript=== | ||
+ | *[http://www.stud.tu-ilmenau.de/~babi-mtr/wirelessweimar/S54antennen_autosensing dieses Skript runterladen] (Version 2006sep04,16uhr31) und am besten nach <tt>/etc/init.d/S54antennen_autosensing</tt> kopieren | ||
+ | <pre> | ||
+ | #!/bin/sh | ||
+ | |||
+ | # | ||
+ | # Automatische Wahl der richtigen Antenne - Bastian Bittorf /weimarnetz - $VER 2006aug31,12uhr07 | ||
+ | # | ||
+ | |||
+ | RX=$(nvram get wl0_antdiv) | ||
+ | TX=$(nvram get ff_txant) | ||
+ | PRE="AUTOANT-WAHL: " | ||
+ | ENDE=0 | ||
+ | CONF="/etc/olsrd.conf" | ||
+ | PAUSE=$(awk '{if($1=="LinkQualityWinSize")s=$2;if($1=="HelloInterval"){print s*$2;exit}}' $CONF) | ||
+ | eval $(netparam) | ||
+ | |||
+ | logger $PRE"Start..." | ||
+ | |||
+ | if [ "$RX" = "-1" ] && [ "$TX" = "-1" ] && [ "$(nvram get ff_httpinfo)" = 1 ] | ||
+ | then | ||
+ | |||
+ | # | ||
+ | # Antenne A einstellen, starten einer neuen Messreihe, warten | ||
+ | # | ||
+ | |||
+ | logger $PRE"Antenne A einstellen und $PAUSE sek. warten..." | ||
+ | wl -i $WIFIDEV antdiv 0 | ||
+ | wl -i $WIFIDEV txant 0 | ||
+ | sleep $PAUSE | ||
+ | |||
+ | # | ||
+ | # Erfassen der Messwerte je nach Plugin unterschiedlich | ||
+ | # | ||
+ | |||
+ | if [ -n "$(grep httpinfo $CONF)" ] | ||
+ | then | ||
+ | logger $PRE"httpinfo-Plugin (Port 8080) erkannt..." | ||
+ | eval $(wget -O - http://127.0.0.1:8080/nodes|awk -F"[< =>]" '{ | ||
+ | if(s==1&&$0=="</table>")exit | ||
+ | if(s==1){z++;p=p+$21;etx=etx+$33} | ||
+ | if($3=="width")s=1} | ||
+ | END{print "NACHBAR1="z";PAKETE1="p";ETXSUM1="etx*100";ETXSUM="etx}') | ||
+ | fi | ||
+ | |||
+ | if [ -n "$(grep txtinfo $CONF)" ] | ||
+ | then | ||
+ | logger $PRE"txtinfo-Plugin (Port 2006) erkannt..." | ||
+ | eval $(wget -O - http://127.0.0.1:2006/neighbours|grep $WIFIADR|awk '{ | ||
+ | z++;p=p+$6;etx=etx+$8} | ||
+ | END{print "NACHBAR1="z";PAKETE1="p";ETXSUM1="etx*100";ETXSUM="etx}') | ||
+ | fi | ||
+ | |||
+ | logger $PRE"Nachbarn,Pakete,ETXsum = $NACHBAR1, $PAKETE1, $ETXSUM" | ||
+ | |||
+ | # | ||
+ | # Antenne B einstellen, starten einer neuen Messreihe, warten | ||
+ | # | ||
+ | |||
+ | logger "AUTOANT-WAHL: Antenne B einstellen, OLSR-Neustart erzwingen und $PAUSE sek. warten..." | ||
+ | wl -i $WIFIDEV antdiv 1 | ||
+ | wl -i $WIFIDEV txant 1 | ||
+ | /etc/init.d/S53olsrd restart | ||
+ | sleep $PAUSE | ||
+ | |||
+ | # | ||
+ | # Erfassen der Messwerte je nach Plugin unterschiedlich | ||
+ | # | ||
+ | |||
+ | if [ -n "$(grep httpinfo $CONF)" ] | ||
+ | then | ||
+ | eval $(wget -O - http://127.0.0.1:8080/nodes|awk -F"[< =>]" '{ | ||
+ | if(s==1&&$0=="</table>")exit | ||
+ | if(s==1){z++;p=p+$21;etx=etx+$33} | ||
+ | if($3=="width")s=1} | ||
+ | END{print "NACHBAR1="z";PAKETE1="p";ETXSUM1="etx*100";ETXSUM="etx}') | ||
+ | fi | ||
+ | |||
+ | if [ -n "$(grep txtinfo $CONF)" ] | ||
+ | then | ||
+ | eval $(wget -O - http://127.0.0.1:2006/neighbours|grep $WIFIADR|awk '{ | ||
+ | z++;p=p+$6;etx=etx+$8} | ||
+ | END{print "NACHBAR2="z";PAKETE2="p";ETXSUM2="etx*100";ETXSUM="etx}') | ||
+ | fi | ||
+ | |||
+ | # | ||
+ | # Vergleiche & Auswertungen | ||
+ | # | ||
+ | |||
+ | logger $PRE"Nachbarn,Pakete,ETXsum = $NACHBAR2, $PAKETE2, $ETXSUM" | ||
+ | |||
+ | if [ "$ENDE" = 0 ];then logger "AUTOANT-WAHL: Nachbaranzahl vergleichen...";fi | ||
+ | if [ "$NACHBAR1" -gt "$NACHBAR2" ] && [ "$ENDE" = 0 ];then ENDE=1;ANT=A;fi | ||
+ | if [ "$NACHBAR1" -lt "$NACHBAR2" ] && [ "$ENDE" = 0 ];then ENDE=1;fi | ||
+ | |||
+ | if [ "$ENDE" = 0 ];then logger "AUTOANT-WAHL: Paketanzahl vergleichen...";fi | ||
+ | if [ "$PAKETE1" -gt "$PAKETE2" ] && [ "$ENDE" = 0 ];then ENDE=1;ANT=A;fi | ||
+ | if [ "$PAKETE1" -lt "$PAKETE2" ] && [ "$ENDE" = 0 ];then ENDE=1;fi | ||
+ | |||
+ | if [ "$ENDE" = 0 ];then logger "AUTOANT-WAHL: ETX-Summen vergleichen...";fi | ||
+ | if [ "$ETXSUM1" -lt "$ETXSUM2" ] && [ "$ENDE" = 0 ];then ENDE=1;ANT=A;fi | ||
+ | if [ "$ETXSUM1" -gt "$ETXSUM2" ] && [ "$ENDE" = 0 ];then ENDE=1;fi | ||
+ | |||
+ | # | ||
+ | # Umsetzungen der Schlussfolgerung | ||
+ | # | ||
+ | |||
+ | if [ "$ANT" = "A" ] | ||
+ | then | ||
+ | wl -i $WIFIDEV antdiv 0 | ||
+ | wl -i $WIFIDEV txant 0 | ||
+ | logger $PRE"Antenne A wird genommen..." | ||
+ | else | ||
+ | logger $PRE"Antenne B wird genommen (bzw. gelassen)..." | ||
+ | fi | ||
+ | |||
+ | else | ||
+ | logger $PRE"keine Skriptausfuehrung, Antennenwahl nicht auf Auto oder OLSR-Info-Plugin nicht aktiviert." | ||
+ | fi | ||
+ | |||
+ | logger $PRE"Ende..." | ||
+ | |||
+ | # | ||
+ | # Ende... | ||
+ | # | ||
+ | </pre> | ||
+ | |||
+ | [[Kategorie:Hardware]] |
Aktuelle Version vom 9. März 2008, 21:03 Uhr
Warum
- hat man _eine_ bessere Antenne an sein Geraet geschraubt, hat man folgendes Problem:
- Es ist immer wieder problematisch herauszufinden, welcher Antennenanschluss nun tatsaechlich auf welche Antenne zeigt. Antenne A ist manchmal links und manchmal rechts, je nach dem welche Wurst die Frau am Linksys-Fliessband zum Fruehstueck auf dem Broetchen hatte
Wie
- einmal beim start des routes wird folgendes erledigt:
- Antenne A einstellen.
- eine komplette Windowsize warten
- messen:
- wieviel nachbarn
- wieviel olsr-pakete
- summe aller etx-werte
- Antenne B einstellen.
- eine komplette Windowsize warten
- messen:
- wieviel nachbarn
- wieviel olsr-pakete
- summe aller etx-werte
- Vergleich von
- Nachbaranzahl -> bessere Antenne hat mehr Nachbarn -> fertig
- wenn Nachbarzahl gleich:
- OLSR-Pakete -> bessere Antenne hat mehr Pakete empfangen -> fertig
- wenn OLSR-Pakete gleich:
- Summe ETX-Werte -> bessere Antenne hat geringere Summe -> fertig
Aber?
- das Skript wird nur durchlaufen, wenn die Antenneneinstellung auf "Auto" steht
- das Skript baut Mist, wenn man eine Richtantenne montiert hat. Es wirkt also nur bei 2 verschieden guten Rundstrahlern, aber das wird noch behoben.
- es wird AWK benoetigt - das wird aber noch wegrationalisiert
- das skript waehlt zwar die richtige antenne, aber ob mehr nachbarn automatisch besser sind?!!
- Antenne A: 14 Total - aber nur 7 vernuenftige Nachbarn mit ETX <=3
- Antenne B: 15 Total - aber nur 1 vernueftiger Nachbarn und 4 mittelmaessige mit ETX <=5
- Das skript waehlt Antenne B, aber antenne A waere besser?!?!?:
Sep 4 17:28:28 rex user.notice root: AUTOANT-WAHL: Start... Sep 4 17:28:28 rex user.notice root: AUTOANT-WAHL: Antenne A einstellen und 500 sek. warten... Sep 4 17:36:49 rex user.notice root: AUTOANT-WAHL: httpinfo-Plugin (Port 8080) erkannt... Sep 4 17:36:50 rex user.notice root: AUTOANT-WAHL: 10.63.153.1 0.11 89/100 0.95 9.58 Sep 4 17:36:50 rex user.notice root: AUTOANT-WAHL: 10.63.135.1 0.12 88/100 0.81 10.32 Sep 4 17:36:50 rex user.notice root: AUTOANT-WAHL: 10.63.127.1 0.14 86/100 0.29 24.95 Sep 4 17:36:50 rex user.notice root: AUTOANT-WAHL: 10.63.152.1 0.03 97/100 0.76 44.04 Sep 4 17:36:50 rex user.notice root: AUTOANT-WAHL: 10.63.165.1 0.28 72/100 0.51 7.01 Sep 4 17:36:50 rex user.notice root: AUTOANT-WAHL: 10.63.5.1 0.32 68/100 0.62 5.04 Sep 4 17:36:50 rex user.notice root: AUTOANT-WAHL: 10.63.44.1 0.41 59/100 0.98 2.50 Sep 4 17:36:50 rex user.notice root: AUTOANT-WAHL: 10.63.155.1 0.42 58/100 0.98 2.44 Sep 4 17:36:50 rex user.notice root: AUTOANT-WAHL: 10.63.142.1 0.42 58/100 0.77 3.10 Sep 4 17:36:50 rex user.notice root: AUTOANT-WAHL: 10.63.63.1 0.25 75/100 0.56 7.18 Sep 4 17:36:50 rex user.notice root: AUTOANT-WAHL: 10.63.147.1 0.38 62/100 0.94 2.81 Sep 4 17:36:50 rex user.notice root: AUTOANT-WAHL: 10.63.43.1 0.36 64/100 0.98 2.84 Sep 4 17:36:50 rex user.notice root: AUTOANT-WAHL: 10.63.3.1 0.44 56/100 0.97 2.35 Sep 4 17:36:50 rex user.notice root: AUTOANT-WAHL: 10.63.104.1 0.37 63/100 0.99 2.73 Sep 4 17:36:50 rex user.notice root: AUTOANT-WAHL: Nachbarn,Pakete,ETXsum = 14, 1400, 126.89 Sep 4 17:36:50 rex user.notice root: AUTOANT-WAHL: Antenne B einstellen, OLSR-Neustart erzwingen und 500 sek. warten... Sep 4 17:45:19 rex user.notice root: AUTOANT-WAHL: 10.63.16.1 0.13 4/5 0.16 51.00 Sep 4 17:45:19 rex user.notice root: AUTOANT-WAHL: 10.63.63.1 0.20 80/100 0.54 9.31 Sep 4 17:45:19 rex user.notice root: AUTOANT-WAHL: 10.63.153.1 0.07 93/100 0.80 17.86 Sep 4 17:45:19 rex user.notice root: AUTOANT-WAHL: 10.63.5.1 0.18 82/100 0.36 15.57 Sep 4 17:45:19 rex user.notice root: AUTOANT-WAHL: 10.63.127.1 0.12 88/100 0.25 33.73 Sep 4 17:45:19 rex user.notice root: AUTOANT-WAHL: 10.63.152.1 0.18 82/100 0.51 10.90 Sep 4 17:45:19 rex user.notice root: AUTOANT-WAHL: 10.63.147.1 0.24 76/100 0.90 4.64 Sep 4 17:45:19 rex user.notice root: AUTOANT-WAHL: 10.63.155.1 0.26 74/100 1.00 3.85 Sep 4 17:45:19 rex user.notice root: AUTOANT-WAHL: 10.63.142.1 0.19 81/100 0.63 8.39 Sep 4 17:45:20 rex user.notice root: AUTOANT-WAHL: 10.63.43.1 0.30 70/100 0.94 3.56 Sep 4 17:45:20 rex user.notice root: AUTOANT-WAHL: 10.63.135.1 0.15 85/100 0.74 9.04 Sep 4 17:45:20 rex user.notice root: AUTOANT-WAHL: 10.63.165.1 0.25 75/100 0.33 12.14 Sep 4 17:45:20 rex user.notice root: AUTOANT-WAHL: 10.63.44.1 0.38 62/100 0.97 2.72 Sep 4 17:45:20 rex user.notice root: AUTOANT-WAHL: 10.63.3.1 0.29 71/100 0.93 3.71 Sep 4 17:45:20 rex user.notice root: AUTOANT-WAHL: 10.63.104.1 0.15 85/100 0.85 7.87 Sep 4 17:45:20 rex user.notice root: AUTOANT-WAHL: Nachbarn,Pakete,ETXsum = 15, 1405, 194.29 Sep 4 17:45:20 rex user.notice root: AUTOANT-WAHL: Nachbaranzahl vergleichen... Sep 4 17:45:20 rex user.notice root: AUTOANT-WAHL: Antenne B wird genommen (bzw. gelassen)... Sep 4 17:45:20 rex user.notice root: AUTOANT-WAHL: Ende...
Syslog-Ausgabe
- die Ausgabe im Systemlog sieht ungefaehr so aus:
Aug 31 13:13:08 frauentor3 user.notice root: AUTOANT-WAHL: Start... Aug 31 13:13:08 frauentor3 user.notice root: AUTOANT-WAHL: Antenne A einstellen und 500 sek. warten... Aug 31 13:21:28 frauentor3 user.notice root: AUTOANT-WAHL: httpinfo-Plugin (Port 8080) erkannt... Aug 31 13:21:29 frauentor3 user.notice root: AUTOANT-WAHL: 10.63.70.1 0.05 51 54 0.00 0.00 Aug 31 13:21:29 frauentor3 user.notice root: AUTOANT-WAHL: 10.63.33.1 0.22 78 100 0.17 26.96 Aug 31 13:21:29 frauentor3 user.notice root: AUTOANT-WAHL: 10.63.82.1 0.16 84 100 0.23 27.48 Aug 31 13:21:29 frauentor3 user.notice root: AUTOANT-WAHL: 10.63.71.1 0.36 64 100 0.11 25.30 Aug 31 13:21:29 frauentor3 user.notice root: AUTOANT-WAHL: 10.63.99.1 0.58 42 100 0.35 4.94 Aug 31 13:21:29 frauentor3 user.notice root: AUTOANT-WAHL: 10.63.95.1 0.42 58 100 0.00 0.00 Aug 31 13:21:29 frauentor3 user.notice root: AUTOANT-WAHL: 10.63.45.1 0.35 65 100 0.80 3.57 Aug 31 13:21:29 frauentor3 user.notice root: AUTOANT-WAHL: 10.63.140.1 0.13 87 100 0.57 13.53 Aug 31 13:21:29 frauentor3 user.notice root: AUTOANT-WAHL: 10.63.116.1 0.26 74 100 0.92 4.19 Aug 31 13:21:29 frauentor3 user.notice root: AUTOANT-WAHL: 10.63.5.1 0.71 29 100 0.85 1.66 Aug 31 13:21:29 frauentor3 user.notice root: AUTOANT-WAHL: 10.63.63.1 0.34 66 100 0.00 0.00 Aug 31 13:21:29 frauentor3 user.notice root: AUTOANT-WAHL: 10.63.164.1 0.40 60 100 0.12 21.25 Aug 31 13:21:29 frauentor3 user.notice root: AUTOANT-WAHL: Nachbarn,Pakete,ETXsum = 12, 758, 128.88 Aug 31 13:21:29 frauentor3 user.notice root: AUTOANT-WAHL: Antenne B einstellen, OLSR-Neustart erzwingen und 500 sek. warten... Aug 31 13:29:55 frauentor3 user.notice root: AUTOANT-WAHL: 10.63.54.1 0.05 95 100 0.00 0.00 Aug 31 13:29:55 frauentor3 user.notice root: AUTOANT-WAHL: 10.63.73.1 0.03 97 100 0.00 0.00 Aug 31 13:29:55 frauentor3 user.notice root: AUTOANT-WAHL: 10.63.70.1 0.08 92 100 0.01 1593.75 Aug 31 13:29:55 frauentor3 user.notice root: AUTOANT-WAHL: 10.63.140.1 0.24 76 100 0.55 7.59 Aug 31 13:29:55 frauentor3 user.notice root: AUTOANT-WAHL: 10.63.116.1 0.28 72 100 0.25 14.46 Aug 31 13:29:55 frauentor3 user.notice root: AUTOANT-WAHL: 10.63.82.1 0.21 79 100 0.22 21.68 Aug 31 13:29:55 frauentor3 user.notice root: AUTOANT-WAHL: 10.63.95.1 0.43 57 100 0.00 0.00 Aug 31 13:29:55 frauentor3 user.notice root: AUTOANT-WAHL: 10.63.5.1 0.72 28 100 0.93 1.49 Aug 31 13:29:55 frauentor3 user.notice root: AUTOANT-WAHL: 10.63.63.1 0.25 75 100 0.00 0.00 Aug 31 13:29:55 frauentor3 user.notice root: AUTOANT-WAHL: 10.63.45.1 0.42 58 100 0.74 3.23 Aug 31 13:29:55 frauentor3 user.notice root: AUTOANT-WAHL: 10.63.164.1 0.35 65 100 0.18 16.19 Aug 31 13:29:55 frauentor3 user.notice root: AUTOANT-WAHL: 10.63.71.1 0.39 61 100 0.06 43.59 Aug 31 13:29:55 frauentor3 user.notice root: AUTOANT-WAHL: 10.63.33.1 0.19 81 100 0.26 20.33 Aug 31 13:29:56 frauentor3 user.notice root: AUTOANT-WAHL: 10.63.99.1 0.66 34 100 0.36 4.25 Aug 31 13:29:56 frauentor3 user.notice root: AUTOANT-WAHL: Nachbarn,Pakete,ETXsum = 14, 970, 1726.56 Aug 31 13:29:56 frauentor3 user.notice root: AUTOANT-WAHL: Nachbaranzahl vergleichen... Aug 31 13:29:56 frauentor3 user.notice root: AUTOANT-WAHL: Antenne B wird genommen (bzw. gelassen)... Aug 31 13:29:56 frauentor3 user.notice root: AUTOANT-WAHL: Ende...
Skript
- dieses Skript runterladen (Version 2006sep04,16uhr31) und am besten nach /etc/init.d/S54antennen_autosensing kopieren
#!/bin/sh # # Automatische Wahl der richtigen Antenne - Bastian Bittorf /weimarnetz - $VER 2006aug31,12uhr07 # RX=$(nvram get wl0_antdiv) TX=$(nvram get ff_txant) PRE="AUTOANT-WAHL: " ENDE=0 CONF="/etc/olsrd.conf" PAUSE=$(awk '{if($1=="LinkQualityWinSize")s=$2;if($1=="HelloInterval"){print s*$2;exit}}' $CONF) eval $(netparam) logger $PRE"Start..." if [ "$RX" = "-1" ] && [ "$TX" = "-1" ] && [ "$(nvram get ff_httpinfo)" = 1 ] then # # Antenne A einstellen, starten einer neuen Messreihe, warten # logger $PRE"Antenne A einstellen und $PAUSE sek. warten..." wl -i $WIFIDEV antdiv 0 wl -i $WIFIDEV txant 0 sleep $PAUSE # # Erfassen der Messwerte je nach Plugin unterschiedlich # if [ -n "$(grep httpinfo $CONF)" ] then logger $PRE"httpinfo-Plugin (Port 8080) erkannt..." eval $(wget -O - http://127.0.0.1:8080/nodes|awk -F"[< =>]" '{ if(s==1&&$0=="</table>")exit if(s==1){z++;p=p+$21;etx=etx+$33} if($3=="width")s=1} END{print "NACHBAR1="z";PAKETE1="p";ETXSUM1="etx*100";ETXSUM="etx}') fi if [ -n "$(grep txtinfo $CONF)" ] then logger $PRE"txtinfo-Plugin (Port 2006) erkannt..." eval $(wget -O - http://127.0.0.1:2006/neighbours|grep $WIFIADR|awk '{ z++;p=p+$6;etx=etx+$8} END{print "NACHBAR1="z";PAKETE1="p";ETXSUM1="etx*100";ETXSUM="etx}') fi logger $PRE"Nachbarn,Pakete,ETXsum = $NACHBAR1, $PAKETE1, $ETXSUM" # # Antenne B einstellen, starten einer neuen Messreihe, warten # logger "AUTOANT-WAHL: Antenne B einstellen, OLSR-Neustart erzwingen und $PAUSE sek. warten..." wl -i $WIFIDEV antdiv 1 wl -i $WIFIDEV txant 1 /etc/init.d/S53olsrd restart sleep $PAUSE # # Erfassen der Messwerte je nach Plugin unterschiedlich # if [ -n "$(grep httpinfo $CONF)" ] then eval $(wget -O - http://127.0.0.1:8080/nodes|awk -F"[< =>]" '{ if(s==1&&$0=="</table>")exit if(s==1){z++;p=p+$21;etx=etx+$33} if($3=="width")s=1} END{print "NACHBAR1="z";PAKETE1="p";ETXSUM1="etx*100";ETXSUM="etx}') fi if [ -n "$(grep txtinfo $CONF)" ] then eval $(wget -O - http://127.0.0.1:2006/neighbours|grep $WIFIADR|awk '{ z++;p=p+$6;etx=etx+$8} END{print "NACHBAR2="z";PAKETE2="p";ETXSUM2="etx*100";ETXSUM="etx}') fi # # Vergleiche & Auswertungen # logger $PRE"Nachbarn,Pakete,ETXsum = $NACHBAR2, $PAKETE2, $ETXSUM" if [ "$ENDE" = 0 ];then logger "AUTOANT-WAHL: Nachbaranzahl vergleichen...";fi if [ "$NACHBAR1" -gt "$NACHBAR2" ] && [ "$ENDE" = 0 ];then ENDE=1;ANT=A;fi if [ "$NACHBAR1" -lt "$NACHBAR2" ] && [ "$ENDE" = 0 ];then ENDE=1;fi if [ "$ENDE" = 0 ];then logger "AUTOANT-WAHL: Paketanzahl vergleichen...";fi if [ "$PAKETE1" -gt "$PAKETE2" ] && [ "$ENDE" = 0 ];then ENDE=1;ANT=A;fi if [ "$PAKETE1" -lt "$PAKETE2" ] && [ "$ENDE" = 0 ];then ENDE=1;fi if [ "$ENDE" = 0 ];then logger "AUTOANT-WAHL: ETX-Summen vergleichen...";fi if [ "$ETXSUM1" -lt "$ETXSUM2" ] && [ "$ENDE" = 0 ];then ENDE=1;ANT=A;fi if [ "$ETXSUM1" -gt "$ETXSUM2" ] && [ "$ENDE" = 0 ];then ENDE=1;fi # # Umsetzungen der Schlussfolgerung # if [ "$ANT" = "A" ] then wl -i $WIFIDEV antdiv 0 wl -i $WIFIDEV txant 0 logger $PRE"Antenne A wird genommen..." else logger $PRE"Antenne B wird genommen (bzw. gelassen)..." fi else logger $PRE"keine Skriptausfuehrung, Antennenwahl nicht auf Auto oder OLSR-Info-Plugin nicht aktiviert." fi logger $PRE"Ende..." # # Ende... #