[Berlin-wireless] Was soll ich programmieren?
dirk
tigger
Sa Nov 10 14:51:44 CET 2007
hier mal was ganz anderes:
--- schnipp-schnapp aus freifunk.de.wlanware: warum TCP-Pacing... ---
> ...
> Wie: Eine dynamische Verzögerung am GW zwischen leitung und funk, welche
> die TCP-Pakete ins Funkmedium verzögert um die Faktoren Hopzahl und der
> RTT im Funkmedium. Konkret beschrieben hier:
> http://rvs.informatik.uni-leipzig.de/de/publikationen/papers/TCP-GAP-MSWiM06.pdf
>
>
> Lösungsansätze: Mittels Skript würde ich es wohl testweise hinbekommen.
> Dienlich sind folgende Programme:
>
> TC ist ein im Kernel-implementiertes Traffic Control um Pakete nach
> verschiedenen Kriterien in auch verschiedene Warteschlangen-Mechanismen
> zu packen und zu behandeln. Hier brauchen wir nur eine gewisse Zahl an
> Paket-FIFO's, deren Anzahl ergibt aus der Nodes welche den Gateway auch
> nutzen. Leider gibt es keine "Verzögerungswarteschlange"
>
> NETEM ein Zusatzmodul zu TC eigentlich zur Netzwerk-Emulation kann aber
> auch Pakete verzögern, Verzögerungswert kann per tc update-Option
> dynamisch gestalltet werden.
>
> ULOG aus dem netfilter/iptables-Paket muß jedes TCP-Paket anschauen und
> für jedes Ziel bzw. für jeden Sender zu/von einem Node die
> Sequenznummer sich merken um dann die RTT im Funkmedium aus dem
> Eingangszeitstempel und zwei nacheinanderfolgenden Sequenznummern zu
> bestimmen, quasi so:
>
> I-net -> TCP-Paket mit Seq-Nr n (DATA) -> Ziel-Node/ein Client vom Node
> Ankunftszeit t1
>
> I-net <- TCP-Paket mit Seq-Nr n+1 (ACK) <- Ziel-Node/ein Client vom Node
> Ankunftszeit t2
>
> RTT-wireless=t2-t1 dies ist das Wichtigste deswegen so ausführlich.
>
> Weitere Information ergibt aus der Paketgröße und Zeit -> Bitrate
> TCP-Netto-Bandbreite = Summe Bitraten...alles natürlich angenäherte
> Werte, determiniert ist bei der verbindungslosen Paketübertragung aber
> eh kaum was.
>
> Aus der Routing-Table würde ich dann noch die Hopzahl betstimmen.
>
>
> Besser wäre: ein Kernel-Modul was direkt mit dem sk_buff.h arbeitet,
> leider weiß nicht wie damit umgehen. Wie ich damit das Aussenden der
> Pakete steuern kann. Darüber hinaus gibt es dann auch noch andere
> Möglichkeiten welche z.B. doch auf TC zurückgreifen aber die benötigten
> Daten sich dann direkt aus den Lib's holen. libpcap z.B. dafür gibt es
> sogar auch eine Phyton-Lib - nur ist Phyton auch nicht einfach für mich.
> ...
--- schnapp ---
hätte dafür sogar 2 "Entwicklungs-PC's" mit WLAN, stehn halt nur in
Leipzig. Tunnel und Mesh-Umgebung etc. sollten aber kein Problem sein.
Ansonsten findet sich wohl möglich auch ein Lift.
Bringt zwar keine Nosy wieder, aber vielleicht Ablenkung.
dirk
Mehr Informationen über die Mailingliste Berlin