Closed ljerezchaves closed 7 years ago
Original comment by Luciano Chaves (Bitbucket: ljerezchaves, GitHub: ljerezchaves)
Hi Akin,
I finally got some time to see your patch. There's a lot of information here! One of the problems is that the 2.0.3 version is somewhat old and too many bug fixes and improvements were included on the development branch (a new 3.0.0 release will be available soon). Because of that, it got really difficult to merge the (possible) contributions from your patch. As a suggestion, when submitting patches, try to split things and keep them as simple as possible.
Anyway, here are some comments on your changes:
I saw that you had to change the default control port for connecting the switches to an external controller. This parameter was added as an attribute on the new OFSwitch13ExternalHelper, so users can change it whenever necessary in a easy way.
The issue with MAC address is somewhat complicated to solve. I saw that you have 'hardcoded' this on the BufferFromPacket and PacketFromBuffer methods. But this is not a generic situation.
You have created a new SendToController method on OFSwitch13Port. The current implementation only provides out-of-band controller communication. The OFSwitch13Device has the sockets for controller communication and the SendToController is available there. Note that in current development branch, we also have support for multiple controller connections.
The fix on OFSwitc13Device sockets for reading OpenFlow messages have been fixed. Now we have a SocketReader class that can, independently, handle multiple connections between switches and controllers. This class knows how to read a single OpenFlow message at a time, and even when tcp packets get fragmented.
I can't say anything on changes at brite model classes.
Thanks for the lots of examples from scratch folder. I'll try to include some of them on examples folder in further release.
Thank you for your contributions. Luciano.
Hello ljerezchaves,
I am doing my research on intent based network and I want to simulate my experiment using ns3. How can I build ONOS controller in NS3?
Originally reported by Akin Soysal (Bitbucket: akinsoysal, GitHub: akinsoysal)
Hello,
I have some bugfixes and some enhancements.
We are working on enhancing the ONOS SDN controller. Instead of Mininet I tried your ofswitch13 module. It took me sometime but I finally did manage to get it properly working by enhancing the code which I obtained after going through the step by step instructions under:
http://www.lrc.ic.unicamp.br/ofswitch13/ofswitch13.pdf
I have added a lot of working examples under scratch/.
Best Regards, Akın