Flow Caching for High Entropy Packet Fields

Size: px
Start display at page:

Download "Flow Caching for High Entropy Packet Fields"

Transcription

1 Flow Caching for High Entropy Packet Fields Nick Shelly Nick McKeown! Ethan Jackson Teemu Koponen Jarno Rajahalme

2 Outline Current flow classification in OVS Problems with high entropy packets Proposed ideas Benchmarking Why it works

3 Definitions Flow classification Header space and wildcard bits: for the rule with match 10xx, packets 1011 and 1010 have the same action. High vs low entropy fields: Packet 1 L2 L3 L4 Port MAC src MAC dst IP src IP dst TP src TP dst 2 00:11:22:33:44:55 00:11:22:33:44: Low entropy fields High entropy field Packet 2 L2 L3 L4 Port MAC src MAC dst IP src IP dst TP src TP dst 2 00:11:22:33:44:55 00:11:22:33:44:

4 Flow classification in OVS Slow path OpenFlow Pipeline! src= ,dst= ,tp_src=39245,tp_dst=80 L2 L3 ACL L3 L2 src= ,dst= ,tp_src=80,tp_dst=39245 src= ,dst= ,tp_src=2351,tp_dst=8080 src= ,dst= ,tp_src=40356,tp_dst=80 Fast path Exact Match Cache! src= ,dst= ,tp_src=39245,tp_dst=80 output:1 src= ,dst= ,tp_src=80,tp_dst=39245 output:2 src= ,dst= ,tp_src=2351,tp_dst=8080 drop src= ,dst= ,tp_src=40356,tp_dst=80 output:1

5 Megaflow Cache Slow path OpenFlow Pipeline! L2 L3 ACL L3 L2 src= ,dst= ,tp_src=39245,tp_dst=80 src= ,dst= ,tp_src=80,tp_dst=39245 L3 Table src= ,dst= ,tp_src=40356,tp_dst=80 src= ,dst= ,tp_src=2351,tp_dst=8080 MATCH ACTIONS nw_src == /8, nw_dst == /8 output:1 nw_src == /8, nw_dst == /8 output:2 Fast path Megaflow Cache! src= /8,dst= /8,tp_src=*,tp_dst=* src= /8,dst= /8,tp_src=*,tp_dst=* src= /8,dst= /8,tp_src=*,tp_dst=* output:1 output:2 drop

6 Megaflow Cache OpenFlow Pipeline! Slow path L2 L3 ACL L3 L2 L3 Table MATCH nw_src == /8, nw_dst == /8 nw_src == /8, nw_dst == /8 ACTIONS output:1 output:2 Fast path Megaflow Cache! src= /8,dst= /8,tp_src=*,tp_dst=* src= /8,dst= /8,tp_src=*,tp_dst=* src=*,dst= /8,tp_src=*,tp_dst=* drop output:1 output:2

7 OVS slow path Relies on OpenFlow table pipeline Must handle highly complicated lookups arbitrary packet metadata, recursion Computationally expensive Lots of repeat lookup sequences for packets that only differ by 1 or 2 bits

8 Ideal fast path! Constant time lookup Easy to compute entries (translate from OpenFlow tables) Flexible for any number of OpenFlow fields Reasonable memory (we cannot cache every single packet) Easy to implement and maintain (in software)

9 Proposal 1. Pro-active processing Table 1 Table 2 RULE PRIORITY MATCH ACTIONS 1 10 tp_dst == 80 drop RULE PRIORITY MATCH ACTIONS reg4 == 1 output:2 2 5 tp_dst == 443 drop 3 5 tp_dst == xx reg4 <= 1, resubmit: table 2 Cross-product Table MATCH ACTIONS tp_dst == 80 drop Table 1, Rule 1 tp_dst == 443 drop Table 1, Rule 2 Header space notation: tp_dst == xx - {80 U 443 } tp_dst == 0-79, , reg4 <= 1, output: 2 Table 1, Rule 3 then Table 2, Rule 1

10 Proposal 1. Pro-active processing But, how do we translate a header space, with a union, to wildcarded rules? RULE PRIORITY MATCH ACTIONS A 10 tp_dst == 0101 drop B 5 tp_dst == 0110 drop hc = C A B = C (A B) = C (A B) C 5 tp_dst == xxxx output: 2 Union minimization is an NP problem, so good heuristics is key

11 Proposal 2. Re-active processing Goal: For each new packet, install one wildcarded flow in the cache to match as many packets as possible RULE PRIORITY MATCH ACTIONS A 10 tp_dst == 0101 drop B 5 tp_dst == 0110 drop C 5 tp_dst == xxxx output: 2 New packet, p: p = 1010 New cached flow: MATCH ACTIONS tp_dst = 1xxxx output: 2 Doesn t cover the entire header space, hc, but a good heuristic (with 100 ACLs, ~80% of true header space)

12 Proposal 2. Re-active processing Problem: Too many flow masks for most rule sets (easier to hash just on a few masks) Fast path cache FLOW MASK xxx xxxx 0xxx xxxx RULES xx xxxx 10xx xxxx x xxxx 101x xxxx 111x xxxx 011x xxxx xxxx 0011 xxxx 1011 xxxx Use decision tree to un-wildcard flows in order, maximum of N masks (for N-bit high entropy field)

