Upgrade to Pro — share decks privately, control downloads, hide ads and more …

ONOS 及實際 SDN Switch 使用經驗分享

ONOS 及實際 SDN Switch 使用經驗分享

Study-Area 2016


Phil Huang

July 16, 2016

More Decks by Phil Huang

Other Decks in Technology


  1. 自我介紹 ❏ 小飛機 pichuang ❏ 交大資工碩班 系統實務組 ❏ 社群參與 ❏

    SDNDS-TW Co-Founder ❏ Study-Area 苦力組 ❏ ONOS Ambassador ❏ http://blog.night9.cc
  2. 如何開始? • 設計一個 ”實際使用情境” • 簡單起頭 ◦ 只做 L2 Switching

    i. 用 ping 驗證網路狀況 ii. 用 iperf 驗證網路速度 ◦ 決定 Topology i. 3-Tier Topology ii. Mesh Topology iii. Leaf-Spine Topology
  3. 常見實際拓墣 OpenFlow-Enabled Switch Host A Host B Legacy L2 Switch

    DHCP/NAT Server OpenFlow Controller Internet Tips: 針對 OpenFlow-Enabled Switch 建議走 Out-of-Band 方式
  4. OpenFlow-Enabled Switch 選擇 1. 採買實體 OpenFlow-Enabled Switch 及 Network OS

    ◦ 從各家 Network OS 廠商中的 Hardware Compatibility List 裡挑選硬體 2. Linux Server + 4-Port NIC + OpenvSwitch ◦ 可以直接在 Local 用 Wireshark 觀察封包 3. 支援 OpenWrt AP + OpenvSwitch Protocol 請以 OpenFlow 1.3 為主 1.0 為次佳選 Tips: 能觀察到封包的選擇都是好的
  5. OpenFlow Controller 選擇 1. Ryu ◦ 學習曲線低 ◦ Keyword: Simple_Switch_13

    (or Simple_Switch_10) 2. ONOS ◦ 學習曲線偏高 ◦ Keyword: org.onosproject.fwd 選擇 Controller Application 有實作 L2 Forwarding 或者是 Switching 功能 Tips: 觀測不同家的 Controller 建立行為基準
  6. 直接接上 SDN Controller 進行測試??? • 如果你經驗非常豐富,Do it!若不是... • OpenFlow-Enabled Switch

    以 OpenvSwitch 為例 ◦ 目的 i. 確定 OpenFlow-Enabled Switch 進行 TCP 3-way Handshake 行為正常 ◦ 兩種不同設定方式 i. 設定 fail-mode 為 standalone,並且不設定 controller IP ii. 利用 ovs-ofctl add-flow 直接下 flow entry 直接指定 in_port, out_port ◦ 測試 i. Host A <-> Host B ii. Host A (or Host B) <-> Internet
  7. 確定連線正常 1. 啟動 OpenFlow Contorller 2. OpenvSwitch fail-mode 改為 secure,設定

    controller IP 3. 透過 ovs-vsctl 觀測到 controller 狀態為 is_connected 4. 測試 a. Host A <-> Host B b. Host A (or Host B) <-> Internet
  8. 在啟動 SDN 狀況下,連線不正常??? • 觀測 Flow Count 有否增加 => 可確定

    Flow Entry 有否被 Match Tips: 先從 Switch 開始懷疑起
  9. 複雜一點的 Use Cases • 以各家 Controller 提供的案例為參考,如 ONOS Use Cases

    a. SDN-IP b. CORD (Central Office Re-Artitected as a Datacenter) c. ONF Atrium ONOS 項目介紹: http://www.sdnlab.com/17006.html
  10. ONF Atrium - ONOS Based Router • Goal: Peering Router

    • Real Deployment Reference:https://github.com/onfsdn/atrium-docs/wiki/ONOS-Based-Atrium-Router-16A
  11. ONF Atrium - ONOS Based Leaf Spine Fabric • L2/L3

    Clos Fabric ◦ Cross Rack 走 L3 Routing ◦ Within Rack 走 L2 Fowarding Reference: https://github.com/onfsdn/atrium-docs/wiki/ONOS-Based-Atrium-Leaf-Spine-Fabric-16A