RYU OFPMatch 的使用方法

2022-09-02 17:48:11 字數 1229 閱讀 1640

今天搞了我一天的錯誤,好在現在解決了:

問題介紹:

我想使用下面的**來設定一條流,匹配從位址10.0.0.1到10.0.04的流量

datapath =switch.dp

ofproto =datapath.ofproto

parser =datapath.ofproto_parser

match =parser.ofpmatch(

ipv4_src = ('

10.0.0.1'),

ipv4_dst = ('

10.0.0.2')

)

actions =[parser.ofpactionoutput(ofproto.ofpp_controller,

ofproto.ofpcml_no_buffer)]

actions)]

mod = parser.ofpflowmod(datapath=datapath,cookie=cookie_admin_rule,

priority=admin_priority+1,match=match,

instructions=inst)

datapath.send_msg(mod)

但是,使用了之後,沒有辦法新增到ovs上。

然後下面的網頁給我找到了解決方法:

這裡面雖然問題不是我的問題,但是我看了很多個帖子,很多設定流的,都沒有設定ip位址的。有設定的,都設定了很多其他的屬性,包括了包的型別什麼的。所以,我想這可能是我的錯誤原因。然後,新增之後,確實可以了。而且,學習了一種優美一點的寫法

from ryu.lib.packet import

ether_types

from ryu.lib.packet import

in_proto as inet

kwargs = dict(in_port=1, eth_type=ether_types.eth_type_ip,

ipv4_src='

10.0.0.1

', ipv4_dst='

10.0.0.2',

ip_proto=inet.ipproto_udp, udp_dst=5555)

match1 = parser.ofpmatch(**kwargs)

kwargs[

'in_port

'] = 2match2 = parser.ofpmatch(**kwargs)

iOS MBProgressHUD的使用方法

mbprogresshud就是乙個非常好用的第三方庫,可以快速接入載入的介面,下面貼 下面的 包含了各種常用型別的載入 import viewcontroller.h import mbprogresshud.h inte ce viewcontroller property atomic,assi...

dbms output put line使用方法

begin dbms output.put line a end 如果你是再sql plus中,只要再環境中打出 set serveroutput on 就可以了.還有一種方法 就是使用環境中的繫結變數也可以.再環境中定義 variable name varchar2 50 然後把過程新增乙個out...

sp addlinkedserver使用方法

exec sp droplinkedsrvlogin dbvip,null exec sp dropserver dbvip exec sp addlinkedserver server dbvip 被訪問的伺服器別名 srvproduct provider sqloledb datasrc ser...