Lagopus Switch Usecases

32
Copyright©2014 NTT corp. All Rights Reserved. - Lagopusの使い方いろいろ- 河井 彩公子 Lagopus Users Community NTT 未来ねっと研究所 Network Switch OS “Lagopus Switch”

Transcript of Lagopus Switch Usecases

  • Copyright2014 NTT corp. All Rights Reserved.

    - Lagopus-

    Lagopus Users Community

    NTT

    Network Switch OS Lagopus Switch

  • 1Copyright2014 NTT corp. All Rights Reserved.

    - SDN, OpenFlow

    Lagopus

    - -

  • 2Copyright2014 NTT corp. All Rights Reserved.

    Agenda

    Software Defined Networking(SDN) OpenFlow

    SDNOSS

    Lagopus SDN/OpenFlow

    Lagopus.. (SDN-IX, LAN, , etc..)

    (ofctl_rest, Ryu)

    Lagopus update (GRE, VXLAN)

  • 3Copyright2014 NTT corp. All Rights Reserved.

    n ,

    n

    n

    L

    n CLI

    Chef, Puppet...

  • 4Copyright2014 NTT corp. All Rights Reserved.

    Software Defined Networking

    n

    //

    n(OpenFlow)

    ()

    OpenFlow

    OpenFlow

  • 5Copyright2014 NTT corp. All Rights Reserved.

    OpenFlow

    n L1L4

    OpenFlow

    OpenFlow

    App App App

    (match)

    , (dst, src, ID..)

    (action)

    //, (, , )

    Packet in/out()

    Flow mod()

    ,

  • 6Copyright2014 NTT corp. All Rights Reserved.

    OpenFlow

    n (Match)

    Ingress port Ethernet source/destination address Ethernet type VLAN ID VLAN priority IPv4/v6 source/destination address IPv4 protocol number IPv4 type of service TCP/UDP source/destination port ICMP type/code ARP operation code MPLS label

    L1 (Port), L2 (Ethernet), L3 (IPv4, IPv6), L4 (TCP, UDP)

    etc..(OpenFlow Specification)

  • 7Copyright2014 NTT corp. All Rights Reserved.

    OpenFlow

    n (Action)

    etc..(OpenFlow Specification)

    Forward

    Drop

    Modify Field

    Physical ports Virtual ports : All, Controller, Local, Table, IN_PORT Normal, Flood

    Set/Add VLAN ID Set VLAN priority Pop VLAN Header Push MPLS/VLAN/PBB header Modify Ethernet source/destination address Modify IPv4 source/destination address Modify IPv4 TCP/UDP source/destination port

    ,

    ,

    ,

  • 8Copyright2014 NTT corp. All Rights Reserved.

    OpenFlow

    n (Action)

    etc..(OpenFlow Specification)

    Group

    Meter

    All () Select () Indirect () Fast failover (, )

    Traffic policing

  • 9Copyright2014 NTT corp. All Rights Reserved.

    SDN

    Cloud Computing

    OSS Controller

    OSS virtualswitch

    Infrastructure Layer

    Application Layer

    Business Applica?ons

    Control Layer

    Network Services

    Network Services

    Northbound API

    Ryu tremaSouthbound API

    Open contrail

    White box

    switch

    Open network linux

    n OSS SDNOSS

    API

    API

  • Copyright2014 NTT corp. All Rights Reserved.

    Lagopus SDN/OpenFlow switch

  • 11Copyright2014 NTT corp. All Rights Reserved.

    n NFV

    (64Byte)

    n OpenFlow 1.3

    100

    10Gbps

    /

    OFS

    APP

    VM

    APP

    VM

  • 12Copyright2014 NTT corp. All Rights Reserved.

    Lagopus

    n OpenFlow 1.3

    Ethernet, Mac in MAC, MPLS, PBB, IPv4, IPv6..

    Flow table

    QoS (queue, policer, meter table)

    nIntel DPDK 10Gbps (20MPPS)(DPDK)

    100 (4K flow mod/sec)

    nAPI CLIJSON

    Flow

    SDN/NFV

  • 13Copyright2014 NTT corp. All Rights Reserved.

    n X86NIC

    OSS

    Intel DPDK

    Linux

    Linux

    CPU

    DPDK

  • 14Copyright2014 NTT corp. All Rights Reserved.

    Lagopus

    n

    TOR

    Virtual Switch

    Hypervisor

    VM VM

    Virtual Switch

    Hypervisor

    NFV NFV

    Virtual Switch

    Hypervisor

    VM VM

    Gateway CPE

    Data Center Wide-area Network Access Network Intranet

    CloudNFV

    NW

  • 15Copyright2014 NTT corp. All Rights Reserved.

    Control plane

    App App App

    switch configuration datastore (config/stats API, SW DSL)

    FPGA NIC DPDK NIC

    DPDK libs/PMD driver

    Lagopus soft dataplane

    flow lookup flow cache

    OpenFlow pipeline

    queue/ policer

    Flow table Flow table

    flow table Flow table

    Flow table Group table

    Flow table Flow table meter

    table

    switch HAL

    Op

    en

    Flow

    1.3 a

    ge

    nt JSON IF

    SNM

    P

    CLI

    OV

    SDB

    NET

    CO

    NF

    L2 brid

    ge

    L3 (IPv4 IC

    MP)

    SDN switch Agent Full OpenFlow 1.3.4 support

    Controller-less basic L2 and L3 support

    SDN-aware management API OVSDB, REST Ansible support

    DPDK-enabled soft dataplane Over-10-Gbps performance Low latency packet processing high performance multi-layer flow lookup

    DPDK-enabled vNIC for NFV (virtq-pmd)

    Switch configuration datastore Pub/sub mechanism Switch config DSL JSON IF support

    Soft-dataplane aware FPGA NIC

    Lagopus

  • 16Copyright2014 NTT corp. All Rights Reserved.

    0"

    1"

    2"

    3"

    4"

    5"

    6"

    7"

    8"

    9"

    10"

    1" 10" 100" 1000" 10000" 100000" 1000000"

    Throug

    hput)(G

    bps)

    flows

    10k"flow"rules"

    100k"flow"rules"

    1M"flow"rules"

    Throughput vs flows, 1518 bytes packet L2 switch performance (Mbps)10GbE x 2 (RFC2889 test)

    n Throughput10Gbps wire-rate

    Flow rules1M flow rules

    4000 flow mod / sec

    HW Dual Intel Xeon E5-2660 (8cores) DDR3-1600 64GB Intel X520-DA2

  • 17Copyright2014 NTT corp. All Rights Reserved.

    Type Action Set field Match Group Meter Total

    # of test scenario (mandatory, optional)

    56(3 , 53)

    170(0 , 170)

    714(108 , 606)

    15(3 , 12)

    36(0 , 36)

    991(114 , 877)

    Lagopus2014.11.09

    56(3, 56)

    162(0, 162)

    714(108, 606)

    15(3, 12)

    26(0, 26)

    973(114, 859)

    OVS (kernel)2014.08.08

    34(3, 31)

    96(0, 96)

    534(108, 426)

    6(3, 3)

    0(0, 0)

    670(114, 556)

    OVS (netdev)2014.11.05

    34(3, 31)

    102(0, 102)

    467(93, 374)

    8(3, 5)

    0(0, 0)

    611(99, 556)

    IVS2015.02.11

    17(3, 14)

    46(0, 46)

    323(108, 229)

    3(0, 2)

    0(0, 0)

    402(111, 291)

    ofswitch2015.01.08

    50(3, 47)

    100(0, 100)

    708(108, 600)

    15(3, 12)

    30(0, 30)

    962(114, 848)

    LINC2015.01.29

    24(3, 21)

    68(0, 68)

    428(108, 320)

    3(3, 0)

    4(0, 4)

    523(114, 409)

    Trema2014.11.28

    50(3, 47)

    159(0 , 159)

    708(108, 600)

    15(3, 12)

    34(0, 34)

    966(114, 854)

    n Ryu OpenFlow 1.3 Conformance test

    (OF1.3) https://osrg.github.io/ryu-certification/switch/lagopus

  • 18Copyright2014 NTT corp. All Rights Reserved.

    n 2014731 http://lagopus.github.io/

    n l -> GitHub Pull Request

    l -> GitHub Issues

    l -> Developers ML

  • Copyright2014 NTT corp. All Rights Reserved.

    Lagopus UseCases

  • 20Copyright2014 NTT corp. All Rights Reserved.

    UseCase: OSC Tokyo

    n Lagopusl -> !

    l

    l UDP

    l Lagopus

  • 21Copyright2014 NTT corp. All Rights Reserved.

    n Lagopus

    l A

    MACIPport

    drop

    l B

    1

    AB

    UseCase:

    2

  • 22Copyright2014 NTT corp. All Rights Reserved.

    n Lagopus

    0in_port

    11

    2

    UseCase:

    Table id=0

    match: in_port:1, UDP,

    action:

    , Goto table :1

    Table id=1 Table id=2

    match: in_port:1, UDP,

    action: IP, mac,

    ,

    Goto table :2

    match:

    ,

    UDP

    action: Goto table :1

    match:

    ,

    UDP

    action: IP, mac,

    1,

    Goto table :2

    match: in_port:1, UDP,

    action: IP, mac,

    match:

    ,

    UDP

    action: IP, mac,

    2,

    cookie,

  • 23Copyright2014 NTT corp. All Rights Reserved.

    n LANl , -> ,

    ..!

    l AP

    UseCase: SDN Japan2014

    Cisco aironet

  • 24Copyright2014 NTT corp. All Rights Reserved.

    n LAN

    UseCase: SDN Japan2014

    0 1 Groupflooding Meter : dst mac

  • 25Copyright2014 NTT corp. All Rights Reserved.

    n SDN-IXl IX : (ISP) - L2, L3, ...

    l /, APIl DDoS(drop)

    UseCase 3: Interop2015

    Exterier AS

    Physical Link

    Paths between ASs

    TokyoChiba

    Networks inside the event venue

    SDN-IX!

    SDN IX

  • 26Copyright2014 NTT corp. All Rights Reserved.

    n SDN-IXl

    UseCase 3: Interop2015

    L2-IX(ASVLAN) PUSH VLAN

    SDN-IXVLAN ID

    DDoS ,

    IP()

    src ip,

    , 1

    AS65002AS65001

    (DoS)

  • 27Copyright2014 NTT corp. All Rights Reserved.

    n IP, ,

    etc..

    ->

    UseCase 4:

    111

    ()

    IP

    ()

  • 28Copyright2014 NTT corp. All Rights Reserved.

    n

    UseCase 4:

    (json)MAC

    ()

    111

    Switch

    Controller

    IP

    VNF

    Configfile

    VNF

    ARP

    -

    -

    3

    2

    1

  • 29Copyright2014 NTT corp. All Rights Reserved.

    n REST API

    n Controller

    , J

    PythonRuby

    Controller

  • 30Copyright2014 NTT corp. All Rights Reserved.

    Lagopus 0.2.4

    n 2016/2/110.2.4 tunnelencap, decap

    - OpenFlow General Tunnel Support

  • 31Copyright2014 NTT corp. All Rights Reserved.

    LagopusOSS

    Web : http://lagopus.github.io/Github : https://github.com/lagopus/

    SDN, Lagopus ()

    Mininet

    QuickStartJ