13 Comparison in performance COMMON MATCH DECISION TREE ACLS FLOWS MASKS % OPT FLOWS MASKS % OPT % % % % %

14 Comparison in cache size Can handle up to 1000 higher priority rules (ACLs) with only 5K entries Common Match Classifier LPM Classifier # of cache entries Common Match Megaflows LPM Megaflows # of masks # of ACLs # of ACLs Longest prefix (decision tree) is better with the number of masks

15 Future work! How does the number of hash masks affect run time? What is the effect of even more high entropy fields on the number of cache entries and coverage (optimal flow)? Can we adapt the classifier to different rule sets, exploiting traffic localities? Map one packet to more than one flow in the cache?

16 Questions?

Open vswitch is the most widely used virtual switch in cloud environments.

Open vswitch is the most widely used virtual switch in cloud environments. BEN PFAFF, JUSTIN PETTIT, TEEMU KOPONEN, ETHAN J. JACKSON, ANDY ZHOU, JARNO RAJAHALME, JESSE GROSS, ALEX WANG, JONATHAN STRINGER, PRAVIN SHELAR, KEITH AMIDON, AND MARTIN CASADO Ben Pfaff is a Lead Developer

More information

Programmable Software Switches. Lecture 11, Computer Networks (198:552)

Programmable Software Switches. Lecture 11, Computer Networks (198:552) Programmable Software Switches Lecture 11, Computer Networks (198:552) Software-Defined Network (SDN) Centralized control plane Data plane Data plane Data plane Data plane Why software switching? Early

More information

Slicing a Network. Software-Defined Network (SDN) FlowVisor. Advanced! Computer Networks. Centralized Network Control (NC)

Slicing a Network. Software-Defined Network (SDN) FlowVisor. Advanced! Computer Networks. Centralized Network Control (NC) Slicing a Network Advanced! Computer Networks Sherwood, R., et al., Can the Production Network Be the Testbed? Proc. of the 9 th USENIX Symposium on OSDI, 2010 Reference: [C+07] Cascado et al., Ethane:

More information

Network Virtualization in Multi-tenant Datacenters

Network Virtualization in Multi-tenant Datacenters Network Virtualization in Multi-tenant Datacenters Teemu Koponen, Keith Amidon, Peter Balland, Martín Casado, Anupam Chanda, Bryan Fulton, Igor Ganichev, Jesse Gross, Natasha Gude, Paul Ingram, Ethan Jackson,

More information

Router Design: Table Lookups and Packet Scheduling EECS 122: Lecture 13

Router Design: Table Lookups and Packet Scheduling EECS 122: Lecture 13 Router Design: Table Lookups and Packet Scheduling EECS 122: Lecture 13 Department of Electrical Engineering and Computer Sciences University of California Berkeley Review: Switch Architectures Input Queued

More information

lecture 18: network virtualization platform (NVP) 5590: software defined networking anduo wang, Temple University TTLMAN 401B, R 17:30-20:00

lecture 18: network virtualization platform (NVP) 5590: software defined networking anduo wang, Temple University TTLMAN 401B, R 17:30-20:00 lecture 18: network virtualization platform (NVP) 5590: software defined networking anduo wang, Temple University TTLMAN 401B, R 17:30-20:00 Network Virtualization in multi-tenant Datacenters Teemu Koponen.,

More information

IP Forwarding. CSU CS557, Spring 2018 Instructor: Lorenzo De Carli

IP Forwarding. CSU CS557, Spring 2018 Instructor: Lorenzo De Carli IP Forwarding CSU CS557, Spring 2018 Instructor: Lorenzo De Carli 1 Sources George Varghese, Network Algorithmics, Morgan Kauffmann, December 2004 L. De Carli, Y. Pan, A. Kumar, C. Estan, K. Sankaralingam,

More information

Stochastic Pre-Classification for SDN Data Plane Matching

Stochastic Pre-Classification for SDN Data Plane Matching Stochastic Pre-Classification for SDN Data Plane Matching Luke McHale, C. Jasson Casey, Paul V. Gratz, Alex Sprintson Presenter: Luke McHale Ph.D. Student, Texas A&M University Contact: luke.mchale@tamu.edu

More information

CS 4226: Internet Architecture

CS 4226: Internet Architecture Software Defined Networking Richard T. B. Ma School of Computing National University of Singapore Material from: Scott Shenker (UC Berkeley), Nick McKeown (Stanford), Jennifer Rexford (Princeton) CS 4226:

More information

Hash Table Design and Optimization for Software Virtual Switches

Hash Table Design and Optimization for Software Virtual Switches Hash Table Design and Optimization for Software Virtual Switches P R E S E N T E R : R E N WA N G Y I P E N G WA N G, S A M E H G O B R I E L, R E N WA N G, C H A R L I E TA I, C R I S T I A N D U M I

More information

Rule Caching in Software- Define Networkings. Supervisor: Prof Weifa Liang Student: Zhenge Jia, u Date of presentation: 24 th May 2016

Rule Caching in Software- Define Networkings. Supervisor: Prof Weifa Liang Student: Zhenge Jia, u Date of presentation: 24 th May 2016 Rule Caching in Software- Define Networkings Supervisor: Prof Weifa Liang Student: Zhenge Jia, u5433077 Date of presentation: 24 th May 2016 Background Related Work System Model CONTENT Wildcard Rule Caching

