All Projects → YanHaoChen → Learning Sdn

YanHaoChen / Learning Sdn

SDN 學習及實作範例。(因個人職涯關係,已不再維護,請見諒。)

Programming Languages

python
139335 projects - #7 most used programming language

Labels

Projects that are alternatives of or similar to Learning Sdn

pilot
Simple web-based SDN controller for family and friends
Stars: ✭ 33 (-87.4%)
Mutual labels:  sdn
sdn-nfv-papers
This is a paper list about Resource Allocation in Network Functions Virtualization (NFV) and Software-Defined Networking (SDN).
Stars: ✭ 40 (-84.73%)
Mutual labels:  sdn
TupleNet
TupleNet is a lightweight tool for building virtual-networking
Stars: ✭ 26 (-90.08%)
Mutual labels:  sdn
pathman-sr
Pathman SR is an open-source app to compute paths and deploy routes in Segment Routing-enabled network.
Stars: ✭ 79 (-69.85%)
Mutual labels:  sdn
katana-slice manager
5G Network E2E Slice Manager
Stars: ✭ 61 (-76.72%)
Mutual labels:  sdn
flowmanager
An SDN application that gives its user the ability to control flows in an OpenFlow network without coding.
Stars: ✭ 60 (-77.1%)
Mutual labels:  sdn
v-switch
Virtual Encrypted Switch across the network, using UDP + AES + TAP
Stars: ✭ 27 (-89.69%)
Mutual labels:  sdn
sfc app
Service Function Chaining Application for Ryu SDN controller
Stars: ✭ 25 (-90.46%)
Mutual labels:  sdn
husarnet
Husarnet is a Peer-to-Peer VPN to connect your laptops, servers and microcontrollers over the Internet with zero configuration.
Stars: ✭ 128 (-51.15%)
Mutual labels:  sdn
multipath
Multipath routing with Ryu and Pyretic SDN Controllers
Stars: ✭ 56 (-78.63%)
Mutual labels:  sdn
zero-ui
ZeroUI - ZeroTier Controller Web UI - is a web user interface for a self-hosted ZeroTier network controller.
Stars: ✭ 432 (+64.89%)
Mutual labels:  sdn
iovisor-ovn
IOVisor OVN integration
Stars: ✭ 62 (-76.34%)
Mutual labels:  sdn
kytos
Kytos SDN Platform is the fastest way to deploy an SDN Network. With this you can deploy a basic OpenFlow controller or your own controller. Kytos was designed to be easy to install, use, develop and share Network Apps (NApps). Kytos is incredibly powerful and easy, its modular design makes Kytos a lightweight SDN Platform.
Stars: ✭ 43 (-83.59%)
Mutual labels:  sdn
netbox-joined-inventory
Netbox_joined_inventory is a python script that gathers data from a Netbox source-of-truth and stores them as Ansible inventory, group_vars and host_vars files.
Stars: ✭ 21 (-91.98%)
Mutual labels:  sdn
nconnect
Securely connect to remote machines without the need of any server, public IP address, or publicly exposed ports.
Stars: ✭ 38 (-85.5%)
Mutual labels:  sdn
sdn-loadbalancing
To perform load balancing on fat tree topology using SDN Controller i.e. Floodlight and OpenDaylight.
Stars: ✭ 89 (-66.03%)
Mutual labels:  sdn
SDN-Datacenter
Making a software defined datacenter. Which includes various virtual networks with mutiple network functions deployed on it. This includes SDN network deployed on real hardware.
Stars: ✭ 28 (-89.31%)
Mutual labels:  sdn
Vedetta
OpenBSD Router Boilerplate
Stars: ✭ 260 (-0.76%)
Mutual labels:  sdn
meetups
Repository to gather all presentations and info from all Taiwan Cloud Native meetups.
Stars: ✭ 96 (-63.36%)
Mutual labels:  sdn
fog05
End-to-End Compute, Storage and Networking Virtualisation.
Stars: ✭ 50 (-80.92%)
Mutual labels:  sdn

SDN-tutorial

SDN(Software-defined networking,軟體定義網路)是一個相當大的架構,字面上雖然簡單,但這一切最有問題的地方是在於「如何實作軟體定義網路」。要學會實作 SDN ,最重要的是瞭解 SDN 整體的架構,也因為 SDN 並非單一單元,如果缺失其中一個單元的瞭解,在最後的設計上,將會綁手綁腳、無從下手。在此,我將 SDN 分為三個單元,分別為:

  • Switch(連接設備,屬於 Data Plane)

  • 協定(Switch 的運作規則、Switch 與 Controller 之間的溝通)

  • Controller(定義 Switch 的運作規則及整體網路邏輯,屬於 Control Plane)

在學習的項目上又分為四個部分(依順序排列):

  1. 協定

  2. Switch

  3. 虛擬網路環境(Mininet)

  4. Controller

初學者入門建議

  1. 什麼是 OpenFlow?:SDN 設備間溝通的方式
  2. 安裝 OVS:為實際執行 OpenFlow 做準備
  3. 利用 OVS 熟習 OpenFlow:手動當 Controller 的角色
  4. 安裝 Mininet:建立模擬環境,及與 Controller 連結做準備
  5. 熟悉 Mininet:瞭解 Mininet 在做什麼
  6. 以程式碼建立 Mininet 環境:學習虛擬環境連結 Controller 的方式
  7. 安裝 Ryu Controller:為學習 Controller 做準備
  8. 撰寫第一隻 Controller 程式
  9. 學習利用 Controller 規劃轉送邏輯
  10. 比較像樣的路徑配置方式:Shortest Path

其餘章節,讀者可以依需求閱讀。每個項目都會有一個目錄(如:Ryu)讀者可以透過目錄,找尋自己有興趣的內容閱讀。

實驗專區

此部分的文章,主要談論實驗環境的建立方式。

實際設備操作

使用到的套件

  • Mininet(虛擬網路環境)
  • Open vSwitch(虛擬 Switch)
  • Ryu(SDN Controller)
  • Vagrant(建立虛擬系統環境)
  • GtkTerm(連接週邊硬體)

硬體設備

  • Pica8 P-3297

參考

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].