diff options
author | watanabe.fumitaka <watanabe.fumitaka@nttcom.co.jp> | 2013-09-03 17:06:42 +0900 |
---|---|---|
committer | FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> | 2013-09-03 17:23:21 +0900 |
commit | 05cdadc90054f3453c47038ea9279b884d125d1c (patch) | |
tree | 8cdf1a624b72912e749a6fe5858ce5814bb3d478 | |
parent | 23013d8389f3fe0ecd32445653645b1734dc48ac (diff) |
ofctl v1.0/v1.2: add miss_send_len for packet in
Signed-off-by: WATANABE Fumitaka <watanabe.fumitaka@nttcom.co.jp>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
-rw-r--r-- | ryu/lib/ofctl_v1_0.py | 7 | ||||
-rw-r--r-- | ryu/lib/ofctl_v1_2.py | 5 |
2 files changed, 10 insertions, 2 deletions
diff --git a/ryu/lib/ofctl_v1_0.py b/ryu/lib/ofctl_v1_0.py index e68d53e9..0fd958c0 100644 --- a/ryu/lib/ofctl_v1_0.py +++ b/ryu/lib/ofctl_v1_0.py @@ -33,7 +33,12 @@ def to_actions(dp, acts): action_type = a.get('type') if action_type == 'OUTPUT': out_port = int(a.get('port', ofproto_v1_0.OFPP_NONE)) - actions.append(dp.ofproto_parser.OFPActionOutput(out_port)) + if out_port == dp.ofproto.OFPP_CONTROLLER: + miss_send_len = ofproto_v1_0.OFP_DEFAULT_MISS_SEND_LEN + actions.append(dp.ofproto_parser.OFPActionOutput( + out_port, max_len=miss_send_len)) + else: + actions.append(dp.ofproto_parser.OFPActionOutput(out_port)) elif action_type == 'SET_VLAN_VID': vlan_vid = int(a.get('vlan_vid', 0xffff)) actions.append(dp.ofproto_parser.OFPActionVlanVid(vlan_vid)) diff --git a/ryu/lib/ofctl_v1_2.py b/ryu/lib/ofctl_v1_2.py index 517b36a8..5237cf70 100644 --- a/ryu/lib/ofctl_v1_2.py +++ b/ryu/lib/ofctl_v1_2.py @@ -36,7 +36,10 @@ def to_actions(dp, acts): action_type = a.get('type') if action_type == 'OUTPUT': out_port = int(a.get('port', ofproto_v1_2.OFPP_ANY)) - actions = [dp.ofproto_parser.OFPActionOutput(out_port, 0)] + miss_send_len = (128 if out_port == dp.ofproto.OFPP_CONTROLLER + else 0) + actions = [dp.ofproto_parser.OFPActionOutput( + out_port, max_len=miss_send_len)] inst_type = dp.ofproto.OFPIT_APPLY_ACTIONS inst = [dp.ofproto_parser.OFPInstructionActions( inst_type, actions)] |