More information

EECS 122: Introduction to Computer Networks Switch and Router Architectures. Today s Lecture

EECS 122: Introduction to Computer Networks Switch and Router Architectures. Today s Lecture EECS : Introduction to Computer Networks Switch and Router Architectures Computer Science Division Department of Electrical Engineering and Computer Sciences University of California, Berkeley Berkeley,

More information

Decision Forest: A Scalable Architecture for Flexible Flow Matching on FPGA

Decision Forest: A Scalable Architecture for Flexible Flow Matching on FPGA Decision Forest: A Scalable Architecture for Flexible Flow Matching on FPGA Weirong Jiang, Viktor K. Prasanna University of Southern California Norio Yamagaki NEC Corporation September 1, 2010 Outline

More information

Switch and Router Design. Packet Processing Examples. Packet Processing Examples. Packet Processing Rate 12/14/2011

Switch and Router Design. Packet Processing Examples. Packet Processing Examples. Packet Processing Rate 12/14/2011 // Bottlenecks Memory, memory, 88 - Switch and Router Design Dr. David Hay Ross 8b dhay@cs.huji.ac.il Source: Nick Mckeown, Isaac Keslassy Packet Processing Examples Address Lookup (IP/Ethernet) Where

More information

Software Defined Networks

Software Defined Networks Software Defined Networks A quick overview Based primarily on the presentations of Prof. Scott Shenker of UC Berkeley The Future of Networking, and the Past of Protocols Please watch the YouTube video

More information

Scalable Enterprise Networks with Inexpensive Switches

Scalable Enterprise Networks with Inexpensive Switches Scalable Enterprise Networks with Inexpensive Switches Minlan Yu minlanyu@cs.princeton.edu Princeton University Joint work with Alex Fabrikant, Mike Freedman, Jennifer Rexford and Jia Wang 1 Enterprises

More information

Generic Architecture. EECS 122: Introduction to Computer Networks Switch and Router Architectures. Shared Memory (1 st Generation) Today s Lecture

Generic Architecture. EECS 122: Introduction to Computer Networks Switch and Router Architectures. Shared Memory (1 st Generation) Today s Lecture Generic Architecture EECS : Introduction to Computer Networks Switch and Router Architectures Computer Science Division Department of Electrical Engineering and Computer Sciences University of California,

More information

Experiences with Programmable Dataplanes

Experiences with Programmable Dataplanes Experiences with Programmable Dataplanes Ronald van der Pol SURFnet Overview MoLvaLon for Programmable Dataplanes OpenFlow and Pipelines Various Network Silicon Table Type PaQterns (TTPs) and P4 Summary

More information

Problem Statement. Algorithm MinDPQ (contd.) Algorithm MinDPQ. Summary of Algorithm MinDPQ. Algorithm MinDPQ: Experimental Results.

Problem Statement. Algorithm MinDPQ (contd.) Algorithm MinDPQ. Summary of Algorithm MinDPQ. Algorithm MinDPQ: Experimental Results. Algorithms for Routing Lookups and Packet Classification October 3, 2000 High Level Outline Part I. Routing Lookups - Two lookup algorithms Part II. Packet Classification - One classification algorithm

More information

CS 268: Route Lookup and Packet Classification

CS 268: Route Lookup and Packet Classification Overview CS 268: Route Lookup and Packet Classification Packet Lookup Packet Classification Ion Stoica March 3, 24 istoica@cs.berkeley.edu 2 Lookup Problem Identify the output interface to forward an incoming

More information

4. Miscellaneous: network virtualization

4. Miscellaneous: network virtualization 4. Miscellaneous: network virtualization Protocols for Data Networks (aka Advanced Computer Networks) Lecture plan 1. B. Pfaff et al., Design and implementation of Open vswitch, NSDI 15 and B. Pfaff et

More information

Software-Defined Networking (Continued)

Software-Defined Networking (Continued) Software-Defined Networking (Continued) CS640, 2015-04-23 Announcements Assign #5 released due Thursday, May 7 at 11pm Outline Recap SDN Stack Layer 2 Learning Switch Control Application Design Considerations

More information

ECE697AA Lecture 21. Packet Classification

ECE697AA Lecture 21. Packet Classification ECE697AA Lecture 21 Routers: Flow Classification Algorithms Tilman Wolf Department of Electrical and Computer Engineering 11/20/08 Packet Classification What is packet classification? Categorization of

More information

Network Processors. Nevin Heintze Agere Systems

Network Processors. Nevin Heintze Agere Systems Network Processors Nevin Heintze Agere Systems Network Processors What are the packaging challenges for NPs? Caveat: I know very little about packaging. Network Processors What are the packaging challenges

More information

Chapter 5 Network Layer: The Control Plane

Chapter 5 Network Layer: The Control Plane Chapter 5 Network Layer: The Control Plane A note on the use of these Powerpoint slides: We re making these slides freely available to all (faculty, students, readers). They re in PowerPoint form so you

More information

IPv4 ACLs, identified by ACL numbers, fall into four categories, as shown in Table 1. Table 1 IPv4 ACL categories

