2016-08-08 15 views
1

Ich versuche, Fluss in Openflow-kompatiblen Switch (Openflow 1.5) durch Verwendung von Ryu-Framework übereinstimmen.Ryu-Framework, tcp_flags in Parser.OFPMatch

Soweit ich weiß, unterstützt openFlow Version 1.5 die 'tcp_flags'-Bedingungen und Ryu auch.

Also, wenn ich zu kodieren versuchen wie:

match = parser.OFPMatch(
     tcp_flags=0x000 
     ) 

nichts in Flow-Tabelle geschieht, während ich einen neuen Flusseintrag auftreten erwarten.

Ingress-Paket enthält einen leeren Wert für TCP-Flags.

Weiß jemand, wie man solche Art von Zustand in einem Ryu codiert?

Danke.

Antwort

1
match = parser.OFPMatch(
    eth_type=0x0800, 
    ip_proto=6, 
    tcp_flags=0x000 
    ) 

löste mein Problem. Laut 'OpenFlow Switch Specification' sollten vor der Verwendung von 'tcp_flags' einige vorausgesetzte Felder erfüllt sein. In meinem Fall benötigt das Feld 'tcp_flags' die Felder 'eth_type = 0x8000' und 'ip_proto = 6' davor.