1 / 17

Preliminaries: EE807 Software-defined Networked Computing

Preliminaries: EE807 Software-defined Networked Computing. KyoungSoo Park Department of Electrical Engineering KAIST. routing algorithm. local forwarding table. header value. output link. 0100 0101 0111 1001. 3 2 2 1. value in arriving packet’s header. 1. 0111. 2. 3.

dermot
Download Presentation

Preliminaries: EE807 Software-defined Networked Computing

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Preliminaries:EE807 Software-defined Networked Computing KyoungSoo Park Department of Electrical Engineering KAIST

  2. routing algorithm local forwarding table header value output link 0100 0101 0111 1001 3 2 2 1 value in arriving packet’s header 1 0111 2 3 Interplay Between Routing, Forwarding

  3. Intradomain Routing • Learning routes in an autonomous system (AS) • Also called “intraAS routing” • Two representative approaches • Distance vector (or Bellman-Ford) • Link state (or Dijkstra’s) • Time complexity • Per-node: O(nlogn) where n = # of nodes (routers)

  4. Distance Vector Algorithm • Strategy: each node exchanges its DV with its neighbor whenever link cost changes • DV contains the estimated cost to every node • Dynamic programming • Min path cost (x, y) = min(link cost(x,v) + path cost(v,y)) for all neighbor v of x • Implementation • Routing Information Protocol (RIP) • EIGRP (Cisco-proprietary): solves limitations of RIP

  5. Link State Algorithm • Strategy: flood the directly-connected link’s cost to every node • Send to all nodes, but the spread information is the local link cost • Link state packet (LSP) • Contains the link cost, id of the node, sequence number, TTL, etc. • Implementation • Open Shortest Path First (OSPF), Intermediate System-Intermediate System (IS-IS)

  6. Interdomain Routing • Intradomain routing: process of finding the least-cost path to network prefix X (in the same AS) • Interdomain routing: process of finding AS-level path that reaches the destination prefix X (not in the same AS) • Routing: coarse-grain path (interdomain) + fine-grain path (intradomain)

  7. Border Gateway Protocol (BGP) • The goal of interdomain routing • Find some loop-free path to the destination • Concerned with reachability than optimality • Concerned with the policies of ASs in the path • Finding path anywhere close to optimal is considered to be a great achievement • BGP advertises complete paths as an enumerated list of ASs to reach a particular network • Called a path-vector protocol • Example: 135.98/16: <AS3, AS7, AS10> • How do you detect a loop?

  8. Routers

  9. Router Functionality • Control plane: run routing protocols, run software on routing processor, circuit setup • Time scale: 10ms to second • Data plane: forwarding, buffering, filtering, scheduling, implemented in hardware • Time scale: nanoseconds • Management plane: administrator interface, analysis, configuration (traffic engineering) • Time scale: minutes to hours

  10. Router Architecture Overview data plane control plane

  11. Control/Data Separation decouple control and data planesby providing open standard API Borrowed from Jen Rexford’s slides

  12. (Logically) Centralized Controller Controller Platform Borrowed from Jen Rexford’s slides

  13. Protocols  Applications Controller Application Controller Platform Borrowed from Jen Rexford’s slides

  14. Software-defined Networking • Logically-centralized control plane • Why? fine-grained control of the traffic • No (traditional) routing protocols • Instead, there is a centralized controller • When a flow comes to a switch • The switch looks up forwarding table • If the entry is found, use it to forward packets • If not, it asks the controller to set up the route • OpenFlow is widely used to implement SDN • OpenFlow != SDN

  15. Middleboxes

  16. Middlebox • In-network devices that manipulate packets for purposes other than packet forwarding • Inspecting, filtering, transforming packets • Examples • Network address translators (NATs), firewalls, network intrusion detection systems (NIDSes), (performance enhancement, Web, WAN-accelerating) proxies, etc. • Recent trend • # of deployed middleboxes >> # of deployed routers

  17. Network Functions Virtualization • Motivation: difficult to manage many middlebox boxes • Each box runs different service • Configuration could be a nightmare • Conceptually, you have X units of Web proxy, Y units of NIDS, Z units of firewall • X, Y, Z are dynamically adjusting to the load • How to implement? • Virtualization: separate the service from physical infrastructure • Horizontal scaling (or scale out): add more nodes, install software, and turn them on • Vertical scaling (or scale up)?

More Related