IPv4 ACLs, identified by ACL numbers, fall into four categories, as shown in Table 1. Table 1 IPv4 ACL categories Table of Contents ACL Configuration 1 ACL Overview 1 IPv4 ACL Classification 1 IPv4 ACL Rule Order 1 Rule Numbering Step with IPv4 ACLs 3 Effective Time Period of an IPv4 ACL 3 IP Fragments Filtering with

More information

Networking in virtual environments

Networking in virtual environments Networking in virtual environments Guillaume Urvoy-Keller January 7, 2018 1 / 36 Source documents Teemu Koponen, Keith Amidon, Peter Balland, Martín Casado, Anupam Chanda, Bryan Fulton, Igor Ganichev,

More information

TOC: Switching & Forwarding

TOC: Switching & Forwarding TOC: Switching & Forwarding Why? Switching Techniques Switch Characteristics Switch Examples Switch Architectures Summary TOC Switching Why? Direct vs. Switched Networks: n links Single link Direct Network

More information

Introduction to Software-Defined Networking UG3 Computer Communications & Networks (COMN)

Introduction to Software-Defined Networking UG3 Computer Communications & Networks (COMN) Introduction to Software-Defined Networking UG3 Computer Communications & Networks (COMN) Myungjin Lee myungjin.lee@ed.ac.uk Courtesy note: Slides from course CPS514 Spring 2013 at Duke University and

More information

Multi-gigabit Switching and Routing

Multi-gigabit Switching and Routing Multi-gigabit Switching and Routing Gignet 97 Europe: June 12, 1997. Nick McKeown Assistant Professor of Electrical Engineering and Computer Science nickm@ee.stanford.edu http://ee.stanford.edu/~nickm

More information

Homework 1 Solutions:

Homework 1 Solutions: Homework 1 Solutions: If we expand the square in the statistic, we get three terms that have to be summed for each i: (ExpectedFrequency[i]), (2ObservedFrequency[i]) and (ObservedFrequency[i])2 / Expected

More information

CSC 401 Data and Computer Communications Networks

CSC 401 Data and Computer Communications Networks CSC 401 Data and Computer Communications Networks Network Layer ICMP (5.6), Network Management(5.7) & SDN (5.1, 5.5, 4.4) Prof. Lina Battestilli Fall 2017 Outline 5.6 ICMP: The Internet Control Message

More information

ITTC High-Performance Networking The University of Kansas EECS 881 Packet Switch I/O Processing

ITTC High-Performance Networking The University of Kansas EECS 881 Packet Switch I/O Processing High-Performance Networking The University of Kansas EECS 881 Packet Switch I/O Processing James P.G. Sterbenz Department of Electrical Engineering & Computer Science Information Technology & Telecommunications

More information

CS 5114 Network Programming Languages Data Plane. Nate Foster Cornell University Spring 2013

CS 5114 Network Programming Languages Data Plane. Nate Foster Cornell University Spring 2013 CS 5114 Network Programming Languages Data Plane http://www.flickr.com/photos/rofi/2097239111/ Nate Foster Cornell University Spring 2013 Based on lecture notes by Jennifer Rexford and Michael Freedman

More information

Software Defined Networking

Software Defined Networking Software Defined Networking Jennifer Rexford COS 461: Computer Networks Lectures: MW 10-10:50am in Architecture N101 http://www.cs.princeton.edu/courses/archive/spr12/cos461/ The Internet: A Remarkable

More information

OpenFlow Ronald van der Pol

OpenFlow Ronald van der Pol OpenFlow Ronald van der Pol Outline! Goal of this project! Why OpenFlow?! Basics of OpenFlow! Short Demo OpenFlow Overview! Initiative of Stanford University! Run network research experiments

More information

Server virtualization

Server virtualization Server virtualization Ankit Singla ETH Zürich P. Brighten Godfrey UIUC The cloud depends on it, virtually The cloud depends on it, virtually Sharing of physical infrastructure The cloud depends on it,

More information

Topics for Today. Network Layer. Readings. Introduction Addressing Address Resolution. Sections 5.1,

Topics for Today. Network Layer. Readings. Introduction Addressing Address Resolution. Sections 5.1, Topics for Today Network Layer Introduction Addressing Address Resolution Readings Sections 5.1, 5.6.1-5.6.2 1 Network Layer: Introduction A network-wide concern! Transport layer Between two end hosts

More information

T4P4S: When P4 meets DPDK. Sandor Laki DPDK Summit Userspace - Dublin- 2017

T4P4S: When P4 meets DPDK. Sandor Laki DPDK Summit Userspace - Dublin- 2017 T4P4S: When P4 meets DPDK Sandor Laki DPDK Summit Userspace - Dublin- 2017 What is P4? Domain specific language for programming any kind of data planes Flexible, protocol and target independent Re-configurable

More information

IP Address Lookup and Packet Classification Algorithms

IP Address Lookup and Packet Classification Algorithms IP Address Lookup and Packet Classification Algorithms Zhen Xu, Jeff Nie, Xuehong Sun, and Yiqiang Q. Zhao School of Mathematics and Statistics, Carleton University Outline 1. Background 2. Two IP Address

More information

ClassBench-ng: Recasting ClassBench After a Decade of Network Evolution

