A:ツイート
ソフトウェア定義ネットワークインフラストラクチャ--- REST APIの概要
ソフトウェア定義ネットワークインフラストラクチャの設計仕様--- REST API
II:龍は、基本的な使用を習得RESTAPI
RESTAPIの(A)リュウ
(B)RESTアプリケーション例:APP / ofctl_rest.py
1.サンプルAPIインタフェースが提供さ
#RESTのAPI # #Retrieveのスイッチ統計 # #得るすべてのスイッチのリストを #GET /統計情報/ スイッチ #の #は、取得のDESCの統計スイッチ #GET /統計情報/ DESC / <DPID> # # GETのDESC統計流れを切り替え #GET /統計情報/ flowdesc / <DPID> # # 取得することのDESC統計フロースイッチ分野によってフィルタリング #POST /統計情報/ flowdesc / <DPID> # # GETの統計流れ、スイッチを #GET /統計/フロー/ <DPID> # # GETはの統計流れるスイッチフィールドによってフィルタリング #POST /統計/フロー/ <DPID> # # GET集合体の統計流れるスイッチ #GET /統計/ aggregateflow / <DPID > # #得る集合体の統計流れるスイッチフィールドによってフィルタリング #POST /統計/ aggregateflow / <DPID> # # GETのテーブル統計スイッチ #1 GET /統計/テーブル/ <DPID> # # GET表は統計特徴を切り替え #GET /統計情報/ tablefeatures / <DPID> # # GETのポートの統計スイッチ #のGET /統計情報/ポート/ <DPID> [/ <ポート> ] #注:ポート番号の指定がされたオプションの #の #は、取得のキューの統計情報をスイッチ #GET /統計情報/キュー/ <DPID> [/ <ポート> [/ <というqueue_id> ]] #注:ポート番号の仕様とキューIDはオプションで ポート番号を省略し、キューIDを設定したい場合は# 、 #キーワードを指定してください「ALLを」ポート番号に #例えばGET/統計情報/キュー/ 1 / ALL / 1 #1 #は取得キューにのコンフィグ統計スイッチ #GET /統計情報/ queueconfig / <DPID> [/ <ポート> ] #注:ポート番号の指定はありオプション # #は取得キューDESC統計スイッチ #GET /統計情報/ queuedesc / <DPID> [/ <ポート> [/ <というqueue_id> ]] #注:ポート番号とキューIDの仕様はオプションで ポート番号を省略し、キューを設定したい場合は# ID、 #キーワードを指定してください「ALL 」ポート番号へ #例えば、GET /統計情報/ queuedesc /1 / ALL / 1 #1 #が取得メーターはの統計特徴スイッチ #GET /統計情報/ meterfeatures / <DPID> # # GETをのメーター設定の統計スイッチ #GET /統計情報/ meterconfig / <DPID> [/ <meter_id > ] #注:メーターIDの指定があるオプション # #得るのメータDESC統計スイッチ #GET /統計/ meterdesc / <DPID> / <meter_id> ] #注:メーターIDの指定があるオプション # #GETメートル統計スイッチ #1 GET /統計/メートル/ <DPID> / <meter_id> ] #注:メーターIDの指定があり、オプション #1 #を取得グループはの統計特徴スイッチ #GET /統計/ groupfeatures / <DPID> # #取得の統計DESCグループをスイッチ #GET /統計/ groupdesc / <DPID> / <GROUP_ID> ] #注:グループIDの指定があるオプション(オープンフロー1.5 またはそれ以降) #1 #は、取得のグループ統計スイッチ #はGET /統計/グループ/ < DPID> / <GROUP_ID> ] #注:グループIDの指定があり、オプション #1 #は、取得のポート記述スイッチ #GET /統計/ portdesc / <DPID> / <PORT_NO> ] #注:ポート番号の指定がある(オープンフローオプション1.5 またはそれ以降) #更新スイッチ統計情報 # #フローエントリ追加 #1 POST / /統計/ flowentryを追加 # #一致するすべてのフローエントリ変更 #POST / /統計/ flowentryを変更 #1 #はフローエントリを変更します厳密に一致するワイルドカードと優先順位 #のPOST /統計/ flowentry / modify_strict # #削除一致するすべてのフローは、エントリ #POST /統計情報/ flowentry / 削除 # #フローエントリを削除厳密に一致するワイルドカードと優先順位 #のPOST /統計情報/ flowentry / delete_strict # #のすべてのフローエントリの削除スイッチ #を削除 / /統計情報/ flowentry /クリア<DPID> # # メートルのエントリを追加 #のPOST / /統計情報/ meterentryを追加します 。# #メートルのエントリー変更 #のPOST / /統計情報/ meterentryを修正する #1 メートルのエントリの削除#を #のPOST /統計情報/ meterentry / 削除を # 役職 #を #は、グループエントリの追加 /統計情報/ groupentryを/ 追加 # #グループエントリ変更 #のPOST / /統計情報/ groupentryを修正する # #グループエントリの削除 #のPOST /統計情報/ groupentryを/ 削除 # #物理ポートの動作変更 #POSTを /統計/ portdesc / 変更 #1 #は、コントローラの役割変更 #1 POST /統計/ ロール #は #1 #を送信experimeterメッセージ #1 POST /統計/実験/ <DPID>
(C)竜の公式文書:https://ryu.readthedocs.io/en/latest/app/ofctl_rest.html
3:実験開始
(A)コントローラリュウを開き
リュ・マネージャofctl_rest.py simple_switch_13.py --observeリンク、我々は通常、処理切替ロジックコントローラリュウを確保するために必要RESTAPI加算を使用することに加えて--verbose位
(B)オープンMininet
sudoのMN --controller =リモート--mac --topo =木、2、2
(C)カールを使用して、URL要求を送信します
1.取得するすべてのスイッチは、コントローラに接続されているすべてのスイッチのリストを取得します。
$カール-X GETのhttp:// localhostを:8080 /統計情報/スイッチ
2.スイッチの説明はURIでデータパスIDで指定されたスイッチのDESCの統計情報をゲット。
$カール-X GETのhttp:// localhostを:8080 /統計情報/ DESC / 1
3.同様の他
(IV)実験ポストマン(より美しいです)
1. インストールの郵便配達
2.情報交換を入手