SlideShare a Scribd company logo
SDN ryu 及其應用
SDN & Application
專題成果
董承樺、張廷謙、林展逸
2014/10 – 2015/12
大綱
Outline
• 環境架設 (Environment Setting)
• 軟體定義網路 (Soft Defined Network)
• 控制器 Ryu (Ryu Controller)
• 胖樹拓樸 (Fat Tree)
• 應用:多重路徑 (Application:Multipath)
• 實驗操作 (Demo)
大綱
Outline
• 環境架設 (Environment Setting)
• 軟體定義網路 (Soft Defined Network)
• 控制器 Ryu (Ryu Controller)
• 胖樹拓樸 (Fat Tree)
• 應用:多重路徑 (Application:Multipath)
• 實驗操作 (Demo)
環境架設
(Environment Setting)
• 作業系統:Ubuntu Linux (使用虛擬機)
• 模擬網路環境:Mininet
• 控制器:Ryu Controller
• 套件:Python、Git…
Ubuntu Linux (使用虛擬機)
• 安裝Virtual Box
• 安裝Ubuntu Linux
Ubuntu Linux (使用虛擬機)
• 新增
Ubuntu Linux (使用虛擬機)
Ubuntu Linux (使用虛擬機)
Ubuntu Linux (使用虛擬機)
Ubuntu Linux (使用虛擬機)
Ubuntu Linux (使用虛擬機)
Ubuntu Linux (使用虛擬機)
Ubuntu Linux (使用虛擬機)
開啟Linux
Ubuntu Linux (使用虛擬機)
Ubuntu Linux (使用虛擬機)
• 安裝完成
基本指令
• Ctrl + Alt + T:開啟終端機
• $ clear:清除畫面
• $ cd {目錄}:資料夾移動
開啟終端機
• Ctrl + Alt + T
更新系統
• $ sudo apt-get update
• $ sudo apt-get upgrade
Mininet安裝
• $ sudo apt-get install -y git
• $ git clone git://github.com/mininet/mininet
• $ cd mininet
• $ util/install.sh -nfv
• $ cd
Mininet安裝
• $ sudo mn --test pingall (測試)
• 安裝成功圖
Python安裝
• $ sudo apt-get install python-pip python-dev
build-essential
• $ sudo pip install --upgrade pip
Ryu安裝
• $ sudo apt-get update
• $ sudo apt-get install python-eventlet python-
routes python-webob python-paramiko
• $ git clone https://github.com/osrg/ryu.git
• $ cd ryu; python ./setup.py install
• $ sudo pip install ryu
• $ sudo pip install six --upgrade
• $ sudo pip install oslo.config
Ryu 測試
• $ ryu-manager
• 成功圖
大綱
Outline
• 環境架設 (Environment Setting)
• 軟體定義網路 (Soft Defined Network)
• 控制器 Ryu (Ryu Controller)
• 胖樹拓樸 (Fat Tree)
• 應用:多重路徑 (Application:Multipath)
• 實驗操作 (Demo)
軟體定義網路
Soft Defined Network
• 由Controller控制網路
軟體定義網路
Soft Defined Network
大綱
Outline
• 環境架設 (Environment Setting)
• 軟體定義網路 (Soft Defined Network)
• 控制器 Ryu (Ryu Controller)
• 胖樹拓樸 (Fat Tree)
• 應用:多重路徑 (Application:Multipath)
• 實驗操作 (Demo)
Ryu Controller
• Python 語言,Open Source
Ryu Controller
大綱
Outline
• 環境架設 (Environment Setting)
• 軟體定義網路 (Soft Defined Network)
• 控制器 Ryu (Ryu Controller)
• 胖樹拓樸 (Fat Tree)
• 應用:多重路徑 (Application:Multipath)
• 實驗操作 (Demo)
胖樹拓樸
Fat Tree
• Mininet模擬,Python Script
• 三層 | 任兩點多重路徑
大綱
Outline
• 環境架設 (Environment Setting)
• 軟體定義網路 (Soft Defined Network)
• 控制器 Ryu (Ryu Controller)
• 胖樹拓樸 (Fat Tree)
• 應用:多重路徑 (Application:Multipath)
• 實驗操作 (Demo)
應用:多重路徑
Application(Multipath)
• 目的:利用多重路徑,避免壅塞
新HostB加入
AB
Controller下發規則給Switch
AB
B送達A
AB
四種路徑
流量監控
選擇bottleneck剩餘流量最大
規則Time Out
AB
Controller下發規則給Switch
AB
B送達A
AB
3001 3002 3003 3004 3005 3006 3007 3008
2001 2002 2003 2004 2005 2006 2007 2008
1001 1002 1003 1004
h001h002 h003h004 h005h006 h007h008 h009h010 h011h012 h013h014 h015h016
A small experiment
• All host ping to h008
• wireshark
All host ping to h008
0
5
10
15
20
25
30
35
s1001 s1002 s1003 s1004
Packet
Switch
Traffic monitor Destination hash
大綱
Outline
• 環境架設 (Environment Setting)
• 軟體定義網路 (Soft Defined Network)
• 控制器 Ryu (Ryu Controller)
• 胖樹拓樸 (Fat Tree)
• 應用:多重路徑 (Application:Multipath)
• 實驗操作 (Demo)
開啟終端機(Ryu Controller+ App)
• 將程式碼存在”ryu/ryu/myapp/”
• $ ryu-manager –observe-links
ryu/ryu/myapp/fatTreeMultipath.py
• 執行Ryu Controller + App
另一個終端機(Mininet)
• 將Fat Tree產生腳本下載
• $ sudo ./fatTreeTopology.py
Mininet終端機
• H1 ping H5 30次
• $ h001 ping –c30 h005
Ryu Controller終端機
• Controller收到s3001 Packet In事件
• 1. 找Host5
• 2. Host5收到,回封包給Host1
• 3. Host1在送封包給,Host5
找Host5
找到Host5(用Group Table)
H5→H1
H1→H5
Ryu Controller終端機
• 結束Controller
• Ctrl + C
Mininet終端機
• 關閉Mininet後
• $ sudo mn –c (關閉Mininet都要下這個指令)
重啟Mininet 和 Ryu Controller
• $ ryu-manager –observe-links
ryu/ryu/myapp/fatTreeMultipath.py
• $ sudo ./fatTreeTopology.py
Mininet終端機
• 觀察h001,跳出一個新的終端機
• $ xterm h001
H001終端機
• Ping H8 (10.0.0.8)
• $ ping 10.0.0.8
Ryu Controller終端機
• H1→H8成功
開啟每一個Host ping Host8
• $ xterm hxxx
• 重複剛剛步驟
SDN ryu 專題安裝
SDN ryu 專題安裝
SDN ryu 專題安裝
完成實驗