ClassBench-ng: Recasting ClassBench After a Decade of Network Evolution ClassBench-ng: Recasting ClassBench After a Decade of Network Evolution Jiří Matoušek 1, Gianni Antichi 2, Adam Lučanský 3 Andrew W. Moore 2, Jan Kořenek 1 1 Brno University of Technology 2 University

More information

Routers Technologies & Evolution for High-Speed Networks

Routers Technologies & Evolution for High-Speed Networks Routers Technologies & Evolution for High-Speed Networks C. Pham Université de Pau et des Pays de l Adour http://www.univ-pau.fr/~cpham Congduc.Pham@univ-pau.fr Router Evolution slides from Nick McKeown,

More information

TOC: Switching & Forwarding

TOC: Switching & Forwarding TOC: Switching & Forwarding Why? Switching Techniques Switch Characteristics Switch Examples Switch Architectures Summary Why? Direct vs. Switched Networks: Single link Switches Direct Network Limitations:

More information

Lecture 12: Aggregation. CSE 123: Computer Networks Alex C. Snoeren

Lecture 12: Aggregation. CSE 123: Computer Networks Alex C. Snoeren Lecture 12: Aggregation CSE 123: Computer Networks Alex C. Snoeren Lecture 12 Overview Subnetting Classless addressing Route aggregation 2 Class-based Addressing Most significant bits determines class

More information

Hardware Assisted Recursive Packet Classification Module for IPv6 etworks ABSTRACT

Hardware Assisted Recursive Packet Classification Module for IPv6 etworks ABSTRACT Hardware Assisted Recursive Packet Classification Module for IPv6 etworks Shivvasangari Subramani [shivva1@umbc.edu] Department of Computer Science and Electrical Engineering University of Maryland Baltimore

More information

Packet Classification. George Varghese

Packet Classification. George Varghese Packet Classification George Varghese Original Motivation: Firewalls Firewalls use packet filtering to block say ssh and force access to web and mail via proxies. Still part of defense in depth today.

More information

1 Connectionless Routing

1 Connectionless Routing UCSD DEPARTMENT OF COMPUTER SCIENCE CS123a Computer Networking, IP Addressing and Neighbor Routing In these we quickly give an overview of IP addressing and Neighbor Routing. Routing consists of: IP addressing

More information

OPENFLOW & SOFTWARE DEFINED NETWORKING. Greg Ferro EtherealMind.com and PacketPushers.net

OPENFLOW & SOFTWARE DEFINED NETWORKING. Greg Ferro EtherealMind.com and PacketPushers.net OPENFLOW & SOFTWARE DEFINED NETWORKING Greg Ferro EtherealMind.com and PacketPushers.net 1 HUH? OPENFLOW. What is OpenFlow? From the bottom up. With big words. How OpenFlow does stuff. Then WHY we want

More information

Concise Encoding of Flow Attributes in SDN Switches

Concise Encoding of Flow Attributes in SDN Switches Concise Encoding of Flow Attributes in SDN Switches Robert MacDavid*, Rüdiger Birkner, Ori Rottenstreich*, Arpit Gupta*, Nick Feamster*, Jennifer Rexford* *Princeton University, ETH Zürich 1 Motivation

More information

Communication Networks

Communication Networks Communication Networks Prof. Laurent Vanbever Exercises week 6 VLAN, Internet Protocol & Forwarding VLAN The network below consists of 9 switches and hosts in two different VLANs (blue and red). Compute

More information

Agilio OVS Software Architecture

Agilio OVS Software Architecture WHITE PAPER Agilio OVS Software Architecture FOR SERVER-BASED NETWORKING THERE IS CONSTANT PRESSURE TO IMPROVE SERVER- BASED NETWORKING PERFORMANCE DUE TO THE INCREASED USE OF SERVER AND NETWORK VIRTUALIZATION

More information

Master Course Computer Networks IN2097

Master Course Computer Networks IN2097 Chair for Network Architectures and Services Prof. Carle Department for Computer Science TU München Master Course Computer Networks IN2097 Prof. Dr.-Ing. Georg Carle Christian Grothoff, Ph.D. Chair for

More information

Where we are in the Course

Where we are in the Course Network Layer Where we are in the Course Moving on up to the Network Layer! Application Transport Network Link Physical CSE 461 University of Washington 2 Network Layer How to connect different link layer

More information

DevoFlow: Scaling Flow Management for High Performance Networks

DevoFlow: Scaling Flow Management for High Performance Networks DevoFlow: Scaling Flow Management for High Performance Networks SDN Seminar David Sidler 08.04.2016 1 Smart, handles everything Controller Control plane Data plane Dump, forward based on rules Existing

More information

Software Defined Networking

Software Defined Networking CSE343/443 Lehigh University Fall 2015 Software Defined Networking Presenter: Yinzhi Cao Lehigh University Acknowledgement Many materials are borrowed from the following links: https://www.cs.duke.edu/courses/spring13/compsc

More information

Implementation of Boundary Cutting Algorithm Using Packet Classification

Implementation of Boundary Cutting Algorithm Using Packet Classification Implementation of Boundary Cutting Algorithm Using Packet Classification Dasari Mallesh M.Tech Student Department of CSE Vignana Bharathi Institute of Technology, Hyderabad. ABSTRACT: Decision-tree-based

More information

Lecture 12: Addressing. CSE 123: Computer Networks Alex C. Snoeren

