Documentation outline for sdninterfaceapp 21/17821/6
authorrafatjahan <rafat.jahan@tcs.com>
Tue, 7 Apr 2015 05:54:00 +0000 (11:24 +0530)
committerrafatjahan <rafat.jahan@tcs.com>
Thu, 16 Apr 2015 10:11:59 +0000 (15:41 +0530)
Change-Id: I50c273f8a94a697f55c42cb28337c6c1b7c47af1
Signed-off-by: rafatjahan <rafat.jahan@tcs.com>
.gitignore
manuals/developer-guide/src/main/asciidoc/bk-developers-guide.adoc
manuals/developer-guide/src/main/asciidoc/sdninterfaceapp/odl-sdninterfaceapp-all-dev.adoc [new file with mode: 0755]
manuals/developer-guide/src/main/resources/images/ODL-SDNi-Architecture.png [new file with mode: 0644]
manuals/developer-guide/src/main/resources/images/SDNiAggregator.png [new file with mode: 0644]
manuals/developer-guide/src/main/resources/images/SDNiWrapper.png [new file with mode: 0644]
manuals/user-guide/src/main/asciidoc/bk-user-guide.adoc
manuals/user-guide/src/main/asciidoc/sdninterfaceapp/odl-sdninterfaceapp-all-user.adoc [new file with mode: 0755]

index 5cf8bfcb88063190a5764bbcf464bc7796db1da6..7cf2acc68592619e50832413ab642ca20b83b7c9 100644 (file)
@@ -3,3 +3,4 @@ target
 *.iml
 *.ipr
 *.iws
+*~
index 166fbe302ad48c37e76383def5b5c18a8b6e23b1..8012fd687d922a408f3ccfddb0995549f07626a2 100644 (file)
@@ -62,6 +62,8 @@ include::reservation/reservation-dev.adoc[]
 
 include::sfc/sfc.adoc[]
 
+include::sdninterfaceapp/odl-sdninterfaceapp-all-dev.adoc[]
+
 include::tcpmd5/odl-tcpmd5-all-dev.adoc[TCP-MD5]
 
 include::topoprocessing/odl-topoprocessing-framework-dev.adoc[]
