Software-Defined Networking (SDN) Modified from: William Stallings Quality of Service (QoS) • The measurable end-to-end performance properties of a network service, which can be guaranteed in advance by a service level agreement (SLA) between a user and a service provider, so as to satisfy specific customer application requirements Commonly specified properties include: Throughput Delay Packet jitter Error rate Packet loss Priority Availability Security Quality of Experience (QoE) • A subjective measure of performance as reported by the user; relies on human opinion • Is important particularly when dealing with multimedia applications and multimedia content delivery • QoS processes by themselves are not sufficient in that they do not take into account the user’s perception of network performance and service quality • Categories of factors and features that can be included in QoE are: – Perceptual – Psychological – Interactive Routing Characteristics • The primary function of an internet is to accept packets from a source station and deliver them to a destination station – To accomplish this, a path or route through the network must be determined – Generally, more than one route is possible; therefore, a routing function must be performed • Selection of a route is generally based on some performance criterion – Simplest criterion is to choose the minimum-hop route (one that passes through the least number of nodes) through the network – A generalization of the minimum-hop criterion is least-cost routing; in this case, a cost is associated with each link, and, for any pair of attached stations, the route through the network that accumulates the least cost is sought Routing Protocols • Routers are responsible for receiving and forwarding packets through the interconnected set of networks • Each router makes routing decisions based on knowledge of the topology and traffic/delay conditions of the internet • A degree of dynamic cooperation is needed among the routers • The router must avoid portions of the network that have failed and should avoid portions of the network that are congested Routing Protocols • There are essentially two categories of routing protocols which are based on the concept of an autonomous system (AS) • An AS exhibits the following characteristics: – An AS is a set of routers and networks managed by a single organization – An AS consists of a group of routers exchanging information via a common routing protocol – Except in times of failure, an AS is connected (in a graph-theoretic sense) • An interior router protocol (IRP) is a shared routing protocol that passes routing information between routers within an AS Software-Defined Networking (SDN) • A driving factor for SDN is the increasingly widespread use of server virtualization • In essence, server virtualization masks server resources from server users – making it possible to partition a single machine into multiple, independent servers – conserving hardware resources • It also makes it possible to quickly migrate a server from one machine to another for – load balancing or dynamic switchover in the case of machine failure • Server virtualization has become a central element in – dealing with big data applications and – implementing cloud computing infrastructures Evolving Network Requirements • A number of trends are driving network providers and users to reevaluate traditional approaches to network architecture – Demand is increasing • • • • Cloud computing Big data Mobile traffic The Internet of Things (IoT) – Supply is increasing – Traffic Traditional Network Architectures are Inadequate • As QoS and QoE requirements imposed on the network are expanded, – the traffic load must be handled in an increasingly sophisticated and agile fashion • The traditional internetworking approach is based on the TCP/IP protocol architecture; characteristics of this approach are: – Two-level end system addressing – Routing based on destination – Distributed, autonomous control Limitations • The Open Networking Foundation (ONF) cites four general limitations of traditional network architectures: – Static, complex architecture – Inconsistent policies – Inability to scale – Vendor dependence The SDN Approach Adaptability •Networks must adjust and respond dynamically, based on application needs, business policy, and network conditions Automation •Policy changes must be automatically propagated so that manual work and errors can be reduced Maintainability •Introduction of new features and capabilities must be seamless with minimal disruption of operations Model management •Network management software must allow management of the network at a model level, rather than implementing conceptual changes by reconfiguring individual network elements Mobility •Control functionality must accommodate mobility, including mobile user devices and virtual servers Integrated security On-demand scaling •Network applications must integrate seamless security as a core service instead of as an add-on solution •Implementations must have the ability to scale up or scale down the network and its services to support on-demand requests Characteristics of SDN • The control plane is separated from the data plane; – data plane devices become simple packet-forwarding devices • The control plane is implemented in a centralized controller or set of coordinated centralized controllers – The SDN controller has a centralized view of the network or networks under its control – The controller is portable software that can run on commodity servers and is capable of programming the forwarding devices based on a centralized view of the network • Open interfaces are defined between the devices in the control plane (controllers) and those in the data plane • The network is programmable by applications running on top of the SDN controllers; – the SDN controllers present an abstract view of network resources to the applications OpenStack • Is an open source software project that aims to produce an open source cloud operating system • Provides multitenant Infrastructure as a Service (IaaS) and aims to meet the needs of public and private clouds regardless of size – by being simple to implement and massively scalable • SDN technology is expected to – contribute to its networking part – make the cloud operating system more efficient, flexible, and reliable Flow Table Pipeline • A switch includes one or more flow tables • If there is more than one flow table, they are organized as a pipeline, – with the tables labeled with increasing numbers • The use of multiple tables in a pipeline provides the SDN controller with considerable flexibility • The OpenFlow specification defines two stages of processing: – Ingress processing – Egress processing OpenFlow Protocol • The OpenFlow protocol describes message exchanges that take place between an OpenFlow controller and a switch • Typically, the protocol is implemented on top of TLS, – providing a secure OpenFlow channel • The OpenFlow protocol enables the controller to perform add, update, and delete actions to the flow entries in the flow tables • It supports three types of messages: Controller to switch Asynchronous Symmetric Network Operating System • The functionality provided by the SDN controller can be viewed as a network operating system • A NOS provides – essential services, – common application programming interfaces (APIs), and – an abstraction of lower-layer elements to developers • The functions of an SDN NOS enable developers to – define network policies and – manage networks without concern for the details of the network device characteristics Routing • The routing function comprises – a protocol for collecting information about the topology and traffic conditions of the network, and – an algorithm for designing routes through the network • There are two categories of routing protocols: • Concerned with discovering the topology of routers within an AS and then determining the best route to each destination based on different metrics Interior router protocols (IRPs) that operate within an autonomous system (AS) Exterior router protocols (ERPs) that operate between autonomous systems • Need not collect as much detailed traffic information • Primary concern is to determine reachability of networks and end systems outside of the AS Routing • Traditionally the routing function is distributed among the routers in a network • In an SDN controlled network, – centralize the routing function within the SDN controller • The controller can – develop a consistent view of the network state for calculating shortest paths and – implement application aware routing policies • The data plane switches are relieved of the processing and storage burden associated with routing – leading to improved performance Routing • Centralized routing application performs two distinct functions – Link discovery • The routing function needs to be aware of links between data plane switches • Must be performed between a router and a host system and between a router in the domain of this controller and a router in a neighboring domain • Discovery is triggered by unknown traffic entering the controller’s network domain either from an attached host or from a neighboring router – Topology manager • Maintains the topology information for the network and calculates routes in the network • Route calculation involves determining the shortest path between two data plane nodes or between a data plane node and a host OpenDaylight • An open source software activity under the auspices of the Linux foundation • Its member companies provide resources to develop an SDN controller for a wide range of applications • Is more in the nature of an open development initiative than a consortium • Supports – – – – network programmability via southbound protocols, a bunch of programmable network services, a collection of northbound APIs, and a set of applications Border Gateway Protocol • Was developed for use in conjunction with internets that use the TCP/IP suite – Has become the preferred exterior router protocol (ERP) for the Internet • Enables routers in different autonomous systems to cooperate in the exchange or routing information – The protocol operates in terms of messages • which are sent over TCP connections • The current version of BGP is BGP-4 BGP Three functional procedures are involved in BGP: Neighbor acquisition Neighbor reachability Network reachability The term neighbor refers to two routers that share the same network Once a neighbor relationship is established this procedure is used to maintain the relationship Each router maintains a database of the networks that it can reach and the preferred route for reaching each network Occurs when two neighboring routers in different autonomous systems agree to exchange routing information regularly Each partner needs to be assured that the other partner still exists and is still engaged in the neighbor relationship Whenever a change is made to this database, the router issues an Update message that is broadcast to all other routers for which it has a neighbor relationship
© Copyright 2026 Paperzz