Lecture 12: Addressing. CSE 123: Computer Networks Alex C. Snoeren Lecture 12: Addressing CSE 123: Computer Networks Alex C. Snoeren Lecture 12 Overview IP Addresses Class-based addressing Subnetting Classless addressing Route aggregation 2 Addressing Considerations Fixed

More information

Master Course Computer Networks IN2097

Master Course Computer Networks IN2097 Chair for Network Architectures and Services Prof. Carle Department for Computer Science TU München Chair for Network Architectures and Services Prof. Carle Department for Computer Science TU München Master

More information

Fix VxLAN Issue in SFC Integration by Using Eth+NSH and VxLAN-gpe+NSH Hybrid Mode Yi Yang, Intel

Fix VxLAN Issue in SFC Integration by Using Eth+NSH and VxLAN-gpe+NSH Hybrid Mode Yi Yang, Intel Fix VxLAN Issue in SFC Integration by Using Eth+NSH and VxLAN-gpe+NSH Hybrid Mode Yi Yang, Intel (yi.y.yang@intel.com) Agenda VxLAN Issue in OVSDB+SFC How to Fix Current VxLAN issue by Eth+NSH Demo Introduction

More information

Internet Protocol Addressing and Routing. Redes TCP/IP

Internet Protocol Addressing and Routing. Redes TCP/IP Internet Protocol Addressing and Routing Redes TCP/IP Internet Topology Internet - WAN Gateway or router Physical Network (LAN) internet LAN LAN LAN Dotted Decimal Notation 2 7 2 6 2 5 2 4 2 3 2 2 2 1

More information

15-744: Computer Networking. Routers

15-744: Computer Networking. Routers 15-744: Computer Networking outers Forwarding and outers Forwarding IP lookup High-speed router architecture eadings [McK97] A Fast Switched Backplane for a Gigabit Switched outer Optional [D+97] Small

More information

Network Myths and Mysteries. Radia Perlman Intel Labs

Network Myths and Mysteries. Radia Perlman Intel Labs Network Myths and Mysteries Radia Perlman Intel Labs radia.perlman@intel.com radia@alum.mit.edu 1 All opinions expressed herein Are mine alone 2 All opinions expressed herein Are mine alone hough I m sure

More information

Professor Yashar Ganjali Department of Computer Science University of Toronto.

Professor Yashar Ganjali Department of Computer Science University of Toronto. Professor Yashar Ganjali Department of Computer Science University of Toronto yganjali@cs.toronto.edu http://www.cs.toronto.edu/~yganjali Today Outline What this course is about Logistics Course structure,

More information

Data Structures for Packet Classification

Data Structures for Packet Classification Presenter: Patrick Nicholson Department of Computer Science CS840 Topics in Data Structures Outline 1 The Problem 2 Hardware Solutions 3 Data Structures: 1D 4 Trie-Based Solutions Packet Classification

More information

Network Virtualization Based on Flows

Network Virtualization Based on Flows TERENA NETWORKING CONFERENCE 2009 June 9, 2009 Network Virtualization Based on Flows Peter Sjödin Markus Hidell, Georgia Kontesidou, Kyriakos Zarifis KTH Royal Institute of Technology, Stockholm Outline

More information

Chapter 8: Subnetting IP networks. Introduction to Networks v5.1

Chapter 8: Subnetting IP networks. Introduction to Networks v5.1 Chapter 8: Subnetting IP networks Introduction to Networks v5.1 8.0 Introduction 8.1 Subnetting an IPv4 Network 8.2 Addressing Schemes 8.3 Design Considerations for IPv6 8.4 Summary 2013 Cisco and/or its

More information

Router Architectures

Router Architectures Router Architectures Venkat Padmanabhan Microsoft Research 13 April 2001 Venkat Padmanabhan 1 Outline Router architecture overview 50 Gbps multi-gigabit router (Partridge et al.) Technology trends Venkat

More information

So#ware Defined Networking

So#ware Defined Networking The Internet: A Remarkable Story 2! Tremendous success From research experiment to global infrastructure So#ware Defined Networking Brilliance of under- specifying Network: best- effort packet delivery

More information

HEADER SPACE ANALYSIS

HEADER SPACE ANALYSIS HEADER SPACE ANALYSIS Peyman Kazemian (Stanford University) George Varghese (UCSD, Yahoo Labs) Nick McKeown (Stanford University) 1 July 17 th, 2012 Joint Techs 2012 TODAY A typical network is a complex

More information

Configuring ACLs. ACL overview. ACL categories. ACL numbering and naming

Configuring ACLs. ACL overview. ACL categories. ACL numbering and naming Contents Configuring ACLs 1 ACL overview 1 ACL categories 1 ACL numbering and naming 1 Match order 2 ACL rule numbering 3 Implementing time-based ACL rules 3 IPv4 fragments filtering with ACLs 3 Flow templates

More information

CSC 4900 Computer Networks: Network Layer

CSC 4900 Computer Networks: Network Layer CSC 4900 Computer Networks: Network Layer Professor Henry Carter Fall 2017 Chapter 4: Network Layer 4. 1 Introduction 4.2 What s inside a router 4.3 IP: Internet Protocol Datagram format 4.4 Generalized

More information

ROUTING INTRODUCTION TO IP, IP ROUTING PROTOCOLS AND PROXY ARP

