User login
Search Projects
Project Members
Adam Coxhead | admin |
Improved security for network clients using OpenFlow
OpenFlow is a open network protocol used in Software Defined Networking(SDN) which allows for the high level routing decisions of a switch to be separated from its hardware and instead moved to a separate controller running in software. OpenFlow is the protocol by which this separate controller and the switch communicate with one another. Separating the controller from the hardware like this allows for more complex routing of traffic.
The aim of my project is to improve the security and efficiency of network protocols using OpenFlow, initially focusing on improving the security of ARP.
12
Oct
2013
Finished all of my chapters this week and have had them reviewed, just a matter now of tidying up a few places and then I'll be done.
04
Oct
2013
More report writing this week, have started the re-factoring process of some of my earlier chapters as well as completing a draft of the results and discussion chapter.
27
Sep
2013
Concluded running the tests early this week, so as a result have started drafting up the evaluation chapter of my report. Handed off a couple of my draft chapters to get reviewed so that I can start to refactor them.
21
Sep
2013
This week some more progress was made on the 520 report, as well as catching up on other assignments. There are still some tests to complete before I can make a start on the results chapter, hopefully plan to have these all done by early next week.
14
Sep
2013
Started writing the final report this week.
07
Sep
2013
Again not a lot to report this week as my time was spent on other assignments
01
Sep
2013
Not much to report this week due to the honours conference other than I have started the testing process.
25
Aug
2013
This week much of my time was spent on my presentation an other assignments. I expect next week will be much the same
16
Aug
2013
Completed the pre computed path based controller this week, I also moved all my test scripts across to a more power machine than my laptop for the testing stage, which I will start next week. Along with this I started writing my conference presentation.
09
Aug
2013
Finished off the script that generates random topologies this week. Next I want to create a third controller that pre-computes the minimum paths then uses them to forward, similar to the interface based controller I already have. From there will start looking at how the different controllers scale.
02
Aug
2013
Started writing topology creation scripts this week. So far they are able to create full mesh networks as well and ring networks for a specified number of switches. Since then I have been advised that mininet may be worth looking into. Next week I plan to try out mininet, even if it is not quite what I'm looking for it may give me ideas about methods on generating topologies.
27
Jul
2013
Didn't get as much done as I was hoping to this week, Ended up just tidying code up and getting it into a state were automated testing would be easier to run. Have put some more though into the test scripts I'm planning to create, hopefully will get onto them soon so I can find out how my code scales.
19
Jul
2013
So it's getting to the point in my project where I'm needing someway of automating testing of the spanning tree and forwarding unit of my OpenFlow Module, thus I spent most of my time thinking about how to achieve this this week. Other things that were considered were what comparisons I would be wanting to make with existing solutions, such as STP and RSTP. Lastly I started bundling my code into a more manageable layout in preparation for setting this test bed up
13
Jul
2013
First week back an uni after the break, This week I decided to, as well as looking at getting a implementation of interface based forwarding working, look back over all the code I have been writing for this project up to this point and find areas that can be improved upon. The main reason for this is that I have a deeper understanding of Python code now and there were some choices I had made that weren't very efficient. These are currently been worked on and will be my focus for next week
05
Jul
2013
This week I spent some time testing different switch typologies in order to check the soundness of my forwarding module. There were some edge case bugs discovered, most of which were pretty simple errors such as using the wrong variable for a certain case etc. I'm pretty confident I've fixed all these minor bugs now. For my multipath implementation I have done path based splits, after taking my solution to Brendon he suggested it may be worth trying an interface based approach as well, so next week I plan to have a go at implementing that and compare the two
28
Jun
2013
So after investigating what information is passed around from Openflow about ports and what could be used as a link metric, I had decided on using link speed however OVS sets that to zero for the virtual links between switches. Therefore I have introduced metrics manually so that multipath equal cost forwarding could be looked at.
I have reworked my spanning tree module to work out the minimal cost spanning tree of the network. Also reworked my shortest path algorithm to use metrics rather then hop count, as well as introducing load balancing by alternating flows down equal cost paths.
21
Jun
2013
This week I have created a new module to handle the forwarding between switches. This module at the moment is at a stage were it calculates the shortest path between switches and installs flows along that path. The module is pretty basic at the moment as it is just using hop count for the shortest path calculation, however next week I plan to introduce the links statistics into the calculation. After links stats are introduced I then plan to start looking at introducing load balancing into the module
14
Jun
2013
This week I managed to take the already existing topology discovery code in Ryu for OpenFlow 1.0 and get a basic version working for OpenFlow 1.2.
From there I have also been able to get a very naive spanning tree implementation working, which can handle topology changes in a network (such as a link going away etc.).
07
Jun
2013
Spent this week finishing of the last assignment for 513, so not much work done on my project this week.
31
May
2013
Handed in my interim report this week.
Also after reading a bit deeper into the changes between openflow 1.0 and 1.2 realised the original approach I was thinking of will not work. So spent some time over the weekend and early this week thinking of other approaches on how I can get a basic spanning tree working in openflow so that when the break comes I'm ready to get right into it.