Auteur Sujet: Les chercheurs du MIT ont trouvé comment booster les performances Wireless  (Lu 3342 fois)

0 Membres et 1 Invité sur ce sujet

Branco

  • Expert
  • Abonné CanalBox
  • *
  • Messages: 80
Ah voilà une innovation !

Des chercheurs de Harvard, du MIT, de Caltech…etc ont mis au point une nouvelle technique qui permet de multiplier par 10 les performances du Wifi sans toucher à la puissance du matériel. Ce qu’il faut savoir c’est qu’en WiFi, Bluetooth, LTE (4G), ce sont environ 2% des packets qui sont perdus… Si vous vous déplacez dans une voiture ou un train, ce chiffre peut monter jusqu’à 5%, ce qui est énorme. Et malheureusement, cette perte de packets affecte les performances de la connexion. Rien d’étonnant là-dedans puisqu’à l’origine, le protocole TCP a été conçu pour du réseau câblé.

Source : Korben

Le MIT a finalisé leur document aujourd'hui sur ce document en open source  8)

+ Modeling Network Coded TCP Throughput: A Simple Model and its Validation

Optrolight

  • Client Orange Fibre
  • Modérateur
  • *
  • Messages: 4 673
  • Grenoble (38) @Optrolight
    • Optroastro
Les chercheurs du MIT ont trouvé comment booster les performances Wireless
« Réponse #1 le: 24 octobre 2012 à 19:20:18 »
Mouais, alors j'ai lu l'article de korben!!! Rien que le graphique pose des questions. On nous dit que l'on a jusqu’à 5% de perte de paquet si on se déplace. 2% en wifi, 3G, 4G etc.

Si l'on prête attention au graphique on voit que le gain diminue fortement avec le nombre d'erreur. (c'est logique, on peut combler un petit trou mais pas créer à partir de rien). A 1% il n'y a déjà plus de gain et on est en courbe exponentiel décroissante... Bref je vous laisse réfléchir.


Après je suis aller voir le papier des chercheurs. Il ont principalement fait des simulations. De plus je ne voit nullement le gain cité dans l'article de korben.

abstract:
We analyze the performance of TCP and TCP with network coding (TCP/NC) in lossy wireless networks. We build
upon the simple framework introduced by Padhye et al.
and characterize the throughput behavior of classical TCP
as well as TCP/NC as a function of erasure rate, roundtrip time, maximum window size, and duration of the connection. Our analytical results show that network coding
masks random erasures from TCP, thus preventing TCP’s
performance degradation in lossy networks (e.g. wireless
networks). It is further seen that TCP/NC has signifi-
cant throughput gains over TCP. Our analysis and simulation results show very close concordance and support that
TCP/NC is robust against erasures. TCP/NC is not only
able to increase its window size faster but also to maintain a
large window size despite the random losses, whereas TCP
experiences window closing because losses are mistakenly
attributed to congestion. Note that network coding only
masks random erasures, and allows TCP to react to congestion; thus, when there are correlated losses, TCP/NC also
closes its window.
« Modifié: 24 octobre 2012 à 20:01:20 par Optrolight »

vivien

  • Administrateur
  • *
  • Messages: 47 175
    • Twitter LaFibre.info
Les chercheurs du MIT ont trouvé comment booster les performances Wireless
« Réponse #2 le: 24 octobre 2012 à 19:44:35 »
C'est une technique qui rajoute des buffers, augmente un peu le ping et consomme plus de ressources radio (il y a plus de bit émis pour un même message tranmis du fait du code correcteur).



Bref je préfère une modifier le protocole de congestion TCP pour moins baisser les performaces en cas de grosses pertes de paquets (qui contrairement a ce que dit Korben les petites pertes sont ré-émis sans gêner le trafic si le SACK est activé ce qui est le cas de tous les OS d'aujourd'hui et d'hier (c'est activé sous Windows XP, c'est pour dire)


Modifier le protocole de congestion TCP

Voir le protocole de congestion TCP utilisé : sysctl -a | grep tcp

net.ipv4.tcp_congestion_control = cubic
net.ipv4.tcp_available_congestion_control = cubic reno
net.ipv4.tcp_allowed_congestion_control = cubic reno


Là c'est du cubic utilisé et ce linux (Ubuntu) propose cubic et reno d'installé

Passage en réno :
sysctl -w net.ipv4.tcp_congestion_control=reno

net.ipv4.tcp_congestion_control = reno
net.ipv4.tcp_available_congestion_control = reno cubic
net.ipv4.tcp_allowed_congestion_control = reno cubic


Rajouter un protocole (exemple avec hybla mais il y en a de très nombreux dispo) :
modprobe tcp_hybla

au choix :
net.ipv4.tcp_available_congestion_control = cubic bic reno hybla westwood highsp

net.ipv4.tcp_congestion_control = cubic
net.ipv4.tcp_available_congestion_control = cubic reno hybla
net.ipv4.tcp_allowed_congestion_control = cubic reno


sysctl -w net.ipv4.tcp_congestion_control=hybla

net.ipv4.tcp_congestion_control = hybla
net.ipv4.tcp_available_congestion_control = hybla reno cubic
net.ipv4.tcp_allowed_congestion_control = hybla reno cubic