ROUTING INTRODUCTION TO IP, IP ROUTING PROTOCOLS AND PROXY ARP IP ROUTING INTRODUCTION TO IP, IP ROUTING PROTOCOLS AND PROXY ARP Peter R. Egli 1/37 Contents 1. IP Routing 2. Routing Protocols 3. Fragmentation in the IP Layer 4. Proxy ARP 5. Routing and IP forwarding

More information

Open vswitch Extensions with BPF

Open vswitch Extensions with BPF Open vswitch Extensions with BPF Paul Chaignon Orange Labs, France December 5, 2018 Open vswitch Fall Conference 2018 Not a New Datapath! Previous and next talks on new I/O techniques for OVS 1/19 Open

More information

Antonio Cianfrani. Access Control List (ACL) Part I

Antonio Cianfrani. Access Control List (ACL) Part I Antonio Cianfrani Access Control List (ACL) Part I Index ACL? How to configure Standard ACL Extended ACL Named ACL Limiting the vty access ACL (1/3) Control lists applied to traffic incoming in / outgoing

More information

BLINC: Multilevel Traffic Classification in the Dark

BLINC: Multilevel Traffic Classification in the Dark BLINC: Multilevel Traffic Classification in the Dark Thomas Karagiannis, UC Riverside Konstantina Papagiannaki, Intel Research Cambridge Michalis Faloutsos, UC Riverside The problem of workload characterization

More information

Decision Forest: A Scalable Architecture for Flexible Flow Matching on FPGA

Decision Forest: A Scalable Architecture for Flexible Flow Matching on FPGA 2010 International Conference on Field Programmable Logic and Applications Decision Forest: A Scalable Architecture for Flexible Flow Matching on FPGA Weirong Jiang, Viktor K. Prasanna Ming Hsieh Department

More information

SDN-based Network Obfuscation. Roland Meier PhD Student ETH Zürich

SDN-based Network Obfuscation. Roland Meier PhD Student ETH Zürich SDN-based Network Obfuscation Roland Meier PhD Student ETH Zürich This Talk This thesis vs. existing solutions Alice Bob source: Alice destination: Bob Hi Bob, Hi Bob, Payload encryption ǾǼōĦ

More information

Programmable Forwarding Planes at Terabit/s Speeds

Programmable Forwarding Planes at Terabit/s Speeds Programmable Forwarding Planes at Terabit/s Speeds Patrick Bosshart HIEF TEHNOLOGY OFFIER, BREFOOT NETWORKS nd the entire Barefoot Networks team Hot hips 30, ugust 21, 2018 Barefoot Tofino : Domain Specific

More information

Addressing and Routing

Addressing and Routing Addressing and Routing Andrew Scott a.scott@lancaster.ac.uk Physical/ Hardware Addresses Aka MAC* or link(-layer) address Can only talk to things on same link Unique ID given to every network interface

More information

The Internet Protocol. IP Addresses Address Resolution Protocol: IP datagram format and forwarding: IP fragmentation and reassembly

The Internet Protocol. IP Addresses Address Resolution Protocol: IP datagram format and forwarding: IP fragmentation and reassembly The Internet Protocol IP Addresses Address Resolution Protocol: IP datagram format and forwarding: IP fragmentation and reassembly IP Addresses IP Addresses are 32 bit. Written in dotted decimal format:

More information

High-Performance Packet Classification on GPU

High-Performance Packet Classification on GPU High-Performance Packet Classification on GPU Shijie Zhou, Shreyas G. Singapura, and Viktor K. Prasanna Ming Hsieh Department of Electrical Engineering University of Southern California 1 Outline Introduction

More information

Application of SDN: Load Balancing & Traffic Engineering

Application of SDN: Load Balancing & Traffic Engineering Application of SDN: Load Balancing & Traffic Engineering Outline 1 OpenFlow-Based Server Load Balancing Gone Wild Introduction OpenFlow Solution Partitioning the Client Traffic Transitioning With Connection

More information

A Novel vcpe Framework for Enabling Virtual Network Functions with Multiple Flow Tables Architecture in SDN Switches

A Novel vcpe Framework for Enabling Virtual Network Functions with Multiple Flow Tables Architecture in SDN Switches A Novel vcpe Framework for Enabling Virtual Network Functions with Multiple Flow Tables Architecture in SDN Switches Nen-Fu Huang, Chi-Hsuan Li, Chia-chi Chen, I-Hsien Hsu, Che-Chuan Li, Ching-Hsuan Chen

More information

The IP Data Plane: Packets and Routers

The IP Data Plane: Packets and Routers The IP Data Plane: Packets and Routers EE 122, Fall 2013 Sylvia Ratnasamy http://inst.eecs.berkeley.edu/~ee122/ Material thanks to Ion Stoica, Scott Shenker, Jennifer Rexford, Nick McKeown, and many other

More information

Open vswitch: A Whirlwind Tour. Jus8n Pe:t March 3, 2011

Open vswitch: A Whirlwind Tour. Jus8n Pe:t March 3, 2011 Open vswitch: A Whirlwind Tour Jus8n Pe:t March 3, 2011 Overview Visibility (NetFlow, sflow, SPAN/RSPAN) Fine- grained ACLs and QoS policies Centralized control through OpenFlow Port bonding, LACP, tunneling

More information

Introduction. Introduction. Router Architectures. Introduction. Recent advances in routing architecture including

Introduction. Introduction. Router Architectures. Introduction. Recent advances in routing architecture including Router Architectures By the end of this lecture, you should be able to. Explain the different generations of router architectures Describe the route lookup process Explain the operation of PATRICIA algorithm

More information

Hands on SDN and BRO

Hands on SDN and BRO Hands on SDN and BRO Malware Research Conference 2016 Ian Welch, School of Engineering and Computer Science Victoria University of Wellington 11th July 2016 Who am I? Lecturer at Victoria University of

More information

Service Function Chaining (SFC)

Service Function Chaining (SFC) Service Function Chaining (SFC) Release draft (534a1d1) OPNFV February 25, 2016 CONTENTS 1 Introduction 1 2 Definitions 3 3 Abbreviations 5 4 Use Cases 7 5 Architecture 9 5.1 Service Functions............................................

More information

Be Fast, Cheap and in Control with SwitchKV. Xiaozhou Li

Be Fast, Cheap and in Control with SwitchKV. Xiaozhou Li Be Fast, Cheap and in Control with SwitchKV Xiaozhou Li Goal: fast and cost-efficient key-value store Store, retrieve, manage key-value objects Get(key)/Put(key,value)/Delete(key) Target: cluster-level

More information

BESS: A Virtual Switch Tailored for NFV

BESS: A Virtual Switch Tailored for NFV BESS: A Virtual Switch Tailored for NFV Sangjin Han, Aurojit Panda, Brian Kim, Keon Jang, Joshua Reich, Saikrishna Edupuganti, Christian Maciocco, Sylvia Ratnasamy, Scott Shenker https://github.com/netsys/bess

More information

ITTC Science of Communication Networks The University of Kansas EECS 784 Identifiers, Names, and Addressing

ITTC Science of Communication Networks The University of Kansas EECS 784 Identifiers, Names, and Addressing Science of Communication Networks The University of Kansas EECS 784 Identifiers, Names, and Addressing James P.G. Sterbenz Department of Electrical Engineering & Computer Science Information Technology

More information

Network layer (addendum) Slides adapted from material by Nick McKeown and Kevin Lai

Network layer (addendum) Slides adapted from material by Nick McKeown and Kevin Lai Network layer (addendum) Slides adapted from material by Nick McKeown and Kevin Lai Routers.. A router consists - A set of input interfaces at which packets arrive - A set of output interfaces from which

More information

Towards High-performance Flow-level level Packet Processing on Multi-core Network Processors

Towards High-performance Flow-level level Packet Processing on Multi-core Network Processors Towards High-performance Flow-level level Packet Processing on Multi-core Network Processors Yaxuan Qi (presenter), Bo Xu, Fei He, Baohua Yang, Jianming Yu and Jun Li ANCS 2007, Orlando, USA Outline Introduction

More information

Introduction. Router Architectures. Introduction. Introduction. Recent advances in routing architecture including

Introduction. Router Architectures. Introduction. Introduction. Recent advances in routing architecture including Introduction Router Architectures Recent advances in routing architecture including specialized hardware switching fabrics efficient and faster lookup algorithms have created routers that are capable of

More information

Scalable Packet Classification using Distributed Crossproducting of Field Labels

Scalable Packet Classification using Distributed Crossproducting of Field Labels Washington University in St. Louis Washington University Open Scholarship All Computer Science and Engineering Research Computer Science and Engineering Report Number: WUCSE-24-38 24-6-23 Scalable Packet

More information

CS244a: An Introduction to Computer Networks

CS244a: An Introduction to Computer Networks CS244a: An Introduction to Computer Networks Handout 4: Layer 3 and the Internet Protocol (IP) Nick McKeown Professor of Electrical Engineering and Computer Science, Stanford University nickm@stanford.edu

More information

High-Speed Network Processors. EZchip Presentation - 1

High-Speed Network Processors. EZchip Presentation - 1 High-Speed Network Processors EZchip Presentation - 1 NP-1c Interfaces Switch Fabric 10GE / N x1ge or Switch Fabric or Lookup Tables Counters SDRAM/FCRAM 64 x166/175mhz SRAM DDR NBT CSIX c XGMII HiGig

More information

Concise Encoding of Flow Attributes in SDN Switches

Concise Encoding of Flow Attributes in SDN Switches Concise Encoding of Flow Attributes in SDN Switches Robert MacDavid*, Rüdiger Birkner, Ori Rottenstreich*, Arpit Gupta*, Nick Feamster*, Jennifer Rexford* *Princeton University, ETH Zürich Motivation Incoming

More information

Configuring Web Cache Services By Using WCCP

Configuring Web Cache Services By Using WCCP CHAPTER 44 Configuring Web Cache Services By Using WCCP This chapter describes how to configure your Catalyst 3560 switch to redirect traffic to wide-area application engines (such as the Cisco Cache Engine

More information

Languages for SDN (Frenetic)

Languages for SDN (Frenetic) Languages for SDN (Frenetic) Software Defined Networking: The Data Centre Perspective Seminar Informatikdienste A. Pantelopoulos 20.05.2016 1 SDN is useful Direct network control. Enables new applications,

More information