We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
※日本語で失礼します。
Lagopus開発者のみなさま、はじめまして。 私は自作のコントローラをTravisCIでテストをするため、Lagopusを使わせてもらっています。 Travisでも動いてくれ、とても感謝しています。
今回ですが、OFPMPF_REPLY_MORE付きのmultipartメッセージのハンドリングのテストを 書いていた際に、Lapopusからコントローラへ、malformedなmultipart replyメッセージが送信されている ようにみえました。
OFPMPF_REPLY_MORE
このコントローラに問題があるのかもしれませんが、ご確認いただければと思います。 また、追加の情報が必要でしたら適宜コメントをおねがいいたします。
環境は以下のとおりです。
channel channel01 create -dst-addr 127.0.0.1 -protocol tcp controller controller01 create -channel channel01 -role master -connection-type main bridge bridge01 create -controller controller01 -dpid 0x1 bridge bridge01 enable
※ ビルドにはインターネット接続、起動にはErlang/OTP 19が必要となります。
$ wget https://packages.erlang-solutions.com/erlang/esl-erlang/FLAVOUR_1_general/esl-erlang_19.1-3~ubuntu~xenial_amd64.deb $ sudo dpkg -i esl-erlang_19.1-3~ubuntu~xenial_amd64.deb $ git clone https://github.com/shun159/gyges $ cd gyges $ make compile
./start_dev.shを起動し、以下のコードをerl shellで再現できます。
./start_dev.sh
ok = gyges:start_listener(6633, 16). FlowMods = lists:map(fun(X) -> Instr = [{goto_table, 1}], Match = [ofproto_oxm:new(openflow_basic, metadata, <<X:64>>), ofproto_oxm:new(openflow_basic, eth_type, <<16#0800:16>>), ofproto_oxm:new(openflow_basic, ipv4_src, <<10,10,10,1>>), ofproto_oxm:new(openflow_basic, ip_dscp, <<1:8>>), ofproto_oxm:new(openflow_basic, ip_proto, <<6:8>>), ofproto_oxm:new(openflow_basic, tcp_dst, <<X:16>>)], ofproto_v4:flow_mod_add(0, [{table_id, 1}, {match, Match}, {instructions, Instr}]) end, lists:seq(1, 1000)). ofc_dp_conn:send_msgs({"00:00:00:00:00:00:00:01", 0}, FlowMods). {ok, FlowStats} = ofc_dp_conn:get_flows({"00:00:00:00:00:00:00:01", 0}, [{table_id, 1}]).
ok = gyges:start_listener(6633, 16). FlowMods2 = lists:map(fun(X) -> Instr = [{goto_table, 1}], Match = [ofproto_oxm:new(openflow_basic, metadata, <<X:64>>), ofproto_oxm:new(openflow_basic, eth_type, <<16#0800:16>>), ofproto_oxm:new(openflow_basic, ipv4_src, <<10,10,10,1>>), ofproto_oxm:new(openflow_basic, ip_dscp, <<1:8>>), ofproto_oxm:new(openflow_basic, ip_proto, <<6:8>>), ofproto_oxm:new(openflow_basic, tcp_dst, <<X:16>>)], ofproto_v4:flow_mod_add(0, [{table_id, X}, {match, Match}, {instructions, Instr}]) end, lists:seq(1, 254)). ofc_dp_conn:send_msgs({"00:00:00:00:00:00:00:01", 0}, FlowMods2). ofc_dp_conn:get_table_features({"00:00:00:00:00:00:00:01", 0}).
The text was updated successfully, but these errors were encountered:
@shun159 ありがとうございます. 調べてみます.
Sorry, something went wrong.
@shun159
Lagopusのmultipart replyに関するコードがOF1.3.2準拠のままでOF1.3.3以降に対応していないようです. 対応するようにします.
@ynkjm ありがとうございます,対応を楽しみにしています.
@ynkjm 急いでないのですが、こちらその後いかがでしょうか。
おまたせしてすみません. テストしましたので,今月中にパッチを出したいと思います.
@ynkjm 楽しみにしています!
ynkjm
hirokazutakahashi
hibitomo
No branches or pull requests
※日本語で失礼します。
Lagopus開発者のみなさま、はじめまして。
私は自作のコントローラをTravisCIでテストをするため、Lagopusを使わせてもらっています。
Travisでも動いてくれ、とても感謝しています。
今回ですが、
OFPMPF_REPLY_MORE
付きのmultipartメッセージのハンドリングのテストを書いていた際に、Lapopusからコントローラへ、malformedなmultipart replyメッセージが送信されている
ようにみえました。
このコントローラに問題があるのかもしれませんが、ご確認いただければと思います。
また、追加の情報が必要でしたら適宜コメントをおねがいいたします。
環境は以下のとおりです。
ソフトウェア:
Lagopusの設定について
アプリケーションについて
※ ビルドにはインターネット接続、起動にはErlang/OTP 19が必要となります。
./start_dev.sh
を起動し、以下のコードをerl shellで再現できます。再現コード:
キャプチャファイル:
The text was updated successfully, but these errors were encountered: