|dc.description.abstract||The networking industry, which has not undergone a substantial change within the past 20 or so years, is being disrupted by a technology known as Software Defined Networks (SDN). Even though SDN has taken the networking world by a storm, but consensus on a specific standard has caused the industry to be wary in embracing the technology. This thesis addresses this issue in a four faceted manner. By collaborating with Open Networking Laboratory (ON.LAB) we developed three major OpenFlow  based SDN tools. Moreover, we proposed maximum weight a scheduling algorithms for network switches, whose performance is evaluated in a SDN environment.
The first tool is the OVX Testing Framework. OpenVirteX (OVX)  is a network hypervisor that creates virtual networks on top physical network by virtualizing OpenFlow. OVX just like FlowVisor  acts as a controller to data-plane and to make sure isolation between different virtual networks, OVX rewrite packet header. This very tough and complex task and language specific testing tools and technique like JUnit test etc. are not enough to makes sure OVX correct implementation. To solve this problem we designed and developed OVX Testing Framework, a tool to test OVX end to end delivery.
The second tool is based on Open Networking Operating System (ONOS) . ONOS is a distributed SDN controller. It is best known for scalability, higher availability and high performance. It provides useful network abstractions like network graph at northbound and plugins mechanism at southbound to allow different southbound protocols like OpenFlow, NetConf. ONOS has many applications and use cases. One of its use case involves Segment Routing. Segment Routing is the latest routing mechanism to route traffic effectively. We develop Command Line Interface (CLI) for ONOS Segment Router application thats allows the routing application to retrieve switch statistic using OpenFlow v1.3 messages. In addition CLI also allows application to create tunnels and policies. To develop CLI we develop new APIs for ONOS as existing ONOS API does not support OpenFlow v1.3. We use sdncon  for formatting and displaying the data.
The third tool we propose aims to achieve convergence of packet and optical networks. The functionality this tool implements is amalgamation of both optical and logical layers to optimize the traffic flow, based on a cross layer control infrastructure. The SDN controller acts as a maintainer of Performance Management, which handles TE tools like Path Computation Element. This provides flexibility in access and control of traffic-flow forwarding and bandwidth assignment on both of the layers. In this project we create an emulator for both packet and optical switches. We used mininet  for packet switches and Linc-oe, an open source optical switch emulator for optical switches and ONOS as controller. Using this emulator, one can emulate real world scenarios, in packet-optical hybrid setting without any expense.
We propose MWA scheduling algorithm provides the throughput optimality to input queued switch under the presence of hybrid data traffic for all admissible arrival processes. We are simulating our results in SDN environment which is constituted by mininet, OpenVirteX, OpenvSwitch , OpenFlow protocol and two POX  controllers.||