CSCI-564 | Project 2: Using Software Defined Networks to address compute resource locality and compute resource sharing



OpenFlow, Software Defined Networking (SDN), Distributed data, Data plane, Distributed control plane, Policy-based routing (PBR), Flow, Data center, Open source, Routing protocols


The number of devices being deployed has significantly increased in the last couple of years. In 2014 about 16 billion wireless connected devices were installed, this was about 20% more than in 2013. The estimate is that the number of devices will more than double from the current level, with 40.9 billion forecasted for 2020 \ref{iot2014growth}. This is due to a number of different factors, such as basic economics (price of components), IPv6 proliferation, and simplification of edge networking.

The growth of the deployment of devices is not a homogeneous deployment of devices, but rather many discrete different types of devices that have various characteristics. These characteristics are exhibited through the constraints under which the devices were designed. For example, mobile phones have to trade off power consumption with computational power. The more processing power a mobile phone has the more power it will consume.

To address these constraints research (Shi 2014) has been done leveraging computing resources that don’t have the power constraint and inhibit different characteristics. Essentially, we could match disparate characteristics together. To maintain useability and device capabilities it’s critical that offloading computation or accessing resources does not introduce latency.

The latency that tends to be the largest is networking and finding available resources. The resources can be generically defined as cloud shared resources. These factors are correlated as networks route traffic to the cloud resources. Network latency gets introduced due to protocol overhead and the number of hops within a route. Additionally, the networking infrastructure has no concept of the load of the cloud resources.

The networking infrastructure is designed for resilience, which was part of the original Internet design, and focuses on routing packages through the network in an efficient manner. There are link state route optimization protocols such as IS-IS and Open Shortest Path First (OSPF) (Network Working Group 1998), that both implement the Dijkstra SPF Algorithm. Both protocols distribute routing information between routes to optimize networking routes. However, they don’t take into account computing, data locality, and resource availability. This is where SDN is of relevance to us.