1. Software-Defined Networks (SDN) is a new paradigm in network management that adds another layer (i.e., Network Operating System) to the architecture. Answer the following questions in the context of SDN with your reasoning.
(a) Is it scalable? Why?
(b) Is it less responsive? Why?
(c) Does it create a single point of failure? Why?
(d) Is it inherently less secure? Why?
(e) Is it incrementally deployable? Why?
2.RED randomly drops packets when it experience congestion. The probability of drop increases as the average queue size increases.
(a) Does it do a better job for uniform or bursty traffic? and why?
(b) Does it drop packets from the head of the queue or from the tail of the queue? and why?
(c) Does it make any difference; head/tail drop? and why?
3. Carefully read the short article OpenFlow: A Radical New Idea in Networking (http://queue.acm.org/detail.cfm?id=2305856), and answer the following questions.
The author argues that the deployment of SDN in general and OpenFlow in specific towards network democratization is a crazy idea. Do you agree? If yes, how come SDN has been supported and being deployed by many networking vendors. If not, give one scenario that SDN could cause disruptions.
NET WORKS
1
OpenFlow:
A Radical New Idea in Networking
An open standard that enables software-defined networking
Thomas A. Limoncelli
Computer networks have historically evolved box by box, with individual network elements
occupying specific ecological niches as routers, switches, load balancers, NATs (network address
translations), or firewalls. Software-defined networking proposes to overturn that ecology, turning
the network as a whole into a platform and the individual network elements into programmable
entities. The apps running on the network platform can optimize traffic flows to take the shortest
path, just as the current distributed protocols do, but they can also optimize the network to
maximize link utilization, create different reachability domains for different users, or make device
mobility seamless.
OpenFlow, an open standard that enables software-defined networking in IP networks, is a new
network technology that will enable many new applications and new ways of managing networks.
Here are three real, though somewhat fictionalized, applications:
EXAMPLE 1: BANDWIDTH MANAGEMENT. A typical wide area network has 30 percent utilization;
it must “reserve” bandwidth for “burst” times. Using OpenFlow, however, a system was developed
in which internal application systems (consumers) that need bulk data transfer could use the
spare bandwidth. Typical uses include daily replication of datasets, database backups, and the
bulk transmission of logs. Consumers register the source, destination, and quantity of data to
be transferred with a central service. The service does various calculations and sends the results
to the routers so they know how to forward this bulk data when links are otherwise unused.
Communication ...
The document discusses networking standards and the OSI model. It begins by defining what a network is as a group of connected computers that share information. It then provides an overview of the seven layers of the OSI model from physical to application layer, describing some of the key responsibilities and protocols associated with each layer. These include addressing, routing, encryption, compression, and making data visible and usable to end users. The OSI model helps explain how data is transferred through a network and the roles of different protocols at each layer of the model.
this is a power point presentation on chat applicationmdprince1262
this is a power point presentation on chat application it was a minor academic project in my college in order to exchange sessional or mid exams by making some small/ minor project and present through the presentation and on the basis of performance of presentation students are getting marks, its a great approach to motivate students to do projects
Edge device multi-unicasting for video streamingTal Lavian Ph.D.
After a decade of research and development, IP multicast has still not been deployed widely in the global Internet due to many open technical issues: lack of admission control, poorly scaled with large number of groups, and requiring substantial infrastructure modifications. To provide the benefits of IP multicast without requiring direct router support or the presence of a physical broadcast medium, various Application Level Multicast (ALM) models have been attempted. However, there are still several problems with ALM: unnecessary coupling between an application and its multicasting supports, bottleneck problem at network access links and considerable processing power required at the end nodes to support ALM mechanisms. This paper proposes an architecture to address these problems by delegating application-multicasting support mechanisms to smart edge devices associated with the application end nodes. The architecture gives rise to an interesting Edge Device Any-casting technology that lies between the IP-multicasting and the Application Layer Multicasting and enjoys the benefits of both. Furthermore, the architecture may provide sufficient cost-benefit for adoption by service providers. The paper presents initial results obtained from the implementation of a video streaming application over the testbed that implements the proposed architecture.
The transport layer in computer networking provides host-to-host communication services for applications. It provides functions like connection-oriented data streams, reliability, flow control, and multiplexing. Common transport layer protocols include TCP, UDP, SCTP, and SPX. The OSI transport layer defines five classes of connection-mode protocols: class 0 (unacknowledged mode), class 1 (acknowledged mode), class 2 (numbered mode), class 3 (alternate mode), and class 4 (unconfirmed mode).
The document discusses the development of a pure peer-to-peer computing system using socket programming. It aims to facilitate parallel computation of complex tasks by distributing work across available peers in a network. This allows heavier calculations to be performed faster by utilizing otherwise idle processing resources. The system is designed to remove scalability and security issues while managing tasks through administrator, query manager, task dispatcher, and processor groups. A literature review found that decentralized peer-to-peer systems like Freenet and GNUtella provide benefits like failure tolerance, efficiency and cost effectiveness.
Cloud Camp Milan 2K9 Telecom Italia: Where P2P?Gabriele Bozzi
1. The document discusses the potential for peer-to-peer (P2P) computing as an alternative or complement to the traditional client-server model, especially in the context of cloud computing.
2. It notes challenges with P2P such as lack of centralized control and potential for freeloading, but also advantages like harnessing unused resources.
3. Emerging technologies like autonomic and cognitive networking aim to address P2P challenges by enabling self-configuration and optimization of distributed resources.
1. The document discusses the potential for peer-to-peer (P2P) computing as an alternative or complement to the traditional client-server model, especially in the context of cloud computing.
2. P2P systems offer access to distributed resources but lack centralized control, which makes it difficult to ensure reliability, performance, and security.
3. Autonomic and cognitive approaches may help address issues with P2P by enabling self-configuration, healing, optimization and protection of distributed resources.
4. Future networking approaches like DirecNet envision high-speed mobile mesh networks that could further enable wide-scale distributed computing architectures.
The difference between a hub, switch and router webopediaHarikiran Raju
A hub replicates all data received on one port to all other ports, potentially slowing the network. A switch only sends data to the destination port to improve efficiency. A router connects multiple networks and determines the best path to send data between them using protocols like ICMP. Modern routers integrate switching, routing, security and other functions into one device.
The document discusses networking standards and the OSI model. It begins by defining what a network is as a group of connected computers that share information. It then provides an overview of the seven layers of the OSI model from physical to application layer, describing some of the key responsibilities and protocols associated with each layer. These include addressing, routing, encryption, compression, and making data visible and usable to end users. The OSI model helps explain how data is transferred through a network and the roles of different protocols at each layer of the model.
this is a power point presentation on chat applicationmdprince1262
this is a power point presentation on chat application it was a minor academic project in my college in order to exchange sessional or mid exams by making some small/ minor project and present through the presentation and on the basis of performance of presentation students are getting marks, its a great approach to motivate students to do projects
Edge device multi-unicasting for video streamingTal Lavian Ph.D.
After a decade of research and development, IP multicast has still not been deployed widely in the global Internet due to many open technical issues: lack of admission control, poorly scaled with large number of groups, and requiring substantial infrastructure modifications. To provide the benefits of IP multicast without requiring direct router support or the presence of a physical broadcast medium, various Application Level Multicast (ALM) models have been attempted. However, there are still several problems with ALM: unnecessary coupling between an application and its multicasting supports, bottleneck problem at network access links and considerable processing power required at the end nodes to support ALM mechanisms. This paper proposes an architecture to address these problems by delegating application-multicasting support mechanisms to smart edge devices associated with the application end nodes. The architecture gives rise to an interesting Edge Device Any-casting technology that lies between the IP-multicasting and the Application Layer Multicasting and enjoys the benefits of both. Furthermore, the architecture may provide sufficient cost-benefit for adoption by service providers. The paper presents initial results obtained from the implementation of a video streaming application over the testbed that implements the proposed architecture.
The transport layer in computer networking provides host-to-host communication services for applications. It provides functions like connection-oriented data streams, reliability, flow control, and multiplexing. Common transport layer protocols include TCP, UDP, SCTP, and SPX. The OSI transport layer defines five classes of connection-mode protocols: class 0 (unacknowledged mode), class 1 (acknowledged mode), class 2 (numbered mode), class 3 (alternate mode), and class 4 (unconfirmed mode).
The document discusses the development of a pure peer-to-peer computing system using socket programming. It aims to facilitate parallel computation of complex tasks by distributing work across available peers in a network. This allows heavier calculations to be performed faster by utilizing otherwise idle processing resources. The system is designed to remove scalability and security issues while managing tasks through administrator, query manager, task dispatcher, and processor groups. A literature review found that decentralized peer-to-peer systems like Freenet and GNUtella provide benefits like failure tolerance, efficiency and cost effectiveness.
Cloud Camp Milan 2K9 Telecom Italia: Where P2P?Gabriele Bozzi
1. The document discusses the potential for peer-to-peer (P2P) computing as an alternative or complement to the traditional client-server model, especially in the context of cloud computing.
2. It notes challenges with P2P such as lack of centralized control and potential for freeloading, but also advantages like harnessing unused resources.
3. Emerging technologies like autonomic and cognitive networking aim to address P2P challenges by enabling self-configuration and optimization of distributed resources.
1. The document discusses the potential for peer-to-peer (P2P) computing as an alternative or complement to the traditional client-server model, especially in the context of cloud computing.
2. P2P systems offer access to distributed resources but lack centralized control, which makes it difficult to ensure reliability, performance, and security.
3. Autonomic and cognitive approaches may help address issues with P2P by enabling self-configuration, healing, optimization and protection of distributed resources.
4. Future networking approaches like DirecNet envision high-speed mobile mesh networks that could further enable wide-scale distributed computing architectures.
The difference between a hub, switch and router webopediaHarikiran Raju
A hub replicates all data received on one port to all other ports, potentially slowing the network. A switch only sends data to the destination port to improve efficiency. A router connects multiple networks and determines the best path to send data between them using protocols like ICMP. Modern routers integrate switching, routing, security and other functions into one device.
Embedded Server Based Remote Industrial Automation Control
This document describes an embedded server project for remote industrial automation and control using a dsPIC33FJ64GP802 microcontroller. Key aspects include:
- The microcontroller runs a web server from an SD card to allow remote monitoring and control of up to 4 digital outputs via a web browser.
- An Ethernet interface connects the system to the internet to enable remote access and file transfer capabilities.
- Relays are controlled through a ULN2803 driver circuit connected to digital ports on the microcontroller.
- The system provides capabilities for remote monitoring, control, data logging and updating via a built-in web server without requiring a separate computer.
The Abstracted Network for Industrial InternetMeshDynamics
Widespread adoption of TCI/IP protocols over the last two decades appears on the surface to have created a lingua franca for computer networking. And with the emergence of IPv6 removing the addressing restrictions of earlier versions, it would appear that now every device in the world may easily be connected with a common protocol.
But three emerging factors are requiring a fresh look at this worldview. The first is the coming wave of sensors, actuators, and devices making up the Internet of Things (IOT). Although not yet widely recognized, it is beginning to be understood that a majority of these devices will be too small, too cheap, too dumb, and too copious to run the hegemonic IPv6 protocol. Instead, much simpler protocols will predominate (see below), which must somehow be incorporated into the IP networks of Enterprises and the Internet.
At the other end of the scale from these tiny devices are huge Enterprise networks, increasing movingly to the cloud for computing and communication resources. An important requirement of these Enterprises is the capacity to manage, control, and tune their networks using a variety of Software Defined Networking (SDN) technologies and protocols. These depend on computing resource at the edges of the network to manage the interactions.
The third element is a conundrum presented by the first two: Enterprises will be struggling with the need to bring vast numbers of simple IOT devices into their networks. Though many of these devices will lack computing and protocol smarts, the requirement will still remain to manage everything via SDN. Along with this, many legacy Machine-to-Machine (M2M) networks (such as those on the factory floor) present the same challenges as the IOT: simple and/or proprietary protocols operating in operational silos today that Enterprises desire to manage and tune with SDN techniques.
There is a so much happening to improve the quality of automation in data center networking that it's best not to get hung up on whether it falls into the "hot topics." Modelling, automated verification, the use of programming and EDA methodologies applied to computer networking, particularly in the data center, are all going to be very valuable, and very quickly.
What is the computer network?
Bunch of computers connected to each other
Now computers do not mean just pc’s.
Now a bunch of computers include printers, cell phones, laptops, etc
Now next question is what do you mean by share data or share information?TYPES OF NETWORKS.Parts of Networks.
Presentation of the status of my PhD in 2012 done to ABLE group at Carnegie Mellon.
Years later from that appeared
https://github.com/iTransformers/netTransformer
Software defined networking (SDN) uses OpenFlow to separate the control plane of network switches from the data plane. This allows for network programmability and innovation through open protocols and APIs. SDN has the potential to reduce network costs, increase flexibility, and lead to new use cases. However, challenges remain around OpenFlow limitations, scalability, and vendor dependence.
The document discusses software defined networking (SDN) and OpenFlow, including their history, key concepts, potential uses and challenges. SDN aims to separate the network control and forwarding functions through open standards like OpenFlow. This could make networks more programmable and innovative while reducing costs. However, challenges include limitations of the current standards and ensuring scalability and interoperability across vendors.
DDoS (distributed denial of service) attacks aim to make online services unavailable by flooding them with malicious traffic from many compromised systems, but detection and prevention tools like firewalls, ACLs, and traffic scrubbing centers can help mitigate attacks by filtering unauthorized traffic and inspecting packets for signs of anomalies. Network administrators must carefully monitor traffic patterns, update access control lists, and work with internet service providers who can implement traffic redirection during attacks to successfully defend against DDoS threats.
This document presents a LAN design project report for an organization with 70 users. It proposes a network with wired and wireless connectivity using Ethernet cables, switches, a router and access points. A central data server would be installed with antivirus software and connected to the network along with a DHCP server for dynamic IP address allocation. The network diagram and configurations are presented, along with the hardware, software and design guidelines required to implement the LAN.
The document discusses several key patterns seen in the movie "Network" that parallel trends in modern media and the 2016 US presidential election. Specifically, it notes similarities around audacious public behavior and the decline of traditional news sources, showing the movie anticipated today's media landscape.
The document discusses the transition from the old IP to the New IP, which is designed for cloud, mobile, social and big data needs. It provides an overview of key technologies for building a New IP network, including network functions virtualization (NFV), software-defined networking (SDN), orchestration using OpenStack, and network fabrics. Brocade is positioned as supporting this transition with virtual routing, an open-source SDN controller, and fabric switching products that align with the New IP approach.
Disadvantages And Disadvantages Of Wireless Networked And...Kimberly Jones
The document describes an implementation of the Bellman-Ford algorithm to find the shortest path routing from node U in a provided network diagram. The program outputs the routing table for node U after each iteration, showing the destination and number of hops. It runs for V-1 iterations, where V is the total number of vertices. The algorithm uses a relaxation formula to calculate the shortest path between each edge iteratively. By the final iteration, the optimal shortest paths from the source node U to all other nodes are determined. A Word document with screenshots explains how the program incorporates the Bellman-Ford algorithm and determines when the routing table is optimal.
briefly summarize how the Electoral College works. Explain some of t.docxjackiewalcutt
briefly summarize how the Electoral College works. Explain some of the main pros and cons in the debate about whether to keep or abolish the current Electoral College process. Also explain one proposal to change how the system works without formally abolishing it. Evaluate the various arguments and the proposal. Include at least two perspectives in your assessment:
Your judgment about the relevance of the Electoral College's underlying rationale to contemporary America.
Your judgment about its impact on presidential leadership capacity.
.
Briefly summarize and analyze two primary sources, identifying their.docxjackiewalcutt
Briefly summarize and analyze two primary sources, identifying their intended audience, purpose, context in which they were produced (what was happening at the time), and their overall historical significance (why it is important). Once you have analyzed the documents, discuss how they relate to each other. For example, do they reveal different perspectives or change over time?
The purpose of this is to go deep into a piece of material and engage with the historians’ craft of how to interpret pieces of the past. This is not a right/wrong type of paper. This is your interpretation based on what you know. The paper needs to have a strong thesis statement supported by quotes from the primary source with a conclusion that sums it up.
The paper should be 2 – 3 pages
PRIMARY SOURCES:
Hunter-Gatherer and Agricultural Societies
Hunting and Warfare - Cave Paintings
Çatal Hüyük City Plan
Code of Hammurabi
Greece
Herodotus: On the Kings of Sparta
Accounts of the Hellenic Games
Plato: The Republic
Rome
The Roman Way of Declaring War
The 12 Tables
Strabo: The Grandeur of Rome
Late Antiquity and the Emergence of Islam
Sidonius Apollinaris: A Civilized Barbarian and Barbarian Roman
The Prophet Muhammad's Last Sermon
The Qu'ran 1, 47
Feudalism
Pope Gregory the Great: Succession to Tenant Holdings on Church Land
Æthelwulf, King of Wessex: Grant of a Tenth of Public Land
Canute the Great: The Granting of Fiefs
The Crusades
Gregory VII: Call for a Crusade [First Crusade]
Eugene III: Summons for a Crusade [Second Crusade]
The Decline of Christian Power in the Holy Land
Richard the Lion-Hearted Conquers Cypress
The Middle Ages
Gregory of Tours: The Harsh Treatment of Serfs and Slaves
Geoffrey Chaucer, The Canterbury Tales: The Prologue to the Wife of Bath's Tale
The Renaissance and Discovery
Niccolo Machiavelli: The Prince [excerpts]
The Book of the Courtier [Excerpt]
The Life of Leonardo da Vinci
Christopher Columbus: Extracts from Journal
Sir Francis Drake's Famous Voyage Around the World
.
Briefly respond to the following questions. Use facts and examples t.docxjackiewalcutt
Briefly respond to the following questions. Use facts and examples to support your answers. Use APA style for any references.
1. When should the architect begin the analysis?
2. What are the activities the architect must execute?
3. What is the set of knowledge domains applied to the analysis?
4. What are the tips and tricks that make security architecture risk assessment easier?
.
Briefly in your own words describe the distinction between explicit .docxjackiewalcutt
Briefly in your own words describe the distinction between explicit knowledge and implicit (tacit) knowledge. Next describe the knowledge network cycle that transforms individual knowledge into organizational knowledge. Be sure to identify any key transformations within your response.
Discuss two (2) fundamental challenges of data storage and information sharing associated with a company’s knowledge management system. Next hypothesize how one would overcome the problem of “not knowing what you know.” Provide support for your response.
.
Briefly explain Victoria Australia Covid19 update and impact.docxjackiewalcutt
Briefly explain
Victoria Australia Covid19 update and impact on business in general and the impact on Real Estate
in an email and also rephrase and make the below content which i have written to sound more negative. It is a letter to owner.
.
Briefly introduce the détente policies of the early 1970s, and des.docxjackiewalcutt
Briefly introduce the détente policies of the early 1970s, and describe how they positively or negatively impacted Western politics and society.
Your response should be at least 200 words in length. You are required to use at least your textbook as source material for your response. All sources used, including the textbook, must be referenced; paraphrased and quoted material must have accompanying citations.
Levack, B., Muir, E., & Veldman, M., (2011).
The West: Vol. 2. Encounters & transformations: Since 1550
(3
rd
ed., pp. 928-934). Upper Saddle River, NJ: Pearson Education, Inc.
No Wiki, Dictionary.com or Plagiarism
.
Briefly explain the role of information systems in an organization.docxjackiewalcutt
Briefly explain the role of information systems in an organization.
Your response should be at least 200 words in length. You are required to use at least your textbook as source material for your response. All sources used, including the textbook, must be referenced; paraphrased and quoted material must have accompanying citations.
Kroenke, D. (2013). The Importance of MIS.
Using MIS
(pp. 8-10, 11-13). Upper Saddle River: Pearson Learning
Solution
s. (Original work published 2007)
.
briefly describe, in 2-3 pages, the problemissue and the proble.docxjackiewalcutt
briefly describe, in 2-3 pages, the problem/issue and the problem statement you developed.
Identify the major contributors to the problem (who, what) and briefly explain how they contribute to/cause the problem.
Explain at least two causes of the problem.
Explain at least two effects of the problem.
.
Briefly explain the mission of the OSH Act. What is the rationale be.docxjackiewalcutt
Briefly explain the mission of the OSH Act. What is the rationale behind the Act?
Your response should be at least 200 words in length. You are required to use at least your textbook as source material for your response. All sources used, including the textbook, must be referenced; paraphrased and quoted material must have accompanying citations.
.
More Related Content
Similar to 1. Software-Defined Networks (SDN) is a new paradigm in network ma.docx
Embedded Server Based Remote Industrial Automation Control
This document describes an embedded server project for remote industrial automation and control using a dsPIC33FJ64GP802 microcontroller. Key aspects include:
- The microcontroller runs a web server from an SD card to allow remote monitoring and control of up to 4 digital outputs via a web browser.
- An Ethernet interface connects the system to the internet to enable remote access and file transfer capabilities.
- Relays are controlled through a ULN2803 driver circuit connected to digital ports on the microcontroller.
- The system provides capabilities for remote monitoring, control, data logging and updating via a built-in web server without requiring a separate computer.
The Abstracted Network for Industrial InternetMeshDynamics
Widespread adoption of TCI/IP protocols over the last two decades appears on the surface to have created a lingua franca for computer networking. And with the emergence of IPv6 removing the addressing restrictions of earlier versions, it would appear that now every device in the world may easily be connected with a common protocol.
But three emerging factors are requiring a fresh look at this worldview. The first is the coming wave of sensors, actuators, and devices making up the Internet of Things (IOT). Although not yet widely recognized, it is beginning to be understood that a majority of these devices will be too small, too cheap, too dumb, and too copious to run the hegemonic IPv6 protocol. Instead, much simpler protocols will predominate (see below), which must somehow be incorporated into the IP networks of Enterprises and the Internet.
At the other end of the scale from these tiny devices are huge Enterprise networks, increasing movingly to the cloud for computing and communication resources. An important requirement of these Enterprises is the capacity to manage, control, and tune their networks using a variety of Software Defined Networking (SDN) technologies and protocols. These depend on computing resource at the edges of the network to manage the interactions.
The third element is a conundrum presented by the first two: Enterprises will be struggling with the need to bring vast numbers of simple IOT devices into their networks. Though many of these devices will lack computing and protocol smarts, the requirement will still remain to manage everything via SDN. Along with this, many legacy Machine-to-Machine (M2M) networks (such as those on the factory floor) present the same challenges as the IOT: simple and/or proprietary protocols operating in operational silos today that Enterprises desire to manage and tune with SDN techniques.
There is a so much happening to improve the quality of automation in data center networking that it's best not to get hung up on whether it falls into the "hot topics." Modelling, automated verification, the use of programming and EDA methodologies applied to computer networking, particularly in the data center, are all going to be very valuable, and very quickly.
What is the computer network?
Bunch of computers connected to each other
Now computers do not mean just pc’s.
Now a bunch of computers include printers, cell phones, laptops, etc
Now next question is what do you mean by share data or share information?TYPES OF NETWORKS.Parts of Networks.
Presentation of the status of my PhD in 2012 done to ABLE group at Carnegie Mellon.
Years later from that appeared
https://github.com/iTransformers/netTransformer
Software defined networking (SDN) uses OpenFlow to separate the control plane of network switches from the data plane. This allows for network programmability and innovation through open protocols and APIs. SDN has the potential to reduce network costs, increase flexibility, and lead to new use cases. However, challenges remain around OpenFlow limitations, scalability, and vendor dependence.
The document discusses software defined networking (SDN) and OpenFlow, including their history, key concepts, potential uses and challenges. SDN aims to separate the network control and forwarding functions through open standards like OpenFlow. This could make networks more programmable and innovative while reducing costs. However, challenges include limitations of the current standards and ensuring scalability and interoperability across vendors.
DDoS (distributed denial of service) attacks aim to make online services unavailable by flooding them with malicious traffic from many compromised systems, but detection and prevention tools like firewalls, ACLs, and traffic scrubbing centers can help mitigate attacks by filtering unauthorized traffic and inspecting packets for signs of anomalies. Network administrators must carefully monitor traffic patterns, update access control lists, and work with internet service providers who can implement traffic redirection during attacks to successfully defend against DDoS threats.
This document presents a LAN design project report for an organization with 70 users. It proposes a network with wired and wireless connectivity using Ethernet cables, switches, a router and access points. A central data server would be installed with antivirus software and connected to the network along with a DHCP server for dynamic IP address allocation. The network diagram and configurations are presented, along with the hardware, software and design guidelines required to implement the LAN.
The document discusses several key patterns seen in the movie "Network" that parallel trends in modern media and the 2016 US presidential election. Specifically, it notes similarities around audacious public behavior and the decline of traditional news sources, showing the movie anticipated today's media landscape.
The document discusses the transition from the old IP to the New IP, which is designed for cloud, mobile, social and big data needs. It provides an overview of key technologies for building a New IP network, including network functions virtualization (NFV), software-defined networking (SDN), orchestration using OpenStack, and network fabrics. Brocade is positioned as supporting this transition with virtual routing, an open-source SDN controller, and fabric switching products that align with the New IP approach.
Disadvantages And Disadvantages Of Wireless Networked And...Kimberly Jones
The document describes an implementation of the Bellman-Ford algorithm to find the shortest path routing from node U in a provided network diagram. The program outputs the routing table for node U after each iteration, showing the destination and number of hops. It runs for V-1 iterations, where V is the total number of vertices. The algorithm uses a relaxation formula to calculate the shortest path between each edge iteratively. By the final iteration, the optimal shortest paths from the source node U to all other nodes are determined. A Word document with screenshots explains how the program incorporates the Bellman-Ford algorithm and determines when the routing table is optimal.
Similar to 1. Software-Defined Networks (SDN) is a new paradigm in network ma.docx (13)
briefly summarize how the Electoral College works. Explain some of t.docxjackiewalcutt
briefly summarize how the Electoral College works. Explain some of the main pros and cons in the debate about whether to keep or abolish the current Electoral College process. Also explain one proposal to change how the system works without formally abolishing it. Evaluate the various arguments and the proposal. Include at least two perspectives in your assessment:
Your judgment about the relevance of the Electoral College's underlying rationale to contemporary America.
Your judgment about its impact on presidential leadership capacity.
.
Briefly summarize and analyze two primary sources, identifying their.docxjackiewalcutt
Briefly summarize and analyze two primary sources, identifying their intended audience, purpose, context in which they were produced (what was happening at the time), and their overall historical significance (why it is important). Once you have analyzed the documents, discuss how they relate to each other. For example, do they reveal different perspectives or change over time?
The purpose of this is to go deep into a piece of material and engage with the historians’ craft of how to interpret pieces of the past. This is not a right/wrong type of paper. This is your interpretation based on what you know. The paper needs to have a strong thesis statement supported by quotes from the primary source with a conclusion that sums it up.
The paper should be 2 – 3 pages
PRIMARY SOURCES:
Hunter-Gatherer and Agricultural Societies
Hunting and Warfare - Cave Paintings
Çatal Hüyük City Plan
Code of Hammurabi
Greece
Herodotus: On the Kings of Sparta
Accounts of the Hellenic Games
Plato: The Republic
Rome
The Roman Way of Declaring War
The 12 Tables
Strabo: The Grandeur of Rome
Late Antiquity and the Emergence of Islam
Sidonius Apollinaris: A Civilized Barbarian and Barbarian Roman
The Prophet Muhammad's Last Sermon
The Qu'ran 1, 47
Feudalism
Pope Gregory the Great: Succession to Tenant Holdings on Church Land
Æthelwulf, King of Wessex: Grant of a Tenth of Public Land
Canute the Great: The Granting of Fiefs
The Crusades
Gregory VII: Call for a Crusade [First Crusade]
Eugene III: Summons for a Crusade [Second Crusade]
The Decline of Christian Power in the Holy Land
Richard the Lion-Hearted Conquers Cypress
The Middle Ages
Gregory of Tours: The Harsh Treatment of Serfs and Slaves
Geoffrey Chaucer, The Canterbury Tales: The Prologue to the Wife of Bath's Tale
The Renaissance and Discovery
Niccolo Machiavelli: The Prince [excerpts]
The Book of the Courtier [Excerpt]
The Life of Leonardo da Vinci
Christopher Columbus: Extracts from Journal
Sir Francis Drake's Famous Voyage Around the World
.
Briefly respond to the following questions. Use facts and examples t.docxjackiewalcutt
Briefly respond to the following questions. Use facts and examples to support your answers. Use APA style for any references.
1. When should the architect begin the analysis?
2. What are the activities the architect must execute?
3. What is the set of knowledge domains applied to the analysis?
4. What are the tips and tricks that make security architecture risk assessment easier?
.
Briefly in your own words describe the distinction between explicit .docxjackiewalcutt
Briefly in your own words describe the distinction between explicit knowledge and implicit (tacit) knowledge. Next describe the knowledge network cycle that transforms individual knowledge into organizational knowledge. Be sure to identify any key transformations within your response.
Discuss two (2) fundamental challenges of data storage and information sharing associated with a company’s knowledge management system. Next hypothesize how one would overcome the problem of “not knowing what you know.” Provide support for your response.
.
Briefly explain Victoria Australia Covid19 update and impact.docxjackiewalcutt
Briefly explain
Victoria Australia Covid19 update and impact on business in general and the impact on Real Estate
in an email and also rephrase and make the below content which i have written to sound more negative. It is a letter to owner.
.
Briefly introduce the détente policies of the early 1970s, and des.docxjackiewalcutt
Briefly introduce the détente policies of the early 1970s, and describe how they positively or negatively impacted Western politics and society.
Your response should be at least 200 words in length. You are required to use at least your textbook as source material for your response. All sources used, including the textbook, must be referenced; paraphrased and quoted material must have accompanying citations.
Levack, B., Muir, E., & Veldman, M., (2011).
The West: Vol. 2. Encounters & transformations: Since 1550
(3
rd
ed., pp. 928-934). Upper Saddle River, NJ: Pearson Education, Inc.
No Wiki, Dictionary.com or Plagiarism
.
Briefly explain the role of information systems in an organization.docxjackiewalcutt
Briefly explain the role of information systems in an organization.
Your response should be at least 200 words in length. You are required to use at least your textbook as source material for your response. All sources used, including the textbook, must be referenced; paraphrased and quoted material must have accompanying citations.
Kroenke, D. (2013). The Importance of MIS.
Using MIS
(pp. 8-10, 11-13). Upper Saddle River: Pearson Learning
Solution
s. (Original work published 2007)
.
briefly describe, in 2-3 pages, the problemissue and the proble.docxjackiewalcutt
briefly describe, in 2-3 pages, the problem/issue and the problem statement you developed.
Identify the major contributors to the problem (who, what) and briefly explain how they contribute to/cause the problem.
Explain at least two causes of the problem.
Explain at least two effects of the problem.
.
Briefly explain the mission of the OSH Act. What is the rationale be.docxjackiewalcutt
Briefly explain the mission of the OSH Act. What is the rationale behind the Act?
Your response should be at least 200 words in length. You are required to use at least your textbook as source material for your response. All sources used, including the textbook, must be referenced; paraphrased and quoted material must have accompanying citations.
.
Briefly discuss the various organizational approaches to managing .docxjackiewalcutt
Briefly discuss the various organizational approaches to managing ethics within an IS?
Your response should be at least 200 words in length. You are required to use at least your textbook as source material for your response. All sources used, including the textbook, must be referenced; paraphrased and quoted material must have accompanying citations.
Kroenke, D. (2013
). The Importance of MIS. Using MIS
(pp. 394-395, 426-427). Upper Saddle River: Pearson Learning
Solution
s.
No Wiki, Dictionary.com or Plagiarism
.
Briefly explain the identified security issues during Risk Assessmen.docxjackiewalcutt
Briefly explain the identified security issues during Risk Assessment.
Executive summary on Risk treatment and Risk control.
Provide a mitigation policy and plans with the intent of successfully treating the risks that were discovered during risk assessment.
Provide a risk monitoring and risk reviewing plan under risk control
.
Briefly discuss some KSAs for Fighting Cybercrime and submit in a wo.docxjackiewalcutt
Briefly discuss some KSAs for Fighting Cybercrime and submit in a word document.
· Be careful. Make sure to avoid plagiarism and to use quotation marks and proper citation as required.
· Use APA format for citations and the required References page. Remember that the significant portion of your analysis should be in your own words (avoid using blogs or Wikipedia).
.
Briefly describe what a monopoly is and give an example using the ch.docxjackiewalcutt
Briefly describe what a monopoly is and give an example using the characteristics of monopoly. State what are the barriers for entry that market. How does the monopoly maximises profit and what is the role of the government? Analyse and evaluate an example of natural monopoly in Oman.
.
Briefly describe the spread of industry throughout Europe and into.docxjackiewalcutt
Briefly describe the spread of industry throughout Europe and into America.
Your response should be at least 200 words in length. You are required to use at least your textbook as source material for your response. All sources used, including the textbook, must be referenced; paraphrased and quoted material must have accompanying citations.
Levack, B. P., Muir, E., & Veldman, M. (2011). 18.
The West: encounters & transformations
(3rd ed., pp.). Boston: Longman.
No Wiki, Dictionary.com or Plagiarism
.
Briefly describe the path of food through the digestive system and e.docxjackiewalcutt
Briefly describe the path of food through the digestive system and explain each organ’s role in the digestive process. Research two digestive dysfunctions that can occur and discuss how each of them could impact a person’s health.
*This question is a minimum of 200 words and at least one cited source. It is due by Midnight December the 28th.*
.
Briefly describe the different parenting styles discussed in this we.docxjackiewalcutt
Briefly describe the different parenting styles discussed in this week’s readings. How could they impact a child’s cognitive and social development? Select two parental characters in TV or movie media (e.g., movies, situation comedies, TV dramas) and identify the styles that the characters who are acting in the roles of the parents are applying to the characters who are acting in the roles of children. Each of your characters should demonstrate a different parenting style—do not discuss two characters demonstrating the same style. What do the readings say about the effects of these parenting styles on cognitive and social development? In what ways are the behaviors of the children consistent with the information in the readings and in what ways are the children’s behaviors different?
.
Briefly describe how the BIOS boots or starts the computer and.docxjackiewalcutt
Briefly describe how the BIOS boots or starts the computer and the operating system.
Describe utilities that are on your Windows OS under System Information, Task Manager, and Resource Monitor.
Provide a screenshot of the Performance and Overview tabs of your computer.
(If you feel that a screenshot shows too much personal information, you can choose another tab or decline this part of the assignment.)
.
Briefly describe how to deploy a Continuous Improvement effort.W.docxjackiewalcutt
Briefly describe how to deploy a Continuous Improvement effort.
What Continuous Improvement Is (and How to Use It)
Ben Mulholland
April 6, 2018
Business Processes, Processes, Productivity
No process is perfect; there’s always room to improve. Unfortunately, many teams have no way to identify, test, and deploy the changes they make, meaning each tweak is a roll of the dice.
The savings can be massive, but you need a continuous improvement program to make sure that the changes you make won’t make your operations a whole lot harder.
“1 in 10 improvements save money… [each saving, on average,] $31,043 in its first year of implementation.
1 in 4 improvements save time… [each saving, on average,] 270 hours in its first year of implementation.” – KaiNexus, The ROI of Continuous Improvement
Most successful changes will also make your employee’s jobs easier (or more pleasant) to perform. You’ll be saving time and money, but you’ll also be getting far better value out of your current efforts and operations.
However, I’m getting ahead of myself. Let’s start from the top.What is continuous improvement?
Ever corrected a spelling mistake in your processes or manuals? How about adding a new step to qualify a task that wasn’t recorded before? What about updating your method to take advantage of better tools or software?
All of these and more are examples of continuous improvement.
Continuous improvement is a method to make sure that your processes, methods, and practices are as efficient, accurate, and effective as possible. This is done (surprise, surprise) by periodically examining and improving your processes to smash bottlenecks, use the best software, and take advantage of the most efficient methods.
If you’ve ever heard of lean, kaizen, Six Sigma, or DMAIC then this will sound familiar, as continuous improvement is based on similar principles and forms a key part of both of those practices. This is because the primary objective of any changes is to reduce waste and streamline your work.
While there are many different methods for achieving continuous improvement (such as process innovation and the Deming cycle), all can be classified into one of two groups; incremental or breakthrough improvements.
Incremental vs breakthrough improvements
Continuous improvement is largely practiced using two disciplines; incremental and breakthrough improvements. These can be used interchangeably, but the best way to deploy a thorough continuous improvement program is to combine the two. By doing this you can quickly deal with smaller issues while giving larger items the care and attention they deserve.Incremental continuous improvement
Incremental continuous improvement is all about making small tweaks to a process, method, or practice to improve it as problems are found. This usually costs less and can be done much faster than using the breakthrough method, but there are a few risks and downsides to doing so.
Imagine that you’re working through a regular document.
briefly define democracy and evaluate in detail THREE of.docxjackiewalcutt
briefly define
democracy
and evaluate in detail
THREE
of the items from the list below that you feel has the greatest impact on advancing democracy in the United States. (Provide examples to support your answer)
¨ Bill of Rights
¨ 1st Amendment rights
¨ Civil War Amendments
¨ Gender Equality
¨ Right of Privacy
¨ Three branches of government
¨ Civil rights cases
¨ Civil liberties cases
¨ Political parties
¨ 14th Amendment due process protections
¨ Interest groups
From the list above, select
ONE
item that you feel has hindered the advancement of democracy? Provide examples to support your response. In your conclusion, considering your answer to the first question, explain your role in ensuring an effective democracy? Elaborate your response by describing three things you plan to do to ensure democracy.
.
Briefly define, listcontrast, identify the significance of, or .docxjackiewalcutt
Briefly define, list/contrast, identify the significance of, or describe the following items.
Use two (2) different sources to answer the following business terms.
Use your
BUSN 11
textbook
and one other
Internet source
as needed.
Form Attached
.
A review of the growth of the Israel Genealogy Research Association Database Collection for the last 12 months. Our collection is now passed the 3 million mark and still growing. See which archives have contributed the most. See the different types of records we have, and which years have had records added. You can also see what we have for the future.
How to Build a Module in Odoo 17 Using the Scaffold MethodCeline George
Odoo provides an option for creating a module by using a single line command. By using this command the user can make a whole structure of a module. It is very easy for a beginner to make a module. There is no need to make each file manually. This slide will show how to create a module using the scaffold method.
How to Setup Warehouse & Location in Odoo 17 InventoryCeline George
In this slide, we'll explore how to set up warehouses and locations in Odoo 17 Inventory. This will help us manage our stock effectively, track inventory levels, and streamline warehouse operations.
ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...PECB
Denis is a dynamic and results-driven Chief Information Officer (CIO) with a distinguished career spanning information systems analysis and technical project management. With a proven track record of spearheading the design and delivery of cutting-edge Information Management solutions, he has consistently elevated business operations, streamlined reporting functions, and maximized process efficiency.
Certified as an ISO/IEC 27001: Information Security Management Systems (ISMS) Lead Implementer, Data Protection Officer, and Cyber Risks Analyst, Denis brings a heightened focus on data security, privacy, and cyber resilience to every endeavor.
His expertise extends across a diverse spectrum of reporting, database, and web development applications, underpinned by an exceptional grasp of data storage and virtualization technologies. His proficiency in application testing, database administration, and data cleansing ensures seamless execution of complex projects.
What sets Denis apart is his comprehensive understanding of Business and Systems Analysis technologies, honed through involvement in all phases of the Software Development Lifecycle (SDLC). From meticulous requirements gathering to precise analysis, innovative design, rigorous development, thorough testing, and successful implementation, he has consistently delivered exceptional results.
Throughout his career, he has taken on multifaceted roles, from leading technical project management teams to owning solutions that drive operational excellence. His conscientious and proactive approach is unwavering, whether he is working independently or collaboratively within a team. His ability to connect with colleagues on a personal level underscores his commitment to fostering a harmonious and productive workplace environment.
Date: May 29, 2024
Tags: Information Security, ISO/IEC 27001, ISO/IEC 42001, Artificial Intelligence, GDPR
-------------------------------------------------------------------------------
Find out more about ISO training and certification services
Training: ISO/IEC 27001 Information Security Management System - EN | PECB
ISO/IEC 42001 Artificial Intelligence Management System - EN | PECB
General Data Protection Regulation (GDPR) - Training Courses - EN | PECB
Webinars: https://pecb.com/webinars
Article: https://pecb.com/article
-------------------------------------------------------------------------------
For more information about PECB:
Website: https://pecb.com/
LinkedIn: https://www.linkedin.com/company/pecb/
Facebook: https://www.facebook.com/PECBInternational/
Slideshare: http://www.slideshare.net/PECBCERTIFICATION
LAND USE LAND COVER AND NDVI OF MIRZAPUR DISTRICT, UPRAHUL
This Dissertation explores the particular circumstances of Mirzapur, a region located in the
core of India. Mirzapur, with its varied terrains and abundant biodiversity, offers an optimal
environment for investigating the changes in vegetation cover dynamics. Our study utilizes
advanced technologies such as GIS (Geographic Information Systems) and Remote sensing to
analyze the transformations that have taken place over the course of a decade.
The complex relationship between human activities and the environment has been the focus
of extensive research and worry. As the global community grapples with swift urbanization,
population expansion, and economic progress, the effects on natural ecosystems are becoming
more evident. A crucial element of this impact is the alteration of vegetation cover, which plays a
significant role in maintaining the ecological equilibrium of our planet.Land serves as the foundation for all human activities and provides the necessary materials for
these activities. As the most crucial natural resource, its utilization by humans results in different
'Land uses,' which are determined by both human activities and the physical characteristics of the
land.
The utilization of land is impacted by human needs and environmental factors. In countries
like India, rapid population growth and the emphasis on extensive resource exploitation can lead
to significant land degradation, adversely affecting the region's land cover.
Therefore, human intervention has significantly influenced land use patterns over many
centuries, evolving its structure over time and space. In the present era, these changes have
accelerated due to factors such as agriculture and urbanization. Information regarding land use and
cover is essential for various planning and management tasks related to the Earth's surface,
providing crucial environmental data for scientific, resource management, policy purposes, and
diverse human activities.
Accurate understanding of land use and cover is imperative for the development planning
of any area. Consequently, a wide range of professionals, including earth system scientists, land
and water managers, and urban planners, are interested in obtaining data on land use and cover
changes, conversion trends, and other related patterns. The spatial dimensions of land use and
cover support policymakers and scientists in making well-informed decisions, as alterations in
these patterns indicate shifts in economic and social conditions. Monitoring such changes with the
help of Advanced technologies like Remote Sensing and Geographic Information Systems is
crucial for coordinated efforts across different administrative levels. Advanced technologies like
Remote Sensing and Geographic Information Systems
9
Changes in vegetation cover refer to variations in the distribution, composition, and overall
structure of plant communities across different temporal and spatial scales. These changes can
occur natural.
This slide is special for master students (MIBS & MIFB) in UUM. Also useful for readers who are interested in the topic of contemporary Islamic banking.
Executive Directors Chat Leveraging AI for Diversity, Equity, and InclusionTechSoup
Let’s explore the intersection of technology and equity in the final session of our DEI series. Discover how AI tools, like ChatGPT, can be used to support and enhance your nonprofit's DEI initiatives. Participants will gain insights into practical AI applications and get tips for leveraging technology to advance their DEI goals.
The simplified electron and muon model, Oscillating Spacetime: The Foundation...RitikBhardwaj56
Discover the Simplified Electron and Muon Model: A New Wave-Based Approach to Understanding Particles delves into a groundbreaking theory that presents electrons and muons as rotating soliton waves within oscillating spacetime. Geared towards students, researchers, and science buffs, this book breaks down complex ideas into simple explanations. It covers topics such as electron waves, temporal dynamics, and the implications of this model on particle physics. With clear illustrations and easy-to-follow explanations, readers will gain a new outlook on the universe's fundamental nature.
1. Software-Defined Networks (SDN) is a new paradigm in network ma.docx
1. 1. Software-Defined Networks (SDN) is a new paradigm in
network management that adds another layer (i.e., Network
Operating System) to the architecture. Answer the following
questions in the context of SDN with your reasoning.
(a) Is it scalable? Why?
(b) Is it less responsive? Why?
(c) Does it create a single point of failure? Why?
(d) Is it inherently less secure? Why?
(e) Is it incrementally deployable? Why?
2.RED randomly drops packets when it experience congestion.
The probability of drop increases as the average queue size
increases.
(a) Does it do a better job for uniform or bursty traffic? and
why?
(b) Does it drop packets from the head of the queue or from the
tail of the queue? and why?
(c) Does it make any difference; head/tail drop? and why?
3. Carefully read the short article OpenFlow: A Radical New
Idea in Networking
(http://queue.acm.org/detail.cfm?id=2305856), and answer the
following questions.
The author argues that the deployment of SDN in general and
OpenFlow in specific towards network democratization is a
crazy idea. Do you agree? If yes, how come SDN has been
supported and being deployed by many networking vendors. If
not, give one scenario that SDN could cause disruptions.
NET WORKS
1
2. OpenFlow:
A Radical New Idea in Networking
An open standard that enables software-defined networking
Thomas A. Limoncelli
Computer networks have historically evolved box by box, with
individual network elements
occupying specific ecological niches as routers, switches, load
balancers, NATs (network address
translations), or firewalls. Software-defined networking
proposes to overturn that ecology, turning
the network as a whole into a platform and the individual
network elements into programmable
entities. The apps running on the network platform can optimize
traffic flows to take the shortest
path, just as the current distributed protocols do, but they can
also optimize the network to
maximize link utilization, create different reachability domains
for different users, or make device
mobility seamless.
OpenFlow, an open standard that enables software-defined
networking in IP networks, is a new
network technology that will enable many new applications and
new ways of managing networks.
Here are three real, though somewhat fictionalized,
applications:
EXAMPLE 1: BANDWIDTH MANAGEMENT. A typical wide
area network has 30 percent utilization;
it must “reserve” bandwidth for “burst” times. Using OpenFlow,
however, a system was developed
in which internal application systems (consumers) that need
3. bulk data transfer could use the
spare bandwidth. Typical uses include daily replication of
datasets, database backups, and the
bulk transmission of logs. Consumers register the source,
destination, and quantity of data to
be transferred with a central service. The service does various
calculations and sends the results
to the routers so they know how to forward this bulk data when
links are otherwise unused.
Communication between the applications and the central service
is bidirectional: applications
inform the service of their needs, the service replies when the
bandwidth is available, and the
application informs the service when it is done. Meanwhile, the
routers feed realtime usage
information to the central service.
As a result, the network has 90-95 percent utilization. This is
unheard of in the industry. The CIO
is excited, but the CFO is the one who is really impressed. The
competition is paying three times
as much CAPEX (capital expenditure) and OPEX (operational
expenditure) for the same network
capacity.
This example is based on what Google is doing today, as
described by Urs Hoelzle, a Google
Fellow and senior vice president of technical infrastructure, in
his keynote address at the 2012 Open
Networking Summit.1
EXAMPLE 2: TENANTIZED NETWORKING. A large virtual-
machine hosting company has a
network management problem. Its service is “tenantized,”
meaning that each customer is isolated
from the others like tenants in a building. As a virtual machine
4. migrates from one physical host to
another, the VLAN (virtual LAN) segments must be
reconfigured. Inside the physical machine is a
software-emulated network that connects the virtual machines.
There must be careful coordination
between the physical VLANs and the software-emulated world.
The problem is that connections can
NET WORKS
2
be misconfigured by human error, and the boundaries between
tenants are... tenuous.
OpenFlow allows new features to be added to the VM
management system so that it
communicates with the network infrastructure as virtual and
physical machines are added and
changed. This application ensures that each tenant is isolated
from the others no matter how the
VMs migrate or where the physical machines are located. This
separation is programmed end-to-end
and verifiable.
This example is based on presentations such as the one
delivered at the 2012 Open Networking
Summit by Geng Lin, CTO, Networking Business, Dell Inc.3
EXAMPLE 3: GAME SERVER. Some graduate students set up a
Quake server running on a spare
laptop as part of a closed competition. Latency to this server is
important not only to gameplay,
but also to fairness. Because these are poor students, the server
5. runs on a spare laptop. During the
competition someone picks up the laptop and unplugs it from
the wired Ethernet. It joins the Wi-Fi
as expected. The person then walks with the laptop all the way
to the cafeteria and returns an hour
later. During this path the laptop changes IP address four times,
and bandwidth varies from 100
Mbps on wired Ethernet, to 11 Mbps on an 802.11b connection
in the computer science building, to
54 Mbps on the 802.11g connection in the cafeteria.
Nevertheless, the game competition continues
without interruption.
Using OpenFlow, the graduate students wrote an application so
that no matter what subnetwork
the laptop is moved to, its IP address will not change. Also, in
the event of network congestion,
traffic to and from the game server will receive higher priority:
the routers will try to drop other
traffic before the game-related traffic, thus ensuring smooth
gameplay for everyone. The software on
the laptop is unmodified; all the “smarts” are in the network.
The competition is a big success.
This example is loosely based on the recipients of the Best
Demo award at SIGCOMM (Special
Interest Group on Data Communications) 2008.4 More-serious
examples of wireless uses of
OpenFlow were detailed by Sachin Katti, assistant professor of
electrical engineering and computer
science at Stanford University, in a presentation at the 2012
Open Networking Summit.2
A NET WORK ROUTING SYSTEM THAT LETS YOU WRITE
APPS
OpenFlow is either the most innovative new idea in networking,
6. or it is a radical step backward—a
devolution. It is a new idea because it changes the fundamental
way we think about network-routing
architecture and paves the way for new opportunities and
applications. It is a devolution because it is
a radical simplification—the kind that results in previously
unheard of new possibilities.
To understand this paradox, some history is needed. Before the
iPhone, there was no app store
where nearly anyone could publish an app. If you had a phone
that could run applications at all,
each app was individually negotiated with each carrier. Vetting
was intense. What if an app were
to send the wrong bit out the antenna and take down the entire
phone system? (Why do we have
a phone system that one wrong bit could take down?) The
process was expensive, slow, and highly
political.
Some fictional (but not that fictional) examples:
• “We’re sorry but your tic-tac-toe game doesn’t fit the ‘c’est
la mode’ that we feel our company
represents.”
• “Yes, we would love to have your calorie tracker on our
phone, but we require a few critical
changes. Most importantly the colors must match our corporate
logo.”
NET WORKS
3
7. • “We regret to inform you that we are not interested in having
your game run on our smartphone.
First, we can’t imagine why people would want to play a game
on their phones. Our phones are
for serious people. Second, it would drain the battery if people
used their phones for anything
other than phone calls. Third, we find the idea of tossing birds
at pigs to be rather distasteful. Our
customers would never be interested.”
No apps exist for networks today. A niche idea is a distraction
from the vendor’s roadmap. It could
ruin the product’s ‘c’est la mode’. Routers are too critical.
Router protocols are difficult to design,
implementing them requires highly specialized programming
skills, and verification is expensive.
BUT WHAT IF IT BECAME EASY?
To understand why writing routing protocols is so difficult
requires knowledge of how routing works
in today’s networks. Networks are made of endpoints (your PC
and the server it is talking to) and the
intermediate devices that connect them. Between your PC and
www.google.com there may be 20 to
100 routers (technically, routers and switches, but for the sake
of simplicity all packet-passing devices
are called routers in this article). Each router has many
network-interface jacks, or ports. A packet
arrives at one port, the router examines it to determine where it
is trying to go, and sends it out the
port that will bring it one hop closer to its destination.
When your PC sends a packet, it does not know how to get to
the destination. It simply marks
the packet with the desired destination, gives it to the next hop,
8. and trusts that this router, and all
the following routers, will eventually get the packet to the
destination. The fact that this happens
trillions of times a second around the world and nearly every
packet reaches its destination is awe-
inspiring.
No “Internet map” exists for planning the route a packet must
take to reach its destination. Your
PC does not know ahead of time the entire path to the
destination. Neither does the first router, nor
the next. Every hop trusts that the next hop will be one step
closer and eventually the packet will
reach the destination.
How does each router know what the next hop should be? Every
router works independently
to figure it out for itself. The routers cooperate in an algorithm
that works like this: each one
periodically tells its neighbors which networks it connects to,
and each neighbor accumulates this
information and uses it to deduce the design of the entire
network. If a router could think out loud,
this is what you might hear: “My neighbor on port 37 told me
she is 10 hops away from network
172.11.11.0, but the neighbor on port 20 told me he is four hops
away. Aha! I’ll make a note that if I
receive a packet for network 172.11.11.0, I should send it out
port 20. Four hops is better than 10!”
Although they share topological information, routers do the
route calculations independently.
Even if the network topology means two nearby routers will
calculate similar results, they do not
share the results of the overlapping calculations. Since every
CPU cycle uses a certain amount of
9. power, this duplication of effort is not energy efficient.
Fortunately, routers need to be concerned with only their
particular organization’s network,
not the entire Internet. Generally, a router stores the complete
route table only for its part of the
Internet—the company, university, or ISP it is part of (its
autonomous domain). Packets destined
for outside that domain are sent to gateway routers, which
interconnect with other organizations.
Another algorithm determines how the first set of routers knows
where the gateway routers are. The
combination of these two algorithms requires less RAM and
CPU horsepower than if every router
NET WORKS
4
had to know the entire Internet. If not for this optimization,
every router would need enough RAM
and CPU horsepower to store an inventory of the entire Internet.
The cost would be staggering.
The routing algorithms are complicated by the fact that routers
are given clues and must infer
what they need to know. For example, the conclusion that “port
20 is the best place to send packets
destined for 172.11.11.0” is inferred from clues given by other
routers. A router has no way of sending
a question to another router. Imagine if automobiles had no
windows but you could talk to any
driver within 25 feet. Rather than knowing what is ahead, you
would have to infer a worldview
10. based on what everyone else was saying. If everyone were using
the same vocabulary and the same
system of cooperative logical reasoning, then every car could
get to where it was going without a
collision. That’s the Internet: no maps; close your eyes and
drive.
Every router is trying to infer an entire worldview based on
what it hears. Driving these
complicated algorithms requires a lot of CPU horsepower. Each
router is an expensive device doing
the same calculation as everyone else just to get the slightly
different result it needs. Larger networks
require more computation. As an enterprise’s network grows,
every router needs to be upgraded to
handle the additional computation. The number and types of
ports on the router haven’t changed,
but the engine no longer has enough capacity to run its
algorithms. Sometimes this means adding
RAM, but often it means swapping in a new and more expensive
CPU. It’s a good business model for
network vendors: as you buy more routers, you need to buy
upgrades for the routers you’ve already
purchased. These aren’t standard PCs that benefit from the
constant Dell-vs.-HP-vs.-everyone-else
price war; these are specialized, expensive CPUs that customers
can’t get anywhere else.
THE RADICAL SIMPLIFICATION OF OPENFLOW
The basic idea of OpenFlow is that things would be better if
routers were dumb and downloaded
their routing information from a big “route compiler in the sky,”
or RCITS. The CPU horsepower
needed by a router would be a function of the speed and
quantity of its ports. As the network grew,
the RCITS would need more horsepower, but the routers would
11. not. The RCITS would not have to
be vendor specific, and vendors would compete to make the best
RCITS software. You could change
software vendors if a better one came along. The computer
running the RCITS software could be
off-the-shelf commodity hardware that takes advantage of
Moore’s law, price wars, and all that good
stuff.
Obviously, it isn’t that simple. You have to consider other
issues such as redundancy, which
requires multiple RCITS and a failover mechanism. An
individual router needs to be smart enough
to know how to route data between it and the RCITS, which
may be several hops away. Also, the
communications channel between entities needs to be secure.
Lastly, we need a much better name
than RCITS.
The OpenFlow standard addresses these issues. It uses the term
controller or controller platform
(yawn) rather than RCITS. The controller takes in
configuration, network, and other information and
outputs a different blob of data for each router, which interprets
the blob as a decision table: packets
are selected by port, MAC address, IP address, and other means.
Once the packets are selected,
the table indicates what to do with them: drop, forward, or
mutate then forward. (This is a gross
oversimplification; the full details are in the specification,
technical white papers, and presentations
at http://www.OpenFlow.org/wp/learnmore.)
Traditional networks can choose a route based on something
other than the shortest path—
12. http://www.OpenFlow.org/wp/learnmore
NET WORKS
5
perhaps because it’s cheaper, has better latency, or has spare
capacity. Even with systems designed
for such traffic engineering, such as MPLS TE (Multiprotocol
Label Switching Traffic Engineering),
it’s difficult to manage effectively with any real granularity.
OpenFlow, in contrast, enables you to
program the network for fundamentally different optimizations
on a per-flow basis. That means
latency-sensitive traffic can take the fastest path, while bulk
flows can take the cheapest. Rather than
being based on particular endpoints, OpenFlow is granular down
to the type of traffic coming from
each endpoint.
OpenFlow doesn’t stop at traffic engineering, however, because
it is capable of doing more than
populating a forwarding table. Because an OpenFlow-capable
device can also rewrite the packets,
it can act as a NAT or AFTR (address family transition router);
and because it can drop packets, it
can act as a firewall. It can also implement ECMP (equal-cost
multi-path) or other load-balancing
algorithms. Routers don’t have to have the same role for every
flow going through them; they
can load-balance some, firewall others, and rewrite a few.
Individual network elements are thus
significantly more flexible in an OpenFlow environment, even
as they shed some responsibilities to
the centralized controller.
13. OpenFlow is designed to be used entirely within a single
organization. All the routers in an
OpenFlow domain act as one entity. The controller has godlike
power over all the routers it controls.
You wouldn’t let someone outside your sphere of trust have
such access. An ISP may use OpenFlow
to control its routers, but it would not extend that control to the
networks of customers. An
enterprise might use OpenFlow to manage the network inside a
large data center and have a different
OpenFlow domain to manage its WAN. ISPs may use OpenFlow
to run their patch of the Internet,
but it is not intended to take over the Internet. It is not a
replacement for inter-ISP systems such as
BGP (Border Gateway Protocol).
The switch to OpenFlow is not expected to happen suddenly
and, as with all new technologies,
may not happen at all.
Centralizing route planning has many benefits:
• TAKES ADVANTAGE OF MOORE’S LAW. Not only are
general-purpose computers cheaper and faster,
but there is more variety. In the Google presentation at the 2012
Open Networking Summit, Urs
Höelzle said that Google does its route computations using the
Google compute infrastructure.
• OFFERS DEEPER INTEGRATION. End-to-end
communication can occur directly from the
applications all the way to the router. Imagine if every Web-
based service in your enterprise could
forward bandwidth requirements to the controller, which could
then respond with whether
14. or not the request could be satisfied. This would be a radical
change over the “send and pray”
architectures in use today.
• TURNS NETWORK HARDWARE INTO A COMMODITY.
The CPU and RAM horsepower required
by the device is a function of the speeds and number of ports on
the device as shipped. Therefore,
it can be calculated during design, eliminating the need to factor
in slack. Also, designing and
manufacturing a device with a fixed configuration (not
upgradable) is less expensive.
• MAKES ALGORITHMS SIMPLER. Rather than making
decisions based on inference and relying on
cooperating algorithms, more-direct algorithms can be used. A
dictatorship is the most efficient
form of government. Suppose the VoIP phones of the campus
EMS team should always get the
bandwidth they need. It is easier to direct each router on
campus to give EMS phones priority than
it is to develop an algorithm whereby each router infers which
devices are EMS, verifies a trust
NET WORKS
6
model, confirms that trust, and allocates the bandwidth—and
hopes that the other routers are
doing the same thing.
• ENABLES APPS. The controller can have APIs that can be
used by applications. This democratizes
15. router features. Anyone (with proper authorization and access)
can create network features. No
open source ecosystem exists for applications that run within
the Cisco IOS operating system.
Creating one will be much easier in the OpenFlow world. Apps
will not control individual routers
(this is already possible) but the entire network as a single
entity.
• ALLOWS GLOBAL OPTIMIZATION AND PLANNING.
Current routing protocols require each router
to optimize independently, often resulting in a routing plan that
is optimal locally but not globally.
The OpenFlow controller can plan based on a global, mostly
omniscient, understanding of the
network.
• PROVIDES CENTRALIZED CONTROL. Not that today’s
routers don’t have any APIs, but the
applications would need to communicate with the API of every
router to get anything done, and
I don’t know any network engineer who is open to that. With
OpenFlow, apps can talk to the
controller where authentication, authorization, and vetting can
happen in one place rather than
on every router.
CONCLUSION
In the past, smartphone vendors carefully controlled which
applications ran on their phones and
had perfectly valid reasons for doing so: quality of apps,
preventing instability in the phone network,
and protection of their revenue streams. We can all see now that
the paradigm shift of permitting
the mass creation of apps did not result in a “wild west” of
chaos and lost revenue. Instead, it
16. inspired entirely new categories of applications and new
revenue streams that exceed the value of the
ones they replaced. Who would have imagined Angry Birds or
apps that monitor our sleep patterns
to calculate the optimal time to wake us up? Apps are crazy,
weird, and disruptive—and I can’t
imagine a world without them.
OpenFlow has the potential to be similarly disruptive. The
democratization of network-based apps
is a crazy idea and will result in weird applications, but
someday we will talk about the old days and
it will be difficult to imagine what it was once like.
REFERENCES
1. Hoelzle, U. 2012. Keynote speech at the Open Networking
Summit; http://www.youtube.com/
watch?v=VLHJUfgxEO4.
2. Katti, S. 2012. OpenRadio: virtualizing cellular wireless
infrastructure. Presented at the Open
Networking Summit;
http://opennetsummit.org/talks/ONS2012/katti-wed-
openradio.pdf.
3. Lin, G. 2012. Industry perspectives of SDN: technical
challenges and business use cases.
Presentation at the Open Networking Summit;
http://opennetsummit.org/talks/ONS2012/lin-tue-
usecases.pdf (slides 6-7).
4. SIGCOMM Demo. 2008;
http://www.openflow.org/wp/2008/10/video-of-sigcomm-demo/.
LOVE IT, HATE IT? LET US KNOW
18. Today’s Networks
Idea: An OS for
Networks
SDN History
SDN Architecture
The Road to SDN
OpenFlow
Virtualization
Virtualizing OpenFlow
References
5.1
Lecture 5
Software Defined Networks
(ST: Advances in Networks)
CS 6/75995
Summer 2014
H. Peyravi
Department of Computer Science
Kent State University
(CS 6/75995: ST: Advances in Networks) Software Defined
Networks Summer 2014 1 / 52
20. 1 Introduction
Software Defined Networks
2 Today’s Networks
Today’s Networks
Limitations of Current Networks
Drawbacks of Existing Networks
3 Idea: An OS for Networks
Idea: An OS for Networks
4 SDN History
SDN History
5 SDN Architecture
SDN Architecture
SDN Benefits
SDN Standard Bodies
SDN Paradigm
6 The Road to SDN
The Road to SDN
Some Basic Questions
7 OpenFlow
OpenFlow
Centralized vs. Distributed Control
OPenFlow Protocol Messages
Secure Channel (SC)
Packet Matching
Pipeline Processing
Instructions and Action Set
Actions
Flow Table Entry
Flow Switching/Routing
21. Load Balancing
Dynamic Flow Modification
Flow Routing vs. Aggregation
Reactive vs. Proactive Entries
8 Virtualization
Virtualization
Server Virtualization
Network Virtualization
Models for Network Virtualization
Network Slice Model
9 Virtualizing OpenFlow
Trend
10 References
The contents of this lecture have been composed from various
resources including those listed at the reference section.
(CS 6/75995: ST: Advances in Networks) Software Defined
Networks Summer 2014 2 / 52
Software Defined
Networks
Acronyms
Introduction
Today’s Networks
Idea: An OS for
Networks
22. SDN History
SDN Architecture
The Road to SDN
OpenFlow
Virtualization
Virtualizing OpenFlow
References
5.3
§5.0.0 Glossaries
API Application Programming Interface 18, 23, 26
BGP Boarder Gateway Protocol 6
DiffServ Differentiated Services 6
IETF Internet Engineering Task Force 21
MPLS Multiprotocol Label Switching 6, 46
NAT Network Address Translation 6
NIC Network Interface Controller 22
ONF Open Networking Foundation 21
OSPF Open Shortest Path First 6
SDK Software Development Kit 22
SDN Software Defined Networking 14, 18, 19, 22, 24
VLAN Virtual Local Area Network 46
23. VM Virtual Machine 8
VPN Virtual Private Network 46
VRF Virtual Routing and Forwarding 46
(CS 6/75995: ST: Advances in Networks) Software Defined
Networks Summer 2014 3 / 52
Software Defined
Networks
Acronyms
Introduction
Software Defined Networks
Today’s Networks
Idea: An OS for
Networks
SDN History
SDN Architecture
The Road to SDN
OpenFlow
Virtualization
Virtualizing OpenFlow
References
24. 5.4
Introduction Software Defined Networks
§5.1.1 Software Defined Networks
å Reading list: [3, 4, 5]
Control Control
Plane Plane
Open Interface
Plane
Control
Open Interface
Merchant Switching Chips
Specialized
Current
Single Vendor Ecosystem
Future
Open Network Ecosystem
Vertically integrated
Closed interfaces
Proprietary
25. Slow innovation
Rapid innovation
Open interfaces
Horizontal
Apps
Specialized
Hardware
PlaneControl
Specialized
Features
(CS 6/75995: ST: Advances in Networks) Software Defined
Networks Summer 2014 4 / 52
Software Defined
Networks
Acronyms
Introduction
Today’s Networks
Today’s Networks
Limitations of Current
Networks
Drawbacks of Existing
Networks
26. Idea: An OS for
Networks
SDN History
SDN Architecture
The Road to SDN
OpenFlow
Virtualization
Virtualizing OpenFlow
References
5.5
Today’s Networks Today’s Networks
§5.2.1 Today’s Networks I
Today’s networks are statically provisioned
[1]
(CS 6/75995: ST: Advances in Networks) Software Defined
Networks Summer 2014 5 / 52
Software Defined
Networks
27. Acronyms
Introduction
Today’s Networks
Today’s Networks
Limitations of Current
Networks
Drawbacks of Existing
Networks
Idea: An OS for
Networks
SDN History
SDN Architecture
The Road to SDN
OpenFlow
Virtualization
Virtualizing OpenFlow
References
5.6
Today’s Networks Today’s Networks
§5.2.1 Today’s Networks II
28. [1]
Many complex functions are baked into infrastructure
I Open Shortest Path First (OSPF), Boarder Gateway Protocol
(BGP),
Differentiated Services (DiffServ), Network Address
Translation (NAT),
firewalls, Multiprotocol Label Switching (MPLS) etc.
How to efficiently and effectively manage such a comples
system?
(CS 6/75995: ST: Advances in Networks) Software Defined
Networks Summer 2014 6 / 52
Software Defined
Networks
Acronyms
Introduction
Today’s Networks
Today’s Networks
Limitations of Current
Networks
Drawbacks of Existing
Networks
Idea: An OS for
Networks
29. SDN History
SDN Architecture
The Road to SDN
OpenFlow
Virtualization
Virtualizing OpenFlow
References
5.7
Today’s Networks Today’s Networks
§5.2.1 Today’s Networks III
A Box
. . .Features FeaturesFeatures
Operating System
Specialized Packet
Forwarding Hardware
Million lines of source code
5400 RFCs
Barrier to entry
30. Billions of gates
Bloated
Power hungry
Routing, management, access control etc.
Devices are managed at a box level
I Applications
I Operating systems
I Hardware
Kind of mainframe mentality
The box becomes a barrier to entry
Resources are often under-utilized
(CS 6/75995: ST: Advances in Networks) Software Defined
Networks Summer 2014 7 / 52
Software Defined
Networks
Acronyms
Introduction
Today’s Networks
Today’s Networks
Limitations of Current
Networks
Drawbacks of Existing
31. Networks
Idea: An OS for
Networks
SDN History
SDN Architecture
The Road to SDN
OpenFlow
Virtualization
Virtualizing OpenFlow
References
5.8
Today’s Networks Limitations of Current Networks
§5.2.2 Limitations of Current Networks I
1 Enterprise networks are difficult to manage
I We Cannot dynamically make changes according to network
conditions
2 No control plane abstraction for the whole network
I Like old days of computers when there were no operating
systems
3 New control requirements are needed for
I Greater scalability
I Migration of Virtual Machines (VMs)
32. • Migrating operating system instances across distinct physical
hosts in
K Clusters
K Data centers
• It allows a clean separation between hardware and software to
K facilitate fault management
K load balancing
4 No mix and match between various devices and interfaces
5 Lack of competition at each layer
6 Configuring such huge networks is very difficult if not
impossible
(CS 6/75995: ST: Advances in Networks) Software Defined
Networks Summer 2014 8 / 52
Software Defined
Networks
Acronyms
Introduction
Today’s Networks
Today’s Networks
Limitations of Current
Networks
Drawbacks of Existing
Networks
33. Idea: An OS for
Networks
SDN History
SDN Architecture
The Road to SDN
OpenFlow
Virtualization
Virtualizing OpenFlow
References
5.9
Today’s Networks Drawbacks of Existing Networks
§5.2.3 Drawbacks of Existing Networks
It is difficult to perform real world experiments on large scale
networks
I Research stagnation
• Costly equipment needed to be setup to conduct research
We have a closed system
I We are stuck with interfaces
I Vendors have proprietary software/hardware
Network equipment have been hardware centric Why?
I To increase network capacity
I Faster packet switching
The impact has been
I Slower innovation
I Reducing flexibility once chips are fabricated
34. • Firmware provides some programmability
Vendor specific software
I Custom built
K Better efficiency
K Increasing competitive edge
I Impact
K Closed software
K Non-standard interfaces
Proprietary networking devices with proprietary software and
hardware resulted
I Limiting innovation to vendor/ vendor partners
I Major barriers for new ideas in networking
(CS 6/75995: ST: Advances in Networks) Software Defined
Networks Summer 2014 9 / 52
Software Defined
Networks
Acronyms
Introduction
Today’s Networks
Idea: An OS for
Networks
Idea: An OS for Networks
SDN History
35. SDN Architecture
The Road to SDN
OpenFlow
Virtualization
Virtualizing OpenFlow
References
5.10
Idea: An OS for Networks Idea: An OS for Networks
§5.3.1 Idea: An OS for Networks I
Closed Boxes
Operating System
Specialized Packet
Forwarding Hardware
App App App
Operating System
Specialized Packet
Forwarding Hardware
App App App
Operating System
36. Specialized Packet
Forwarding Hardware
App App App
Operating System
Specialized Packet
Forwarding Hardware
App App App
Operating System
Specialized Packet
Forwarding Hardware
App App App
(CS 6/75995: ST: Advances in Networks) Software Defined
Networks Summer 2014 10 / 52
Software Defined
Networks
Acronyms
Introduction
Today’s Networks
Idea: An OS for
Networks
37. Idea: An OS for Networks
SDN History
SDN Architecture
The Road to SDN
OpenFlow
Virtualization
Virtualizing OpenFlow
References
5.11
Idea: An OS for Networks Idea: An OS for Networks
§5.3.1 Idea: An OS for Networks II
Adding Network OS + Control Program
Operating System
Specialized Packet
Forwarding Hardware
App App App
Operating System
Specialized Packet
Forwarding Hardware
App App App
38. Operating System
Specialized Packet
Forwarding Hardware
App App App
Operating System
Specialized Packet
Forwarding Hardware
App App App
Operating System
Specialized Packet
Forwarding Hardware
App App App
Control Program
Network Operating System
(CS 6/75995: ST: Advances in Networks) Software Defined
Networks Summer 2014 11 / 52
Software Defined
Networks
Acronyms
39. Introduction
Today’s Networks
Idea: An OS for
Networks
Idea: An OS for Networks
SDN History
SDN Architecture
The Road to SDN
OpenFlow
Virtualization
Virtualizing OpenFlow
References
5.12
Idea: An OS for Networks Idea: An OS for Networks
§5.3.1 Idea: An OS for Networks III
Separation of Control Panel from Data Panel: SDN [7]
Specialized Packet
Forwarding Hardware
Specialized Packet
Forwarding Hardware
Specialized Packet
40. Forwarding Hardware
Specialized Packet
Forwarding Hardware
Specialized Packet
Forwarding Hardware
Network Operating System
Open API
Control Program
Open Interface
to Hardware
(OpenFlow)
Routing Traffic Security AppApp. . .Engineering
Data Plane
Control Plane
It decouples topology, traffic and inter-layer dependencies
It offers dynamic multi-layer networking
(CS 6/75995: ST: Advances in Networks) Software Defined
Networks Summer 2014 12 / 52
Software Defined
Networks
41. Acronyms
Introduction
Today’s Networks
Idea: An OS for
Networks
Idea: An OS for Networks
SDN History
SDN Architecture
The Road to SDN
OpenFlow
Virtualization
Virtualizing OpenFlow
References
5.13
Idea: An OS for Networks Idea: An OS for Networks
§5.3.1 Idea: An OS for Networks IV
NOX: Towards an Operating System for Networks [6]
Network Operating System
Global Network View
42. Control Program
Protocols
Control via
forwarding interface
(CS 6/75995: ST: Advances in Networks) Software Defined
Networks Summer 2014 13 / 52
Software Defined
Networks
Acronyms
Introduction
Today’s Networks
Idea: An OS for
Networks
SDN History
SDN History
SDN Architecture
The Road to SDN
OpenFlow
Virtualization
Virtualizing OpenFlow
43. References
5.14
SDN History SDN History
§5.4.1 SDN History I
Software Defined Networking (SDN) is part of a long history of
efforts
to make computer networks more programmable
Traditional node entity
Ethernet
Switch
Control Path (Software)
Data Path (Hardware)
SDN separated control panel from data panel
(CS 6/75995: ST: Advances in Networks) Software Defined
Networks Summer 2014 14 / 52
Software Defined
Networks
Acronyms
Introduction
44. Today’s Networks
Idea: An OS for
Networks
SDN History
SDN History
SDN Architecture
The Road to SDN
OpenFlow
Virtualization
Virtualizing OpenFlow
References
5.15
SDN History SDN History
§5.4.1 SDN History II
SDN Elements
Ethernet
Switch
App1 App2 App3
SDN Client
Data Path (Hardware)
SDN Controller (Server)Controller (Server)
45. SDN Protocol − Open Flow
(CS 6/75995: ST: Advances in Networks) Software Defined
Networks Summer 2014 15 / 52
Software Defined
Networks
Acronyms
Introduction
Today’s Networks
Idea: An OS for
Networks
SDN History
SDN History
SDN Architecture
The Road to SDN
OpenFlow
Virtualization
Virtualizing OpenFlow
References
5.16
46. SDN History SDN History
§5.4.1 SDN History III
Networks have various kinds of equipment
I Hardware: Routers, switches, etc.
I Middleware: firewalls, network address translators, load
balancers,
intrusion detection systems
I Software: application protocols
Switches and routers run distributed control software that is
typically closed and proprietary
The software implements network protocols
I Tested for interoperability and standardization
Network administrators configure network devices using
configuration interfaces
I Vary across networks
I Vary across protocols
(CS 6/75995: ST: Advances in Networks) Software Defined
Networks Summer 2014 16 / 52
Software Defined
Networks
Acronyms
Introduction
Today’s Networks
47. Idea: An OS for
Networks
SDN History
SDN Architecture
SDN Architecture
SDN Benefits
SDN Standard Bodies
SDN Paradigm
The Road to SDN
OpenFlow
Virtualization
Virtualizing OpenFlow
References
5.17
SDN Architecture SDN Architecture
§5.5.1 SDN Architecture I
SDN Applications
(e.g., OpenFlow)
Control & DataPlane Programmable Interface
48. SDN Controller
Programmable Open APIs
Business Applications
Cloud Orchestration
(e.g., OpenStack, CloudStack)L
a
y
e
r
L
a
y
e
r
L
a
y
e
r
In
fr
a
s
tr
51. SDN Architecture SDN Architecture
§5.5.1 SDN Architecture II
SDN has gained significant traction recently
I Many commercial switches support the OpenFlow Application
Programming Interface (API)
SDN enables innovation in how we design and manage networks
I Computer networks are complex and difficult to manage
SDN has changed network management in different ways
1 SDN separates the control plane from from the data plane
I Control plane ⇒ decides how to handle the traffic
I Data plane ⇒ forwards traffic according to the control plane’s
rules
2 SDN consolidates the control plane to control multiple data
plane
elements
I Controls routers, switches, and other middle boxes
I Using a well-defined API
K Brings network to applications
K OpenFlow [7] is an example of API developed at Stanford
Û An OpenFlow switch has one or more tables of packet-
handling rule
Û Each rule matches a subset of traffic and performs certain
actions on
the traffic
– e.g., Dropping, forwarding
Û An OpenFlow switch can behave like a router, switch,
firewall,
52. network address translator, etc.
(CS 6/75995: ST: Advances in Networks) Software Defined
Networks Summer 2014 18 / 52
Software Defined
Networks
Acronyms
Introduction
Today’s Networks
Idea: An OS for
Networks
SDN History
SDN Architecture
SDN Architecture
SDN Benefits
SDN Standard Bodies
SDN Paradigm
The Road to SDN
OpenFlow
Virtualization
53. Virtualizing OpenFlow
References
5.19
SDN Architecture SDN Architecture
§5.5.1 SDN Architecture III
Many different controller platforms have emerged
These controlling platforms have been used to create many
applications
I Dynamic access control
I Server load balancing
I Network virtualization
I Energy-efficient networking
I Seamless virtual-machine migration and user mobility
Major companies (Google, HP, NEC, etc.) have joined SDN
industry
consortium
I Open Networking Foundation
I Open Daylight
SDN idea has its root in early telephone systems
I Separation of control and data planes to
• Simplify network management
• Deployment of new services
SDN also resembles past research on active networking
I Programmable networks
(CS 6/75995: ST: Advances in Networks) Software Defined
Networks Summer 2014 19 / 52
55. SDN Architecture SDN Benefits
§5.5.2 SDN Benefits
1 It facilitates Innovations in Networks
2 It is a layered architecture with standard open interfaces
I Independent innovation can be developed at each layer
3 Experiment and research can be conducted without using
bulky,
expensive equipment
4 Offers more accessibility since software can be easily
developed by
more vendors
5 Speed-to-market
I There is no hardware fabrication cycles
6 Offers more flexibility with programmability
7 Ease of customization and integration with other software
applications
8 Fast upgrades
9 Programming a network vs configure a network
(CS 6/75995: ST: Advances in Networks) Software Defined
Networks Summer 2014 20 / 52
Software Defined
Networks
56. Acronyms
Introduction
Today’s Networks
Idea: An OS for
Networks
SDN History
SDN Architecture
SDN Architecture
SDN Benefits
SDN Standard Bodies
SDN Paradigm
The Road to SDN
OpenFlow
Virtualization
Virtualizing OpenFlow
References
5.21
SDN Architecture SDN Standard Bodies
§5.5.3 SDN Standard Bodies
57. 1 Open Networking Foundation (ONF)
I https://www.opennetworking.org/
2 OpenFlow Organization
I http://www.openflow.org/
3 Clean State at Stanford
I http://cleanslate.stanford.edu
4 Internet Engineering Task Force (IETF)
I http://tools.ietf.org/html/draft-nadeau-sdn-problem-statement-
00
I http://tools.ietf.org/html/draft-nadeau-sdn-framework-01
(CS 6/75995: ST: Advances in Networks) Software Defined
Networks Summer 2014 21 / 52
https://www.opennetworking.org/
http://www.openflow.org/
http://cleanslate.stanford.edu
http://tools.ietf.org/html/draft-nadeau-sdn-problem-statement-
00
http://tools.ietf.org/html/draft-nadeau-sdn-framework-01
Software Defined
Networks
Acronyms
Introduction
Today’s Networks
Idea: An OS for
58. Networks
SDN History
SDN Architecture
SDN Architecture
SDN Benefits
SDN Standard Bodies
SDN Paradigm
The Road to SDN
OpenFlow
Virtualization
Virtualizing OpenFlow
References
5.22
SDN Architecture SDN Paradigm
§5.5.4 SDN Paradigm
Software-Centric-Network
I Network devices provide Software Development Kits (SDKs)
I SDN facilitates third-party application development and
integration
I SDN allows software vendors to develop network applications
I SDN helps evolving standards for network applications
59. SDN Entities
1 A general purpose commodity-off-the-shelf hardware
2 A real time optimized operating system ⇒ mostly Linux based
3 Some high end power and multi-port Network Interface
Controller
(NIC) cards
4 Integration with other new trends in servers
I Virtualization
I Parallelization
I Modularity
(CS 6/75995: ST: Advances in Networks) Software Defined
Networks Summer 2014 22 / 52
Software Defined
Networks
Acronyms
Introduction
Today’s Networks
Idea: An OS for
Networks
SDN History
SDN Architecture
60. The Road to SDN
The Road to SDN
Some Basic Questions
OpenFlow
Virtualization
Virtualizing OpenFlow
References
5.23
The Road to SDN The Road to SDN
§5.6.1 The Road to SDN I
Making networks programmable enables
I Innovation in network management
I Lowers the barrier to deploying new services
Historically, we have 3 stages of evolutionary activities in
programmable networks
I Active networks (mid-1990s to the early 2000s)
• Introduced programmable functions in the network to enable
innovations
I Control and data plane separation (2001 to 2007)
• Developed open interfaces between the control and data planes
I OpenFlow API and network operating systems (2007 to 2010)
• Represented widespread adoption of an open interface
• Making control-data plane separation scalable and practical
61. (CS 6/75995: ST: Advances in Networks) Software Defined
Networks Summer 2014 23 / 52
Software Defined
Networks
Acronyms
Introduction
Today’s Networks
Idea: An OS for
Networks
SDN History
SDN Architecture
The Road to SDN
The Road to SDN
Some Basic Questions
OpenFlow
Virtualization
Virtualizing OpenFlow
References
5.24
62. The Road to SDN The Road to SDN
§5.6.1 The Road to SDN II
Network virtualization played an important role through the
evolution
of SDN
I We will discuss network virtualization and its relationship to
SDN
(CS 6/75995: ST: Advances in Networks) Software Defined
Networks Summer 2014 24 / 52
Software Defined
Networks
Acronyms
Introduction
Today’s Networks
Idea: An OS for
Networks
SDN History
SDN Architecture
The Road to SDN
The Road to SDN
Some Basic Questions
63. OpenFlow
Virtualization
Virtualizing OpenFlow
References
5.25
The Road to SDN Some Basic Questions
§5.6.2 Some Basic Questions
1 How to obtain global information?
2 What are the configurations?
3 How to implement?
4 How is the scalability?
5 How does it really work?
(CS 6/75995: ST: Advances in Networks) Software Defined
Networks Summer 2014 25 / 52
Software Defined
Networks
Acronyms
Introduction
64. Today’s Networks
Idea: An OS for
Networks
SDN History
SDN Architecture
The Road to SDN
OpenFlow
OpenFlow
Centralized vs. Distributed
Control
OPenFlow Protocol
Messages
Secure Channel (SC)
Packet Matching
Pipeline Processing
Instructions and Action Set
Actions
Flow Table Entry
Flow Switching/Routing
Load Balancing
65. Dynamic Flow Modification
Flow Routing vs.
Aggregation
Reactive vs. Proactive
Entries
Virtualization
Virtualizing OpenFlow
References
5.26
OpenFlow OpenFlow
§5.7.1 OpenFlow I
OpenFlow is an open API that provides a standard interface for
programming the data plane switches
I An standard way to control flow-tables in commercial
switches and routers
I Like an x86 instruction set for the network
It provides an open interface to a L2/L3 node (switches, routers)
and
make them visible to the network
(SW)Secure Channel
(HW)Flow Table
SSL
OpenFlow Protocol
66. Controller
How does it separate the control plane from the data plane?
I The data path consists of a Flow Table
• An action associated with each flow entry
I The control path consists of a controller
• It programs the flow entry in the flow table
(CS 6/75995: ST: Advances in Networks) Software Defined
Networks Summer 2014 26 / 52
Software Defined
Networks
Acronyms
Introduction
Today’s Networks
Idea: An OS for
Networks
SDN History
SDN Architecture
The Road to SDN
OpenFlow
OpenFlow
67. Centralized vs. Distributed
Control
OPenFlow Protocol
Messages
Secure Channel (SC)
Packet Matching
Pipeline Processing
Instructions and Action Set
Actions
Flow Table Entry
Flow Switching/Routing
Load Balancing
Dynamic Flow Modification
Flow Routing vs.
Aggregation
Reactive vs. Proactive
Entries
Virtualization
Virtualizing OpenFlow
References
5.27
68. OpenFlow OpenFlow
§5.7.1 OpenFlow II
OpenFlow is based on an Ethernet switch with
I an internal flow-table
I a standardized interface to add/remove flows
OpenFlow was intended to enable innovation in campus
networks
I Like hardware drivers
• Interface between switches and network
It has been deployed at Stanford ⇒ http://cleanslate.stanford.edu
Some Applications
Mobility management
Network-wide energy management
New naming/addressing schemes
Network access control
(CS 6/75995: ST: Advances in Networks) Software Defined
Networks Summer 2014 27 / 52
http://cleanslate.stanford.edu
Software Defined
Networks
69. Acronyms
Introduction
Today’s Networks
Idea: An OS for
Networks
SDN History
SDN Architecture
The Road to SDN
OpenFlow
OpenFlow
Centralized vs. Distributed
Control
OPenFlow Protocol
Messages
Secure Channel (SC)
Packet Matching
Pipeline Processing
Instructions and Action Set
Actions
Flow Table Entry
70. Flow Switching/Routing
Load Balancing
Dynamic Flow Modification
Flow Routing vs.
Aggregation
Reactive vs. Proactive
Entries
Virtualization
Virtualizing OpenFlow
References
5.28
OpenFlow Centralized vs. Distributed Control
§5.7.2 Centralized vs. Distributed Control
Centralized
(SW)Secure Channel
(HW)Flow Table
(SW)Secure Channel
(HW)Flow Table
(SW)Secure Channel
(HW)Flow Table
71. Controller
Distributed
(SW)Secure Channel
(HW)Flow Table
(SW)Secure Channel
(HW)Flow Table
(SW)Secure Channel
(HW)Flow Table
Controller
Controller
Controller
One OpenFlow switch cannot be controlled by two controllers
with
out additional abstractions
(CS 6/75995: ST: Advances in Networks) Software Defined
Networks Summer 2014 28 / 52
Software Defined
Networks
Acronyms
72. Introduction
Today’s Networks
Idea: An OS for
Networks
SDN History
SDN Architecture
The Road to SDN
OpenFlow
OpenFlow
Centralized vs. Distributed
Control
OPenFlow Protocol
Messages
Secure Channel (SC)
Packet Matching
Pipeline Processing
Instructions and Action Set
Actions
Flow Table Entry
Flow Switching/Routing
73. Load Balancing
Dynamic Flow Modification
Flow Routing vs.
Aggregation
Reactive vs. Proactive
Entries
Virtualization
Virtualizing OpenFlow
References
5.29
OpenFlow OPenFlow Protocol Messages
§5.7.3 OPenFlow Protocol Messages
Controller-to-Switch messages
I Initiated by the controller
I Used to directly manage or inspect the state of the switch
• Features, Config, Modify State, Read-State, Packet-Out,
Barrier
Asynchronous
I Asynchronous messages are sent without the controller
soliciting them
from a switch
• Packet-in, Flow Removed / Expiration, Port-status, Error,
Barrier
74. Symmetric
I Symmetric messages are sent without solicitation, in either
direction
• Hello, Echo, Experimenter / Vendor
(CS 6/75995: ST: Advances in Networks) Software Defined
Networks Summer 2014 29 / 52
Software Defined
Networks
Acronyms
Introduction
Today’s Networks
Idea: An OS for
Networks
SDN History
SDN Architecture
The Road to SDN
OpenFlow
OpenFlow
Centralized vs. Distributed
Control
76. §5.7.4 Secure Channel (SC)
Secure Channel is the Interface that connects each OpenFlow
switch
to controller
A controller configures and manages the switch, receives events
from the switch, and send packets out the switch via this
interface
Secure Channel establishes and terminates the connection
between
OpenFlow Switch and the controller
I Using Connection Setup and Connection Interruption
procedures
The Secure Channel connection is a TLS connection
I Switch and controller mutually authenticate by exchanging
certificates
signed by a site-specific private key
(CS 6/75995: ST: Advances in Networks) Software Defined
Networks Summer 2014 30 / 52
Software Defined
Networks
Acronyms
Introduction
Today’s Networks
Idea: An OS for
Networks
77. SDN History
SDN Architecture
The Road to SDN
OpenFlow
OpenFlow
Centralized vs. Distributed
Control
OPenFlow Protocol
Messages
Secure Channel (SC)
Packet Matching
Pipeline Processing
Instructions and Action Set
Actions
Flow Table Entry
Flow Switching/Routing
Load Balancing
Dynamic Flow Modification
Flow Routing vs.
Aggregation
78. Reactive vs. Proactive
Entries
Virtualization
Virtualizing OpenFlow
References
5.31
OpenFlow Packet Matching
§5.7.5 Packet Matching
Packet Arrival
fields
Extract headerPacket
arrives
Match in
any tables ?
Apply actions
Updata statistics
Encapsulate and
forward to controller
Yes
79. No
Table Match
Table n
Match in
Start at Flow Table n=0
Packet in
o Send the packet to controller
o Drop the packet
o Continue to the next table
o Update action set
Execute Instruction Set
Update Counters and
o Update packet/match set fields
o Update metadata
Execute Action Set
Table n++
Go to
Based on table configuration,
do one of the following
80. Yes
Yes
NoNo
(CS 6/75995: ST: Advances in Networks) Software Defined
Networks Summer 2014 31 / 52
Software Defined
Networks
Acronyms
Introduction
Today’s Networks
Idea: An OS for
Networks
SDN History
SDN Architecture
The Road to SDN
OpenFlow
OpenFlow
Centralized vs. Distributed
Control
82. §5.7.6 Pipeline Processing
Steps at each stage
1 Find highest priority matching flow entry
2 Apply instructions
a Modify packet and update match fields
• Apply actions instruction
b Update action set
• Clear actions and/or write actions instruction
c Update metadata
3 Send match data and actions set to next table
(CS 6/75995: ST: Advances in Networks) Software Defined
Networks Summer 2014 32 / 52
Software Defined
Networks
Acronyms
Introduction
Today’s Networks
Idea: An OS for
Networks
SDN History
SDN Architecture
83. The Road to SDN
OpenFlow
OpenFlow
Centralized vs. Distributed
Control
OPenFlow Protocol
Messages
Secure Channel (SC)
Packet Matching
Pipeline Processing
Instructions and Action Set
Actions
Flow Table Entry
Flow Switching/Routing
Load Balancing
Dynamic Flow Modification
Flow Routing vs.
Aggregation
Reactive vs. Proactive
Entries
84. Virtualization
Virtualizing OpenFlow
References
5.33
OpenFlow Instructions and Action Set
§5.7.7 Instructions and Action Set I
Each flow entry contains a set of instructions
I They are executed when a packet matches the entry
Instructions contain
I A set of actions to add to the action set
• A list of actions to apply immediately to the packet
I A set of actions to modify pipeline processing
An Action set is associated with each packet
I It is empty by default
Action set is carried between flow tables
A flow entry modifies action set using Write-Action or Clear-
Action
instruction
Processing stops when:
I The instruction does not contain Goto-Table
I The actions in the set are executed
(CS 6/75995: ST: Advances in Networks) Software Defined
Networks Summer 2014 33 / 52
Software Defined
Networks
85. Acronyms
Introduction
Today’s Networks
Idea: An OS for
Networks
SDN History
SDN Architecture
The Road to SDN
OpenFlow
OpenFlow
Centralized vs. Distributed
Control
OPenFlow Protocol
Messages
Secure Channel (SC)
Packet Matching
Pipeline Processing
Instructions and Action Set
Actions
Flow Table Entry
86. Flow Switching/Routing
Load Balancing
Dynamic Flow Modification
Flow Routing vs.
Aggregation
Reactive vs. Proactive
Entries
Virtualization
Virtualizing OpenFlow
References
5.34
OpenFlow Instructions and Action Set
§5.7.7 Instructions and Action Set II
List of Instructions to modify action set
Apply Actions
I Apply the specified actions immediately
Clear Actions
I Clear all the actions in the set immediately
Write Actions
I Merge the specified actions to the current set
Write Metadata
87. I Write the meta data field with the specified value
Goto-Table
I Indicated the next table in the processing pipeline
(CS 6/75995: ST: Advances in Networks) Software Defined
Networks Summer 2014 34 / 52
Software Defined
Networks
Acronyms
Introduction
Today’s Networks
Idea: An OS for
Networks
SDN History
SDN Architecture
The Road to SDN
OpenFlow
OpenFlow
Centralized vs. Distributed
Control
OPenFlow Protocol
Messages
88. Secure Channel (SC)
Packet Matching
Pipeline Processing
Instructions and Action Set
Actions
Flow Table Entry
Flow Switching/Routing
Load Balancing
Dynamic Flow Modification
Flow Routing vs.
Aggregation
Reactive vs. Proactive
Entries
Virtualization
Virtualizing OpenFlow
References
5.35
OpenFlow Actions
§5.7.8 Actions
89. Required Actions
I Output ⇒ Forward a packet to the specified port
I Drop
I Group
Optional Actions
I Set-Queue
I Push/Pop Tag
I Set-Field
(CS 6/75995: ST: Advances in Networks) Software Defined
Networks Summer 2014 35 / 52
Software Defined
Networks
Acronyms
Introduction
Today’s Networks
Idea: An OS for
Networks
SDN History
SDN Architecture
The Road to SDN
OpenFlow
OpenFlow
Centralized vs. Distributed
90. Control
OPenFlow Protocol
Messages
Secure Channel (SC)
Packet Matching
Pipeline Processing
Instructions and Action Set
Actions
Flow Table Entry
Flow Switching/Routing
Load Balancing
Dynamic Flow Modification
Flow Routing vs.
Aggregation
Reactive vs. Proactive
Entries
Virtualization
Virtualizing OpenFlow
References
5.36
91. OpenFlow Flow Table Entry
§5.7.9 Flow Table Entry I
(CS 6/75995: ST: Advances in Networks) Software Defined
Networks Summer 2014 36 / 52
Software Defined
Networks
Acronyms
Introduction
Today’s Networks
Idea: An OS for
Networks
SDN History
SDN Architecture
The Road to SDN
OpenFlow
OpenFlow
Centralized vs. Distributed
Control
OPenFlow Protocol
Messages
92. Secure Channel (SC)
Packet Matching
Pipeline Processing
Instructions and Action Set
Actions
Flow Table Entry
Flow Switching/Routing
Load Balancing
Dynamic Flow Modification
Flow Routing vs.
Aggregation
Reactive vs. Proactive
Entries
Virtualization
Virtualizing OpenFlow
References
5.37
OpenFlow Flow Table Entry
§5.7.9 Flow Table Entry II
[2]
93. (CS 6/75995: ST: Advances in Networks) Software Defined
Networks Summer 2014 37 / 52
Software Defined
Networks
Acronyms
Introduction
Today’s Networks
Idea: An OS for
Networks
SDN History
SDN Architecture
The Road to SDN
OpenFlow
OpenFlow
Centralized vs. Distributed
Control
OPenFlow Protocol
Messages
Secure Channel (SC)
Packet Matching
94. Pipeline Processing
Instructions and Action Set
Actions
Flow Table Entry
Flow Switching/Routing
Load Balancing
Dynamic Flow Modification
Flow Routing vs.
Aggregation
Reactive vs. Proactive
Entries
Virtualization
Virtualizing OpenFlow
References
5.38
OpenFlow Flow Switching/Routing
§5.7.10 Flow Switching/Routing I
(CS 6/75995: ST: Advances in Networks) Software Defined
Networks Summer 2014 38 / 52
95. Software Defined
Networks
Acronyms
Introduction
Today’s Networks
Idea: An OS for
Networks
SDN History
SDN Architecture
The Road to SDN
OpenFlow
OpenFlow
Centralized vs. Distributed
Control
OPenFlow Protocol
Messages
Secure Channel (SC)
Packet Matching
Pipeline Processing
Instructions and Action Set
96. Actions
Flow Table Entry
Flow Switching/Routing
Load Balancing
Dynamic Flow Modification
Flow Routing vs.
Aggregation
Reactive vs. Proactive
Entries
Virtualization
Virtualizing OpenFlow
References
5.39
OpenFlow Flow Switching/Routing
§5.7.10 Flow Switching/Routing II
(CS 6/75995: ST: Advances in Networks) Software Defined
Networks Summer 2014 39 / 52
Software Defined
Networks
Acronyms
97. Introduction
Today’s Networks
Idea: An OS for
Networks
SDN History
SDN Architecture
The Road to SDN
OpenFlow
OpenFlow
Centralized vs. Distributed
Control
OPenFlow Protocol
Messages
Secure Channel (SC)
Packet Matching
Pipeline Processing
Instructions and Action Set
Actions
Flow Table Entry
Flow Switching/Routing
98. Load Balancing
Dynamic Flow Modification
Flow Routing vs.
Aggregation
Reactive vs. Proactive
Entries
Virtualization
Virtualizing OpenFlow
References
5.40
OpenFlow Load Balancing
§5.7.11 Load Balancing
Current methods use uniform distribution of traffic
It is not based on network congestion and server load
More adaptive algorithms can be implemented by using
OpenFlow
I Monitoring the network traffic
I Program flows based on demand and server capacity
Dynamic load balancing using OpenFlow
Data Forwarding
OpenFlow Switch
99. Data Forwarding
OpenFlow Switch
Data Forwarding
OpenFlow Switch
Network Operating System
Program Flow Entries Collect Statistics
Observed
Load patterns
(CS 6/75995: ST: Advances in Networks) Software Defined
Networks Summer 2014 40 / 52
Software Defined
Networks
Acronyms
Introduction
Today’s Networks
Idea: An OS for
Networks
SDN History
SDN Architecture
100. The Road to SDN
OpenFlow
OpenFlow
Centralized vs. Distributed
Control
OPenFlow Protocol
Messages
Secure Channel (SC)
Packet Matching
Pipeline Processing
Instructions and Action Set
Actions
Flow Table Entry
Flow Switching/Routing
Load Balancing
Dynamic Flow Modification
Flow Routing vs.
Aggregation
Reactive vs. Proactive
Entries
Virtualization
101. Virtualizing OpenFlow
References
5.41
OpenFlow Dynamic Flow Modification
§5.7.12 Dynamic Flow Modification
A microflow rule matches on all fields
A wildcard rule can have ”dont care” bits in some fields
Rules can be installed with a timeout
I Delete the rule after a fixed time interval (a hard timeout)
I Specified period of inactivity (a soft timeout)
I The switch counts the number of bytes and packets matching
each rule,
and the controller can poll these counter values
Switch MAC MAC Eth VLAN IP IP IP TCP TCP
Action
Port Src Dst Type ID Src Dst Port S-port D-port
IPSrc: 192.168.*/24
IPDst: 200.12.*/24
IPDst: 300.12.*/24
Incoming Request
Server 2
Server 1
102. Balancing Switch
R1
R2
R1
R2
200.12.*/24
300.12.*/24
(CS 6/75995: ST: Advances in Networks) Software Defined
Networks Summer 2014 41 / 52
Software Defined
Networks
Acronyms
Introduction
Today’s Networks
Idea: An OS for
Networks
SDN History
SDN Architecture
The Road to SDN
103. OpenFlow
OpenFlow
Centralized vs. Distributed
Control
OPenFlow Protocol
Messages
Secure Channel (SC)
Packet Matching
Pipeline Processing
Instructions and Action Set
Actions
Flow Table Entry
Flow Switching/Routing
Load Balancing
Dynamic Flow Modification
Flow Routing vs.
Aggregation
Reactive vs. Proactive
Entries
Virtualization
104. Virtualizing OpenFlow
References
5.42
OpenFlow Flow Routing vs. Aggregation
§5.7.13 Flow Routing vs. Aggregation
Both models are possible with OpenFlow
Flow-Based
Every flow is individually set up
by a controller
Exact match for flow entries
Flow table contains one entry
per flow
Good for fine grain control, e.g.
campus networks
Aggregation-Based
One flow entry covers large
groups of flows
Wildcard match for flow entries
Flow table contains one entry
per category of flows
Good for large number of flows,
e.g. backbone
(CS 6/75995: ST: Advances in Networks) Software Defined
105. Networks Summer 2014 42 / 52
Software Defined
Networks
Acronyms
Introduction
Today’s Networks
Idea: An OS for
Networks
SDN History
SDN Architecture
The Road to SDN
OpenFlow
OpenFlow
Centralized vs. Distributed
Control
OPenFlow Protocol
Messages
Secure Channel (SC)
Packet Matching
Pipeline Processing
106. Instructions and Action Set
Actions
Flow Table Entry
Flow Switching/Routing
Load Balancing
Dynamic Flow Modification
Flow Routing vs.
Aggregation
Reactive vs. Proactive
Entries
Virtualization
Virtualizing OpenFlow
References
5.43
OpenFlow Reactive vs. Proactive Entries
§5.7.14 Reactive vs. Proactive Entries
Both models are possible with OpenFlow
Reactive
First packet of flow triggers
controller to insert flow entries
107. Efficient use of flow table
Every flow incurs small
additional flow setup time
If control connection lost, switch
has limited utility
Proactive
Controller pre-populates flow
table in switch
Zero additional flow setup time
Loss of control connection does
not disrupt traffic
Essentially requires aggregated
(wildcard) rules
(CS 6/75995: ST: Advances in Networks) Software Defined
Networks Summer 2014 43 / 52
Software Defined
Networks
Acronyms
Introduction
Today’s Networks
Idea: An OS for
Networks
108. SDN History
SDN Architecture
The Road to SDN
OpenFlow
Virtualization
Virtualization
Server Virtualization
Network Virtualization
Models for Network
Virtualization
Network Slice Model
Virtualizing OpenFlow
References
5.44
Virtualization Virtualization
§5.8.1 Virtualization
Abstraction between the physical resources and their logical
representation
Virtualization can be implemented in various layers of a
computer
system or network
109. 1 Storage Virtualization ⇒ OS virtual memory
2 Server Virtualization
3 Network Virtualization
(CS 6/75995: ST: Advances in Networks) Software Defined
Networks Summer 2014 44 / 52
Software Defined
Networks
Acronyms
Introduction
Today’s Networks
Idea: An OS for
Networks
SDN History
SDN Architecture
The Road to SDN
OpenFlow
Virtualization
Virtualization
Server Virtualization
Network Virtualization
110. Models for Network
Virtualization
Network Slice Model
Virtualizing OpenFlow
References
5.45
Virtualization Server Virtualization
§5.8.2 Server Virtualization
Server virtualization refers to the partitioning of the resources
of a
single physical machine into multiple execution environments
I Each of which can host a different server
Server virtualization methods
1 Partitioning
• Each virtual machine is a subset of the physical resources
Application
Guest OS
Virtual Hardware
Application
Guest OS
Virtual Hardware
Application
111. Guest OS
Virtual Hardware
Hypervisor or VMM
Virtual Machines (CPU, Memory, NIC, Disk)
2 Aggregation
• Concatenation of physical resources
Virtual Machine
Hypervisor or VMM Hypervisor or VMM Hypervisor or VMM
Hypervisor or VMM
OS
Application
(CS 6/75995: ST: Advances in Networks) Software Defined
Networks Summer 2014 45 / 52
Software Defined
Networks
Acronyms
Introduction
Today’s Networks
Idea: An OS for
112. Networks
SDN History
SDN Architecture
The Road to SDN
OpenFlow
Virtualization
Virtualization
Server Virtualization
Network Virtualization
Models for Network
Virtualization
Network Slice Model
Virtualizing OpenFlow
References
5.46
Virtualization Network Virtualization
§5.8.3 Network Virtualization I
Network virtualization allows heterogeneous virtual networks
that are
isolated, independently managed to coexist over a shared
physical
113. network infrastructure
Network virtualization is not a new concept
I It is available in parts
• MPLS L2/L3 Virtual Private Network (VPN), Virtual Local
Area Network (VLAN),
Virtual Routing and Forwarding (VRF), etc.
Network virtualization can slice particular hardware resources
and
logically isolate them
I MPLS can virtualize forwarding tables
I VLANs slice the link layer
Currently there is no single technology (or clear abstraction)
that will
virtualize the network as a whole
(CS 6/75995: ST: Advances in Networks) Software Defined
Networks Summer 2014 46 / 52
Software Defined
Networks
Acronyms
Introduction
Today’s Networks
Idea: An OS for
Networks
SDN History
114. SDN Architecture
The Road to SDN
OpenFlow
Virtualization
Virtualization
Server Virtualization
Network Virtualization
Models for Network
Virtualization
Network Slice Model
Virtualizing OpenFlow
References
5.47
Virtualization Network Virtualization
§5.8.3 Network Virtualization II
Switch Based Virtualization
(CS 6/75995: ST: Advances in Networks) Software Defined
Networks Summer 2014 47 / 52
115. Software Defined
Networks
Acronyms
Introduction
Today’s Networks
Idea: An OS for
Networks
SDN History
SDN Architecture
The Road to SDN
OpenFlow
Virtualization
Virtualization
Server Virtualization
Network Virtualization
Models for Network
Virtualization
Network Slice Model
Virtualizing OpenFlow
References
116. 5.48
Virtualization Models for Network Virtualization
§5.8.4 Models for Network Virtualization I
1 Network Slicing Model
I Logically isolated network partitions are created over a shared
physical
network infrastructure
2 HyperVisor Model
I The model combines logical computer network resources into
a single
platform appearing as a single network
• HyperVisor, Vswitch
3 Hybrid Model
I Combination of the above two models
(CS 6/75995: ST: Advances in Networks) Software Defined
Networks Summer 2014 48 / 52
Software Defined
Networks
Acronyms
Introduction
Today’s Networks
117. Idea: An OS for
Networks
SDN History
SDN Architecture
The Road to SDN
OpenFlow
Virtualization
Virtualization
Server Virtualization
Network Virtualization
Models for Network
Virtualization
Network Slice Model
Virtualizing OpenFlow
References
5.49
Virtualization Network Slice Model
§5.8.5 Network Slice Model
Virtual Network 1
Physical Network
118. Virtual Network2
(CS 6/75995: ST: Advances in Networks) Software Defined
Networks Summer 2014 49 / 52
Software Defined
Networks
Acronyms
Introduction
Today’s Networks
Idea: An OS for
Networks
SDN History
SDN Architecture
The Road to SDN
OpenFlow
Virtualization
Virtualizing OpenFlow
Trend
References
5.50
119. Virtualizing OpenFlow Trend
§5.9.1 Trend I
(CS 6/75995: ST: Advances in Networks) Software Defined
Networks Summer 2014 50 / 52
Software Defined
Networks
Acronyms
Introduction
Today’s Networks
Idea: An OS for
Networks
SDN History
SDN Architecture
The Road to SDN
OpenFlow
Virtualization
Virtualizing OpenFlow
Trend
References
120. 5.51
Virtualizing OpenFlow Trend
§5.9.1 Trend II
App App App App
Specialized Packet
Forwarding Hardware
Specialized Packet
Forwarding Hardware
App App App App
Network
Operating
System 1
Operating
Network
System 2
Network
Operating
System 3
Network
Operating
System 4
Open Interface to Hardware
121. Open Interface to Hardware
Virtualization or Slicing Layer
Specialized Packet
Forwarding Hardware
Specialized Packet
Forwarding Hardware
Specialized Packet
Forwarding Hardware
(CS 6/75995: ST: Advances in Networks) Software Defined
Networks Summer 2014 51 / 52
Software Defined
Networks
Acronyms
Introduction
Today’s Networks
Idea: An OS for
Networks
SDN History
SDN Architecture
The Road to SDN
122. OpenFlow
Virtualization
Virtualizing OpenFlow
References
5.52
References
§5.10.0 References
[1] http://www.excitingip.com/743/network-convergence/.
[2] http://www.ipinfusion.com/.
[3] Astuto A. Bruno, Marc Mendonca Nunes, Xuan-Nam
Nguyen, Katia Obraczka, and Thierry Turletti.
A survey of software-defined networking: Past, present, and
future of programmable networks.
IEEE Communications Surveys and Tutorials, 14:1–17, 2012.
[PDF].
[4] Nick Feamster, Jennifer Rexford, and Ellen Zegura.
The road to SDN.
ACM Queue: Tomorrow’s Computing Today, 11(12):??–??,
December 2013.
[PDF].
[5] Nick Feamster, Jennifer Rexford, and Ellen Zegura.
The road to sdn: An intellectual history of programmable
networks.
SIGCOMM Comput. Commun. Rev., 44(2):87–98, April 2014.
[PDF].
123. [6] Natasha Gude, Teemu Koponen, Justin Pettit, Ben Pfaff,
Martı́n Casado, Nick McKeown, and Scott
Shenker.
Nox: Towards an operating system for networks.
SIGCOMM Comput. Commun. Rev., 38(3):105–110, July 2008.
[7] Nick McKeown, Tom Anderson, Hari Balakrishnan, Guru
Parulkar, Larry Peterson, Jennifer Rexford,
Scott Shenker, and Jonathan Turner.
Openflow: Enabling innovation in campus networks.
SIGCOMM Comput. Commun. Rev., 38(2):69–74, March 2008.
(CS 6/75995: ST: Advances in Networks) Software Defined
Networks Summer 2014 52 / 52
http://www.excitingip.com/743/network-convergence/
http://www.ipinfusion.com/IntroductionSoftware Defined
NetworksToday's NetworksToday's NetworksLimitations of
Current NetworksDrawbacks of Existing NetworksIdea: An OS
for NetworksIdea: An OS for NetworksSDN HistorySDN
HistorySDN ArchitectureSDN ArchitectureSDN BenefitsSDN
Standard BodiesSDN ParadigmThe Road to SDNThe Road to
SDNSome Basic QuestionsOpenFlowOpenFlowCentralized vs.
Distributed ControlOPenFlow Protocol MessagesSecure
Channel (SC)Packet MatchingPipeline ProcessingInstructions
and Action SetActionsFlow Table EntryFlow
Switching/RoutingLoad BalancingDynamic Flow
ModificationFlow Routing vs. AggregationReactive vs.
Proactive EntriesVirtualizationVirtualizationServer
VirtualizationNetwork VirtualizationModels for Network
VirtualizationNetwork Slice ModelVirtualizing
OpenFlowTrendReferences
124. Active Queue
Management
Acronyms
Introduction
Traffic Engineering
AQM
AQM Classifications
Bufferbloat in the
Internet
Understanding
Queues
Controlled Delay
Management
CoDel Algorithm
References
6.1
Lecture 6
Active Queue Management
(ST: Advances in Networks)
CS 6/75995
Summer 2014
H. Peyravi
125. Department of Computer Science
Kent State University
(CS 6/75995: ST: Advances in Networks) Active Queue
Management Summer 2014 1 / 39
http://www.cs.kent.edu/~peyravi
http://www.cs.kent.edu
http://www.kent.edu
Active Queue
Management
Acronyms
Introduction
Traffic Engineering
AQM
AQM Classifications
Bufferbloat in the
Internet
Understanding
Queues
Controlled Delay
Management
CoDel Algorithm
126. References
6.2
§6.0.0 Contents
Acronyms
1 Introduction
Introduction
The Role of AQM
2 Traffic Engineering
Traffic Engineering
What is Congestion
Congestion Control
Implicit vs. Explicit feedback
TCP Congestion Control
3 AQM
AQM
AQM Goals
Random Early Detection (RED)
How about non-responsive sources?
4 AQM Classifications
Classification Based on Congestion Control
Classification By Mechanisms
5 Bufferbloat in the Internet
Bufferbloat in the Internet
6 Understanding Queues
Understanding Queues
7 Controlled Delay Management
Controlled Delay Management
127. 8 CoDel Algorithm
CoDel Algorithm
9 References
The contents of this lecture have been composed from various
resources including those listed at the reference section.
(CS 6/75995: ST: Advances in Networks) Active Queue
Management Summer 2014 2 / 39
Active Queue
Management
Acronyms
Introduction
Traffic Engineering
AQM
AQM Classifications
Bufferbloat in the
Internet
Understanding
Queues
Controlled Delay
Management
128. CoDel Algorithm
References
6.3
§6.0.0 Glossaries
ABR Available Bir Rate 10
AQM Active Queue Management 4–6, 15, 20, 29, 31, 35
ATM Asynchronous Transfer Mode 10
BDP Bandwidth × delay 30
CC Congestion Control 5, 6
CSFQ Core Stateless Fair Queuing 21
DiffServ Differentiated Services 4, 6
E2E End-to-End 16
ECN Explicit Congestion Notification 10
EWMA Exponentially Eeighted Moving Average 16, 18
FQ Fair Queuing 21
FRED Fair Random Early Detection 21
FWQ Weighted Fair Queuing 21
IETF Internet Engineering Task Force 29
IntServ Integrated Services 4
IP Internet Protocol 5, 6
MPLS Multiprotocol Label Switching 9
QoS Quality of Service 4, 6
RED Random Early Detection 5, 20, 21, 29, 35
SFQ Stochastic Fair Queuing 21
SLA Service Level Agreement 6
TCP Transport Control Protocol 5, 14
129. TD Tail-Drope 15
UDP User Data Protocol 21
(CS 6/75995: ST: Advances in Networks) Active Queue
Management Summer 2014 3 / 39
Active Queue
Management
Acronyms
Introduction
Introduction
The Role of AQM
Traffic Engineering
AQM
AQM Classifications
Bufferbloat in the
Internet
Understanding
Queues
Controlled Delay
Management
CoDel Algorithm
References
130. 6.4
Introduction Introduction
§6.1.1 Introduction
å Reading list: [1], [3]
Since 1993, there has been a steady stream of research in Active
Queue Management (AQM) 1
Issues
I What are the major attributes of AQM schemes?
I What are the design approaches taken by AQM schemes?
• Heuristic techniques
• Control-theoretic techniques
• Deterministic optimization
I What is the role of AQM w.r.t. Quality of Service (QoS)
provisioning in
• Differentiated Services (DiffServ)?
• Integrated Services (IntServ)?
• Wireless domain?
•
.
.
.
1
We used the words ”buffer” and ”queue” interchangeably
(CS 6/75995: ST: Advances in Networks) Active Queue
Management Summer 2014 4 / 39
131. Active Queue
Management
Acronyms
Introduction
Introduction
The Role of AQM
Traffic Engineering
AQM
AQM Classifications
Bufferbloat in the
Internet
Understanding
Queues
Controlled Delay
Management
CoDel Algorithm
References
6.5
Introduction The Role of AQM
§6.1.2 The Role of AQM I
132. The Role of AQM in Internet Protocol (IP) is to complement the
work
of end-system protocols such as the Transport Control Protocol
(TCP) in Congestion Control (CC) so as to increase:
I Network utilization
I Limit packet loss
I Limit delay
The first proposal for AQM was Random Early Detection (RED)
[2] in
1993.
I Followed by a number of new/augmented/improved proposals
• Some with rigorous analysis
K Some highlighted RED’s drawbacks
The design of RED and many of its variants were heuristic
I As a result, parameter-tuning has been the main limitations
Some researchers have used control theory techniques to
overcome
these limitations
I Classical control
I Modern control
I Optimal control
I Nonlinear control
Others use optimization techniques in the context of Congestion
Control (CC)
(CS 6/75995: ST: Advances in Networks) Active Queue
Management Summer 2014 5 / 39
Active Queue
Management
133. Acronyms
Introduction
Introduction
The Role of AQM
Traffic Engineering
AQM
AQM Classifications
Bufferbloat in the
Internet
Understanding
Queues
Controlled Delay
Management
CoDel Algorithm
References
6.6
Introduction The Role of AQM
§6.1.2 The Role of AQM II
The focus has been shifted from CC to QoS provisioning Why?
I Rapid deployment of data, voice, video and mobility
• Supported by common IP, and
134. • Growing heterogeneous set of communication technologies
I Diverse requirements of the different types of traffic flows
The role of AQM has become a mechanism to support DiffServ
through
I Traffic conditioning
I Packet scheduling
I Controlling
• End-to-end delay
• Delay variation (jitter)
• Packet loss
• Bandwidth
According to mutually agreed Service Level Agreements
(SLAs).
(CS 6/75995: ST: Advances in Networks) Active Queue
Management Summer 2014 6 / 39
Active Queue
Management
Acronyms
Introduction
Traffic Engineering
Traffic Engineering
What is Congestion
Congestion Control
135. Implicit vs. Explicit feedback
TCP Congestion Control
AQM
AQM Classifications
Bufferbloat in the
Internet
Understanding
Queues
Controlled Delay
Management
CoDel Algorithm
References
6.7
Traffic Engineering Traffic Engineering
§6.2.1 Traffic Engineering
Measurement
I To do reality check
Experiment
I To test implementation Issues
Analysis
To bring fundamental understanding of the systems
I May loose important facts because of simplification
Simulation
136. I Complementary to analysis
• To test correctness
• To explore complicate model
I May share similar model to analysis
(CS 6/75995: ST: Advances in Networks) Active Queue
Management Summer 2014 7 / 39
Active Queue
Management
Acronyms
Introduction
Traffic Engineering
Traffic Engineering
What is Congestion
Congestion Control
Implicit vs. Explicit feedback
TCP Congestion Control
AQM
AQM Classifications
Bufferbloat in the
Internet
137. Understanding
Queues
Controlled Delay
Management
CoDel Algorithm
References
6.8
Traffic Engineering What is Congestion
§6.2.2 What is Congestion
Question 6.1 (What is congestion?)
Answer: The aggregate demand for bandwidth exceeds the
available capacity
of a link
Question 6.2 (What are the consequences when congestion
occurs?)
Answer: Performance degradation
Multiple packet losses
Low link utilization (low Throughput)
High queuing delay
Congestion collapse
(CS 6/75995: ST: Advances in Networks) Active Queue
138. Management Summer 2014 8 / 39
Active Queue
Management
Acronyms
Introduction
Traffic Engineering
Traffic Engineering
What is Congestion
Congestion Control
Implicit vs. Explicit feedback
TCP Congestion Control
AQM
AQM Classifications
Bufferbloat in the
Internet
Understanding
Queues
Controlled Delay
Management
CoDel Algorithm
139. References
6.9
Traffic Engineering Congestion Control
§6.2.3 Congestion Control
1 Open-loop control
I No feed-back mechanisms
I Mainly used in circuit switched network Generalized
Multiprotocol Label
Switching (MPLS)
2 Closed-loop control
I Uses feedback information ⇒ global & local
I Mainly used in packet switched network
a Implicit feedback control
• End-to-end congestion control
• Examples: TCP Tahoe, TCP Reno, TCP Vegas, etc.
b Explicit feedback control
• Network-assisted congestion control
• IBM SNA, DECbit, ATM ABR, ICMP source quench, RED,
ECN
Two Basic Approaches
1 Congestion Control (Reactive)
I Play after the network experienced congestion
2 Congestion Avoidance (Proactive)
I Play before he network becomes congested
140. (CS 6/75995: ST: Advances in Networks) Active Queue
Management Summer 2014 9 / 39
Active Queue
Management
Acronyms
Introduction
Traffic Engineering
Traffic Engineering
What is Congestion
Congestion Control
Implicit vs. Explicit feedback
TCP Congestion Control
AQM
AQM Classifications
Bufferbloat in the
Internet
Understanding
Queues
Controlled Delay
Management
141. CoDel Algorithm
References
6.10
Traffic Engineering Implicit vs. Explicit feedback
§6.2.4 Implicit vs. Explicit feedback
1 Implicit feedback Congestion Control
I Network drops packets when congestion occurs
I Source infers congestion implicitly
• It times out
K Duplicated Acks, etc.
Û Duplicated Acks arrive when the time-out is shorter than RTT
I Example: end-to-end TCP congestion Control
I It is a simple to implement but inaccurate ⇓ Why?
• It is implemented only at the transport layer ( L4, e.g., TCP)
2 Explicit feedback Congestion Control
I Router (L3) provides congestion indication explicitly to
sources
• Normally through packet marking
I Examples
• DECbit
• Explicit Congestion Notification (ECN)
• Asynchronous Transfer Mode (ATM) Available Bir Rate
(ABR)
I It provides more accurate information to sources ⇑
I It is more complicate to implement
142. • Need cooperation between source and network
• Need to change both source and network algorithms
(CS 6/75995: ST: Advances in Networks) Active Queue
Management Summer 2014 10 / 39
Active Queue
Management
Acronyms
Introduction
Traffic Engineering
Traffic Engineering
What is Congestion
Congestion Control
Implicit vs. Explicit feedback
TCP Congestion Control
AQM
AQM Classifications
Bufferbloat in the
Internet
Understanding
Queues
144. c
W +1c
Congestion
Avoidance
Exponential growth
Slow Start has two phases
1 Exponential growth phase
• Start with Wc = 1
• For each Ack, Wc := Wc + 1 segment
• For each RTT, Wc := 2 × Wc ⇒ exponential growth
• Until it reaches the threshold Wh , i.e., Wc ≥ Wh
• Wc = Wc/2, then enters Congestion Avoidance phase
2 Congestion avoidance phase (linear growth)
• For each successful ACK Wc := Wc + 1/Wc How?
• For each RTT Wc := Wc + 1
(CS 6/75995: ST: Advances in Networks) Active Queue
Management Summer 2014 11 / 39
Active Queue
Management
Acronyms
Introduction
Traffic Engineering
Traffic Engineering
145. What is Congestion
Congestion Control
Implicit vs. Explicit feedback
TCP Congestion Control
AQM
AQM Classifications
Bufferbloat in the
Internet
Understanding
Queues
Controlled Delay
Management
CoDel Algorithm
References
6.12
Traffic Engineering TCP Congestion Control
§6.2.5 TCP Congestion Control II
Does it do the job?
TCP Tahoe
Uses Slow Start + Fast Retransmission
Reduces the time a sender waits before retransmitting a lost
146. segment
I Triple duplicate Acks are treated the same as a timeout How?
• An indication of segment lost
I The sender retransmits the packet before waiting for its
timeout
Fast retransmit ⇒ an enhancement
I Set Wh = Wc/2
I Set Wc = 1 segment and Slow Start
(CS 6/75995: ST: Advances in Networks) Active Queue
Management Summer 2014 12 / 39
Active Queue
Management
Acronyms
Introduction
Traffic Engineering
Traffic Engineering
What is Congestion
Congestion Control
Implicit vs. Explicit feedback
TCP Congestion Control
AQM
AQM Classifications
147. Bufferbloat in the
Internet
Understanding
Queues
Controlled Delay
Management
CoDel Algorithm
References
6.13
Traffic Engineering TCP Congestion Control
§6.2.5 TCP Congestion Control III
TCP Reno
Uses Tahoe + Fast Recovery
Upon receiving triple duplicate Acks, i.e. packet must have
been lost
and not received after 3 RTTTs
I Sets Wc = Wc/2
I Retransmits the missing segments
I Sets Wc = Wh + 3
Upon receiving next Ack,
I Sets Wc = Wh
It allows the window size grow fast to keep the pipeline full
(CS 6/75995: ST: Advances in Networks) Active Queue
Management Summer 2014 13 / 39
148. Active Queue
Management
Acronyms
Introduction
Traffic Engineering
Traffic Engineering
What is Congestion
Congestion Control
Implicit vs. Explicit feedback
TCP Congestion Control
AQM
AQM Classifications
Bufferbloat in the
Internet
Understanding
Queues
Controlled Delay
Management
CoDel Algorithm
References
149. 6.14
Traffic Engineering TCP Congestion Control
§6.2.5 TCP Congestion Control IV
Additive Increase/Multiplicative Decrease
Additive-increase/multiplicative-decrease (AIMD) algorithm is
a
feedback mechanism used in TCP
I AIMD combines linear growth of the congestion window with
an
exponential reduction when a congestion takes place
Multiple flows using AIMD congestion control will eventually
converge
to use equal amounts of a contended link
Let Wc(t) be the sending rate during time slot t, then
Wc(t + 1) =
{
Wc(t) + a If congestion is not detected
Wc(t)× d If congestion is detected
a > 0, 0 < b < 1 (1)
(CS 6/75995: ST: Advances in Networks) Active Queue
Management Summer 2014 14 / 39
151. AQM AQM
§6.3.1 AQM
TCP performance degradation due
I Multiple packet loss
I Low link utilization
I Congestion collapse
The role of the router becomes important
I Control congestion effectively inside the network How?
I Allocate bandwidth fairly How?
One option is to use FIFO Tail-Drope (TD) queue management
I Two problems with TD
• Lock-out: a small number of flows monopolize the queue
• Full-queue: the buffer is always full ⇒ high queuing delay
One possible solution is AQM
I A group of FIFO based queue management mechanisms to
support
end-to-end congestion control in the Internet
(CS 6/75995: ST: Advances in Networks) Active Queue
Management Summer 2014 15 / 39
Active Queue
Management
Acronyms
Introduction
152. Traffic Engineering
AQM
AQM
AQM Goals
Random Early Detection
(RED)
How about non-responsive
sources?
AQM Classifications
Bufferbloat in the
Internet
Understanding
Queues
Controlled Delay
Management
CoDel Algorithm
References
6.16
AQM Goals AQM Goals
§6.3.2 AQM Goals
Reducing the average queue length
I That decreases the End-to-End (E2E) delay
153. Reducing packet losses How?
I More efficient resource allocation
Method
Drop some packets before buffer becomes full How?
I Some random algorithms
Use Exponentially Eeighted Moving Average (EWMA) of the
queue
length as an congestion indicator Why?
(CS 6/75995: ST: Advances in Networks) Active Queue
Management Summer 2014 16 / 39
Active Queue
Management
Acronyms
Introduction
Traffic Engineering
AQM
AQM
AQM Goals
Random Early Detection
(RED)
How about non-responsive
sources?
154. AQM Classifications
Bufferbloat in the
Internet
Understanding
Queues
Controlled Delay
Management
CoDel Algorithm
References
6.17
AQM Goals Random Early Detection (RED)
§6.3.3 Random Early Detection (RED) I
TCP (Tahoe, Reno, Vegas) detect congestion after a buffer at an
intermediate router is full
RED provides a warning to sources ⇒
I It detects incipient congestion
Congestion measure ⇒ Average queue length
Q(t + 1) = [Q(t) + λ(t)−µ(t)]+
RED objectives
1 Congestion avoidance ⇒ proactive rather than reactive
I Detect the onset of congestion, rather than react to it
I Maintain the optimal region of high throughput and low delay
155. 2 Avoid bias against bursty traffic
I Probabilistic drop/mark
3 Preventing global synchronization or traffic oscillation
4 Bounded average queue length
5 Accommodating an equitable distribution of packet loss
I Fairness
6 Providing a lower delay or a lower jitter (delay variation)
(CS 6/75995: ST: Advances in Networks) Active Queue
Management Summer 2014 17 / 39
Active Queue
Management
Acronyms
Introduction
Traffic Engineering
AQM
AQM
AQM Goals
Random Early Detection
(RED)
How about non-responsive
156. sources?
AQM Classifications
Bufferbloat in the
Internet
Understanding
Queues
Controlled Delay
Management
CoDel Algorithm
References
6.18
AQM Goals Random Early Detection (RED)
§6.3.3 Random Early Detection (RED) II
1 Uses EWMA Why?
Q =
(1 − Wq)× Q + Wq × Q if Q 6= 0
(1 − Wq)m × Q otherwise,
(2)
I Wq determines how rapidly Q w.r.t. Q,
157. I m accounts for the periods when the queue has been empty
• m estimates the number of packets that could have been
transmitted during an
idle period.
2 Probabilistically drops/marks packets
I Marking require ECN bit (RFC 2481)
It uses two thresholds Th and T` to control the growth of the
queue
(CS 6/75995: ST: Advances in Networks) Active Queue
Management Summer 2014 18 / 39
Active Queue
Management
Acronyms
Introduction
Traffic Engineering
AQM
AQM
AQM Goals
Random Early Detection
(RED)
How about non-responsive
sources?
158. AQM Classifications
Bufferbloat in the
Internet
Understanding
Queues
Controlled Delay
Management
CoDel Algorithm
References
6.19
AQM Goals Random Early Detection (RED)
§6.3.3 Random Early Detection (RED) III
Q
QmaxThTℓ
p
1
0
Pmax
If Q < T` accept the packet
If Q ≥ Th mark/drop the packet
If T` ≤ Q < Th mark/drop probabilistically with, Pa
159. (3)
Q is calculated at the packet arrival times
I Rather than at a fixed time interval Why?
Within the region [T`, Th), the probability of packet discard
depends
on the proximity of Q to Th and it is bounded by Pmax
When T` ≤ Q < Th, Pb increases linearly from zero to Pmax
Pb = Pmax ×
(Q − T`)
(Th − T`)
(4)
(CS 6/75995: ST: Advances in Networks) Active Queue
Management Summer 2014 19 / 39
Active Queue
Management
Acronyms
Introduction
Traffic Engineering
AQM
AQM
AQM Goals
160. Random Early Detection
(RED)
How about non-responsive
sources?
AQM Classifications
Bufferbloat in the
Internet
Understanding
Queues
Controlled Delay
Management
CoDel Algorithm
References
6.20
AQM Goals Random Early Detection (RED)
§6.3.3 Random Early Detection (RED) IV
To mitigate any bias against bursty traffic, RED uses c,
I The number of consecutive packets that have escaped discard,
into the
probability of discard
As c increases, the probability of discard also increases
I This avoids penalizing bursty traffic by spacing the discards
quite evenly
161. rather than in a cluster
Pa modifies Pb by 11−c×Pb ,
Pa = Pb ×
1
1 − c × Pb
(5)
Performance
I Desynchronization works well ⇑
I Very sensitive to parameter setting ⇓
I Fails to prevent buffer overflow as the number of sources
increases ⇓
Over 100 AQM have been developed since RED ⇒ see [1]
(CS 6/75995: ST: Advances in Networks) Active Queue
Management Summer 2014 20 / 39
Active Queue
Management
Acronyms
Introduction
Traffic Engineering
AQM
AQM
162. AQM Goals
Random Early Detection
(RED)
How about non-responsive
sources?
AQM Classifications
Bufferbloat in the
Internet
Understanding
Queues
Controlled Delay
Management
CoDel Algorithm
References
6.21
AQM Goals How about non-responsive sources?
§6.3.4 How about non-responsive sources?
Generally, User Data Protocol (UDP) is non-responsive
What routers want to do
I Isolate non-responsive flows
I Provide Quality of Service to all users
Two ways to do that
1 Scheduling algorithms
• Fair Queuing (FQ)
163. • Weighted Fair Queuing (FWQ)
• Core Stateless Fair Queuing (CSFQ)
• Stochastic Fair Queuing (SFQ)
2 Queue management algorithms
• RED
• Fair Random Early Detection (FRED)
• vdots
(CS 6/75995: ST: Advances in Networks) Active Queue
Management Summer 2014 21 / 39
Active Queue
Management
Acronyms
Introduction
Traffic Engineering
AQM
AQM Classifications
Classification Based on
Congestion Control
Classification By
Mechanisms
Bufferbloat in the
Internet
Understanding
164. Queues
Controlled Delay
Management
CoDel Algorithm
References
6.22
AQM Classifications Classification Based on Congestion
Control
§6.4.1 Classification Based on Congestion Control
LocalGloba
Responsive
Persistent
(global)
Implicit
feed−back
(global)
Explicit
feed−back
Closed loop control
Source control Destination control
Open loop control
165. AQM Schemes
Open-loop flow/congestion control
I No feedback mechanism between the receiver and the
transmitter
• Maximizing the utilization of network resources
I It has two controls
• Controller
• Regulator ⇒ alters the input variable in response to the signal
from the controller
Closed-loop flow/congestion control
I The network/node can report pending network congestion back
to the
transmitter
I It has some basic control elements
• Sensor, controller, regulator, and transmitter
(CS 6/75995: ST: Advances in Networks) Active Queue
Management Summer 2014 22 / 39
Active Queue
Management
Acronyms
Introduction
Traffic Engineering
AQM
166. AQM Classifications
Classification Based on
Congestion Control
Classification By
Mechanisms
Bufferbloat in the
Internet
Understanding
Queues
Controlled Delay
Management
CoDel Algorithm
References
6.23
AQM Classifications Classification By Mechanisms
§6.4.2 Classification By Mechanisms I
Based on Congestion Indicator
Congestion
Indicator
Queue-based
167. Enqueue events only ⇒ RED, GRED,CHOKEe,DRED
Enqueue & Dequeue events ⇒ FRED
Rate-based
Arrival rate ⇒ LUBA,SFED,RARED
Congestion window size ⇒ SHRED
Load-based
Flow count ⇒ GREEN, BLACK, SFED
Traffic composition ⇒ RED Worcester
Packet Loss
Loss volume ⇒ LRED
# of buffer over/under flow events ⇒ BLUE
Mixture
{
168. ⇒ Load/Delay controllers, Yellow
(CS 6/75995: ST: Advances in Networks) Active Queue
Management Summer 2014 23 / 39
Active Queue
Management
Acronyms
Introduction
Traffic Engineering
AQM
AQM Classifications
Classification Based on
Congestion Control
Classification By
Mechanisms
Bufferbloat in the
Internet
Understanding
Queues
Controlled Delay
Management
CoDel Algorithm
169. References
6.24
AQM Classifications Classification By Mechanisms
§6.4.2 Classification By Mechanisms II
Based on Parameter Tuning
Parameter
Tuning
Static
{
⇒ RED, GRED
Dynamic
Network Load ⇒ GREEN
Bandwidth × Distance ⇒ - - -
Round-Trip-Time ⇒ GREEN
Link Capacity ⇒ GREEN
Mixture
{
170. ⇒ ARED, A-RIO, PSAND
(CS 6/75995: ST: Advances in Networks) Active Queue
Management Summer 2014 24 / 39
Active Queue
Management
Acronyms
Introduction
Traffic Engineering
AQM
AQM Classifications
Classification Based on
Congestion Control
Classification By
Mechanisms
Bufferbloat in the
Internet
Understanding
Queues
Controlled Delay
Management
CoDel Algorithm
171. References
6.25
AQM Classifications Classification By Mechanisms
§6.4.2 Classification By Mechanisms III
Based on Flow Differentiation
Flow
Differentiation
None
{
⇒ RED, GRED
Flow
aggregates
Two-class system: (Non)Responsive⇒ Stochastic Fair BLUE,
RIO-C
Two-class system: Web vs. FTP⇒ SHRED
Multiple-class system⇒ RIO-DC, WRED,Rb-RIO, D-CBT,
SFED
Individual
172. flows
{
⇒ FRED, BRED, BLACK
(CS 6/75995: ST: Advances in Networks) Active Queue
Management Summer 2014 25 / 39
Active Queue
Management
Acronyms
Introduction
Traffic Engineering
AQM
AQM Classifications
Classification Based on
Congestion Control
Classification By
Mechanisms
Bufferbloat in the
Internet
Understanding
Queues
Controlled Delay
Management
173. CoDel Algorithm
References
6.26
AQM Classifications Classification By Mechanisms
§6.4.2 Classification By Mechanisms IV
Based on Control Function
Control
Function
Heuristic
Equation-based ⇒ RED, GRED,Hyperbola RED, DSDRED
Non-equation-based ⇒ MRED
Control-Theoretic
Classic and Modern Control ⇒ PI, PD, GPC, PI-PD, PD-PD, ...
Fuzzy Control ⇒ Fuzzy control RED, Adaptive Fuzzy RED, ...
174. Optimization
Deterministic ⇒ REM, AVQ, SVB
Stochastic ⇒ - - -
Neural Networks ⇒ Neural Network-based PID controller
(CS 6/75995: ST: Advances in Networks) Active Queue
Management Summer 2014 26 / 39
Active Queue
Management
Acronyms
Introduction
Traffic Engineering
AQM
AQM Classifications
Classification Based on
Congestion Control
Classification By
Mechanisms
Bufferbloat in the
Internet
176. Random ⇒ RED, REM, G
Deterministic ⇒ AVQ
(CS 6/75995: ST: Advances in Networks) Active Queue
Management Summer 2014 27 / 39
Active Queue
Management
Acronyms
Introduction
Traffic Engineering
AQM
AQM Classifications
Bufferbloat in the
Internet
Bufferbloat in the Internet
Understanding
Queues
Controlled Delay
Management
CoDel Algorithm
177. References
6.28
Bufferbloat in the Internet Bufferbloat in the Internet
§6.5.1 Bufferbloat in the Internet I
Bufferbloat is the existence of excessively large and frequently
full
buffers inside the network [4], [3]
Bufferbloat is due to
1 More available and cheap memory
• Resulted in buffer proliferation
2 At the edge buffers become extremely oversized due to
• Dynamically varying path characteristics
• Link rates and path delays fall below nominal values
Unmanaged large buffers are more critical these days
I Delay-sensitive applications are more prevalent
I Streaming
Packet networks require buffers to absorb short-term arrival rate
fluctuations
Buffers tend to fill up and remain full at congested links
I Results in excessive traffic delay and packet loss
I Missing their intended function to absorb bursts
(CS 6/75995: ST: Advances in Networks) Active Queue
Management Summer 2014 28 / 39
Active Queue
Management