Hi,
> 1) Is the hello failed which i am seeing in ryu 4.16, have any impact on the
> functionality of the switch? (i have tried OFPportstatus request, and it seems
> to work)
Hmmm... I think it is depending on the switch implementation.
The OpenFlow Spec 1.3.5 says the recipient of OFPT_HELLO message should (must?)
terminate the connection when the version is not acceptable, but I don't know
how switches are handling them on its internal implementation.
See "6.3.3 Connection Setup" of the OpenFlow Spec 1.3.5.
> 2)What other things i would be required to handle if i were to manage DP's
> with OF version 1.3 and 1.5 concurrently on Ryu 4.xx version
Are you trying to migrate from Ryu 3.27 to 4.xx?
Well, the APIs of "ryu.ofproto" module should keep the backward compatibility,
not so much differences as far as such usage, I guess.
IIRC, for the main difference of 3.xx and 4.xx, 4.xx drops Python 2.6 support.
> 3)Also if possible i would like to know which fix related to this issue was
made onto ryu 3.xx version that is making it not fail in 4.16 version
The following two patches are the candidates;
https://github.com/osrg/ryu/commit/7b5d6bd24a59f3482c6303400049042a54335ac2
https://github.com/osrg/ryu/commit/6792d6df2a28aac436eb9e2afb1fe07bd30a1831
Thanks,
Iwase
On 2018年02月14日 02:09, rahul b wrote:
Hi,
I am using RYU version 3.27 to manage ovs and lagopus.
ovs i need to connect on OF 1.5(For support in some specific feature in groups)
while lagopus only supports OF 1.3
so, i am declaring my ofp versions as follows
OFP_VERSIONS = [
ofproto_v1_3.OFP_VERSION,
ofproto_v1_5.OFP_VERSION,
]
OVS successfully connects on OF version 1.5, However lagopus is facing some
issue while connecting on 1.3
connected socket:<eventlet.greenio.base.GreenSocket object at 0xb642644c>
address:('192.168.1.4', 44517) hello ev <ryu.controller.ofp_event.EventOFPHello
object at 0xb642490c> move onto config mode EVENT ofp_event->Controller
EventOFPErrorMsg Error in the datapath None from ('192.168.1.4', 44517) EVENT
ofp_event->dpset EventOFPStateChange EVENT ofp_event->Controller
EventOFPStateChange EVENT ofp_event->ofctl_service EventOFPStateChange hub:
uncaught exception: Traceback (most recent call last): File
"/usr/lib/python2.7/site-packages/ryu/lib/hub.py", line 52, in _launch
func(*args, **kwargs) File
"/usr/lib/python2.7/site-packages/ryu/controller/controller.py", line 327, in
datapath_connection_factory datapath.serve() File
"/usr/lib/python2.7/site-packages/ryu/controller/controller.py", line 247, in
serve self._recv_loop() File
"/usr/lib/python2.7/site-packages/ryu/controller/controller.py", line 103, in
deactivate method(self) File
"/usr/lib/python2.7/site-packages/ryu/controller/controller.py", line 189, in
_recv_loop handler(ev) File
"/usr/lib/python2.7/site-packages/ryu/controller/ofp_handler.py", line 254, in
error_msg_handler (version, msg_type, msg_len, xid) =
ofproto_parser.header(msg.data) File
"/usr/lib/python2.7/site-packages/ryu/ofproto/ofproto_parser.py", line 39, in
header assert len(buf) >= ofproto_common.OFP_HEADER_SIZE AssertionError
dumping some more info for the above error.
DUMPING BUFF IN HEADER : 0x04 0x01 0x00 0x0c 0x6e 0xc6 0xa2 0xf2
length 12 bufsize
DUMPING BUFF IN HEADER : 0x04 0x01 0x00 0x0c 0x6e 0xc6 0xa2 0xf2 0x00 0x00 0x00
0x00
EVENT ofp_event->Controller EventOFPErrorMsg
version=0x4, msg_type=0x1, msg_len=0xc, xid=0x6ec6a2f2
length 0 bufsize
DUMPING BUFF IN HEADER :
OFPErrorMsg received: type=0x00 code=0x00 message=
Error in the datapath None from ('192.168.1.4', 59995)
However in ryu version 4.16 this is what happens.I get a OFPET_HELL_FAILED but
i am able to get port info etc after lagopus is connected.
connected socket:<eventlet.greenio.base.GreenSocket object at 0x7f7a7a865a10>
address:('127.0.0.1', 55388)
hello ev <ryu.controller.ofp_event.EventOFPHello object at 0x7f7a7a7fe390>
move onto config mode
EVENT ofp_event->Controller EventOFPErrorMsg
EventOFPErrorMsg received.
version=0x4, msg_type=0x1, msg_len=0xc, xid=0xfea3027
`-- msg_type: OFPT_ERROR(1)
OFPErrorMsg(type=0x0, code=0x0, data=b'')
|-- type: OFPET_HELLO_FAILED(0)
|-- code: OFPHFC_INCOMPATIBLE(0)
`-- data:
EVENT ofp_event->dpset EventOFPSwitchFeatures
EVENT ofp_event->Controller EventOFPSwitchFeatures
EVENT ofp_event->ofctl_service EventOFPSwitchFeatures
switch features ev
version=0x4,msg_type=0x6,msg_len=0x20,xid=0xfea3028,OFPSwitchFeatures(auxiliary_id=0,capabilities=79,datapath_id=1,n_buffers=65535,n_tables=255)
OFPErrorMsg received: type=0x00 code=0x00 message=
switch feature handle called succefully
add dpid 1 datapath <ryu.controller.controller.Datapath object at 0x7f7a7a865c90>
new_info <ryu.app.ofctl.service._SwitchInfo object at 0x7f7a7e5c7090> old_info None
move onto main mode
EVENT ofp_event->dpset EventOFPStateChange
EVENT ofp_event->Controller EventOFPStateChange
DPSET: register datapath <ryu.controller.controller.Datapath object at
0x7f7a7a865c90>
register datapath: 0000000000000001
**lagopus dp connected
It would be really helpful , if you could tell me
1) Is the hello failed which i am seeing in ryu 4.16, have any impact on the
functionality of the switch? (i have tried OFPportstatus request, and it seems
to work)
2)What other things i would be required to handle if i were to manage DP's with
OF version 1.3 and 1.5 concurrently on Ryu 4.xx version
3)Also if possible i would like to know which fix related to this issue was made
onto ryu 3.xx version that is making it not fail in 4.16 version
Thanks and regards,
Rahul
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Ryu-devel mailing list
Ryu-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ryu-devel
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Ryu-devel mailing list
Ryu-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ryu-devel