Docs: Enhance the userguide with CLI command reference 03/44203/11
authorAnand B Jyoti <anand.b.jyoti@intel.com>
Wed, 4 Oct 2017 02:56:56 +0000 (08:26 +0530)
committerAnand B Jyoti <anand.b.jyoti@intel.com>
Fri, 13 Oct 2017 05:05:57 +0000 (10:35 +0530)
JIRA: SAMPLEVNF-84

Update the documents with CLI command reference and Resolve the
jenkins build warnings.

Change-Id: I2bf22507758e1a13b648cc40d86495581fe0d981
Signed-off-by: Anand B Jyoti <anand.b.jyoti@intel.com>
docs/testing/user/userguide/06-How_to_use_REST_api.rst
docs/testing/user/userguide/07-Config_files.rst
docs/testing/user/userguide/08-CLI_Commands_Reference.rst [new file with mode: 0644]
docs/testing/user/userguide/index.rst

index c2c8836..5372646 100644 (file)
@@ -91,68 +91,67 @@ for your VNF.
 URI definition for different VNF’s
 ===================================
 
-::
 
-URI                                    REST Method          Arguments                  Description
+URI                                    REST Method          Arguments                  Description
 ===========================================================================================================================
-/vnf                                   GET                     None                    Displays top level methods available
-
-/vnf/config                            GET                     None                    Displays the current config set
-                                       POST                    pci_white_list:         Command success/failure
-                                                               num_worker(o):
-                                                               vnf_type(o):
-                                                               pkt_type (o):
-                                                               num_lb(o):
-                                                               sw_lb(o):
-                                                               sock_in(o):
-                                                               hyperthread(o) :
-
-/vnf/config/arp                                GET                     None                    Displays ARP/ND info
-                                       POST                    action: <add/del/req>   Command success/failure
-                                                               ipv4/ipv6: <address>
-                                                               portid: <>
-                                                               macaddr: <> for add
-
-/vnf/config/link                       GET                     None
-                                       POST                    link_id:<>              Command success/failure
-                                                               state: <1/0>
-
-/vnf/config/link/<link id>             GET                     None
-                                       POST                                            Command success/failure
-                                                               ipv4/ipv6: <address>
-                                                               depth: <>
-
-/vnf/config/route                      GET                     None                    Displays gateway route entries
-                                       POST                    portid: <>              Adds route entries for default gateway
-                                                               nhipv4/nhipv6: <addr>
-                                                               depth: <>
-                                                               type:"net/host"
-
-/vnf/config/rules(vFW/vACL only)       GET                     None                    Displays the methods /load/clear
-/vnf/config/rules/load                 GET                     None                    Displays if file was loaded
-                                       PUT                     <script file
-                                                               with cmds>              Executes each command from script file
-/vnf/config/rules/clear                        GET                     None                    Command success/failure clear the stat
-
-/vnf/config/nat(vCGNAPT only)          GET                     None                    Displays the methods /load/clear
-/vnf/config/nat/load                   GET                     None                    Displays if file was loaded
-                                       PUT                     <script file
-                                                               with commands>          Executes each command from script file
-
-/vnf/config/nat/clear                  GET                     None                    Command success/failure clear the stats
-/vnf/log                               GET                     None                    This needs to be implemented for each VNF
-                                                                                       just keeping this as placeholder.
-
-/vnf/dbg                               GET                     None                    Will display methods supported like /pipelines/cmd
-/vnf/dbg/pipelines                     GET                     None                    Displays pipeline information(names)
-                                                                                       of each pipelines
-/vnf/dbg/pipelines/<pipe id>           GET                     None                    Displays debug level for particular pipeline
-
-/vnf/dbg/cmd                           GET                     None                    Last executed command parameters
-                                       POST                    cmd:                    Command success/failure
-                                                               dbg:
-                                                               d1:
-                                                               d2:
+/vnf                                   GET                     None                    Displays top level methods available
+
+/vnf/config                            GET                     None                    Displays the current config set
+                                        POST                    pci_white_list:         Command success/failure
+                                                                num_worker(o):
+                                                                vnf_type(o):
+                                                                pkt_type (o):
+                                                                num_lb(o):
+                                                                sw_lb(o):
+                                                                sock_in(o):
+                                                                hyperthread(o) :
+
+/vnf/config/arp                         GET                     None                    Displays ARP/ND info
+                                        POST                    action: <add/del/req>   Command success/failure
+                                                                ipv4/ipv6: <address>
+                                                                portid: <>
+                                                                macaddr: <> for add
+
+/vnf/config/link                        GET                     None
+                                        POST                    link_id:<>              Command success/failure
+                                                                state: <1/0>
+
+/vnf/config/link/<link id>              GET                     None
+                                        POST                    ipv4/ipv6: <address>    Command success/failure
+                                                                depth: <>
+
+
+/vnf/config/route                       GET                     None                    Displays gateway route entries
+                                        POST                    portid: <>              Adds route entries for default gateway
+                                                                nhipv4/nhipv6: <addr>
+                                                                depth: <>
+                                                                type:"net/host"
+
+/vnf/config/rules(vFW/vACL only)        GET                     None                    Displays the methods /load/clear
+/vnf/config/rules/load                  GET                     None                    Displays if file was loaded
+                                        PUT                     <script file
+                                                                with cmds>              Executes each command from script file
+/vnf/config/rules/clear                 GET                     None                    Command success/failure clear the stat
+
+/vnf/config/nat(vCGNAPT only)           GET                     None                    Displays the methods /load/clear
+/vnf/config/nat/load                    GET                     None                    Displays if file was loaded
+                                        PUT                     <script file
+                                                                 with commands>         Executes each command from script file
+
+/vnf/config/nat/clear                   GET                     None                    Command success/failure clear the stats
+/vnf/log                                GET                     None                    This needs to be implemented for each VNF
+                                                                                        just keeping this as placeholder.
+
+/vnf/dbg                                GET                     None                    Will display methods supported like /pipelines/cmd
+/vnf/dbg/pipelines                      GET                     None                    Displays pipeline information(names)
+                                                                                        of each pipelines
+/vnf/dbg/pipelines/<pipe id>            GET                     None                    Displays debug level for particular pipeline
+
+/vnf/dbg/cmd                            GET                     None                    Last executed command parameters
+                                        POST                    cmd:                    Command success/failure
+                                                                dbg:
+                                                                d1:
+                                                                d2:
 
 API Usage
 ===============
