Floodlight+mininetテストOpenFlowメソッド


まずfloodlightコントローラとmininetがプリインストールされた仮想マシンを起動します
コントローラ:192.168.56.1
VM:192.168.56.99
コントローラログの起動:
09:46:08.359 INFO [n.f.c.m.FloodlightModuleLoader:main] Loading default modules
09:46:09.756 INFO [n.f.c.i.Controller:main] Controller role set to MASTER
09:46:09.806 INFO [n.f.c.i.Controller:main] Flush switches on reconnect -- Disabled
09:46:12.733 INFO [n.f.l.i.LinkDiscoveryManager:main] Setting autoportfast feature to OFF
09:46:13.494 INFO [o.s.s.i.c.FallbackCCProvider:main] Cluster not yet configured; using fallback local configuration
09:46:13.495 INFO [o.s.s.i.SyncManager:main] [32767] Updating sync configuration ClusterConfig [allNodes={32767=Node [hostname=localhost, port=6642, nodeId=32767, domainId=32767]}, authScheme=CHALLENGE_RESPONSE, keyStorePath=/etc/floodlight/auth_credentials.jceks, keyStorePassword is unset]
09:46:13.799 INFO [o.s.s.i.r.RPCService:main] Listening for internal floodlight RPC on localhost/127.0.0.1:6642
09:46:14.458 INFO [n.f.c.i.Controller:main] Listening for switch connections on 0.0.0.0/0.0.0.0:6633
09:46:18.488 INFO [n.f.j.JythonServer:debugserver-main] Starting DebugServer on :6655

仮想マシンでmininetを起動し、コントローラは192.168.56.1に設定されています.
mn --controller=remote --ip=192.168.56.1 --port=6633

パラメータを変更してネットワークトポロジを変更できる場合の具体的な操作方法はmininetドキュメントを参照してください.
ssh-X転送で仮想マシンに接続し、仮想マシンのwiresharkを開き、openflowパッケージをキャプチャして分析できます.
仮想マシンで仮想スイッチのフロー・テーブル・アイテムを構成できます.
dpctl add-flow tcp:127.0.0.1:6634 in_port=1,actions=output:1