SDNフレームワークの解説と、 OpenFlowコント ??は・・・ググってみると ネットワークの構成、機能、性能などをソフトウェアの操作だけで動的に 設定、変更できるネットワーク、あるいはそのためのコンセプトを指す ネットワークを構成する通信機器などをソフトウェアで

  • Published on
    16-Mar-2018

  • View
    222

  • Download
    6

Embed Size (px)

Transcript

  • IT Technical Seminar V15 (2014)

    SDNOpenFlow

    2014620

  • SDN/OpenFlow OpenFlow OpenFlow

    OpenFlow OpenDaylight FrameWorkOpenDaylight

  • SDN

  • SDN

  • SDN

  • SDN

    VLAN

    OracleSDNSDN

  • OpenFlow

    SDN

    1

  • OpenFlow

    3

    OpenFlow

    /

  • OpenFlow

  • OpenFlow

    Ingress Port Ethernet source address MACEthernet destination address MACEthernet type EthernetVLAN id VLAN IDVLAN priority VLAN PCP(Priority Code Point)IP source address IPIP destination address IPIP protocol IP ToS bits ToS(Type of Service)Transport source port / ICMP Type Transport destination port / ICMP Code

  • OpenFlow

    Forward Enqueue queue

    queueQoSDrop Modify-Field

  • OpenFlow

    Modify-State

    Packet-in

    Send-Packet

    Port-status Read-State

    Read-State

  • OpenFlow

    Ingress Port 1Ethernet source address 00:11:11:11:11:11Ethernet destination address 00:22:22:22:22:22VLAN id 1

    Ingress Port 2Ethernet source address 00:33:11:11:11:11Ethernet destination address 00:33:22:22:22:22VLAN id 2

    2

  • OpenFlow

    1 32 4

  • OpenFlow

    1 32 4

    (Packet-in)

    (Modify-State)

    (Send-Packet)

  • SDN/OpenFlow

    OpenFlowFrameWork NOX(C++) POX(Python) Ryu SDN FrameWork(Python) Floodlight(Java) Trema(Ruby) OpenDaylight(Java)

  • OpenDaylight

    Linux Foundation

    SDNSDN

    OSGiSDN

  • OpenDaylight

  • OpenDaylight

    OpenDaylight

    OpenDaylight

    OpenFlowOpenFlowFrameWork

  • FrameWorkOpenDaylight

    Base Network Service Function Java Class

    API arphandler IHostFinder ARP

    hosttracker IfptoHost SDN

    switchmanager ISwitchManager

    topologymanager ITopologyManager

    usermanager IUserManager statisticsmanager IStatisticsManager IReadService

  • FrameWorkOpenDaylight

    Service Abstraction Layer Java Class

    API sal IReadService //

    sal ITopologyService sal IFlowProgrammerS

    ervice

    sal IDataPacketService

    sal IListenDataPacket

    web IStatisticsManager UI

  • FrameWorkOpenDaylight

    Service Abstraction Layer JavaClass

    Class sal Action OpenFlow

    sal Match OpenFlow

    sal IFlowProgrammerService

    sal IDataPacketService OpenFlowForward

    web IStatisticsManager UI

  • OpenDaylight OpenWrt

    https://github.com/sdnhub/SDNHub_Opendaylight_Tutorial

    https://github.com/sdnhub/SDNHub_Opendaylight_Tutorial

  • OpenWrt

    Linux

    LAN

    OpenWrtOpenFlowhttp://openfow.inthebox.info

  • OpenFlow

    CentOS 6.5Virtual Box 4.3 OpenDaylight Hydrogen

    BUFFALO WHR-G301N OpenWrt OpenFlow 1.0

  • 192.168.11.10/24

    192.168.11.1/24

    1192.168.2.1/24

    2192.168.2.2/24

    1 4

  • 1

    1MAC 00:11:11:11:11:11

    2MAC 00:22:22:22:22:22

    IListenDataPacketL2public class TutorialL2Forwarding implements IListenDataPacket {

  • 2

    1MAC 00:11:11:11:11:11

    2MAC 00:22:22:22:22:22

    Packt-inIListenDataPacketreceiveDataPacketpublic PacketResult receiveDataPacket(RawPacket inPkt) {

  • 3

    1MAC 00:11:11:11:11:11

    2MAC 00:22:22:22:22:22

    MatchActionprogrammer byte[] dstMAC = ((Ethernet)formattedPak).getDestinationMACAddress();

    Match match = new Match(); match.setField( new MatchField(MatchType.IN_PORT, incoming_connector) ); match.setField( new MatchField(MatchType.DL_DST, dstMAC.clone()) );

    List actions = new ArrayList(); actions.add(new Output(outgoing_connector));

    Flow f = new Flow(match, actions); f.setIdleTimeout((short)5);

    Node incoming_node = incoming_connector.getNode(); Status status = programmer.addFlow(incoming_node, f);

  • 4

    1MAC 00:11:11:11:11:11

    2MAC 00:22:22:22:22:22

    IDataPacketServiceinPkt.setOutgoingNodeConnector(outgoing_connector); this.dataPacketService.transmitDataPacket(inPkt);

  • 5

    1MAC 00:11:11:11:11:11

    2MAC 00:22:22:22:22:22

  • SDN/OpenFlow/OpenDaylighthttp://labs.opentone.co.jp

  • IT Technical Seminar V15 (2014)

    1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33

Recommended

View more >