@@ -181,7 +180,7 @@ void rest_api_<vnf>_init(struct mg_context *ctx, struct app_params *app)
 {
         myapp = app;
 
-       VNF specific command registration
+        VNF specific command registration
         mg_set_request_handler(,,,);
 
 }
@@ -199,7 +198,7 @@ export VNF_CORE=`pwd`
 export RTE_SDK=`pwd`/dpdk-16.04
 export RTE_TARGET=x86_64-native-linuxapp-gcc
 
-./build/vFW -p 0x3 (Without the -f & -s option)
+./build/vFW (Without the -f & -s option)
 
 1. When VNF(vCGNAPT/vACL/vFW) is launched it waits for user to provide the
 /vnf/config REST method. A typical curl command if used will look like below
@@ -220,10 +219,10 @@ public_ip_port_range being added, please note the "/" being used to seperate mul
 inputs for public_ip_port_range.
 
 e.g curl -X POST -H "Content-Type:application/json" -d '{"pci_white_list": "0000:05:00.0 0000:05:00.2 0000:07:00.0 0000:07:00.2",
-                "num_lb":"2", "num_worker":"10","public_ip_port_range_0": "04040000:(1, 65535)/04040001:(1, 65535)",
-                "public_ip_port_range_1": "05050000:(1, 65535)/05050001:(1, 65535)" }' http://10.223.197.179/vnf/config
+                "num_lb":"2", "num_worker":"10","public_ip_port_range_0": "04040000:(1, 65535)/04040001:(1, 65535)",
+                "public_ip_port_range_1": "05050000:(1, 65535)/05050001:(1, 65535)" }' http://10.223.197.179/vnf/config
 
-2. Check the Link IP's using the REST API
+2. Check the Link IP's using the REST API (vCGNAPT/vACL/vFW)
 e.g curl <IP>/vnf/config/link
 
 This would indicate the number of links enabled. You should enable all the links
@@ -234,7 +233,7 @@ http://<IP>/vnf/config/link
 curl -X POST -H "Content-Type:application/json" -d '{"linkid": "1", "state": "1"}'
 http://<IP>/vnf/config/link
 
-3. Now that links are enabled we can configure IP's using link method as follows
+3. Now that links are enabled we can configure IP's using link method as follows (vCGNAPT/vACL/vFW)
 
 e.g  curl -X POST -H "Content-Type:application/json" -d '{"ipv4":"<IP to be configured>","depth":"24"}'
 http://<IP>/vnf/config/link/0
@@ -248,33 +247,61 @@ required.
 curl -X POST -H "Content-Type:application/json" -d '{"portid":"0", "nhipv4":"IPV4 address",
  "depth":"8", "type":"net"}' http://<IP>/vnf/config/route
 