diff --git a/manuals/developer-guide/src/main/asciidoc/sdninterfaceapp/odl-sdninterfaceapp-all-dev.adoc b/manuals/developer-guide/src/main/asciidoc/sdninterfaceapp/odl-sdninterfaceapp-all-dev.adoc
new file mode 100755 (executable)
index 0000000..2236df4
--- /dev/null
@@ -0,0 +1,38 @@
+== ODL-SDNi Developer Guide
+
+=== Overview
+This project aims at enabling inter-SDN controller communication by developing SDNi (Software Defined Networking interface) as an application (ODL-SDNi App). 
+
+=== ODL-SDNi Architecture
+.ODL-SDNi-Architecture 
+image::ODL-SDNi-Architecture.png[]
+
+* SDNi Aggregator: Northbound SDNi plugin acts as an aggregator for collecting network information such as topology, stats, host etc. This plugin can be evolving as per needs of network data requested to be shared across federated SDN controllers.
+* SDNi REST API: SDNi REST APIs will be implemented to fetch the aggregated information from the northbound plugin – SDNi aggregator. New SDNi REST API will be developed, specific to ODL for supporting SDNi application.
+* SDNi Wrapper: SDNi BGP Wrapper will be responsible for the sharing and collecting information to/from federated controllers.
+
+=== SDNi Aggregator
+.SDNiAggregator
+image::SDNiAggregator.png[]
+
+* SDNiAggregator connects with the Base Network Service Functions of the controller. Currently it is querying topology manager, switch manager, host tracker and statistics manager for creating SDNi network capability.
+* SDNiAggregator is customized to retrieve the host controller’s details, while running the controller in cluster mode. Rest of the northbound APIs of controller will retrieve the entire topology information of all the connected controllers. 
+* The SDNiAggregator creates a topology structure.This structure is populated by the various network funtions.
+
+=== SDNi REST API
+ODL-SDNi REST API query SDNiAggregator to get the required information.
+
+http://localhost:8282/controller/nb/v2/sdni/<containername>/topology
+
+*Topology Data:* Controller IP Address, Links, Nodes, Link Bandwidths, MAC Address of switches, Latency, Host IP address.
+
+http://localhost:8282/controller/nb/v2/sdni/<containername>/qos
+
+*QOS Data:* Node, Port, Transmit Packets, Receive Packets, Collision Count, Receive Frame Error, Receive Over Run Error, Receive Crc Error
+
+=== SDNi Wrapper
+.SDNiWrapper
+image::SDNiWrapper.png[]
+
+* SDNiWrapper is an extension of ODL-BGPCEP where SDNi topology data is exchange along with the Update NLRI message. Refer http://tools.ietf.org/html/draft-ietf-idr-ls-distribution-04 for more information on NLRI.
+* SDNiWrapper gets the controller’s network capabilities through SDNi REST API and serialize it in Update NLRI message. This NLRI message will get exchange between the clustered controllers through BGP-UPDATE message. Similarly peer controller’s UPDATE message is received and unpacked then format to SDNi Network capability data, which will be stored for further purpose.
diff --git a/manuals/developer-guide/src/main/resources/images/ODL-SDNi-Architecture.png b/manuals/developer-guide/src/main/resources/images/ODL-SDNi-Architecture.png
new file mode 100644 (file)
index 0000000..8e4df48
Binary files /dev/null and b/manuals/developer-guide/src/main/resources/images/ODL-SDNi-Architecture.png differ
diff --git a/manuals/developer-guide/src/main/resources/images/SDNiAggregator.png b/manuals/developer-guide/src/main/resources/images/SDNiAggregator.png
new file mode 100644 (file)
index 0000000..8a11ad4
Binary files /dev/null and b/manuals/developer-guide/src/main/resources/images/SDNiAggregator.png differ
diff --git a/manuals/developer-guide/src/main/resources/images/SDNiWrapper.png b/manuals/developer-guide/src/main/resources/images/SDNiWrapper.png
new file mode 100644 (file)
index 0000000..8cb3806
Binary files /dev/null and b/manuals/developer-guide/src/main/resources/images/SDNiWrapper.png differ
index 81654aee25fafd716c65600c81b0e8108079e9d6..5b5b00e8e6d50c815e2bc08434946705bd5dde5c 100644 (file)
@@ -30,6 +30,8 @@ include::bgpcep/odl-bgpcep-bgp-all-user.adoc[BGP]
 
 include::bgpcep/odl-bgpcep-pcep-all-user.adoc[PCEP]
 
+include::sdninterfaceapp/odl-sdninterfaceapp-all-user.adoc[ODL-SDNi]
+
 include::sfc/sfc.adoc[Service Function Chain]
 
 include::tcpmd5/odl-tcpmd5-all-user.adoc[TCP-MD5]
diff --git a/manuals/user-guide/src/main/asciidoc/sdninterfaceapp/odl-sdninterfaceapp-all-user.adoc b/manuals/user-guide/src/main/asciidoc/sdninterfaceapp/odl-sdninterfaceapp-all-user.adoc
new file mode 100755 (executable)
index 0000000..38b5586
--- /dev/null
@@ -0,0 +1,16 @@
+== ODL-SDNi User Guide
+
+=== Introduction
+This user guide will help to setup the ODL-SDNi application for lithium release and contains the examples configuration using ODL-BGPCEP.
+
+=== Components
+SDNiAggregator(controller), SDNi REST API(controller) and SDNiWrapper(bgpcep) are the three components in ODL-SDNi App  
+* SDNiAggregator: Connects with switch, topology, hosttracker managers of controller to get the topology and other related data.
+* SDNi REST API: It is a part of controller northbound, which gives the required information by quering SDNiAggregator
+* SDNiWrapper: This component uses the SDNi REST API and gathers the information required to be shared among controllers.
+
+=== Trouble shooting
+To work with multiple controllers, change some of the configuration in config.ini file. For example change the listening port of one controller to 6653 and other controller to 6663 in /root/controller/opendaylight/distribution/opendaylight/target/distribution.opendaylight-osgipackage/opendaylight/configuration/config.ini (i.e of.listenPort=6653).
+Open Flow related system parameters
+TCP port on which the controller is listening (default 6633) of.listenPort=6653
+