A_survey_on_SDN_the_future_of_networking
A_survey_on_SDN_the_future_of_networking
A_survey_on_SDN_the_future_of_networking
Dept. of Information Technology and Computer Engineering, Shiraz University of Technology (SUTECH), Iran, Shiraz
*Corresponding author E-mail: [email protected]
Copyright © 2014 Shiva Rowshanrad et al. This is an open access article distributed under the Creative Commons Attribution License, which permits
unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.
Abstract
Software Defined Networking (SDN) is an emerging architecture which decouples networks control plane and data
plane physically. It makes control plane programmable trough a centralized controller, and builds intelligent and
flexible networks. The OpenFlow is one of the most famous SDN protocols, which acts as a southbound interface
between control plane and data plane. In this survey, SDN implementation approaches and different southbound
interfaces, beside different version of OpenFlow, are introduced. In addition to general architecture of SDN, different
wireless architectures are discussed. Here, also potential SDN’s applications and research areas including hot topics
such as Information Centric Networks, Cloud and datacenters, multimedia, wireless and mobile networks over SDN are
reviewed.
Keywords: Control Plane, Data Plane, Programmable Network, OpenFlow, Software Defined Network.
1. Introduction
Use of mobile devices, emerging technologies such as cloud computing and virtualization, caused changing of traffic
patterns. The rise of Big Data in datacenters arise the need for high network capacity and network scaling. To support
these needs, network devices become more complex. Furthermore it would be hard and time consuming for
administrators to configure individual devices due to even little changes in network, such as adding or omitting a
device. They should reconfigure many multivendor switches and routers, ACLs, which may cause inconsistency and
errors [1-3].
The Idea of programmable networks was introduced to meet these challenges and facilitate network evolution. As a
result, Software Defined Networking (SDN) is a new paradigm, which revolutionized traditional network architecture.
SDN effectively separates the control plane from data plane and move it to a centralized server named controller. It
moves the complexity of network management into a software-based controller and provides an abstraction of
underlying infrastructure. This allows simple data plane and network devices, makes control plane to be directly
programmable and manageable in a centralized manner [1], [4], [5].
The SDN architecture provides programmability, flexibility and reliability over networks. Network operators can
implement their own protocols, rules and policies with common programming languages. They can achieve flexible
control over network services such as routing, traffic engineering, QOS and security. Network can adapt itself depends
on users' requirements. Network management and configurations can be automated through the centralized controller
and standard open API, making the network scale easily. By using SDN, administrators are able to add features to
control plane without changing data plane or enhance devices in data plane without changing control plane. Decupling
control plane from infrastructure is also important because it reduces costs and inconvenience of testing new ideas and
strategies in network or deploying new architectures [1], [3], [5], [6]. In this paper, we present SDN architecture, its
capabilities, deployment, applications and challenges to give a broader view for those who are interested in this area.
The rest of the paper is organized as follows. Section 2 represents the history of programmable networks. In Section 3
wired and wireless SDN architectures are discussed and different protocols used in these architectures are presented.
SDN networks implementation and tests are discussed in section 4. In section 5, the SDN applications and its open
research areas are reviewed. Section 6 describes existing challenges of SDN. Finally section 7 concludes the paper.
Journal of Advanced Computer Science & Technology 233
2. History
Many years ago, the idea of programmable networks, resulting SDN paradigm, has been created [6]. In 1988 SOFTNET
[7], in 1990 Active Networking [8], in 1995 OPENSIG [9] and GSMP [10], in 1998, IEEE P1520 Standards Initiative
[11], in 2004 4D Project [12] and SoftRouter [13] architecture and finally in 2006 NETCONF [14], Ethane [15] and
SANE [16] were proposed to answer the idea of programming network. SANE developed as a prototype, considered a
logical server that performed all access control decision. Ethane separated controller and Ethane switch toward
providing policy and security by an identity-based accessing. But in 2010 according to RFC 5810 by IETF, ForCES
(Forwarding and Control Element Separation) [17] “A parallel approach to software-defined networking” was
announced which standardized the communication between controller and network elements. The difference between
ForCES and OpenFlow (OF) is their network architectures. ForCES assumed no changing in network architecture so
that controller and network elements are situated in one single device as regards to this point that they are apart from
each other, but OF separates the controller and network elements physically. Several efforts in the field of SDN have
been taken until now. Internet Research Task Force ( IRTF), defined The Software Defined Networking Research
Group (SDNRG) [18], intended to figure out future SDN approaches and challenges. Also there is a Home provided for
SDN researchers in [19].
3. Architecture
SDN architecture consists of 3 layers: infrastructure layer, control layer and application layer. Infrastructure layer or
data plane is responsible for forwarding the packets by means of simple forwarders and switches. Control layer contains
the controller to manage the Infrastructure layer. In application layer the business applications can interact with network
services and capabilities. There is also a need for southbound and northbound interfaces to enable the controller to
communicate with the two other layers [1]. More details of SDN components are described in this section.
NPB could be one of the controller part that checks the required resources whether it is available or not. So NPB needs
to have network topology, past and current traffic loads [20]. Some of controller platforms are compared in Table 1.
Controllers can be deployed in a centralized or distributed manner. One of the most obvious advantages of using a
centralized controller is that management and retrieving information would be applied from one logical point
(controller) resulting uniform network. Centralized controller like each centralized model has the disadvantages of
single point of failure, terminating no availability and scalability. Network could have more than one controller, so each
controller is responsible to control a group of network switches, which may interfere with each other, thus one
234 Journal of Advanced Computer Science & Technology
controller is chosen to be the main controller and the others would be backups [6]. ONIX [21] and HyperFlow [22],
suggest a logically centralized but physically distributed control plane. Each switch is controlled with its controller and
controllers are distributed in the network, using memory resident (in-memory database) and applications that are written
on top of the controllers consider all of the controllers as one central controller. Although in this option lookup
overhead will be reduced and scalability and availability are supported, establish consistency and compatibility between
network OS and any kind of supported OF and even between controllers are some of the most important issues.
Hierarchical view of the controllers like Kandoo [23], manage their related switches and there exists one controller that
manages local controllers in order to implement applications on it. Using this case like ONIX and HyperFlow reduces
lookup overhead, present availability and scalability with the central view of the whole network without worrying about
its consistency and compatibility. Also a proxy controller, FlowVisor [24] is used to set a logical decentralization and
give a virtualization view to the controllers in one network.
Packet granularity requires controller plane decision whenever a packet is arrived in data plane. When a table-miss is
happened in a switch, switch will encapsulate the entire received packet as a packet-in message and sends it to the
controller, decision will be made and a packet-out message will be sent to the switch. In this case, huge amount of data
would be passing through the controller and switch that could cause delay. Flow granularity is another selection. When
a flow is passed through a switch, for the first time that switch receives that flow, it requires controller plane decision so
sends packet-in message which contains only the header of original packet and at the controller side, decision will be
made and flow-mod message containing original packet header will be sent to switch. After that, switch will decide
based on last decision. In a switch, controller plane decisions would be applied to any kind of flow, subordinates to
source, destination, data or any kind of information relates to that flow. If there isn’t any decision for huge number of
flows received at switch, a lot of connection would be required for any of them; which causes delay. In active policy,
switch notifies the controller each time it needs a decision. In proactive policy, controller passes control information to
the switch. Both of these policies would be merged to any kind of granularity [6].
Table 2: The Fields from Packets Used to Match with Flow Entries
Ingress Ether Ether Ether VLAN VLAN IP IP IP TCP TCP
TOS
port source destination type ID priority Src Dst protocol Src Dst
There are two types of OpenFlow switches: OpenFlow-only, and OpenFlow-hybrid. OpenFlow-only switches support
only OF operation, in those switches all packets are processed by the OpenFlow pipeline and the forwarding decisions
are made by controllers. OpenFlow-hybrid switches support OF operation in addition to traditional operation such as L2
Ethernet switching, L3 routing etc. A classification mechanism is needed to classify the traffics of OF pipeline and
normal pipeline. This mechanism may use VLAN tags, Input ports of the packets, etc. [33-37]. In another aspect, the
switches can be classified into Hardware based switches and software based (virtual) switches. Table 3 lists some of the
currently SDN available switches.
OF protocol is the most well-known interface between forwarders and controllers in SDN. This protocol is defined for
Ethernet-based networks. OF protocol have different versions. The first version was OF 0.2.0 released in March 2008 as
a draft. The OF 1.0 specification is the first version which has official vendor support. The latest specification is OF 1.4
which released in October 2013. As shown in Table 3 OF 1.0 and 1.3 are the most deployed versions. Fig. 2 shows the
OpenFlow changes through its different versions. More details are described in this section.
OF 1.0 [33] supports a single flow table with flow entries consist of three components: Header Fields, Counters and
Actions. The Match field supports 12 header fields which are shown in Table 2. Each flow entry contains a specific
value or ANY keyword which matches any value. The entries must associate with zero or more actions that should be
done on the matching packets in order. The packets with zero actions or action lists which cannot be processed by the
switch are dropped. If no matches found for a packet the first 200 bytes of the packet are sent to the controller through
the secure channel.
In OF 1.1 [34] several flow tables are pipelined. When a switch receives a packet, it starts to look for an entry to be
matched in table0. If the entry found, the packets get processed according to the entry Instructions. The instructions may
contain Goto Instruction which points to another flow table. The flow entries can also point to a Group table which
consists of group entries. The Actions in Group table are common for multiple flows. In this version the Match fields
have 15 tuples. Metadata filed is added to pass information between tables. Two other fields are added to support MPLS
tagging. It also uses Instructions instead of Actions component which are more complex and include modifying the
packets. Other added supports are: Support for VLAN and QinQ, adding, modifying and removing VLAN headers,
Support for virtual ports and tunnels, Multipath routing and ECMP.
OF 1.2 [35] adds support for major features like IPv6 and extensible matches using TLV structure. Using TLV
structure, cause more flexibility, since in previous protocols the order and length of match fields was fixed. With OF 1.2
the switches can connect to multiple controllers concurrently. This allows for a better failure recovery and also load-
balancing between controllers.
In OF 1.3 [36] every flow table must have a table-miss entry which indicates how to process a packet that has not any
match in the table. It may instruct to drop the packet, send it to the controller or direct the packet to another table.
Another improvement over previous versions is meter tables which make OF to implement QOS operations like rate
limiting. Also a specific duration filed is added to most statistics which helps to compute rates. A cookie field is added
to messages containing packets sent to the controller. This helps controller, process the messages faster than if it had to
search its entire database.
In Previous version of OF, a switch could connect to multiple controllers for fault tolerance and load balancing. OF 1.3
introduces per connection event filtering which improves the multi-controller support by enabling each controller to
filter events from the switch it does not want. It also enables a switch to create auxiliary connections to supplement the
main connection between the switch and the controller. This allows using the parallelism ability implemented in most
switches.
OF 1.4 [37] is the latest specification. In this version TLV structures is used in more parts, improving extensibility.
Support for optical ports is added by means of new set of port properties. They include fields for configuring and
monitoring transmit/receive frequency and power of a laser in either Ethernet optical port or optical ports on circuit
switches.
In previous versions, when a flow table is full, the switch sends an error message to controller to operate on the flow
table. This is time consuming and may cause problem. In OF 1.4 an Eviction option is added which makes the switch
able to eliminate lower important entries automatically and make space available for new entries. Switches can also
inform controller of tables getting full (based on a capacity threshold chosen by controller) via vacancy events and
avoid tables to get full. Bundle mechanism is added for quasi-atomic execution of a group of instructions. The Error
message is sub-type of symmetric messages in this version and can be initiated by either switch or the controller.
Journal of Advanced Computer Science & Technology 237
- Multiple parallel
channels between
-Multiple flow switch and
tables
controllers
-Group tables - Table meters
-MPLS - Flow table miss
- ECMP entry
3.4.2. XMPP
The Extensible Messaging and Presence Protocol (XMPP) [56] is a XML-based protocol introduced by Internet
Engineering Task Force (IETF). The basic idea was proposed by Jabber community in 1999 and they introduced an
open-source protocol. Afterward IETF represented the improvement version for instance message in 2002. Finally in
2004 the standard definition was published on RFC3920 and RFC3921. XMPP enable exchange “XML stanzas”, small
piece of XML, between different entities based on client-server architecture. All connection of this protocol is
performed by TCP. Decentralized system of XMPP enables everyone to implement their own XMPP servers and launch
their domain. At Juniper Networks Contrail [3], an open source solution introduced by Juniper Network Company was
intended XMPP as southbound protocol and was implemented in the controller. As a result, it is possible to build high
scalable virtual network and control cloud services automatically.
3.4.3. OnePK
One Platform Kit (OnePK) [4] is API & software development kit (SDK) toolkit to develop controller application for
programming Cisco network devices managing and planning. OnePK consists of three main elements: presentation
Layer which provides required library for programmers and supports multi language programming such as C, Java and
Python, API Infrastructure with task of coordination among various platform and Communication Channel that put out
security and flexibility between controller and network elements. Provided service sets enable network administrator to
manage and control great number of elements.
3.5.1. Openroad
For controlling wireless SDNs one of the first approaches was OpenRoad [58]. This open source platform was
developed to specify the wireless OF over NOX. OpenRoad architecture [5], is composed of three layers as illustrated
in Fig. 3, permits expanded modules to monitor the wireless medium by employing simple network management
protocol (SNMP). Flow layer's main responsibility is management of the flow tables in the access points. Network
virtualization is the main duty of Slicing layer. FlowVisor in this layer responsible for sharing the OpenFlow tables in
the switches. Purposed architecture also required SNMP demultiplexer module in this layer to performing the network
slicing for the SNMP traffic, because FlowVisor did not slice the access through SNMP. The last layer is Control layer
which represented the OF control plane. Finally, OpenRoad has a centralized controller that provides resource
virtualization and different policies can work to gather.
238 Journal of Advanced Computer Science & Technology
3.5.2. SoftRAN
Nowadays, distributed algorithms are utilized by radio access network in order to handovers management. While the
decision making in environment with few base stations can be easy, it will be relatively harder to swiftly select the best
candidate in dense deployments of base stations. For the purpose of handling increasing mobile traffic, some
researchers offered SoftRAN [59], a centralized software defined radio access network designed for performing
handovers efficiently. In SoftRAN all the base stations are abstracted and controlled in a centralized way. In order to
manage every base station, control plane used defined APIs to communicate with radio elements.
General architecture of SoftRAN is illustrated in Fig 4. It periodically gathers the states of base stations and updates the
global view of the network. The controller modules require that information to manage radio resource, so collected in
the form of a database.
3.5.3. SoftCell
For solving significant scalability problems exist in cellular networks, Li Erran Li et al. [60] proposed a cellular SDN
architecture with local control agents with ability to make simple decisions, as illustrated in Fig. 5. The centralized
controller responsible for interpreting flows with high level abstractions. On the Other side, some actions and policies
are run on a cell agent for improving the performance and efficiency of the centralized controller.
Journal of Advanced Computer Science & Technology 239
4.1.1. Mininet
Mininet [62], an emulator platform using OF protocol, runs a collection of end-hosts, switches, routers and links on a
single Linux kernel by using lightweight virtualization. Components of Mininet act as real network components. This
emulator has lots of tools to check the possible bandwidth, the connectivity among nodes and deepest nodes, and the
speed of flows. These tools are named Ipref, Ping, PingAll, PingPair, CBench and also Wireshark in order to view
network traffic. Mininet is used by developers, teachers and researchers and this is because of easily interaction with
network using CLI and API, customizing and sharing features and also development feature on real hardware. It should
be mentioned that Mininet is actively developed and supported. Mininet is used widely just because of: fast to start a
simple network, supporting custom topologies and packet forwarding, running real programs available on Linux,
running on laptops, servers, virtual machines, having sharing and replicating ability, easy to use, being in open source
and active development state. In contrast with these advantages, Mininet has some disadvantages too: having disability
of transferring huge amount of data in one single system, non-available supporting arbitrary OF controllers, supporting
just one platform (Linux kernel), doing NAT out of box, having sharing host file system and PID space and virtual time
notion absence. Measuring performance is presented in [63].
4.1.2. NS-3
NS-3 [64] is a discrete event network simulator which is suited for researchers and educators. The NS-3 library is split
across many modules organized under the modules tab. One of these modules is OF conformable to SDN. NS-3 has
OpenFlowSwitchNetDevice object behaves as a switch and is OF compatible. This object implements a flow table for
all received packets and also a connection to controller just like SDN architecture. Two controllers are available in
original package, DropController and LearningController (based on learning switch algorithm) [65]. This simulator has
these advantages: adding new protocols, shortage of distance among real network and simulated network, having
integration and customizable without remaking the core of simulator. NS-3 disadvantages are: loss of available models,
absence of visual interface for creating topology and visible capability in experimental level.
4.1. 3 EstiNet
EstiNet 8.0 [66] simulator and emulator supports many OF 1.3.2 and 1.0.0 switches. Besides this advantage, in the
simulation mode of EstiNet; POX, NOX, Floodlight and Ryu controllers will have the role of SDN controller plane. In
the emulation mode of EstiNet, these controllers can run up on an external machine that is different from the machine
which simulates switches. Also in this mode implementation of the controller as a dedicated hardware device using an
Ethernet cable is possible, resulting remote controlling. The other benefits of using this simulator/emulator are:
accuracy, quickness, repetition and scalability. EstiNet has a unique capability which is called "kernel-reentering
simulation methodology". By using this, testing of a novel controller applications program by an OF researcher is easy
and effective. A comparison between Mininet, NS-3 and EstiNet is presented in Table 4.
240 Journal of Advanced Computer Science & Technology
4.2. NeTFPGA
NetFPGA is the software and hardware platform aim for researchers and is used for teaching. Now it is available in 2
platforms: NetFPGA-1G (1G) and the NetFPGA-10G (10G). Due to its open source software and low cost hardware, it
is taken into consideration of many students. NetFPGA consists of PCI with four Ethernet port, Xilinx Virtex II pro,
static RAM and Double Date Rate (DDR2) SDRAM [4].
Based on advantages that mentioned and flexibility of NetFPGA platform, it is intended as one solution to implement
SDN. Field Programmable Gate Array (FPGA) allows to program core processing with user defined logic and
embedded core allows to program control functions[61].
In [67] Pang-Wei Tsai et al. described a solution to integrate NetFPGA and OF into network emulation test-bed.
Therefore, the authors succeed to implement traffic-controllable network test-bed with high speed packet processing.
J. Naous et al. presented a paper and explained the result of implementing OF on NetFPGA in [68].They stated that this
implementation is full line-rate and easy to monitor network flow.
4.3. Test-beds
OF test-beds are experimental environments that mainly developed for testing novel applications using OF. Currently,
there are some open test-beds that can be employed for academic research. In continue, some of the most important OF
test-beds are introduced and described.
GENI: GENI [69] stands for Global Environment for Network Innovations that is supported by the National Science
Foundation. It is a wide suite of infrastructure, developed to support experimental research in networking by creating a
huge test-bed [5] In order to reach its goal, GENI federated some platform such as PlanetLab [70], Internet 2 [71],
Emulab [72], etc.
At a high level, it has the prospect of experimental test-bed in which all components will be programmable, federated
and virtualizable, thus it is the best candidate when the deployment scales [73]. Nowadays, GENI project in conjunction
with Internet2 are enabling a SDN based network ready for the deployment novel architecture for new network services
and future internet [74].
OFELIA: Funded by Seventh Frame-work Program (FP7) of European Union. The idea behind OFELIA [75] is a test-
bed in which researchers can dynamically control and extend the network via OF. The OFELIA infrastructure formed
by a set of interconnected islands, each of them managed independently. Employment of virtualization, permits each
experimenter receives a network slice. Each slice is formed by virtual machines to run the clients and server, virtual
machine which corresponds to a typical OF controller and virtual OF network. OFELIA Control Framework (OCF) is a
Common control framework to performed experiment. OCF provides tools for user verification and access, allocation of
the slice, configuration of the network [5].
FIBRE: The main goal of FIBRE is to create common space between Brazil and Europe for future Internet architectures
[76]. The key idea behind this project [77], is to build a federated test-bed by combining wireless networks and wide
area network. The wireless network and wide area network are controlled using OF[5].
4.4. Debuggers
As mentioned before SDN controller is programmable and this feature increases the probability of inadvertently errors.
Generally, finding bugs is hard and time-consuming therefore debuggers have become one of the important components
of OF/SDN. Debuggers are tools that are used to test and diagnose program and enable programmers to interact with
program while it is executing on computer. OF debuggers allow us to trace packet flow behavior to check whether the
network is operating as expected[5]. Nikhil Handigol et al. in[78] introduced ndb, a SDN debugger. Their idea was
similar to gdb, a debugger for GNU operating system, which changes original control flow without any changes to its
semantic. The main goal of the authors was using familiar action specially breakpoint. Breakpoint operation calls all
functions that lead program to specified point.
Journal of Advanced Computer Science & Technology 241
A.Khurshid et al. presented VeriFlow in [79], a layer between controller and hosts that analyzes and checks network
configuration to find bugs without having negative impact on network performance. They claimed that implementation
of VeriFlow is compatible with NOX controller and demonstrated that it is able to verify the control plan rules in real
time and prevent error to impact the proper functioning of the network.
FlowChecker is a configuration analysis tool which introduced by in [80]. Using this system provides the possibility of
checking correctness of data plan configuration and validating consistency of different devices on OF network by
interpretation intra/inter-switches flow table using Binary Decision Diagrams. The authors showed that configuration
analysis can be done while network is running. This feature is useful to determinate QoS.
M.Kobayashi et al. at [81] presented approach for collecting network parameters and used that data to monitor, analyze
and debug SDN. The main information for debugging is gathered from flow table, different traffic statistics and
controller messages. Some different tools were used for debugging purpose and checking traffic between controller and
switches using Wireshark integration, which was stated as the most effective approach.
Integrating ICN and SDN can help emerging technologies grow efficiently and easily face the challenges in today’s
networks. Supporting mobility and cloud computing are two controversial subjects in today’s networks due to
inconsistency with IP protocol. SDN can be used to make the best and optimized decisions for VM migration based on
the controllers’ view of network and automatically update the network devices configurations after migration [5].
One of the advantages of implementing ICN over SDN is to improve ICN’s functionalities. In [89] a routing protocol is
proposed which supports mobility by means of controller. This can be easily implemented using software defined ICN.
In [90] the authors, discussed the role of virtualization in NDN (an architecture based on ICN) and outlined traffic
optimization, traffic engineering and in-network catching management as the advantages of implementing NDN over
SDN, specially for multimedia traffics.
242 Journal of Advanced Computer Science & Technology
5.6. Security
Due to centralized architecture of SDN, it used to detect security problem. Supervision of SDN on whole network flow
and monitoring behavior of users makes SDN possible to detect attack rapidly and prevent more damage. Many
researchers introduced mechanisms to detect Dos and DDos attack -because of flooding based behavior of them. The
example of such system is introduced by Junho Suh et.al in [115] that is implemented on NetFPGA-OF platform.
Chu et al. in [116] introduced system which uses OF switch on edge to pass only safe traffic which is defined on flow
table and LISP (Locator/ID separation protocol) to recognize trusty user
In [117] have been explored solutions for scanning-based attack. In that article J. Jafarian et.al introduced OF Random
Host Mutation (OFRHM) system which changes real IP of each host with the random virtual IP. With this mechanism
fake IP is easily detectable and system prevents large percentage of attacks such as stealthy scanning, worm propagation
and etc. OF responsibility is assigned the virtual IP to host frequently.
Considering policy based security is another security solution that Xiong Liu et.al in [118] have dealt with. They
introduced multilevel security system that prevents information of specific level which gathered by same or lower level
host. In designing system is used OF is used to monitor packet and check content so filter packet with security problem.
Main idea of Y. Jubaa et.al paper in [119] is to isolate network device dynamically from intra-LAN attack using OF. In
suggested architecture IDS component is responsible for detecting attacks and recognizing unsecure devises and inform
OF controller. They argue that results have shown this architecture is effective enough on actual LAN.
One problem of SDN approach anomaly detection is that when network traffic is high gathering full data from flow
table is not efficient so K. Giotis et.al in [120] suggested solution to optimal real time detection system. They combined
244 Journal of Advanced Computer Science & Technology
sFlow [121] and OF and used sampling instead of full flow information and benefited entropy-based algorithm to detect
and mitigate anomaly. The authors stated that in low traffic situation performance of system is comparable with native
OF architecture.
6. Challenges
Software defined network and OF have confronted with some challenges. Security needs to be everywhere within SDN:
A) architecture and its controller, applications, devices, channels (TLS with plain text) and flow table, B) services (to
protect availability), C) connected resources and D) information. Also a robust policy framework in order to check and
balance controllers, a recovery, report policy and security deployment is still very much up for grabs. The solutions
should be simple to deploy and maintain, cost effective and assuredly secure. A new category called software-defined
security (SDSec) which is an example of network functions virtualization (NFV) delivers network security enforcement
by separating the security control plane from processing and forwarding planes [126].
Besides security, availability (controllers’ existence), flexibility [5], [15], [55], [127], controllers and applications
compatibility, link and controller reliability are considerable issues. A centralized controller could recover itself in some
processes by using backup flows in a way that is not as faster as it is expected [55].
Capital and operational expenses called CAPEX and OPEX is another challenge debated by OF adapters. Availability
and reducing system bottleneck would increase CAPEX, however adapters believe that using software defined network
and OF reduce the CAPEX. OPEX in SDN would be decreased by diminishing the number of human based
configuration, time and error prone fields [55].
Besides these challenges there are some implementation issues for example having 40+ matching fields in a flow,
several tables and their large number of flow entries, instructions and actions, flow level programming and controllers'
own way programming that must be considered. Also lack of standard APIs in case of overlapping domain among
controllers, necessity of encryption APIs for data plane packets, injection APIs for packet and instantaneous APIs for
services like IDS and firewall on a switch, absence of operations in case of absence of controller, existence of other
packet format are regarding too [128].
7. Conclusion
In this survey, we provided an overview of software defined networks. We introduced programmable networks such as
SOFTNET, SANE, ForCes, etc. which resulted the SDN paradigm. Then we described the SDN architecture in three
layers: control layer, infrastructure layer and application layer. We discussed about the control layer and its different
control platforms such as Floodlight, RYU, OpenDaylight, etc., the infrastructure layer, available switches and their
capabilities. Also the northbound interfaces and southbound interfaces including different versions of OpenFlow
protocol, XMPP and OnePK were described. Wireless architectures such as OpenRoad, SoftRan and SoftCell are also
explained. We also described different tools for testing SDN. We compared Mininet, EstiNet and NS3 as SDN
simulators and emulators. We discussed different hardware and software tools and test-beds for SDN. At last we
introduced SDN applications and research trends such as software defined ICN, virtualization, wireless and mobile
networks, cloud and datacenters, multimedia over SDN and the works done on security of SDN . We also point out the
existing challenges of using SDN.
Journal of Advanced Computer Science & Technology 245
References
[1] Open Networking Fundation , "Software-defined Networking: The New norm for Networks.", ONF White Paper, (2012) , available online:
https://www.opennetworking.org/images/stories/downloads/sdn-resources/white-papers/wp-sdn-newnorm.pdf, last visit:18.10.2014
[2] B. N. Astuto, M. Mendonça, X. N. Nguyen, K. Obraczka and T. Turletti, “A Survey of Software-Defined Networking: Past, Present, and
Future of Programmable Networks”, hal-00825087,(2013), available online: http://hal.inria.fr/hal-00825087, last visit:18.10.2014
[3] K. Bakshi, "Considerations for Software Defined Networking (SDN): Approaches and Use Cases", IEEE Aerospace Conference, (2013), pp:1-
9.
[4] T. D. Nadeau and K. Gray, Software Defined Networks, CA: O' Reilly, (2013).
[5] F. Hu, "Network Innovation through OpenFlow and SDN: Principles and Design", CRC Press, (2014). http://dx.doi.org/10.1201/b16521.
[6] B. A. A. Nunes, M. Mendonca, X. N. Nguyen, K. Obraczka, and T. Turletti, "A Survey of Software-Defined Networking: Past, Present, and
Future of Programmable Networks", IEEE Communications Surveys and Tutorials, Vol.16, No.3, (2014), pp. 1617-1634, available online:
http://dx.doi.org/10.1109/SURV.2014.012214.00180, last visit: 18.10.2014.
[7] J. Zander and R. Forchheimer, "The SOFTNET Project: a Retrospect", Electrotechnics, 1988. Conference Proceedings on Area
Communication, EUROCON 88., 8th European Conference on, (1988), pp.343-345, available online: http://dx.doi.org/
10.1109/EURCON.1988.11172, last visit:18.10.2014.
[8] N. Feamster, J. Rexford, and E. Zegura, "The Road to SDN," Queue, Vol.11, No.12, (2013), p.20, available online:
http://dx.doi.org/10.1145/2559899.2560327 , last visit:18.10.2014.
[9] A. T. Campbell, I. Katzela, K. Miki, and J. Vicente, "Open Signaling for ATM, Internet and Mobile Networks (OPENSIG'98)," ACM
SIGCOMM Computer Communication Review, Vol.29, No.1, (1999), pp.97-108, available online: http://dx.doi.org/10.1145/505754.505762,
last visit:18.10.2014.
[10] A. Doria, F. Hellstrand, K. Sundell, and T. Worster, "General switch management protocol (GSMP) V3," RFC 3292, (2002), available online:
https://www.ietf.org/rfc/rfc3292.txt, last visit:18.10.2014
[11] J. Biswas, A. A. Lazar, J.-F. Huard, K. Lim, S. Mahjoub, L.-F. Pau, et al., "The IEEE P1520 standards initiative for programmable network
interfaces," Communications Magazine, IEEE, Vol.36, No.10, (1998), pp.64-70, available online: http://dx.doi.org/64-70,10.1109/35.722138,
last visit:18.10.2014.
[12] The 4D Project,”Clean Slate Architectures for Network Management”, available online: http://www.cs.cmu.edu/~./4d/#csamp, last
visit:18.10.2014.
[13] T. Lakshman, T. Nandagopal, R. Ramjee, K. Sabnani, and T. Woo, "The softrouter architecture," Proceedings of ACM SIGCOMM Workshop
on Hot Topics in Networking, (2004), available online: http://conferences.sigcomm.org/hotnets/2004/HotNets-
III%20Proceedings/lakshman.pdf, last visit:18.10.2014.
[14] R. Enns, M. Bjorklund, and J. Schoenwaelder, "NETCONF configuration protocol," RFC 6241, (2011), available online:
https://tools.ietf.org/html/rfc6241, last visit:18.10.2014.
[15] M. Casado, M. J. Freedman, J. Pettit, J. Luo, N. McKeown, and S. Shenker, "Ethane: Taking control of the enterprise," ACM SIGCOMM
Computer Communication Review, Vol.37, No.4, (2007), pp.1-12, available online: http://dx.doi.org/ 10.1145/1282427.1282382, last
visit:18.10.2014.
[16] M. Casado, T. Garfinkel, A. Akella, M. J. Freedman, D. Boneh, N. McKeown, et al., "SANE: A protection architecture for enterprise
networks," Proceedings of the 15th conference on USENIX Security Symposium, Vol.15, No.10, (2006), pp.137–151, available online:
https://www.usenix.org/legacy/event/sec06/tech/full_papers/casado/casado_html/, , last visit:18.10.2014.
[17] A. Doria, R. Gopal, H. Khosravi, L. Dong, J. Salim, and W. Wang, "Forwarding and control element separation (ForCES) protocol
specification," RFC 5810, (2010), available online: http://tools.ietf.org/html/rfc5810, last visit:18.10.2014.
[18] T. Chown and D. R. Newman, "OpenFlow Experiment in Real-Time Internet Edutainment," OFERTIE Project Partners, (2013), pp.1-24,
available online: www.ofertie.org/files/2014/02/318665OFERTIE-D7-7-1-Initial-Standardisation-Proposal FINAL.pdf, last visit: 18.10.2014.
[19] Open Networking Foundation, available online: https://www.opennetworking.org/, last visit: 18.10.2014.
[20] C. Alaettinoglu, "Software Defined Networking," (2013), available online: www.packetdesign.com/resources/white-papers/sdn-white-
paper.pdf, last visit:18.10.2014.
[21] T. Koponen, M. Casado, N. Gude, J. Stribling, L. Poutievski, M. Zhu, et al., "Onix: A Distributed Control Platform for Large-scale Production
Networks," Proceedings of the 9th USENIX conference on Operating systems design and implementation, (2010), pp.1-6, available online:
static.usenix.org/events/osdi10/tech/full_papers/Koponen.pdf, last visit:18.10.2014.
[22] A. Tootoonchian, S. Gorbunov, Y. Ganjali, M. Casado, and R. Sherwood, "On controller performance in software-defined networks," USENIX
Workshop on Hot Topics in Management of Internet, Cloud, and Enterprise Networks and Services (Hot-ICE), (2012), available online:
https://www.usenix.org/system/files/conference/hot-ice12/hotice12-final33_0.pdf, last visit:18.10.2014.
[23] Kandoo, available online: http://www.kandoo.org, last visit:18.10.2014.
[24] Flowvisor, available online: https://openflow.stanford.edu/display/DOCS/Flowvisor, last visit:18.10.2014.
[25] NOX ,available online: http://www.noxrepo.org/nox/about-nox/, last visit:18.10.2014.
[26] POX , available online: http://www.noxrepo.org/pox/about-pox/, last visit:18.10.2014.
[27] Beacon , available online: https://openflow.stanford.edu/display/Beacon/Home, last visit:18.10.2014.
[28] E. Ng, "Maestro: A System for Scalable OpenFlow Control," available online: www.cs.rice.edu/~eugeneng/papers/TR10-11.pdf, last
visit:18.10.2014.
[29] Floodlight OpenFlow Controller - Project Floodlight, available online: http://www.projectfloodlight.org/floodlight/, last visit:18.10.2014.
[30] Announcing release of Floodlight with OF 1.3 support, available online: http://sdnhub.org/releases/floodlight-plus-openflow13-support/, last
visit:18.10.2014.
[31] Ryu 3.9 documentation, available online: http://ryu.readthedocs.org/en/latest/getting_started.html#what-s-ryu, last visit:18.10.2014.
[32] Opendaylight. available online: http://www.opendaylight.org/, last visit:18.10.2014.
[33] OpenFlow Switch Consortium, "OpenFlow Switch Specification Version 1.0. 0.", (2009), available online :
https://www.opennetworking.org/images/stories/downloads/sdn-resources/onf-specifications/openflow/openflow-spec-v1.0.0.pdf, last
visit:18.10.2014
[34] OpenFlow Switch Consortium, "OpenFlow Switch Specification Version 1.1. 0.", (2011), available online :
https://www.opennetworking.org/images/stories/downloads/sdn-resources/onf-specifications/openflow/openflow-spec-v1.1.0.pdf, last
visit:18.10.2014
[35] OpenFlow Switch Consortium, "OpenFlow Switch Specification Version 1.2. 0.", (2011), available online :
https://www.opennetworking.org/images/stories/downloads/sdn-resources/onf-specifications/openflow/openflow-spec-v1.2.0.pdf, last
visit:18.10.2014
246 Journal of Advanced Computer Science & Technology
[36] OpenFlow Switch Consortium, "OpenFlow Switch Specification Version 1.3. 0.", (2012), available online :
https://www.opennetworking.org/images/stories/downloads/sdn-resources/onf-specifications/openflow/openflow-spec-v1.3.0.pdf, last
visit:18.10.2014
[37] OpenFlow Switch Consortium, "OpenFlow Switch Specification Version 1.4. 0.", (2013), available online :
https://www.opennetworking.org/images/stories/downloads/sdn-resources/onf-specifications/openflow/openflow-spec-v1.0.0.pdf, last
visit:18.10.2014
[38] Arista Networks, available online: http://www.aristanetworks.com/en/products/eos/openflow, last visit:18.10.2014
[39] Brocade, available online: http://www.brocade.com/products/all/switches/product-details/netiron-ces-2000-series/index.page , last
visit:18.10.2014
[40] HP switches, available online:
http://h17007.www1.hp.com/us/en/networking/products/switches/HP_3500_and_3500_yl_Switch_Series/index.aspx, last visit:18.10.2014
[41] IBM, available online : http://www-03.ibm.com/systems/networking/software/sdnveof/ , last visit: 8.8.2014
[42] Juniper, http://www.juniper.net/us/en/products-services/sdn/ , last visit:8.8.2014
[43] Y. Cheng, V. Ganti, and V. Lubsey, “Open Data Center Alliance Usage Model: Software-Defined Networking rev. 2.0”, Open Data Center
Alliance, (2014), [Online]. Available online: http://www. opendatacenteralliance.org/docs/Software Defined-Networking-Master-Usage-
Model- Rev2.0.pdf, last visit:8.8.2014
[44] NEC, available online: http://www.necam.com/sdn/doc.cfm?t=PFlowPF5240Switch, last visit:18.10.2014
[45] OpenVSwitch, available online: http://openvswitch.org , last visit:18.10.2014
[46] Pica8 open networking, http://www.pica8.org/open-switching/1gbe-10gbe-40gbe-open-switches.php, last visit:18.10.2014
[47] R. Kumar, Software Defined Networking - a definitive guide, Smashwords, (2013).
[48] H. K. A. Voellmy, and N. Feamster, "Procera: a language for high-level reactive network control", Proceedings of the Hot topics in software
defined networks, (2012), pp. 43-48, available online: http://dx.doi.org/10.1145/2342441.2342451, last visit: 18.10.2014.
[49] R. H. N. Foster, M. J. Freedman,C. Monsanto, J. Rexford, A. Story, and D. Walker, "Frenetic: a network programming language", ACM
SIGPLAN Notices, Vol.46, No.9, (2011), pp. 279-291, available online: http://dx.doi.org/10.1145/2034574.2034812, last visit: 18.10.2014.
[50] N. S. Gude, T. L. Hinrichs, M. Casado, J. C. Mitchell, and S. Shenker, "Practical declarative network management", Proceedings of the ACM
workshop on Research on enterprise networking, (2009), pp. 1-10, available online: http://dx.doi.org/10.1145/1592681.1592683, last visit:
18.10.2014.
[51] A. V. a. P. Hudak., "Nettle: taking the sting out of programming network routers", Proceedings of the Practical aspects of declarative
languages, (2011), pp. 235-249, available online: http://dx.doi.org/10.1007/978-3-642-18378-2_19, last visit: 18.10.2014.
[52] J. R. C. Monsanto, N. Foster, J. Rexford, and D. Walker, "Composing software-defined networks", Proceedings of the USENIX Symposium on
Networked Systems Design and Implementation, (2013), pp. 1-14.
[53] J. Seedorf and E. Burger, "Application-layer Traffic Optimization (ALTO): Problem Statement", RFC 5693, (2009), available online:
http://tools.ietf.org/html/rfc5693, last visit:16.10.2014.
[54] D. Crockford, “The Application/json Media Type for Javascript Object Notation (json)”, RFC 4627, (2006), available online:
https://tools.ietf.org/html/rfc4627, last visit:17.10.2014.
[55] A. Lara, A. Kolasani, and B. Ramamurthy, "Network innovation using openflow: A survey", Communications Surveys & Tutorials, IEEE,
Vol.16, No.1, (2013), pp.493–512, available online: http://dx.doi.org/ 10.1109/SURV.2013.081313.00105, last visit:18.10.2014.
[56] P. Saint-Andre, "Extensible Messaging and Presence Protocol (XMPP): Core", RFC 6120, (2011), available online:
http://xmpp.org/rfcs/rfc6120.html, last visit:17.10.2014.
[57] Open Networking Foundation, “Openflow-enabled mobile and wireless networks”, ONF whitepaper, (2013), available online:
https://www.opennetworking.org/images/stories/downloads/sdn-resources/solution-briefs/sb-wireless-mobile.pdf, last visit:18.10.2014.
[58] K. K. Yap, M. kobayashi, R. Sherwood, T. Huang, M. Chan, N. Handigol, and N. McKeown, "OpenRoads: Empowering research in mobile
networks", ACM SIGCOMM Computer Communication Review, Vol.40, No.1, (2010), pp. 125-126, available online:
http://dx.doi.org/10.1145/1672308.1672331, last visit: 18.10.2014.
[59] P. D. Gudipati Aditya, Erran Li Li, and Katti Sachin, "Softran: software defined radio access network", Proceedings of the ACM SIGCOMM
workshop on Hot topics in software defined networking, (2013), pp. 25–30, available online: http://dx.doi.org/10.1145/2491185.2491207, last
visit: 18.10.2014.
[60] M. Z. M. Erran Li Li, and Rexford Jennifer, "Toward software defined cellular networks", Proceedings of the European Workshop on
Software Defined Networking, (2012), pp. 7-12, available online: http://dx.doi.org/10.1109/EWSDN.2012.28, last visit: 18.10.2014.
[61] J. W. Lockwood, N. McKeown, G. Watson, G. Gibb, P. Hartke, J. Naous, et al., "NetFPGA--An Open Platform for Gigabit-Rate Network
Switching and Routing", Proceedings of the 2007 IEEE International Conference on Microelectronic Systems Education, (2007), pp:160-161,
available online: http://dx.doi.org/10.1109/MSE.2007.69, last visit:17.10.2014.
[62] Mininet: An Instant Virtual Network on your Laptop (or other PC), available online: http://mininet.org/, last visit:18.10.2014.
[63] Introduction to Mininet - mininet/ mininet wiki – GitHub, available online: https://github.com/mininet/mininet/wiki/Introduction-to-Mininet,
last visit:18.10.2014.
[64] ns-3, available online: http://www.nsnam.org/, last visit:18.10.2014.
[65] ns-3: ns-3 Documentation, available online: http://www.nsnam.org/docs/release/3.19/doxygen/index.html, last visit:18.10.2014.
[66] EstiNet Technologies, available online: http://www.estinet.com/products.php, last visit:18.10.2014.
[67] P.-W. Tsai, P.-W. Cheng, M.-Y. Luo, T.-L. Liu, and C.-S. Yang, "Planning and Implantation of NetFPGA Platform on Network Emulation
Testbed", Proceedings of the asia-Pacific advanced network, Vol.32, (2011), pp:1-7, available online: http://dx.doi.org/10.7125/APAN.32.1,
last visit:17.10.2014.
[68] J. Naous, D. Erickson, G. A. Covington, G. Appenzeller, and N. McKeown, "Implementing an OpenFlow Switch on the NetFPGA Platform",
Proceedings of the 4th ACM/IEEE symposium on architectures for networking and communications systems, (2008), pp:1-9, available online:
http://dx.doi.org/10.1145/1477942.1477944, last visit:17.10.2014.
[69] GENI, available online: http://www.geni.net/, last visit: 18.10.2014.
[70] PLANETLAB, available online: http://www.planet-lab.org/, last visit: 18.10.2014.
[71] Internet2, available online: http://www.internet2.edu/, last visit: 18.10.2014.
[72] Emulab - Network Emulation Testbed Home, available online: http://www.emulab.net/, last visit: 18.10.2014.
[73] C. Elliott, "GENI: opening up new classes of experiments in global networking", IEEE Internet Computing, Vol.14, No.1, (2010), pp. 39–42.
[74] F. de Oliveira Silva, J.H. de Souza Pereira, P.F. Rosa, and S.T. Kofuji, "Enabling future internet architecture research and experimentation by
using software defined networking", ", Proceedings of the European Workshop on Software Defined Networking, (2012), pp. 73-78, available
online: http://dx.doi.org/10.1109/EWSDN.2012.24, last visit: 18.10.2014.
[75] OpenFlow in Europe Linking Infrastructure and Applications, available online: http://www.fp7-ofelia.eu/, last visit: 18.10.2014.
[76] A. A. e. S. Sallent, I. Machado, L. Bergesio, S. Fdida, J. Rezende, S. Azodolmolky, M. Salvador, L. Ciuffo, and L. Tassiulas, "Fibre project:
Brazil and europe unite forces and testbeds for the internet of the future", Testbeds and Research Infrastructure. Development of Networks and
Communities, Vol.44, (2012), pp. 372, available online: http://dx.doi.org/10.1007/978-3-642-35576-9_33, last visit: 18.10.2014.
[77] FIBRE Project, available online: http://www.fibre-ict.eu/, last visit: 18.10.2014.
Journal of Advanced Computer Science & Technology 247
[78] N. Handigol, B. Heller, V. Jeyakumar, D. Mazières, and N. McKeown, "Where Is The Debugger for My Software-Defined Network?",
Proceedings of the first workshop on Hot topics in software defined networks, (2012), pp:55-60, available
online: http://dx.doi.org/10.1145/2342441.2342453, last visit:17.10.2014.
[79] A. Khurshid, W. Zhou, M. Caesar, and P. Godfrey, "Veriflow: Verifying Network-wide Invariants in Real Time", ACM SIGCOMM Computer
Communication Review, vol.42, (2012), pp:467-472, available online:http://dx.doi.org/10.1145/2342441.2342452, last visit:17.10.2014.
[80] E. Al-Shaer and S. Al-Haj, "FlowChecker: Configuration Analysis and Verification of Federated OpenFlow Infrastructures", Proceedings of
the 3rd ACM workshop on Assurable and usable security configuration, (2010), pp:37-44, available
online: http://dx.doi.org/10.1145/1866898.1866905, last visit:17.10.2014.
[81] M. Kobayashi, S. Seetharaman, G. Parulkar, G. Appenzeller, J. Little, J. van Reijendam, et al., "Maturing of OpenFlow and Software-Defined
Networking Through Deployments", Computer Networks, (2013), pp:151–175, available online: http://dx.doi.org/10.1016/j.bjp.2013.10.011,
last visit:17.10.2014.
[82] X. N. Nguyen, D. Saucez, and T. Thierry, "Providing CCN functionalities over OpenFlow switches", hal-00920554, (2013), available online:
https://hal.inria.fr/hal-00920554/, last visit: 18.10.2014.
[83] S. Salsano, N. Blefari-Melazzi, A. Detti, G. Morabito, and L. Veltri, "Information centric networking over SDN and OpenFlow: Architectural
aspects and experiments on the OFELIA testbed," Computer Networks, vol. 57,(2013), pp. 3207-3221.
[84] N. B. Melazzi, A. Detti, G. Mazza, G. Morabito, S. Salsano, and L. Veltri, "An openflow-based testbed for information centric networking",
Future Network & Mobile Summit (FutureNetw), (2012), pp.1-9.
[85] N. B. Melazzi, A. Detti, M. Pomposini, and S. Salsano, "Route discovery and caching: a way to improve the scalability of Information-Centric
Networking", IEEE Global Communications Conference (GLOBECOM), (2012), pp. 2701-2707.
[86] A. Ooka, S. Ata, T. Koide, H. Shimonishi, and M. Murata, "OpenFlow-based content-centric networking architecture and router
implementation", Future Network and Mobile Summit (FutureNetworkSummit), (2013), pp. 1-10.
[87] I. Carvalho, F. Faria, E. Cerqueira, and A. Abelem, "ContentFlow: An Introductory Routing Proposal for Content Centric Networks using
Openflow", API 7th Think-Tank Meeting, (2012), pp. 1-2.
[88] X. N. Nguyen, D. Saucez, and T. Turletti, "Efficient caching in content-centric networks using OpenFlow", INFOCOM 2013 Student
Workshop, (2013).
[89] J. Torres, L. Ferraz, and O. Duarte, "Controller-based routing scheme for Named Data Network", Technical report, Electrical Engineering
Program, (2012).
[90] J. Ren, K. Pentikousis, C. Westphal, W. Liu, and J. Wang, "The Role of Virtualization in Information-centric Network Deployment", E-
LETTER.
[91] S. Civanlar, M. Parlakisik, A. M. Tekalp, B. Gorkemli, B. Kaytaz, and E. Onem, "A qos-enabled openflow environment for scalable video
streaming", IEEE GLOBECOM Workshops (GC Wkshps), (2010), pp. 351-356.
[92] H. E. Egilmez, S. T. Dane, K. T. Bagci, and A. M. Tekalp, "OpenQoS: An OpenFlow controller design for multimedia delivery with end-to-
end Quality of Service over Software-Defined Networks," Signal & Information Processing Association Annual Summit and Conference
(APSIPA ASC), (2012), pp. 1-8.
[93] R. Braden, D. Clark, and S. Shenker, "Integrated services in the internet architecture: an overview", RFC 1633, (1994), available online:
http://tools.ietf.org/html/rfc1633.html, last visit:18.10.2014.
[94] S. Blake, D. Black, M. Carlson, E. Davies, Z. Wang, and W. Weiss, "An architecture for differentiated services", RFC 2475,(1998), available
online: https://tools.ietf.org/html/rfc2475, last visit:18.10.2014.
[95] Network Configuration (NetConf), http://datatracker.ietf.org/wg/netconf, last visit:18.10.2014.
[96] Open Networking Foundation, "OpenFlow configuration and management protocol 1.0 (OF-Cinfig)", (2011), available online:
https://www.opennetworking.org/images/stories/downloads/sdn-resources/onf-specifications/openflow-config/of-config1dot0-final.pdf, last
visit:18.10.2014.
[97] W. Kim, P. Sharma, J. Lee, S. Banerjee, J. Tourrilhes, S.-J. Lee, et al., "Automated and scalable qos control for network convergence",
INM/WREN, vol. 10, (2010), pp. 1-1, 2010.
[98] I. Owens and A. Durresi, "Video over Software-Defined Networking (VSDN)", 2013 16th International Conference on Network-Based
Information Systems (NBiS), ( 2013), pp. 44-51.
[99] H. Kim and N. Feamster, "Improving network management with software defined networking," Communications Magazine, IEEE, Vol.51,
No.2, (2013), pp.114-119, available online: http://dx.doi.org/ 10.1109/MCOM.2013.6461195, last visit:18.10.2014.
[100] P. Sharma, S. Banerjee, S. Tandel, R. Aguiar, R. Amorim, and D. Pinheiro, "Enhancing network management frameworks with SDN-like
control," Integrated Network Management (IM 2013), 2013 IFIP/IEEE International Symposium on, (2013), pp.688-691, available online:
http://ieeexplore.ieee.org/xpl/login.jsp?tp=&arnumber=6573054&url=http%3A%2F%2Fieeexplore.ieee.org%2Fxpls%2Fabs_all.jsp%3Farnu
mber%3D6573054, last visit:18.10.2014.
[101] S. Dotcenko, A. Vladyko, and I. Letenko, "A fuzzy logic-based information security management for software-defined networks," Advanced
Communication Technology (ICACT), 2014 16th International Conference on, (2014), pp. 167-171, available online:
http://dx.doi.org/10.1109/ICACT.2014.6778942, last visit:18.10.2014.
[102] H. Kim, A. Voellmy, S. Burnett, N. Feamster, and R. Clark, "Lithium: Event-driven network control," Georgia Institute of Technology,
(2012), available online: smartech.gatech.edu/jspui/bitstream/1853/43377/1/GT-CS-12-03.pdf, last visit:18.10.2014.
[103] Welcome to project BISmark. available online: http://projectbismark.net, last visit:18.10.2014.
[104] S. Song, S. Hong, X. Guan, B.-Y. Choi, and C. Choi, "NEOD: network embedded on-line disaster management framework for software
defined networking," Integrated Network Management (IM 2013), 2013 IFIP/IEEE International Symposium on, (2013), pp.492-498,
available online: http://dx.doi.org/10.1109/ICACT.2014.6778942, last visit: 18.10.2014.
[105] J. Matias, B. Tornero, A. Mendiola, E. Jacob, and N. Toledo, "Implementing Layer 2 Network Virtualization using OpenFlow: Challenges and
Solutions", Proceedings of European Workshop on Software Defined Networking (EWSDN), (2012), pp:30-35, available online:
http://dx.doi.org/10.1109/EWSDN.2012.18, last visit:17.10.2014.
[106] R. Nejbati, S. Azodolmolky, and D. Simeonidou, "Role of Network Virtualization in Future Internet Innovation", Proceedings of 17th
European Conference on Networks and Optical Communications (NOC), (2012), pp:1-4, available online:
http://dx.doi.org/10.1109/NOC.2012.6249915, last visit:17.10.2014.
[107] I. M. Moraes, D. M. Mattos, L. H. G. Ferraz, M. E. M. Campista, M. G. Rubinstein, L. H. M. Costa, et al., "FITS: A Flexible Virtual Network
Testbed Architecture", Computer Networks, Vol.63, (2014), pp:221–237, available online: http://dx.doi.org/10.1145/1477942.1477944, last
visit:17.10.2014.
[108] P. Barham, B. Dragovic, K. Fraser, S. Hand, T. Harris, A. Ho, et al., "Xen and the Art of Virtualization", Proceedings of the nineteenth ACM
symposium on Operating systems principles, Vol.37, (2003), pp:164-177, available online: http://dx.doi.org/10.1145/1165389.945462, last
visit:17.10.2014.
[109] J. Hurwitz, A. Nugent, F. Halper, and M. Kaufman, Big Data for Dummies, John Wiley & Sons, Inc., (2013), pp:7-35.
248 Journal of Advanced Computer Science & Technology
[110] C. Baker, A. Anjum, R. Hill, N. Bessis, and S. L. Kiani, "Improving Cloud Datacenter Scalability, Agility and Performance using OpenFlow",
Proceedings of 4th IEEE International Conference on Intelligent Networking and Collaborative Systems (INCoS), (2012), available online:
http://dx.doi.org/10.1109/iNCoS.2012.118, last visit:17.10.2014.
[111] Oracle SDN (Software Defined Network), (2013), Available online: http://www.oracle.com/us/products/networking/virtual-
networking/sdn/overview/index.html, last visit:17.10.2014.
[112] R. Raghavendra, J. Lobo, and K.-W. Lee, "Dynamic Graph Query Primitives for SDN-based Cloud Network Management", Proceedings of
the first workshop on Hot topics in software defined networks, (2012), pp.97-102, available online: http://dx.doi.org/
10.1145/2342441.2342461, last visit:17.10.2014.
[113] M. Al-Fares, S. Radhakrishnan, B. Raghavan, N. Huang, and A. Vahdat, "Hedera: Dynamic Flow Scheduling for Data Center Networks",
Proceedings of 7th USENIX conference on Networked systems design and implementation, (2010), available online:
http://dl.acm.org/citation.cfm?id=1855730, last visit:17.10.2014.
[114] H. Yang, J. Zhang, Y. Zhao, H. Li, S. Huang, Y. Ji, et al., "Cross Stratum Resilience for OpenFlow-enabled Data Center Interconnection with
Flexi-Grid Optical Networks", Optical Switching and Networking, Vol.11, (2014), pp:72-82, available online:
http://dx.doi.org/10.1016/j.osn.2013.10.001, last visit:17.10.2014.
[115] J. Suh, H. Choi, W. Yoon, T. You, T. Kwon, and Y. Choi, "Implementation of a Content-oriented Networking Architecture (CONA): A Focus
on DDoS Countermeasure", Proceedings of European NetFPGA developers workshop, (2010).
[116] C. YuHunag, T. MinChi, C. YaoTing, C. YuChieh, and C. YanRen, "A Novel Design for Future on-demand Service and Security",
Proceedings of 12th IEEE International Conference on Communication Technology, (2010), pp:385-388, available online:
http://dx.doi.org/10.1109/ICCT.2010.5689156, last visit:17.10.2014.
[117] J. H. Jafarian, E. Al-Shaer, and Q. Duan, "Openflow Random Host Mutation: Transparent Moving Target Defense using Software Defined
Networking", Proceedings of the first workshop on Hot topics in software defined networks, (2012), pp:127-132.
[118] X. Liu, H. Xue, X. Feng, and Y. Dai, "Design of the Multi-level Security Network Switch System Which Restricts Covert Channel",
Proceedings of 3rd IEEE International Conference on communication software and networks (ICCSN), (2011), 2011, pp:233-237, available
online: http://dx.doi.org/10.1109/ICCSN.2011.6013582, last visit:17.10.2014.
[119] Y. Juba, H.-H. Huang, and K. Kawagoe, "Dynamic Isolation of Network Devices Using OpenFlow for Keeping LAN Secure from Intra-LAN
Attack", Procedia computer science, vol. 22, pp: 810-819, (2013), available online: http://dx.doi.org/ 10.1016/j.procs.2013.09.163, last visit:
17.10.2014.
[120] K. Giotis, C. Argyropoulos, G. Androulidakis, D. Kalogeras, and V. Maglaris, "Combining OpenFlow and sFlow for an Effective and Scalable
Anomaly Detection and Mitigation Mechanism on SDN Environments", Computer Networks, (2013), available online: http://dx.doi.org/
10.1016/j.bjp.2013.10.014, last visit:17.10.2014.
[121] P. Phaal, "sFlow Specification Version 5", (2004), available online: http://sflow.org/sflow_version_5.txt, last visit: 17.10.2014.
[122] H. T. T. Luo, and T. Quek, "Sensor openflow: Enabling software defined wireless sensor networks", IEEE Communications Letters, Vol.16,
No. 11, (2012), pp. 1896-1899, available online: http://dx.doi.org/10.1109/LCOMM.2012.092812.121712, last visit: 18.10.2014.
[123] A. K. P. Dely, and N. Bayer, "Openflow for wireless mesh networks", Proceedings of the Computer Communications and Networks, (2011),
pp. 1-6, available online: http://dx.doi.org/10.1109/ICCCN.2011.6006100, last visit: 18.10.2014.
[124] Y. S. P. Baskett, W. Zeng, and B. Guttersohn, "SDNAN: Software Defined Networking in Ad hoc Networks of Smartphones", Proceedings of
the Consumer Communications and Networking Conference, (2013), pp. 861-862, http://dx.doi.org/10.1109/CCNC.2013.6488568, last visit:
18.10.2014.
[125] Open Networking Foundation, "Wireless & Mobile", available online: https://www.opennetworking.org/images/stories/downloads/working-
groups/charter-wireless-mobile.pdf, last visit:18.10.2014.
[126] Security Challenges in SDN (Software-defined Networks). available online: http://www.sdncentral.com/security-challenges-sdn-software-
defined-networks/, last visit:18.10.2014.
[127] M. Caesar, D. Caldwell, N. Feamster, J. Rexford, A. Shaikh, and J. van der Merwe, "Design and implementation of a routing control
platform," Proceedings of the 2nd conference on Symposium on Networked Systems Design & Implementation, Vol.2, (2005), pp.15-28,
available online: https://www.usenix.org/legacy/events/nsdi05/tech/full_papers/caesar/caesar_html/, last visit:18.10.2014.
[128] R. Oshana and S. Addepalli, "Networking Trends-Software Defined Networking, Network Virtualization and Cloud Orchestration," Asia
Power Arch. Conf, (2012), available online: https://www.power.org/wp-content/uploads/2012/10/13.-FSL-SDN-Openflow-and-Cloud-
computing-UPD_Rob-Oshana.pdf, last visit:18.10.2014.