+4. Adding arp entries we can use this method (vCGNAPT/vACL/vFW)
+/vnf/config/arp
 
-4. For Firewall/ACL in order to load the rules a script file needs to be posted
-using a script.
+e.g
+
+curl -X POST -H "Content-Type:application/json" -d '{"action":"add", "ipv4":"202.16.100.20",
+                 "portid":"0", "macaddr":"00:00:00:00:00:01"}'
+                 http://10.223.166.213/vnf/config/arp
+
+curl -X POST -H "Content-Type:application/json" -d '{"action":"add", "ipv4":"172.16.40.20",
+                 "portid":"1", "macaddr":"00:00:00:00:00:02"}'
+                 http://10.223.166.213/vnf/config/arp
+
+5. Adding route entries we can use this method (vCGNAPT/vACL/vFW)
+vnf/config/route
+
+e.g curl -X POST -H "Content-Type:application/json" -d '{"type":"net", "depth":"8", "nhipv4":"202.16.100.20",
+                  "portid":"0"}' http://10.223.166.240/vnf/config/route
+curl -X POST -H "Content-Type:application/json" -d '{"type":"net", "depth":8", "nhipv4":"172.16.100.20",
+                 "portid":"1"}' http://10.223.166.240/vnf/config/route
+
+5. In order to load the rules a script file needs to be posting a script.(vACL/vFW)
 /vnf/config/rules/load
 
 Typical example for loading a script file is shown below
 curl -X PUT -F 'image=@<path to file>' http://<IP>/vnf/config/rules/load
 
-vCGNAPT can use the following REST api's for runtime configuring through a script
+typically arpadd/routeadd commands can be provided as part of this to
+add static arp entries & adding route entries providing the NHIP's.
+
+6. The following REST api's for runtime configuring through a script (vCGNAPT Only)
 /vnf/config/rules/clear
-/vnf/config/nat(vCGNAPT only)
+/vnf/config/nat
 /vnf/config/nat/load
 
-For debug purpose following REST API's could be used as described above.
+7. For debug purpose following REST API's could be used as described above.(vCGNAPT/vACL/vFW)
 
 /vnf/dbg
+
+e.g curl http://10.223.166.240/vnf/config/dbg
+
 /vnf/dbg/pipelines
+e.g curl http://10.223.166.240/vnf/config/dbg/pipelines
+
 /vnf/dbg/pipelines/<pipe id>
+e.g curl http://10.223.166.240/vnf/config/dbg/pipelines/<id>
+
 /vnf/dbg/cmd
 
-5. For stats we can use the following method
+8. For stats we can use the following method (vCGNAPT/vACL/vFW)
 
 /vnf/stats
 e.g curl <IP>/vnf/stats
 
-6. For quittiong the application
+9. For quittiong the application (vCGNAPT/vACL/vFW)
 /vnf/quit
 
 e.g curl <IP>/vnf/quit
-
index 6ad6c6f..9061ee5 100644 (file)
@@ -7,14 +7,14 @@ SampleVNF - Config files
 ========================
 
 The configuration files are created based on the DUT test scenarios.
-The example reference files are provided as part of the VNFs in the 
+The example reference files are provided as part of the VNFs in the
 config folder.
 
 Following parameters will define the config files.
 
-1. Loadbalancing: Hardware or Software
+1. Load balancing type: Hardware or Software
 2. Traffic type: IPv4 or IPv6
-3. Number of Ports: pairs: Single port or Multi-Port 
+3. Number of Port Pairs: Single or Multi
 
 Following are the example configuration files for sampleVNFs.
 
@@ -31,7 +31,7 @@ The reference configuration files explained here are for Software and Hardware
 loadbalancing with IPv4 traffic type and single port pair.
 For other configurations liek IPv6 and Multi-port, refer to example config
 files provided as part of the source code in config(VNFs/vFW/config) folder
-of the VNFs. 
+of the VNFs.
 
 1. SWLB, IPv4, Single Port Pair, 4WT:
 
@@ -40,35 +40,35 @@ of the VNFs.
     [PIPELINE0]
     type = MASTER
     core = 0
-    
+
     [PIPELINE1]
     type =  ARPICMP
     core = 0
-    
+
     pktq_in  = SWQ2
     pktq_out = TXQ0.0 TXQ1.0
-    
+
     ; IPv4 ARP route table entries (dst_ip, mask, if_port, nh) hex values with no 0x
     ; arp_route_tbl = (ac102814,ff000000,1,ac102814) (ca106414,ff000000,0,ca106414)
