2016-11-08 6 views
0

TCPフローをRYU SDNコントローラのtcpソースポートを使用して特定のサーバにリダイレクトしようとしています。 ovs1ためTCPポートに基づいたTCPフローの一致リュウコントローラ

host -- ovs1 -- ovs2 -- server 

一致ルール:これは(最初のステップのための簡単な)私のトポロジです

match = parse.OFPMatch(in_port=port,eth_type=0x0800, ipv4_dst=server_ip, tcp_src=tcp_pkt.src_port) 

しかし、私は、次のエラー取得:ポイントがある

EventOFPErrorMsg received. 
version=0x4, msg_type=0x1, msg_len=0x4c, xid=0x370bf1bf 
`-- msg_type: OFPT_ERROR(1) 
OFPErrorMsg(type=0x4, code=0x9, data=b'\x04\x0e\x00\x70\x37\x0b\xf1\xbf\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x28\x80\x00\x00\x04\x00\x00\x00\x01\x80\x00\x0a\x02') 
|-- type: OFPET_BAD_MATCH(4) 
|-- code: OFPBMC_BAD_PREREQ(9) 
`-- data: version=0x4, msg_type=0xe, msg_len=0x70, xid=0x370bf1bf 
    `-- msg_type: OFPT_FLOW_MOD(14) 

をtcp_srcオプションを削除しても問題なく動作します

アイデア?

ありがとうございます!

答えて

1

この問題を解決するために多くの時間を費やした後、私は答えを得ました。 TCPポートで特定の一致を定義するために、我々は、すべての前提条件を満足する必要がある、それは私の場合にはip_protoフィールドを追加するために必要とされることを意味します

match = parse.OFPMatch(in_port=port,eth_type=0x0800, ip_proto=6, ipv4_dst=server_ip, tcp_src=tcp_pkt.src_port) 

私はここで答えを見つけました:OpenFlow Switch Specification

関連する問題