Your SlideShare is downloading. ×
0
Openflow勉強会 「OpenFlowコントローラを取り巻く状況とその実装」
Openflow勉強会 「OpenFlowコントローラを取り巻く状況とその実装」
Openflow勉強会 「OpenFlowコントローラを取り巻く状況とその実装」
Openflow勉強会 「OpenFlowコントローラを取り巻く状況とその実装」
Openflow勉強会 「OpenFlowコントローラを取り巻く状況とその実装」
Openflow勉強会 「OpenFlowコントローラを取り巻く状況とその実装」
Openflow勉強会 「OpenFlowコントローラを取り巻く状況とその実装」
Openflow勉強会 「OpenFlowコントローラを取り巻く状況とその実装」
Openflow勉強会 「OpenFlowコントローラを取り巻く状況とその実装」
Openflow勉強会 「OpenFlowコントローラを取り巻く状況とその実装」
Openflow勉強会 「OpenFlowコントローラを取り巻く状況とその実装」
Openflow勉強会 「OpenFlowコントローラを取り巻く状況とその実装」
Openflow勉強会 「OpenFlowコントローラを取り巻く状況とその実装」
Openflow勉強会 「OpenFlowコントローラを取り巻く状況とその実装」
Openflow勉強会 「OpenFlowコントローラを取り巻く状況とその実装」
Openflow勉強会 「OpenFlowコントローラを取り巻く状況とその実装」
Openflow勉強会 「OpenFlowコントローラを取り巻く状況とその実装」
Openflow勉強会 「OpenFlowコントローラを取り巻く状況とその実装」
Openflow勉強会 「OpenFlowコントローラを取り巻く状況とその実装」
Openflow勉強会 「OpenFlowコントローラを取り巻く状況とその実装」
Openflow勉強会 「OpenFlowコントローラを取り巻く状況とその実装」
Openflow勉強会 「OpenFlowコントローラを取り巻く状況とその実装」
Openflow勉強会 「OpenFlowコントローラを取り巻く状況とその実装」
Openflow勉強会 「OpenFlowコントローラを取り巻く状況とその実装」
Openflow勉強会 「OpenFlowコントローラを取り巻く状況とその実装」
Openflow勉強会 「OpenFlowコントローラを取り巻く状況とその実装」
Openflow勉強会 「OpenFlowコントローラを取り巻く状況とその実装」
Openflow勉強会 「OpenFlowコントローラを取り巻く状況とその実装」
Openflow勉強会 「OpenFlowコントローラを取り巻く状況とその実装」
Openflow勉強会 「OpenFlowコントローラを取り巻く状況とその実装」
Openflow勉強会 「OpenFlowコントローラを取り巻く状況とその実装」
Openflow勉強会 「OpenFlowコントローラを取り巻く状況とその実装」
Openflow勉強会 「OpenFlowコントローラを取り巻く状況とその実装」
Openflow勉強会 「OpenFlowコントローラを取り巻く状況とその実装」
Openflow勉強会 「OpenFlowコントローラを取り巻く状況とその実装」
Openflow勉強会 「OpenFlowコントローラを取り巻く状況とその実装」
Openflow勉強会 「OpenFlowコントローラを取り巻く状況とその実装」
Openflow勉強会 「OpenFlowコントローラを取り巻く状況とその実装」
Openflow勉強会 「OpenFlowコントローラを取り巻く状況とその実装」
Openflow勉強会 「OpenFlowコントローラを取り巻く状況とその実装」
Openflow勉強会 「OpenFlowコントローラを取り巻く状況とその実装」
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Openflow勉強会 「OpenFlowコントローラを取り巻く状況とその実装」

9,913

Published on

OpenFlow勉強会での発表資料です。

OpenFlow勉強会での発表資料です。