-    
+
     ; IPv6 ARP route table entries (dst_ip, mask, if_port, nh) hex values with no 0x
     ;nd_route_tbl =  (fec0::6a05:caff:fe30:21b0,64,0,fec0::6a05:caff:fe30:21b0)
     ;nd_route_tbl =  (2012::6a05:caff:fe30:2081,64,1,2012::6a05:caff:fe30:2081)
-    
+
     ; egress (private interface) info
     pktq_in_prv =  RXQ0.0
-    
+
     ;for pub port <-> prv port mapping (prv, pub)
     prv_to_pub_map = (0,1)
     prv_que_handler = (0)
-    
+
     [PIPELINE2]
     type = TXRX
     core = 1
     pktq_in  = RXQ0.0 RXQ1.0
     pktq_out = SWQ0 SWQ1 SWQ2
     pipeline_txrx_type = RXRX
-    
+
     [PIPELINE3]
     type = LOADB
     core = 2
@@ -79,13 +79,13 @@ of the VNFs.
     prv_que_handler = (0)
     n_lb_tuples = 5 ; tuple(src_ip,dst_ip, src_port, dst_port, protocol)
     ;loadb_debug = 0
-    
+
     [PIPELINE4]
     type = VFW
     core = 3
     pktq_in  = SWQ3 SWQ4
     pktq_out = SWQ11 SWQ12;TXQ0.0 TXQ1.0
-    
+
     n_rules = 4096 ; Max number of ACL rules
     ;n_flows gets round up to power of 2
     n_flows = 1048576 ; Max number of connections/flows per vFW WT
@@ -97,13 +97,13 @@ of the VNFs.
     ;udp_unreplied and udp_replied controls udp "connection" timeouts, normally 30/180
     udp_unreplied = 180 ; UDP timeouts for unreplied traffic
     udp_replied = 180 ; UDP timeout for replied traffic
-    
+
     [PIPELINE5]
     type = VFW
     core = 4
     pktq_in  = SWQ5 SWQ6
     pktq_out = SWQ13 SWQ14;TXQ0.0 TXQ1.0
-    
+
     n_rules = 4096
     ;n_flows gets round up to power of 2
     n_flows = 1048576
@@ -115,13 +115,13 @@ of the VNFs.
     ;udp_unreplied and udp_replied controls udp "connection" timeouts, normally 30/180
     udp_unreplied = 180
     udp_replied = 180
-    
+
     [PIPELINE6]
     type = VFW
     core = 5
     pktq_in  = SWQ7 SWQ8
     pktq_out = SWQ15 SWQ16
-    
+
     n_rules = 4096
     ;n_flows gets round up to power of 2
     n_flows = 1048576
@@ -133,24 +133,24 @@ of the VNFs.
     ;udp_unreplied and udp_replied controls udp "connection" timeouts, normally 30/180
     udp_unreplied = 180
     udp_replied = 180
-    
+
     [PIPELINE7]
     type = VFW
     core = 6
     pktq_in  = SWQ9 SWQ10
     pktq_out = SWQ17 SWQ18
-    
+
     n_rules = 4096
     ;n_flows gets round up to power of 2
     n_flows = 1048576
-    traffic_type = 4 ; IPv4 Traffic 
+    traffic_type = 4 ; IPv4 Traffic
     ;traffic_type = 6 ; IPv6 Traffic
     ; tcp_time_wait controls timeout for closed connection, normally 120
     tcp_time_wait = 10
     tcp_be_liberal = 0
     udp_unreplied = 180
     udp_replied = 180
-    
+
     [PIPELINE8]
     type = TXRX
     core = 1h
@@ -168,30 +168,30 @@ This configuration doesn't require LOADB and TXRX pipelines
     [PIPELINE0]
     type = MASTER
     core = 0
-    
+
     [PIPELINE1]
     type =  ARPICMP
     core = 0
     pktq_in  = SWQ0 SWQ1 SWQ2 SWQ3
     pktq_out = TXQ0.0 TXQ1.0
-    
+
     ; egress (private interface) info
     pktq_in_prv =  RXQ0.0
-    
+
     ;for pub port <-> prv port mapping (prv, pub)
     prv_to_pub_map = (0,1)
     prv_que_handler = (0)
-    
+
     [PIPELINE2]
     type = VFW
     core = 1
     pktq_in  = RXQ0.0 RXQ1.0
     pktq_out = TXQ0.1 TXQ1.1 SWQ0
-    
+
     n_rules = 4096
     ;n_flows gets round up to power of 2
     n_flows = 1048576