More Related Content

PDF
ネットワークスイッチ構築実践 2.STP・RSTP・PortSecurity・StormControl・SPAN・Stacking編
PDF
TRICK 2022 Results
PPTX
kubernetes初心者がKnative Lambda Runtime触ってみた(Kubernetes Novice Tokyo #13 発表資料)
PDF
Steam ゲーム内購入 サーバーサイド実装について
PDF
メッセージキュー「Pulsar」の紹介 @OSC_20171007
PDF
A100 GPU 搭載! P4d インスタンス 使いこなしのコツ
PDF
Kubernetesによる機械学習基盤への挑戦
PDF
RedmineのFAQとアンチパターン集
ネットワークスイッチ構築実践 2.STP・RSTP・PortSecurity・StormControl・SPAN・Stacking編
TRICK 2022 Results
kubernetes初心者がKnative Lambda Runtime触ってみた(Kubernetes Novice Tokyo #13 発表資料)
Steam ゲーム内購入 サーバーサイド実装について
メッセージキュー「Pulsar」の紹介 @OSC_20171007
A100 GPU 搭載! P4d インスタンス 使いこなしのコツ
Kubernetesによる機械学習基盤への挑戦
RedmineのFAQとアンチパターン集

What's hot (20)

PDF
はじめてのpostmarketOSインストール Windowsタブレット #kagolug Beginner for install postmar...
PDF
[論文解説]KGAT:Knowledge Graph Attention Network for Recommendation
PDF
[GTCJ2018]CuPy -NumPy互換GPUライブラリによるPythonでの高速計算- PFN奥田遼介
PDF
ネットワーク ゲームにおけるTCPとUDPの使い分け
PDF
xUnit Test Patterns - Chapter16
PDF
[CEDEC 2021] 運用中タイトルでも怖くない! 『メルクストーリア』におけるハイパフォーマンス・ローコストなリアルタイム通信技術の導入事例
PDF
hbstudy#88 5G+MEC時代のシステム設計
PDF
Redmineの開発状況のこれまでと現在
PDF
挫折しないRedmine
PDF
僕がつくった 70個のうちの48個のWebサービス達
PPTX
ネットストーカー御用達OSINTツールBlackBirdを触ってみた.pptx
PDF
暗号技術の実装と数学
PDF
WebSocketでリアルタイム処理をする
PDF
Scapyで作る・解析するパケット
PPTX
Spring CloudとZipkinを利用した分散トレーシング
PDF
Xenとzfsで作る家庭内VDIサーバ
PPTX
Amazon SageMaker ML Governance 3つの機能紹介
PDF
LXC入門 - Osc2011 nagoya
PDF
200人での対戦も可能!?Photon 新SDKについて
PDF
メルペイの与信モデリングにおける特徴量の品質向上の施策
はじめてのpostmarketOSインストール Windowsタブレット #kagolug Beginner for install postmar...
[論文解説]KGAT:Knowledge Graph Attention Network for Recommendation
[GTCJ2018]CuPy -NumPy互換GPUライブラリによるPythonでの高速計算- PFN奥田遼介
ネットワーク ゲームにおけるTCPとUDPの使い分け
xUnit Test Patterns - Chapter16
[CEDEC 2021] 運用中タイトルでも怖くない! 『メルクストーリア』におけるハイパフォーマンス・ローコストなリアルタイム通信技術の導入事例
hbstudy#88 5G+MEC時代のシステム設計
Redmineの開発状況のこれまでと現在
挫折しないRedmine
僕がつくった 70個のうちの48個のWebサービス達
ネットストーカー御用達OSINTツールBlackBirdを触ってみた.pptx
暗号技術の実装と数学
WebSocketでリアルタイム処理をする
Scapyで作る・解析するパケット
Spring CloudとZipkinを利用した分散トレーシング
Xenとzfsで作る家庭内VDIサーバ
Amazon SageMaker ML Governance 3つの機能紹介
LXC入門 - Osc2011 nagoya
200人での対戦も可能!?Photon 新SDKについて
メルペイの与信モデリングにおける特徴量の品質向上の施策
Ad

Similar to SDN ryu 專題安裝 (20)

PDF
Nodejs & NAE
PPTX
Sdn 之旅 open suse_asia_summit_20151206
PDF
广告技术部自动化测试介绍.pdf
PPT
从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰
PDF
Honeywall roo 1
PPT
Ryu Learning Guide
PDF
Foundation of software development 2
PPTX
Internet System Security Overview
PDF
Continuous Delivery with Ansible x GitLab CI (2e)
PDF
阿里巴巴 肖劲青 阿里巴巴运维自动化的探索与规划
PDF
阿里巴巴运维自动化的探索与规划
PPTX
LinkIt Smart 7688 Duo and MCS basics
PPTX
前端自動化工具
PPTX
[students AI workshop] Pytorch
PDF
SACC2015 ”互联网+“任重而道远-白金&高春辉
PPTX
LinkIt 7697 IoT tutorial
PDF
探索 ISTIO 新型 DATA PLANE 架構 AMBIENT MESH - GOLANG TAIWAN GATHERING #77 X CNTUG
PDF
Training apc-3.0
PDF
Training apc-3.0
PPTX
Open cdn快速部署你的私有cdn集群
Nodejs & NAE
Sdn 之旅 open suse_asia_summit_20151206
广告技术部自动化测试介绍.pdf
从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰
Honeywall roo 1
Ryu Learning Guide
Foundation of software development 2
Internet System Security Overview
Continuous Delivery with Ansible x GitLab CI (2e)
阿里巴巴 肖劲青 阿里巴巴运维自动化的探索与规划
阿里巴巴运维自动化的探索与规划
LinkIt Smart 7688 Duo and MCS basics
前端自動化工具
[students AI workshop] Pytorch
SACC2015 ”互联网+“任重而道远-白金&高春辉
LinkIt 7697 IoT tutorial
探索 ISTIO 新型 DATA PLANE 架構 AMBIENT MESH - GOLANG TAIWAN GATHERING #77 X CNTUG
Training apc-3.0
Training apc-3.0
Open cdn快速部署你的私有cdn集群
Ad

SDN ryu 專題安裝