1、VTN簡介及架構分析:html
具體詳見開發人員指南wiki:https://wiki.opendaylight.org/view/Release/Lithium/VTN/developer_Guidejava
這裏有兩篇很好的初學者文章做爲入門:web
《Opendaylight VTN虛擬網功能驗證與開發環境搭建》服務器
1. VTN Coordinator:架構
VTN Coordinator是外置的一個網絡應用,經過ODL上的VTN Manager提供的北向REST接口,向上層VTN Application用戶提供虛擬網絡功能。Coordinator架構以下:框架
Web Server 子模塊負責與上層VTN應用經過REST API進行交互,並將上層的REST API向下轉換成對應的Java API。其主要功能包括:ide
-經過catalina.sh啓動ui
-VTN 應用以XML或者JSON格式發送HTTP請求給Web Server
-建立會話和獲取讀寫鎖定
-根據url調用下層對應的java API library
-向上層vtn應用返回響應消息
VTN Service JAVA API Library 提供java api library來與coordinator的下層模塊進行通訊。其主要功能包括:
-建立一個對下層的進程間通訊客戶端會話
-將應用請求轉換成進程間通訊框架格式
-調用下層API(好比UPPL API, UPLL API, TC API)
-將下層響應消息返回給上層web服務器
-vtn service java library詳細類
* 須要注意的是,vtn coordinator並不具備karaf特性。更多rest api相關信息請登陸wiki
* coordinator向上提供有限的獲取底層物理網絡信息的api。
*詳見官方文檔:https://wiki.opendaylight.org/view/OpenDaylight_Virtual_Tenant_Network_(VTN):VTN_Coordinator
2. VTN Manager:
ODL控制器上的一個功能插件。經過控制器上的其餘功能模塊進行交互從而部署vtn功能。它一樣提供rest api接口來配置控制器上的vtn組件(增長、更新、刪除vtn)。用戶命令被coordinator處理後經過coordinator底層的odc driver驅動組件轉換爲rest api發送給vtn manager。它一樣能夠與著名的openstack進行整合。詳見相關文檔:
3. 用例實驗
這裏是一些基本的配置和用例實驗:
Coordinator的 Web UI 和 CLI:http://plvision.eu/blog/opendaylight-vtn-coordinator-enabling-webui-and-cli/
Manager:How to:Provision virtual L2 network:https://wiki.opendaylight.org/view/VTN:Manager:How_to:Provision_virtual_L2_network
Coordinator:RestApi:How to configure L2 Network with Single Controller:https://wiki.opendaylight.org/view/OpenDaylight_Virtual_Tenant_Network_(VTN):VTN_Coordinator:RestApi:How_to_configure_L2_Network_with_Single_Controller
更多請訪問本人博客地址:https://jiang-hao.com