-    
+
     traffic_type = 4 ; IPv4 Traffic
     ;traffic_type = 6 ; IPv6 Traffic
     ; tcp_time_wait controls timeout for closed connection, normally 120
@@ -200,17 +200,17 @@ This configuration doesn't require LOADB and TXRX pipelines
     ;udp_unreplied and udp_replied controls udp "connection" timeouts, normally 30/180
     udp_unreplied = 180
     udp_replied = 180
-    
+
     [PIPELINE3]
     type = VFW
     core = 2
     pktq_in  = RXQ0.1 RXQ1.1
     pktq_out = TXQ0.2 TXQ1.2 SWQ1
-    
+
     n_rules = 4096
     ;n_flows gets round up to power of 2
     n_flows = 1048576
-    
+
     traffic_type = 4 ; IPv4 Traffic
     ;traffic_type = 6 ; IPv6 Traffic
     ; tcp_time_wait controls timeout for closed connection, normally 120
@@ -219,17 +219,17 @@ This configuration doesn't require LOADB and TXRX pipelines
     ;udp_unreplied and udp_replied controls udp "connection" timeouts, normally 30/180
     udp_unreplied = 180
     udp_replied = 180
-    
+
     [PIPELINE4]
     type = VFW
     core = 3
     pktq_in  = RXQ0.2 RXQ1.2
     pktq_out = TXQ0.3 TXQ1.3 SWQ2
-    
+
     n_rules = 4096
     ;n_flows gets round up to power of 2
     n_flows = 1048576
-    
+
     traffic_type = 4 ; IPv4 Traffic
     ;traffic_type = 6 ; IPv6 Traffic
     ; tcp_time_wait controls timeout for closed connection, normally 120
@@ -238,17 +238,17 @@ This configuration doesn't require LOADB and TXRX pipelines
     ;udp_unreplied and udp_replied controls udp "connection" timeouts, normally 30/180
     udp_unreplied = 180
     udp_replied = 180
-    
+
     [PIPELINE5]
     type = VFW
     core = 4
     pktq_in  = RXQ0.3 RXQ1.3
     pktq_out = TXQ0.4 TXQ1.4 SWQ3
-    
+
     n_rules = 4096
     ;n_flows gets round up to power of 2
     n_flows = 1048576
-    
+
     traffic_type = 4 ; IPv4 Traffic
     ;traffic_type = 6 ; IPv6 Traffic
     ; tcp_time_wait controls timeout for closed connection, normally 120
@@ -266,7 +266,7 @@ The reference configuration files explained here are for Software and Hardware
 loadbalancing with IPv4 traffic type and single port pair.
 For other configurations liek IPv6 and Multi-port, refer to example config
 files provided as part of the source code in config(VNFs/vACL/config) folder
-of the VNFs. 
+of the VNFs.
 
 1. SWLB, IPv4, Single Port Pair, 1 WT:
 
@@ -276,7 +276,7 @@ of the VNFs.
     # add pci whitelist eg below
     w = 05:00.0  ; Network Ports binded to dpdk
     w = 05:00.1  ; Network Ports binded to dpdk
-    
+
     [PIPELINE0]
     type = MASTER
     core = 0
@@ -289,7 +289,7 @@ of the VNFs.
     pktq_in_prv =  RXQ0.0
     prv_to_pub_map = (0,1)
     prv_que_handler = (0)
-    
+
     [PIPELINE2]
     type = TXRX
     core = 1
@@ -327,13 +327,13 @@ of the VNFs.
 
 2. SWLB, IPv4, Single Port Pair, 1 WT:
 
- ::    
+ ::
 
     [EAL]
     # add pci whitelist eg below
     w = 05:00.0
     w = 05:00.1
-    
+
     [PIPELINE0]
     type = MASTER
     core = 0
