2016-06-07 2 views
0

Je suis nouveau à Mininet et créé une topologie. J'ai besoin d'activer ECN dans le commutateur créé dans la topologie mininet.Activer ECN dans OpenVSwitch en utilisant Mininet

Comment activer ECN dans le commutateur?

Merci à l'avance

Cordialement Hassaan Afridi

+0

Quelle est la version du commutateur ovs dans le système mininet? – SotirisTsartsaris

+0

J'ai téléchargé Mininet vm 2.2.1 et la version OpenVswitch est 2.0.2 –

Répondre

0

Depuis que vous utilisez la version 2.0.2 OVS votre commutateur prend en charge au moins jusqu'à la version 1.3 OpenFlow. Champs de notification d'encombrement explicite (ECN) implémentés à partir de OpenFlow version 1.1 et supérieure. Pour que le champ soit appliqué, vous devez dire à mininet que vous allez utiliser une version supérieure à 1.0 qui est la valeur par défaut. Pour lancer le topo mininet nous devons aller avec une télécommande afin que nous puissions passer les modifications de flux manuellement. Pour commencer MININET dans le terminal, nous allons avec

sudo mn --topo single,3 --mac --controller remote --switch ovsk,protocols=OpenFlow13 

MININET est ok, mais nous devons créer un pont pour parler au commutateur et il nous dire l'interrupteur que par ce pont, nous passerons OpenFlow ver 1.3 modifications de flux . Pour ce faire dans un nouveau terminal que nous ssh au vm MININET et nous créer le pont avec

sudo ovs-vsctl set bridge s1 protocols=OpenFlow13 

Alors maintenant, nous avons une porte ouverte au passage à parler et passer nos mods de flux dans lequel nous devons définir la version du protocole openflow à nouveau. Pour un mod que nous pouvons faire quelque chose comme

sudo ovs-ofctl -O OpenFlow13 add-flow s1 in_port=1,actions=output:2 

et

sudo ovs-ofctl -O OpenFlow13 add-flow s1 in_port=2,actions=output:1 

Maintenant, nous avons passé 2 modifications de flux manuellement et le ping entre h1 et h2 devrait fonctionner parfaitement. Pour installer des mods de flux ECN nous pouvons faire quelque chose comme

sudo ovs-ofctl -O OpenFlow13 add-flow s1 dl_type=0x0800,nw_ecn=3,actions=output:3 

Notez que comme indiqué dans la documentation de OpenFlow

Lorsque dl_type = 0x0800 ou 0x86dd est spécifié, correspond aux bits ECN dans IP ToS ou IPv6 champs de classe de trafic .Quand dl_type est générique ou défini sur une valeur autre que 0x0800 ou 0x86dd, la valeur de nw_ecn est ignorée

+0

Donc cela signifie qu'en ajoutant cette "règle de flux", "dl_type = 0x0800, nw_ecn = 3", nous activons le commutateur s1 pour ECN, veuillez corriger si Je me trompe? et que signifie 3 dans "nw_ecn = 3", parce que cette valeur peut être 0-3? –

+0

3 est Congestion Encountered, mais ce n'est qu'un exemple, vous devez faire correspondre la source, dest, avoir les deux hôtes être au courant de l'utilisation ECN et bien plus encore. – SotirisTsartsaris