Published in: Technology, Education
0 Comments
20 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
9,913
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
0
Comments
0
Likes
20
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. OpenFlow (@oshothebig)
  • 2. •• •• • , GMPLS, VLAN tag swapped Ethernet, , etc.
  • 3. OpenFlow• Galibier OpenFlow Controller • https://github.com/oshothebig/galibier• • 300 Java OpenFlow (http://bit.ly/qXoMGM) • OpenFlow Java (http://bit.ly/pbI3Or)
  • 4. OpenFlowApplication Application Application Controller OpenFlowSwitch Switch Switch Switch
  • 5. OpenFlow • NEC UNIVERGE PF5240/ PF5820• Reference • Pronto Systems Implementation 3240/3290• Open vSwitch • IBM RackSwitch G8264 • HP 3500/5400/8200
  • 6. OpenFlow NOX NEC Trema Nicira NetworksBeacon/Floodlight Big Switch Networks Ryu Midokura NodeFlow NTT Data etc. etc.
  • 7. NOX• http://noxrepo.org/• GPL v3• Nicira Networks• C++/Python• •• • 2011/1/1 53
  • 8. Trema• https://github.com/trema/trema• GPL v2• NEC• C/Ruby• • 1 PC•
  • 9. Beacon/Floodlight• http://www.beaconcontroller.net/ (Beacon) http:// oodlight.open owhub.org/ (Floodlight) Beacon Floodlight GPL v2 Apache License Version 2.0 Java David Erickson (Stanford) Big Switch Networks• IO 600 Flow req/sec @4 (Beacon)
  • 10. Ryu• http://www.osrg.net/ryu/• GPL v3• NTT( ?) VA Linux• Pure Python• OpenStack
  • 11. NodeFlow• http://github.com/gaberger/NodeFLow• MIT Licenes• Gary Berger• JavaScript (for Node.js)
  • 12. Trema NEC UNIVERGE PFBig Switch Floodlight BigController? NOX Nicira NVP?
  • 13. Floodlight• 12 https://github.com/ oodlight/ oodlight• Beacon • • OSGi • Netty• →T
  • 14. Floodlight• 12 https://github.com/ oodlight/ oodlight• Beacon • • OSGi • Netty• →T
  • 15. Nicira Networks• 2 (by Publickey) http://www.publickey1.jp/blog/11/nicira_networks.html• NTT http://www.ntt.co.jp/news2011/1108/110802a.html• Nicira Virtualization Platform (NVP) http://cn.teldevice.co.jp/product/nicira/nicira_nvp/ index.html
  • 16. Onix• OSDI’10 Onix: A Distributed Control Platform for Large-scale Production Networks http://www.usenix.org/event/osdi10/tech/full_papers/ Koponen.pdf• Nicira Networks, Google, NEC, UC Berkeley• • Zookeeper• 15 C++
  • 17. Onix Server 1 Server N Network Control Logic Network Control Logic NIB NIB Onix Switch Import / Export Distribution I / E Distribution I / E Switch Import / Export Management Connectivity Network Infrastructure Managed Physical Network InfrastructureFigure 1: There are four components in an Onix controllednetwork: managed physical infrastructure, connectivity
  • 18. Onix• Network Information Base (NIB) • Forwarding 1 n Forwarding Category Host Link Table Engine Query Create, dest 1 2 Network Node 1 n Port Access attri Notification Figure 2: The default network entity classes provided by Synchronize• Onix’s API. Solid lines represent inheritance,DB dashed lines while Configuratio correspond to referential relation between entity instances. The • Transactionalthe dashed linesdatabase numbers on persistent show the quantitative mapping relationship (e.g., one Link maps to two Ports, and two Pull • One-hop, can map to the same Link). Nodes, ports and links DHT Ports eventually-consistent, memory-only constitute the network topology. All entity classes inherit the same base class providing generic key-value pair access. Table 1: Fu
  • 19. OpenFlow
  • 20. ••••
  • 21. • Symmetric Message • Hello, Echo, ,• Controller/Switch Message • , ,• Async Message • Packet in, ,
  • 22. Headerver. type length xid payload 22• length (2 bytes)• Netty LengthFieldBasedFrameDecoder • Floodlight
  • 23. FloodlightChannelPipeline Controller OFChannelHandler OpenFlow OFMessageEncoder OFMessageDecoder Netty Internal I/O Threads
  • 24. Switch Controller
  • 25. Switch Controller
  • 26. Switch Controller HELLO HELLO
  • 27. Switch Controller HELLO HELLO FEATURE_REQUEST FEATURE_REPLY
  • 28. Switch Controller
  • 29. Switch Controller ECHO_REQUEST ECHO_REPLY
  • 30. Switch Controller ECHO_REQUEST ECHO_REPLY ECHO_REQUEST ECHO_REPLY
  • 31. Controller.java ( OFChannelHandler)protected void processOFMessage(OFMessage m) throws IOException, SwitchStateException { switch (m.getType()) { case HELLO: .... case ECHO_REQUEST: .... case FEATURES_REPLY: .... default: ....}※ Trema src/switch_manager/ofpmsg_recv.c:ofpmsg_recv()
  • 32. Switch Controller
  • 33. Switch Controller
  • 34. Switch Controller PACKET_IN
  • 35. Switch Controller PACKET_IN PACKET_OUT or FLOW_MOD
  • 36. Controller.javaprotected void handleMessage( IOFSwitch sw, OFMessage m, FloodlightContext bContext) { switch (m.getType()) { case PACKET_IN: .... default: ....}default
  • 37. OpenFlow• OpenFlow 1.1 • 1.0• Ver. 1.1 • Ver. 1.1 •• Ver. 1.2 •
  • 38. • OpenFlow•• OpenFlow • Floodlight
  • 39. • Open vSwitch

×