diff --git a/docs/testing/user/userguide/08-CLI_Commands_Reference.rst b/docs/testing/user/userguide/08-CLI_Commands_Reference.rst
new file mode 100644 (file)
index 0000000..ece0986
--- /dev/null
@@ -0,0 +1,531 @@
+.. This work is licensed under a creative commons attribution 4.0 international
+.. license.
+.. http://creativecommons.org/licenses/by/4.0
+.. (c) opnfv, national center of scientific research "demokritos" and others.
+
+=====================
+CLI Command Reference
+=====================
+
+Introduction
+============
+This chapter provides a commonly used sampleVNFs CLI commmands description.
+The more detailed information and details will be available from the CLI
+prompt of the VNF.
+
+Generic commands
+================
+
+routeadd
+--------
+The routeadd command provides a mechanism to add the routing entries for the
+VNF.
+
+The destination device me be directly(host) attached or attached to net. The
+parameter net or host should be used accordngly along with other information.
+
+IPv4 interaface:
+
+::
+
+ Syntax:
+
+ routeadd <net/host> <port #> <ipv4 nhip address in decimal> <Mask/NotApplicable>
+
+ Example:
+
+ routeadd net 0 202.16.100.20 0xffff0000
+ routeadd net 1 172.16.40.20 0xffff0000
+ routeadd host 0 202.16.100.20
+ routeadd host 1 172.16.40.20
+
+
+IPv6 interaface:
+
+::
+
+ Syntax:
+
+ routeadd <net/host> <port #> <ipv6 nhip address in hex> <Depth/NotApplicable>
+
+ Example:
+
+ routeadd net 0 fec0::6a05:caff:fe30:21b0 64
+ routeadd net 1 2012::6a05:caff:fe30:2081 64
+ routeadd host 0 fec0::6a05:caff:fe30:21b0
+ routeadd host 1 2012::6a05:caff:fe30:2081
+
+
+The route can also be added to the VNF as a config parameters. This method is
+deprecated and not recommended to use but is supported for backward
+compatiblity.
+
+IPv4 interaface:
+
+::
+
+ Syntax:
+
+ ARP route table entries (ip, mask, if_port, nh) hex values with no 0x
+
+ Example:
+
+ arp_route_tbl = (c0106414,FFFF0000,0,c0106414)
+ arp_route_tbl = (ac102814,FFFF0000,1,ac102814)
+
+
+IPv6 interaface:
+
+::
+
+ Syntax:
+
+ ARP route table entries (ip, mask, if_port, nh) hex values with no 0x
+
+ Example:
+
+ nd_route_tbl = (0064:ff9b:0:0:0:0:9810:6414,120,0,0064:ff9b:0:0:0:0:9810:6414)
+ nd_route_tbl = (0064:ff9b:0:0:0:0:9810:2814,120,1,0064:ff9b:0:0:0:0:9810:2814)
+
+
+arpadd
+------
+The arpadd command is provided to add the static arp entries to the VNF.
+
+IPv4 interface:
+
+::
+
+ Syntax:
+
+ p <arpicmp_pipe_id> arpadd <interface_id> <ip_address in deciaml> <mac addr in hex>
+
+ Example:
+
+ p 1 arpadd 0 202.16.100.20 00:ca:10:64:14:00
+ p 1 arpadd 1 172.16.40.20 00:ac:10:28:14:00
+
+
+IPv6 interface:
+
+::
+
+ Syntax:
+
+ p <arpicmp_pipe_id> arpadd <interface_id> <ip_address in deciaml> <mac addr in hex>
+
+ Example:
+
+ p 1 arpadd 0 0064:ff9b:0:0:0:0:9810:6414 00:00:00:00:00:01
+ p 1 arpadd 1 0064:ff9b:0:0:0:0:9810:2814 00:00:00:00:00:02
+
+
+lbentry
+-------
+Loadbalancer CLI commands for debug
+
+::
+
+ LB Commands
+ -------------------------------------------------------------
+ Commands                       Description
+ -------------------------------------------------------------
+ p <pipe_id> lbentry dbg 0 0   To show received packets count
+ p <pipe_id> lbentry dbg 1 0   To reset received packets count
+ p <pipe_id> lbentry dbg 2 0   To set debug level
+ p <pipe_id> lbentry dbg 3 0   To display debug level
+ p <pipe_id> lbentry dbg 4 0   To display port statistics
+
+
+arpls
+-----
+
+The arpls command is used to list the arp and route entries.
+
+::
+
+ Syntax:
+
+ P <pipe_id> arpls <0: IPv4, 1: IPv6>
+
+ Example:
+
+ p 1 arpls 0
+ p 1 arpls 1
+
+
+vFW Specific commands
+=====================
+The following list of commands are specific to VFW pipeline.
+
+action add
+----------
+Refer to "action add" CLI command line help to get more details.
+Many options are available for this command for accept, fwd, count, conntrack
+etc.
+
+applyruleset
+------------
+This command must be executed to apply the ACL rules configured.
+
+::
+
+ Syntax/Example:
+
+ p vfw applyruleset
+
+
+add
+---
+This command is used to add teh ACL rules to vFW
+
+Adding ACL rules for IPv4:
+
+::
+
+ Syntax:
+
+ p vfw add <priority> <src_ip> <mask> <dst_ip> <mask> <src_port_start> <src_port_end> <dst_port_start> <dst_port_end> <protocol_mask> <action_id>
+ ;Log info: Prio = 1 (SA = 202.0.0.0/8, DA = 192.0.0.0/8, SP = 0-65535, DP = 0-65535, Proto = 0 / 0x0) => Action ID = 1
+
+ Example:
+
+ p vfw add 2 202.16.100.20 8 172.16.40.20 8 0 65535 0 65535 0 0 1
+ p vfw add 2 172.16.40.20 8 202.16.100.20 8 0 65535 0 65535 0 0 0
+
+
+Adding ACL rules for IPv6:
+
+::
+
+ Syntax:
+
+ p vfw add <priority> <src_ip> <mask> <dst_ip> <mask> <src_port_start> <src_port_end> <dst_port_start> <dst_port_end> <protocol_mask> <action_id>
+
+ Example:
+
+ p vfw add 2 fec0::6a05:caff:fe30:21b0 64 2012::6a05:caff:fe30:2081 64 0 65535 0 65535 0 0 1
+ p vfw add 2 2012::6a05:caff:fe30:2081 64 fec0::6a05:caff:fe30:21b0 64 0 65535 0 65535 0 0 0
+
+
+stats
+-----
+Display vFW stats.
+
+::
+
+ Syntax/Example:
+
+ p vfw stats
+
+clearstats
+-----------
+Clear vFW stats
+
+::
+
+ Syntax/Example:
+
+ p vfw clearstats
+
+counterdump
+-----------
+Enable or disable the counterdump using the following commands
+
+::
+
+ Syntax/Example:
+
+ p vfw counterdump start
+ p vfw counterdump stop
+
+debug
+-----
+Enable or Disable the dynamic debug logs
+
+::
+
+ Syntax/Example:
+
+ Disable dbg logs
+ p vfw dbg 0
+
+ Enable dbg logs
+ p vfw dbg 1
+
+firewall
+--------
+Enable or disable the firewall basic filtering using following commands.
+
+::
+
+ Syntax/Example:
+
+ To disable
+ p <pipe_id> vfw firewall 0
+
+ To enable
+ p <pipe_id> vfw firewall 1
+
+synproxy
+--------
+Enable or disable the synproxy using following commands.
+
+::
+
+ Syntax/Example:
+
+ To disable
+ p <pipe_id> vfw synproxy 0
+
+ To enable
+ p <pipe_id> vfw synproxy 1
+
+conntrack
+---------
+Enable or disable the connection tracking per VFW pipeline
+
+::
+
+ Syntax/Example:
+
+ To enable connection tracking
+ p action add <pipe_id> conntrack
+
+ To disable connection tracking
+ p action del <pipe_id> conntrack
+
+
+loadrules
+---------
+
+A new file containing ACL rules and actions. The existing ACL rules and actions are
+cleared.
+
+::
+
+ Syntax:
+ p vfw loadrules <rule file>
+
+ Example:
+ p vfw loadrules ./config/acl_script_rules.tc
+
+list
+----
+List the ACL rules in vFW
+
+::
+
+ Syntax/Example:
+
+ List Active ACL rules
+ p vfw ls 0
+
+ List Standby ACL rules
+ p vfw ls 1
+
+
+vACL Specific commands
+======================
+Following are the typical commands used in vACL. Refer to CLI command line
+prompt for more details.
+
+
+action add
+----------
+Using pipeline CLI, an action can be added using the following command:
+
+::
+
+ Syntax:
+ p action add <action-id> <action> <optional option>
+
+ Example:
+
+ Accept:
+ p action add 1 accept
+
+ Drop:
+ p action add 2 drop
+
+ Count:
+ p action add 1 count
+
+ fwd:
+ p action add 1 fwd 1
+ Where a port # must be specified
+
+ NAT:
+ p action add 3 nat 2
+ Where a port # must be specified
+
+ List Action:
+ p action ls <pipleine-id>
+ e.g. p action ls 2
+
+add rules
+---------
+Using pipeline CLI, an ACL rule can be added using the following command:
+
+::
+
+ Syntax:
+ p acl add <priority> <src-ip> <mask> <dst-ip> <mask> <src-port-from> <src-port-to> <dst-port-from> <dst-port-to> <protocol> <protocol-mask> <action-id>
+
+ Example:
+ p acl add 1 0.0.0.0 0 0.0.0.0 0 0 65535 0 65535 0 0 1
+
+ UDP only with source and destination IP addresses:
+ p acl add 1 172.16.100.00 24 172.16.40.00 24 0 65535 0 65535 17 255 1
+ p acl add 1 172.16.40.00 24 172.16.100.00 24 0 65535 0 65535 17 255 1
+
+ UDP Only:
+ p acl add 1 0.0.0.0 0 0.0.0.0 0 0 65535 0 65535 17 255 1
+
+ Allow all packets:
+ -----------------
+ p acl add 1 0.0.0.0 0 0.0.0.0 0 0 65535 0 65535 0 0 1
+
+
+list ACL rules
+--------------
+Using pipeline CLI, the list of current ACL rules can be viewed using:
+
+::
+
+ Syntax:
+ p acl ls <pipe_id>
+
+ Example:
+ p acl ls 2
+
+
+del an ACL rule
+---------------
+Using pipeline CLI, an ACL rule can be deleted using the following command:
+
+::
+
+ Syntax:
+ p acl del <src-ip> <mask> <dst-ip> <mask> <src-port-from> <src-port-to> <dst-port-from> <dst-port-to> <protocol> <protocol-mask>
+
+ Example:
+ p acl del 0.0.0.0 0 0.0.0.0 0 0 65535 0 65535 0 0
+
+
+stats
+-----
+Display ACL stats.
+
+::
+
+ Syntax/Example:
+
+ p acl stats
+
+clearstats
+-----------
+Clear ACL stats
+
+::
+
+ Syntax/Example:
+
+ p acl clearstats
+
+
+loadrules
+---------
+
+A new file containing ACL rules and actions. The existing ACL rules and actions are
+cleared.
+
+::
+
+ Syntax:
+ p acl loadrules <rule file>
+
+ Example:
+ p acl loadrules ./config/acl_script_rules.tc
+
+
+debug
+-----
+Debug logs can be turn on or turn off using the following commands
+
+::
+
+ Syntax/Example:
+
+ Turn on Debug:
+ p 2 acl dbg 1
+
+ Turn off Debug:
+ p 2 acl dbg 0
+
+
+vCGNAT Specific commands
+========================
+
+The following are the details of the CLI commands supported by vCGNAT.
+Refer to vCGNAPT application CLI command prompt help more details.
+
+::
+
+ To add bulk vCGNAPT entries
+ p <pipe_id> entry addm <prv_ip/prv_ipv6> <prv_port> <pub_ip> <pub_port> <phy_port> <ttl> <no_of_entries> <end_prv_port> <end_pub_port>
+
+ To add single vCGNAPT entry
+ p <pipe_id> entry add <prv_ip/prv_ipv6> <prv_port> <pub_ip> <pub_port> <phy_port> <ttl>
+
+ To delete single vCGNAPT entry
+ p <pipe_id> entry del <prv_ip/prv_ipv6> <prv_port> <phy_port>
+
+ Displays all vCGNAPT static entries
+ p <pipe_id> entry ls
+
+ To display debug level , bulk entries added count
+ p <pipe_id> entry dbg 3 0 0
+
+ To show counters info
+ p <pipe_id> entry dbg 3 3 0
+
+ To show physical port statistics
+ p <pipe_id> entry dbg 6 0 0
+
+ To show SWQ number stats
+ p <pipe_id> entry dbg 6 1 <SWQ number>
+
+ For code instrumentation
+ p <pipe_id> entry dbg 7 0 0
+
+ Displays CGNAPT version
+ p <pipe_id> entry ver 1 0
+
+ To enable ipv6 traffic.
+ p <pipe_id> entry dbg 11 1 0
+
+ To disable ipv6 traffic.
+ p <pipe_id> entry dbg 11 0 0
+
+ To add Network Specific Preifx and depth in prefix table
+ p <pipe_id> nsp add <nsp_prefix/depth>
+
+ To delete Network Specific Preifx and depth in prefix table
+ p <pipe_id> nsp del <nsp_prefix/depth>
+
+ To show nsp prefix/depth configured/added in prefix table.
+ p <pipe_id> entry dbg 13 0 0
+
+ To show number of clients per public IP address
+ p <pipe_id> entry dbg 14 0 0
+
+ To show list of public IP addresses
+ p <pipe_id> entry dbg 15 0 0
+
+ To show number of clients per public IP address
+ p <pipe_id> numipcli
+
+ Enable dual stack.
+ p <pipe_id> entry dbg 11 1 0
+
index 71f3a0e..8d79762 100644 (file)
@@ -19,5 +19,6 @@ SampleVNF User Guide
    05-How_to_run_SampleVNFs
    06-How_to_use_REST_api
    07-Config_files
+   08-CLI_Commands_Reference
    glossary
    references