Presentation is loading. Please wait.

Presentation is loading. Please wait.

Software Defined Networking By: Widhi Yahya. Introduction.

Similar presentations


Presentation on theme: "Software Defined Networking By: Widhi Yahya. Introduction."— Presentation transcript:

1 Software Defined Networking By: Widhi Yahya

2 Introduction

3 Mininet  Mininet is a simulation tool that can create a virtual network, running real kernels, switches and application code, on a single machine.  Mininet provides a ready way to get the SDN network behaviors and performance for different experimental network topologies.  Mininet also enable us to use client server programs such as ping, iperf, netperf, wget, and other packet generator programs. 1

4 Nowdays 2 enormous installed equipment and protocols barrier to entry for new ideas Complexity that leads to stasis Inconsistent policies Inability to scale Vendor dependence

5 Software Defined Networking (SDN) Vertically integrated Closed, proprietary Slow innovation App Horizontal Open interfaces Rapid innovation Control Plane Control Plane Control Plane Control Plane Control Plane Control Plane or Open Interface Specialized Control Plane Specialized Control Plane Specialized Hardware Specialized Hardware Specialized Features Specialized Features Merchant Switching Chips Merchant Switching Chips Open Interface Nick McKeown, “How SDN will shape networking”, Standford Univ. 3

6 Software Defined Networking (SDN) Control Program Network OS 1. Open interface to packet forwarding 2. At least one Network OS probably many. Open- and closed-source Packet Forwarding Packet Forwarding Packet Forwarding Packet Forwarding Packet Forwarding Packet Forwarding Packet Forwarding Packet Forwarding Packet Forwarding Packet Forwarding Global Network View Nick McKeown, “How SDN will shape networking”, Standford Univ. 4

7 Software Defined Networking (SDN) Open Network Foundation, “OpenFlow Switch Specification”, 2013. 5

8 Software Defined Networking (SDN) [ONF12]-Software-Defined Networking-newnorm 6

9 Software Defined Networking (SDN) Open Network Foundation, “OpenFlow Switch Specification”, 2013. 7

10 Software Defined Networking (SDN) Counters for each rule - #bytes, #packets Pattern Action Priority Route: IP/fwd B A 1 2 3 2:match(dstip=A)[fwd(2)] 1:match(* )[fwd(1)] 2:match(dstip=B)[fwd(3)] OpenFlow Program dstip=A dstip=B dstip!=A dstip!=B Open Network Foundation, “OpenFlow Switch Specification”, 2013; Chris Monsanto*, Joshua Reich*, Nate Foster^, Jen Rexford*, David Walker*, “Composing Software-Defined Networks”,USENIX, 2013 8

11 Benefit SDN  Centralized control of multi-vendor environments.  Reduced complexity through automation.  Higher rate of innovation  Increased network reliability and security  More granular network control  Better user experience 9

12 SDN Review  Software Defined Networking (SDN) is a concept to decouple the control plane and data plane of network devices.  The emergence of the SDN technology brings many new network applications realized by programming the SDN controller. 10

13 Problems Naive Algorithm (Round Robin) 11

14 Problems example Naive Algorithm (Randomized) 12

15 Global Topology 13

16 SDN Program install_flowmod(5,srcip=X & dstip=P,[mod(dstip=A),fwd(2)]) install_flowmod(4,srcip=0* & dstip=P,[mod(dstip=A),fwd(2)]) install_flowmod(4,srcip=1* & dstip=P,[mod(dstip=B),fwd(3)]) install_flowmod(4,srcip=X & dstip=A,[fwd(2)]) install_flowmod(4,srcip=X & dstip=B,[fwd(3)]) install_flowmod(3,dstip=A,[fwd(2)]) install_flowmod(3,dstip=B,[fwd(3)]) install_flowmod(2,srcip=X,[fwd(1)]) install_flowmod(1,*,[fwd(3)]) 14

17 Frenetic N. Foster, R. Harrison, M. J. Freedman, C. Monsanto, J. Rexford, A. Story, and D. WalkerFoster, “Frenetic: A Network Programming Language”, ACM, 2013. 15

18 PolicySyntacSemanticsExamples matchmatch(f=v) Returns set containing packet if packet's field f matches value v, empty set otherwise match(dstmac=EthAddr('00:00:00: 00:00:01')) drop Returns empy setdrop modifymodify(f=v) Returns set containing copy of packet where field f is set to value v modify(srcmac=EthAddr('00:00:00 :00:00:01')) forwardfwd(a) Returns set containing copy of packet where outport field is set to a fwd(1) parallel composition A + B Returns the union of A's output and B's output fwd(1) + fwd(2) sequential composition A >> BReturns B's output where A's output is B's input modify(dstip=IPAddr('10.0.0.2'))>> fwd(2) match(switch=1) >> flood() Pyretic Basic Policies Pyretic Website, http://frenetic-lang.org/pyretic/ 16

19 SyntaxSummary packets( limit=n, group_by=[f1,f2,...]) callback on every packet received for up to n packets identical on fields f1,f2,... count_packets( interval=t,group_by=[f1,f2,...] count every packet received callback every t seconds providing count for each group count_bytes( interval=t, group_by=[f1,f2,...]) count every byte received callback every t seconds providing count for each group Query Policies Pyretic Pyretic Website, http://frenetic-lang.org/pyretic/ 17

20 Thank you Q & A


Download ppt "Software Defined Networking By: Widhi Yahya. Introduction."

Similar presentations


Ads by Google