Software Defined Networking Architecture, Security and Energy Efficiency: A Survey <s> 1) Energy Efficiency Through Optimal Network Resource Utilization: <s> (Most chapters contain a Summary.) Preface xiii. SECTION II. INTRODUCTION. 1. Atoms, Bits, and Networks. Introduction. Common Network Technologies. Networking Concepts and Techniques. Engineering Computer Networks. In Closing. 2. The Telephone Network: Concepts, History, and Challenges. Concepts. End-Systems. Transmission. Switching. Signaling. Cellular Communications. Historical Sketch. Challenges. Summary. 3. The Internet: Concepts, History, and Challenges. Concepts. Basic Internet Technology. Addressing. Routing. Endpoint Control. History. Challenges. Summary. 4. Atm Networks: Concepts, History, and Challenges. Virtual Circuits. Fixed-Size Packets. Small Packet Size. Statistical Multiplexing. Integrated Service. History. Challenges. Summary. SECTION II. TOOLS AND TECHNIQUES. 5. Protocol Layering. Protocols and Protocol Layering. Importance of Layering. Problems With Layering. Iso-Osi Reference Model. The Seven Layers. Summary. 6. System Design. Introduction. Resource Constraints and Their Metrics. Common Design Techniques. Performance Analysis and Tuning. Summary. 7. Multiple Access. Introduction. Choices and Constraints. Base Technologies. Centralized Access Schemes. Distributed Schemes. Summary. 8. Switching. Introduction. Circuit Switching. Packet Switching. Switch Fabrics. Buffering. Multicasting. Summary. 9. Scheduling. Introduction. Requirements. Fundamental Choices. Scheduling Best-Effort Connections. Scheduling Guaranteed-Service Connections. Comparison. Packet Dropping. Summary. 10. Naming and Addressing. Introduction. Naming and Addressing. Hierarchical Naming. Addressing. Addressing in the Telephone Network. Addressing in the Internet. Nsaps: Addressing in ATM Networks. Name Resolution. Datalink Layer Addressing. Finding Datalink Layer Addresses. Summary. 11. Routing. Introduction. Routing Protocol Requirements. Choices. Routing in the Telephone Network. Distance-Vector Routing. Link-State Routing. Choosing Link Costs. Hierarchical Routing. Internet Routing Protocols. Routing Within a Broadcast Lan. Multicast Routing. Routing With Policy Constraints. Routing for Mobile Hosts. Summary. 12. Error Control. Causes of Bit Errors. Bit-Error Detection and Correction. Causes of Packet Errors. Packet-Error Detection and Correction. Summary. 13. Flow Control. Model. Classification. Open-Loop Flow Control. Closed-Loop Flow Control. Hybrid Flow Control. Summary. 14. Traffic Management. Introduction. An Economic Framework for Traffic Management. Traffic Models. Traffic Classes. Time Scales of Traffic Management. Scheduling. Renegotiation. Signaling. Admission Control. Peak-Load Pricing. Capacity Planning. Summary. SECTION III. PRACTICE. 15. Common Protocols. Introduction. Telephone Network Protocols. Internet Protocols. Atm Network Protocols. Ip Over Atm. Summary. 16. Protocol Implementation. Introduction. Factors Affecting Protocol Stack Performance. Common Protocol Stack Procedures. Partitioning Strategies. Interface Among Protocol Layers. Protocol Implementation. Some Rules of Thumb. Summary. References. Glossary. Answers to Review Questions and Selected Exercises. Index. 0201634422T04062001 <s> BIB001 </s> Software Defined Networking Architecture, Security and Energy Efficiency: A Survey <s> 1) Energy Efficiency Through Optimal Network Resource Utilization: <s> This memo describes the principles of Traffic Engineering (TE) in the Internet. The document is intended to promote better understanding of the issues surrounding traffic engineering in IP networks, and to provide a common basis for the development of traffic engineering capabilities for the Internet. The principles, architectures, and methodologies for performance evaluation and performance optimization of operational IP networks are discussed throughout this document. <s> BIB002 </s> Software Defined Networking Architecture, Security and Energy Efficiency: A Survey <s> 1) Energy Efficiency Through Optimal Network Resource Utilization: <s> Traffic engineering involves adapting the routing of traffic to network conditions, with the joint goals of good user performance and efficient use of network resources. We describe an approach to intradomain traffic engineering that works within the existing deployed base of interior gateway protocols, such as Open Shortest Path First and Intermediate System-Intermediate System. We explain how to adapt the configuration of link weights, based on a networkwide view of the traffic and topology within a domain. In addition, we summarize the results of several studies of techniques for optimizing OSPF/IS-IS weights to the prevailing traffic. The article argues that traditional shortest path routing protocols are surprisingly effective for engineering the flow of traffic in large IP networks. <s> BIB003 </s> Software Defined Networking Architecture, Security and Energy Efficiency: A Survey <s> 1) Energy Efficiency Through Optimal Network Resource Utilization: <s> We describe the implementation of an OpenFlow Switch on the NetFPGA platform. OpenFlow is a way to deploy experimental or new protocols in networks that carry production traffic. An OpenFlow network consists of simple flow-based switches in the datapath, with a remote controller to manage several switches. In practice, OpenFlow is most often added as a feature to an existing Ethernet switch, IPv4 router or wireless access point. An OpenFlow-enabled device has an internal flow-table and a standardized interface to add and remove flow entries remotely. Our implementation of OpenFlow on the NetFPGA is one of several reference implementations we have implemented on different platforms. Our simple OpenFlow implementation is capable of running at line-rate and handling all the traffic that is going through the Stanford Electrical Engineering and Computer Science building. We compare our implementation's complexity to a basic IPv4 router implementation and a basic Ethernet learning switch implementation. We describe the OpenFlow deployment into the Stanford campus and the Internet2 backbone. <s> BIB004 </s> Software Defined Networking Architecture, Security and Energy Efficiency: A Survey <s> 1) Energy Efficiency Through Optimal Network Resource Utilization: <s> Networks are a shared resource connecting critical IT infrastructure, and the general practice is to always leave them on. Yet, meaningful energy savings can result from improving a network's ability to scale up and down, as traffic demands ebb and flow. We present ElasticTree, a network-wide power1 manager, which dynamically adjusts the set of active network elements -- links and switches--to satisfy changing data center traffic loads. ::: ::: We first compare multiple strategies for finding minimum-power network subsets across a range of traffic patterns. We implement and analyze ElasticTree on a prototype testbed built with production OpenFlow switches from three network vendors. Further, we examine the trade-offs between energy efficiency, performance and robustness, with real traces from a production e-commerce website. Our results demonstrate that for data center workloads, ElasticTree can save up to 50% of network energy, while maintaining the ability to handle traffic surges. Our fast heuristic for computing network subsets enables ElasticTree to scale to data centers containing thousands of nodes. We finish by showing how a network admin might configure ElasticTree to satisfy their needs for performance and fault tolerance, while minimizing their network power bill. <s> BIB005 </s> Software Defined Networking Architecture, Security and Energy Efficiency: A Survey <s> 1) Energy Efficiency Through Optimal Network Resource Utilization: <s> Automatically switched multilayer IP-over-optical networks offer extensive flexibility in adapting the network to offered IP/MPLS traffic. Multilayer traffic engineering (MLTE) takes advantage of this through online IP logical topology reconfiguration in addition to the more traditional rerouting. The main goal of MLTE is to optimize toward resource usage, bandwidth throughput and QoS performance. However, energy efficiency of ICT infrastructure and the network in particular more recently have become an important aspect as well. In this article, we will look how MLTE helps in improving network energy efficiency. For this we will explain how optimization toward power requirement relates to the traditional resource usage minimization objective, and how power requirement in the network can be modeled for the MLTE algorithm. We will discuss two cases where the merit of MLTE for energy efficiency is discussed. Firstly, we will examine the interaction of MLTE with hardware-based energy efficiency optimization techniques; for this we look at scaling back power requirements through the use of better chip technology, but also decreasing idle-power requirement only, using improved chip architecture. Secondly, as MLTE allows for fast responses to changing traffic, we will see how link switch-off during off-peak hours offers a straightforward option to reduce energy needs. <s> BIB006 </s> Software Defined Networking Architecture, Security and Energy Efficiency: A Survey <s> 1) Energy Efficiency Through Optimal Network Resource Utilization: <s> Today's data centers offer tremendous aggregate bandwidth to clusters of tens of thousands of machines. However, because of limited port densities in even the highest-end switches, data center topologies typically consist of multi-rooted trees with many equal-cost paths between any given pair of hosts. Existing IP multipathing protocols usually rely on per-flow static hashing and can cause substantial bandwidth losses due to long-term collisions. ::: ::: In this paper, we present Hedera, a scalable, dynamic flow scheduling system that adaptively schedules a multi-stage switching fabric to efficiently utilize aggregate network resources. We describe our implementation using commodity switches and unmodified hosts, and show that for a simulated 8,192 host data center, Hedera delivers bisection bandwidth that is 96% of optimal and up to 113% better than static load-balancing methods. <s> BIB007 </s> Software Defined Networking Architecture, Security and Energy Efficiency: A Survey <s> 1) Energy Efficiency Through Optimal Network Resource Utilization: <s> Ideally, enterprise administrators could specify fine-grain policies that drive how the underlying switches forward, drop, and measure traffic. However, existing techniques for flow-based networking rely too heavily on centralized controller software that installs rules reactively, based on the first packet of each flow. In this paper, we propose DIFANE, a scalable and efficient solution that keeps all traffic in the data plane by selectively directing packets through intermediate switches that store the necessary rules. DIFANE relegates the controller to the simpler task of partitioning these rules over the switches. DIFANE can be readily implemented with commodity switch hardware, since all data-plane functions can be expressed in terms of wildcard rules that perform simple actions on matching packets. Experiments with our prototype on Click-based OpenFlow switches show that DIFANE scales to larger networks with richer policies. <s> BIB008 </s> Software Defined Networking Architecture, Security and Energy Efficiency: A Survey <s> 1) Energy Efficiency Through Optimal Network Resource Utilization: <s> OpenFlow assumes a logically centralized controller, which ideally can be physically distributed. However, current deployments rely on a single controller which has major drawbacks including lack of scalability. We present HyperFlow, a distributed event-based control plane for OpenFlow. HyperFlow is logically centralized but physically distributed: it provides scalability while keeping the benefits of network control centralization. By passively synchronizing network-wide views of OpenFlow controllers, HyperFlow localizes decision making to individual controllers, thus minimizing the control plane response time to data plane requests. HyperFlow is resilient to network partitioning and component failures. It also enables interconnecting independently managed OpenFlow networks, an essential feature missing in current OpenFlow deployments. We have implemented HyperFlow as an application for NOX. Our implementation requires minimal changes to NOX, and allows reuse of existing NOX applications with minor modifications. Our preliminary evaluation shows that, assuming sufficient control bandwidth, to bound the window of inconsistency among controllers by a factor of the delay between the farthest controllers, the network changes must occur at a rate lower than 1000 events per second across the network. <s> BIB009 </s> Software Defined Networking Architecture, Security and Energy Efficiency: A Survey <s> 1) Energy Efficiency Through Optimal Network Resource Utilization: <s> Software Defined Networking is a networking paradigm which allows network operators to manage networking elements using software running on an external server. This is accomplished by a split in the architecture between the forwarding element and the control element. Two technologies which allow this split for packet networks are For CES and Openflow. We present energy efficiency and resilience aspects of carrier grade networks which can be met by Openflow. We implement flow restoration and run extensive experiments in an emulated carrier grade network. We show that Openflow can restore traffic quite fast, but its dependency on a centralized controller means that it will be hard to achieve 50 ms restoration in large networks serving many flows. In order to achieve 50 ms recovery, protection will be required in carrier grade networks. <s> BIB010 </s> Software Defined Networking Architecture, Security and Energy Efficiency: A Survey <s> 1) Energy Efficiency Through Optimal Network Resource Utilization: <s> Datacenters need high-bandwidth interconnection fabrics. Several researchers have proposed highly-redundant topologies with multiple paths between pairs of end hosts for datacenter networks. However, traffic management is necessary to effectively utilize the bisection bandwidth provided by these topologies. This requires timely detection of elephant flows—flows that carry large amount of data—and managing those flows. Previously proposed approaches incur high monitoring overheads, consume significant switch resources, and/or have long detection times. We propose, instead, to detect elephant flows at the end hosts. We do this by observing the end hosts's socket buffers, which provide better, more efficient visibility of flow behavior. We present Mahout, a low-overhead yet effective traffic management system that follows OpenFlow-like central controller approach for network management but augments the design with our novel end host mechanism. Once an elephant flow is detected, an end host signals the network controller using in-band signaling with low overheads. Through analytical evaluation and experiments, we demonstrate the benefits of Mahout over previous solutions. <s> BIB011 </s> Software Defined Networking Architecture, Security and Energy Efficiency: A Survey <s> 1) Energy Efficiency Through Optimal Network Resource Utilization: <s> Configuration changes are a common source of instability in networks, leading to broken connectivity, forwarding loops, and access control violations. Even when the initial and final states of the network are correct, the update process often steps through intermediate states with incorrect behaviors. These problems have been recognized in the context of specific protocols, leading to a number of point solutions. However, a piecemeal attack on this fundamental problem, while pragmatic in the short term, is unlikely to lead to significant long-term progress. Software-Defined Networking (SDN) provides an exciting opportunity to do better. Because SDN is a clean-slate platform, we can build general, reusable abstractions for network updates that come with strong semantic guarantees. We believe SDN desperately needs such abstractions to make programs simpler to design, more reliable, and easier to validate using automated tools. Moreover, we believe these abstractions should be provided by a runtime system, shielding the programmer from these concerns. We propose two simple, canonical, and effective update abstractions, and present implementation mechanisms. We also show how to integrate them with a network programming language, and discuss potential applications to program verification. <s> BIB012 </s> Software Defined Networking Architecture, Security and Energy Efficiency: A Survey <s> 1) Energy Efficiency Through Optimal Network Resource Utilization: <s> In the discussion about Future Internet, Software-Defined Networking (SDN), enabled by OpenFlow, is currently seen as one of the most promising paradigm. While the availability and scalability concerns rises as a single controller could be alleviated by using replicate or distributed controllers, there lacks a flexible mechanism to allow controller load balancing. This paper proposes BalanceFlow, a controller load balancing architecture for OpenFlow networks. By utilizing CONTROLLER X action extension for OpenFlow switches and cross-controller communication, one of the controllers, called “super controller”, can flexibly tune the flow-requests handled by each controller, without introducing unacceptable propagation latencies. Experiments based on real topology show that BalanceFlow can adjust the load of each controller dynamically. <s> BIB013 </s> Software Defined Networking Architecture, Security and Energy Efficiency: A Survey <s> 1) Energy Efficiency Through Optimal Network Resource Utilization: <s> We describe a new protocol for update of OpenFlow networks, which has the packet consistency condition of [?] and a weak form of the flow consistency condition of [?]. The protocol conserves switch resources, particularly TCAM space, by ensuring that only a single set of rules is present on a switch at any time. The protocol exploits the identity of switch rules with Boolean functions, and the ability of any switch to send packets to a controller for routing. When a network changes from one ruleset (ruleset 1) to another (ruleset 2), the packets affected by the change are computed, and are sent to the controller. When all switches have been updated to send affected packets to the controller, ruleset 2 is sent to the switches and packets sent to the controller are re-released into the network. <s> BIB014 </s> Software Defined Networking Architecture, Security and Energy Efficiency: A Survey <s> 1) Energy Efficiency Through Optimal Network Resource Utilization: <s> This paper describes a content centric network architecture which uses software defined networking principles to implement efficient metadata driven services by extracting content metadata at the network layer. The ability to access content metadata transparently enables a number of new services in the network. Specific examples discussed here include: a metadata driven traffic engineering scheme which uses prior knowledge of content length to optimize content delivery, a metadata driven content firewall which is more resilient than traditional firewalls and differentiated treatment of content based on the type of content being accessed. A detailed outline of an implementation of the proposed architecture is presented along with some basic evaluation. <s> BIB015 </s> Software Defined Networking Architecture, Security and Energy Efficiency: A Survey <s> 1) Energy Efficiency Through Optimal Network Resource Utilization: <s> In order to efficiently handle the rapid growth of data and reduce the overhead of network transmission, we propose an in-network deduplication for storage-aware Software Defined Network (SDN), called SMIND. Unlike conventional source or destination deduplication schemes, SMIND implements in-network deduplication via SDN. Moreover, to address the performance bottleneck of accessing and indexing SDN controller, we implement an SDN-enabled Flash Translation Layer (FTL) in a real prototype of Solid State Disk (SSD). Experimental results demonstrate the efficiency and efficacy of SMIND. <s> BIB016 </s> Software Defined Networking Architecture, Security and Energy Efficiency: A Survey <s> 1) Energy Efficiency Through Optimal Network Resource Utilization: <s> Network configuration updates are a routine necessity, and must be performed in a way that minimizes transient effects caused by intermediate states of the network. This challenge is especially critical in Software Defined Networks, where the control plane is managed by a logically centralized controller, and configuration updates occur frequently. In this paper we discuss the tradeoff between maintaining consistency during configuration updates and the update performance. We introduce an approach that uses time to coordinate network configuration and reconfiguration. We show a simple time-based configuration approach called TIMECONF and show that this approach offers significant advantages over existing update approaches at the cost of a brief inconsistency. We also show that time can be used as a tool for simplifying existing update approaches without compromising consistency. <s> BIB017 </s> Software Defined Networking Architecture, Security and Energy Efficiency: A Survey <s> 1) Energy Efficiency Through Optimal Network Resource Utilization: <s> Network state may change rapidly in response to customer demands, load conditions or configuration changes. But the network must also ensure correctness conditions such as isolating tenants from each other and from critical services. Existing policy checkers cannot verify compliance in real time because of the need to collect "state" from the entire network and the time it takes to analyze this state. SDNs provide an opportunity in this respect as they provide a logically centralized view from which every proposed change can be checked for compliance with policy. But there remains the need for a fast compliance checker. ::: ::: Our paper introduces a real time policy checking tool called NetPlumber based on Header Space Analysis (HSA) [8]. Unlike HSA, however, NetPlumber incrementally checks for compliance of state changes, using a novel set of conceptual tools that maintain a dependency graph between rules. While NetPlumber is a natural fit for SDNs, its abstract intermediate form is conceptually applicable to conventional networks as well. We have tested NetPlumber on Google's SDN, the Stanford backbone and Internet 2. With NetPlumber, checking the compliance of a typical rule update against a single policy on these networks takes 50-500µs on average. <s> BIB018 </s> Software Defined Networking Architecture, Security and Energy Efficiency: A Survey <s> 1) Energy Efficiency Through Optimal Network Resource Utilization: <s> The explosive expansion of data center sizes ag- gravates the power consumption and carbon footprint, which has restricted the sustainable growth of cloud services and seriously troubled data center operators. In recent years, plenty of advanced data center network architectures have been proposed. They usually employ richly-connected topologies and multi-path routing to provide high network capacity. Unfortunately, they also undergo inefficient network energy usage during the traffic valley time. To address the problem, many energy-aware flow scheduling algorithms are proposed recently, primarily considering how to aggregate traffic by flexibly choosing the routing paths, with flows fairly sharing the link bandwidths. In this paper, we leverage software defined network (SDN) technique and explore a new solution to energy-aware flow scheduling, i.e., scheduling flows in the time dimension and using exclusive routing (EXR) for each flow, i.e., a flow always exclusively utilizes the links of its routing path. The key insight is that exclusive occupation of link resources usually results in higher link utilization in high-radix data center networks, since each flow does not need to compete for the link bandwidths with others. When scheduling the flows, EXR leaves flexibility to operators to define the priorities of flows, e.g., based on flow size, flow deadline, etc. Extensive simulations and testbed experiments both show that EXR can effectively save network energy compared with the regular fair-sharing routing (FSR), and significantly reduce the average flow completion time if assigning higher scheduling priorities to smaller flows. I. INTRODUCTION The explosive expansion of data center sizes aggravates the power consumption and carbon footprint. The statistics show that 1.5% of the global electricity usage came from data centers in 2011 (1), (2). The ever increasing energy consumption of data centers has restricted the sustainable growth of cloud services and raised economic and environmental concerns. Recently people pay attention to the contribution of networking part to the energy consumed by the whole data center. In typical data centers, the network accounts for 10-20% of the overall power consumption (3), while the proportion can be up to 50% if the mature server-side power management techniques are employed (4). <s> BIB019 </s> Software Defined Networking Architecture, Security and Energy Efficiency: A Survey <s> 1) Energy Efficiency Through Optimal Network Resource Utilization: <s> Today's networking hardware (e.g. switches, routers) is typically running 24/7, regardless of the traffic volume. This is because in current networks, the controlling and data forwarding functions are embedded in the same devices, and all L2/L3 network protocols are designed to work in a distributed manner. Therefore, network devices must be switched on all the time to handle the traffic. This consequently results in very high global energy consumption of communication networks. Software Defined Networking was recently introduced as a new networking paradigm, in which the control plane is physically separated from the forwarding plane and moved to a globally-aware software controller. As a consequence, traffic can be monitored in real time and rerouted very fast regarding certain objectives such as load balancing or QoS enhancement. Accordingly, it opens new opportunities to improve the overall network performance in general and the energy efficiency in particular. This paper proposes an approach that reconfigures the network in order to reduce the energy consumption, based on the current traffic load. Our main idea is to switch on a minimum amount of necessary switches/routers and links to carry the traffic. We first formulate the problem as a mixed integer linear programming (MILP) problem and further present a heuristic method, so called Strategic Greedy Heuristic, with four different strategies, to solve the problem for large networks. We have carried out extensive simulations for a typical campus network and arbitrary mesh networks with realistic traffic information and energy consumption, to prove the potential energy saving of the proposed approach. The results showed that we can save up to 45% of the energy consumption at nighttime. <s> BIB020 </s> Software Defined Networking Architecture, Security and Energy Efficiency: A Survey <s> 1) Energy Efficiency Through Optimal Network Resource Utilization: <s> The feature of centralized network control logic in Software-Defined Networks (SDNs) paves a way for green energy saving. Router power consumption attracts a wide spread attention in terms of energy saving. Most research on it is at component level or link level, i.e. each router is independent of energy saving. In this paper, we study global power management at network level by rerouting traffic through different paths to adjust the workload of links when the network is relatively idle. We construct the expand network topology according to routers' connection. A 0-1 integer linear programming model is formulated to minimize the power of integrated chassis and linecards that are used while putting idle ones to sleep under constraints of link utilization and packet delay. We proposed two algorithms to solve this problem: alternative greedy algorithm and global greedy algorithm. For comparison, we also use Cplex method just as GreenTe does since GreenTe is state of the art global traffic engineering mechanism. Simulation results on synthetic topologies and real topology of CERNET show the effectiveness of our algorithms. <s> BIB021 </s> Software Defined Networking Architecture, Security and Energy Efficiency: A Survey <s> 1) Energy Efficiency Through Optimal Network Resource Utilization: <s> Software Defined Networking (SDN) is an emerging networking paradigm that separates the network control plane from the data forwarding plane with the promise to dramatically improve network resource utilization, simplify network management, reduce operating cost, and promote innovation and evolution. Although traffic engineering techniques have been widely exploited in the past and current data networks, such as ATM networks and IP/MPLS networks, to optimize the performance of communication networks by dynamically analyzing, predicting, and regulating the behavior of the transmitted data, the unique features of SDN require new traffic engineering techniques that exploit the global network view, status, and flow patterns/characteristics available for better traffic control and management. This paper surveys the state-of-the-art in traffic engineering for SDNs, and mainly focuses on four thrusts including flow management, fault tolerance, topology update, and traffic analysis/characterization. In addition, some existing and representative traffic engineering tools from both industry and academia are explained. Moreover, open research issues for the realization of SDN traffic engineering solutions are discussed in detail. <s> BIB022 </s> Software Defined Networking Architecture, Security and Energy Efficiency: A Survey <s> 1) Energy Efficiency Through Optimal Network Resource Utilization: <s> Traffic engineering under OSPF routes along the shortest paths, which may cause network congestion. Software Defined Networking (SDN) is an emerging network architecture which exerts a separation between the control plane and the data plane. The SDN controller can centrally control the network state through modifying the flow tables maintained by routers. Network operators can flexibly split arbitrary flows to outgoing links through the deployment of the SDN. However, SDN has its own challenges of full deployment, which makes the full deployment of SDN difficult in the short term. In this paper, we explore the traffic engineering in a SDN/OSPF hybrid network. In our scenario, the OSPF weights and flow splitting ratio of the SDN nodes can both be changed. The controller can arbitrarily split the flows coming into the SDN nodes. The regular nodes still run OSPF. Our contribution is that we propose a novel algorithm called SOTE that can obtain a lower maximum link utilization. We reap a greater benefit compared with the results of the OSPF network and the SDN/OSPF hybrid network with fixed weight setting. We also find that when only 30% of the SDN nodes are deployed, we can obtain a near optimal performance. <s> BIB023 </s> Software Defined Networking Architecture, Security and Energy Efficiency: A Survey <s> 1) Energy Efficiency Through Optimal Network Resource Utilization: <s> Software Defined Networks (SDNs) separate the control and data planes of devices to expedite the deployment, configuration and evolution of networks. In this respect, controllers play a key role. In particular, they control the behavior of switches and must do so quickly. This, however, may be at odds with the goal of reducing the energy consumption of a SDN because powering down links may cause controllers to use paths with larger propagation delays. To this end, we address the problem of assigning switches to controllers with the aim of switching off the maximum number of links subject to the following constraints: delay, link and controller load. Experimental results over four well known topologies show energy savings of up to 55% during off peak times. <s> BIB024 </s> Software Defined Networking Architecture, Security and Energy Efficiency: A Survey <s> 1) Energy Efficiency Through Optimal Network Resource Utilization: <s> Data centers play an important role in our daily activities. The increasing demand on data centers in both scale and size has led to huge energy consumption that rises the cost of data centers. Besides, environmental impacts also increase considerably due to a large amount of carbon emissions. In this paper, we present a design aimed at green networking by reducing the power consumption for routers and switches. Firstly, we design the Balance Switch on the NetFPGA platform to save consumed energy based on Queue Engineering. Secondly, we design the test-bed system to precisely measure the consumed energy of our switches. Experimental results show that energy saving of our switches is about 30% - 35% of power consumption according to variation of input traffic compared with normal Openflow Switch. Finally, we describe performance evaluations. <s> BIB025
The amount of traffic during the different times of day is not similar, especially during night times the traffic load may be reduced to great extent and most of the nodes in network remain unutilized or underutilized (as shown in Fig. 16 ). However, when security defense techniques are implemented, power consumption increase significantly. In SDN, due to the flexibility to control the networking devices using a high level programming language, the rerouting techniques can be implemented with ease BIB010 . The controller in SDN can make decisions according to the traffic load in system promoting green networks and efficient resource utilization. The nodes that have no traffic can be sent in sleep mode and the nodes with low traffic can be rerouted to few active networks to provide the service. This leads to the energy efficient proper utilization of the networks. Content based method BIB015 has been implemented in software defined Information Centric Network (ICN) for proper utilization of resources with reduced power consumption in the network. ICN has prior information about the length of content that needs to be delivered and allocates only required amount of resources. This method also keeps track of these resources to ensure proper utilization. Elastic tree model proposed in BIB005 showed 50% reduction in power usage where optimizer module allocates most suitable link to efficiently handle the traffic load while meeting QoS requirements. The unused links in network are put in sleep mode to save the energy. Multi Layer Traffic Engineering (MLTE) BIB006 and GreCO BIB024 follow the similar approach as elastic tree and these approaches insignificantly save power consumption in SDN BIB010 . The exclusive routing algorithm (EXR) in BIB019 routes the traffic based on the time dimension and this method of routing is more effective and quick compared to other energy saving algorithms. In BIB020 , energy efficient routing protocols are proposed to route the network traffic to the most suitable and shortest path to meet the requirements of the users. The queue engineering process has been adopted for energy saving of OpenFlow switch in NETFPGA platform BIB004 . The clock controller is combined with OpenFlow controller for supporting various modes for power management. This method has a separate module that lowers the frequency to 0 MHz in no traffic conditions for proper usage of power BIB025 . Reducing the replication of unwanted data can reduce the power consumption of network to some extent BIB021 . To avoid redundancy in storage of data SMart In-Network Duplication (SMIND) method has been implemented in BIB016 . This method identifies the redundant data using fingerprinting technique. 2) Energy Efficient Traffic Engineering/Management: Traffic engineering/management for energy optimization is not a new concept. This approach is popular in traditional networks and is used in SDNs for energy efficiency. The Asynchronous Transfer Mode (ATM) network BIB001 has strict and limited policies for protecting the entire network without degrading Quality of Service (QoS) of the users. These features are beneficial to SDN. Flow management and load balancing techniques can be implemented in both switches and controller for energy efficiency in SDN BIB022 , BIB002 . Energy usage is minimized in Internet Protocol (IP) based traditional networks using load balancing and efficient routing paths such as shortest path routing protocols BIB003 . These features are also regarded as energy saving schemes in SDN. Similarly, MultiProtocol Label Switching protocol (MPLS) is mostly focused on implementation of traffic engineering (TE) schemes in the Internet infrastructure  for efficient delivery of packets with optimal energy. This method is suitable for traffic engineering in SDN where drawbacks of MPLS can be addressed by the OpenFlow networks. Hash based ECMP has been proposed in  as an Equal Cost Multi Path switch based load balancing scheme that directs the flow to multiple paths in the network to enhance energy efficiency. The major drawbacks of this load balancing technique are computational complexity and low performance. Hedera has been regarded as an intelligent load balancing scheme capable of handling the large flows BIB007 . In Hedera, controller manages the traffic based on the information obtained from switches and consumes minimum energy. This helps to avoid collisions. Mahout BIB011 , a load balancing scheme, has been implemented in data centers to enhance network performance and reduce energy consumption. DevoFlow load balancing has been implemented in  in enterprise networks and data center environments to reduce the burden on controller by providing the switches with a set of additional wild card rules and minimize the overall energy consumption. Other advantages of this method includes performance and scalability. An approach called DIFANE has been capable of achieving controller load balancing by implementing detailed and strict policies in enterprise networks BIB008 . The goal of the DIFANE is similar to DevoFlow, however this scheme adds additional switches in the network called authority switches which store all the important flow entries. When the packet does not match with the flow table rules in the regular switches they are immediately forwarded to authority switches for making the decision. Hyperflow has been proposed in BIB009 as an event based distributed control plane platform, which can provide the benefits offered by the OpenFlow and also overcome its limitation of scalability. Balance Flow has been proposed in BIB013 as a controller load balancing scheme in OpenFlow networks. It has been proposed as an extension in OpenFlow switches called Controller X action. This classifies the flows into various categories based on the switches from which they originated and directs them to different controller. SDN/OSPF Traffic Engineering (SOTE) has been proposed in BIB023 as a hybrid traffic engineering method with the combination open shortest path first and SDN to lower the link utilization in the network. The main goal of this method is load balancing by directing them evenly through all the SDN nodes and minimize the overall energy consumption. 3) Energy Efficient SDN Policy Updating Including Security Policies: Conventional networks update the network policies once in a while, whereas SDN being an adaptive architecture needs to be updated frequently to adapt itself to updated environment. The constant updates in the system can hinder the performance of network and also increase power consumption. In SDN, the controller is responsible for updating and enforcing the new policies in the network. Whenever a new policy is updated in a network, all switches present in the network receive and store it along with the version number. When multiple policies exist in the switches then the packet is differentiated based on the version number and processed by using new policy or old policy. A method with per packet consistency and all packet consistency update in SDN has been presented in BIB012 . The SDN controller updates the system in a timely manner and eliminates the old policies when it stops receiving the packets using the old versions. Some other controllers set expiration date for the older versions and do not support them after this fixed date. The major limitation of this method is it should store both versions in the flow table for certain time. This may overwhelm the flow table entries and consume more space in memory and increase the energy consumption. A new method that deals with single set of rules has been proposed in BIB014 to address the issues of memory consumption and energy consumption. In TIMECONF method proposed in BIB017 , new policies are updated sequentially in a scheduled time. However this method is associated with some delay as controller updates the next switch only after it receives an acknowledgment from the updated switch. Incremental update method called Net-Plumber BIB018 has been proposed to enable quick policy updates in network by configuring only the portion of switches that needs an update resulting in lower energy consumption. It is located between data plane and control plane, and enforces policies into switches at the rate of 50 − 500μs BIB018 . Note that the energy can be saved in SDN by lower the speed of the link while updating the SDN policies. Note that the SDN policies can be easily updated with 10 Mbps links in real-time and consume 4 watts lower than that of 1Gbps link.