From 7ecd7bf20999042a13e88c2ac3c8b851d1db8da4 Mon Sep 17 00:00:00 2001 From: Luca Muscariello Date: Thu, 13 Feb 2020 21:31:20 +0100 Subject: [HICN-519] Documentation update Change-Id: Iba61bc07196643b8061f0cb0f7213c7e0b256020 Signed-off-by: Luca Muscariello --- docs/source/hicn-light.md | 92 ++++++++++++++++++----------------------------- 1 file changed, 35 insertions(+), 57 deletions(-) (limited to 'docs/source/hicn-light.md') diff --git a/docs/source/hicn-light.md b/docs/source/hicn-light.md index e321b78e5..a68af7f05 100644 --- a/docs/source/hicn-light.md +++ b/docs/source/hicn-light.md @@ -1,5 +1,4 @@ -The Hybrid ICN Portable Forwarder -============================== +# The Hybrid ICN Portable Forwarder ## Introduction @@ -7,24 +6,11 @@ hicn-light is a socket based forwarder ## Using hicn-light -### Platforms - -hicn-light has been tested in: - -- Ubuntu 16.04 / 18.04 (x86_64) -- Debian Testing -- Centos 7 -- MacOSX 10.12 -- Android -- iOS - -Other platforms and architectures may work. - ### Dependencies Build dependencies: -- c99 ( clang / gcc ) +- C99 ( clang / gcc ) - CMake 3.4 Basic dependencies: @@ -49,7 +35,7 @@ Use the `-h` option to display the help messages The command `hicn-light-daemon` runs the hicn-light forwarder. The forwarder can be executed with the following options: -``` +```shell hicn-light-daemon [--port port] [--daemon] [--capacity objectStoreSize] [--log facility=level] [--log-file filename] [--config file] @@ -81,7 +67,7 @@ default port for hicn-light is 9695. Commands are expected on port 2001. `hicn-light-control` can be used to send command to the hicn-light forwarder and configure it. The command can be executed in the following way: -``` +```shell hicn-light-control [commands] Options: @@ -101,7 +87,7 @@ Information about the commands are also available in the `hicn-light-control` he For local connections (application to hicn-light) we expect a TCP listener. The default port for the local listener is 9695. -``` +```shell add listener :User defined name for listener, must start with alpha and bealphanum @@ -113,7 +99,7 @@ add listener `add listener hicn`: creates a hicn listener with the specified options on the local forwarder. -``` +```shell add listener hicn :User defined name for listener, must start with alpha and be alphanum @@ -123,7 +109,7 @@ add listener hicn `add connection`: creates a TCP or UDP connection on the local forwarder with the specified options. -``` +```shell add connection : tcp | udp @@ -134,9 +120,10 @@ add connection : local TCP/UDP port ``` + `add connection hicn`: creates an hicn connection on the local forwarder with the specified options. -``` +```shell add connection hicn : symbolic name, e.g. 'conn1' (must be unique, start with alpha) @@ -144,14 +131,17 @@ add connection hicn : local IP address to bind to ``` + `list`: lists the connections, routes or listeners available on the local hicn-light forwarder -``` + +```shell list ``` + `add route`: adds a route to the specified connection -``` +```shell add route :The symbolic name for an exgress (must be unique, start with alpha) @@ -163,7 +153,7 @@ add route `remove connection`: removes the specified connection. At the moment, this commands is available only for UDP connections, TCP is ignored. -``` +```shell remove connection : tcp | upd. This is the protocol used to create the connection. @@ -174,7 +164,7 @@ remove connection `remove route`: remove the specified prefix for a local connection -``` +```shell remove route : the alphanumeric name of a local connection @@ -183,22 +173,24 @@ remove route `cache serve`: enables/disables replies from local content store (if available) -``` +```shell cache serve ``` + `cache store`: enables/disables the storage of incoming data packets in the local content store (if available) -``` +```shell cache store ``` + `cache clear`: removes all the cached data form the local content store (if available) -``` +```shell cache clear - ``` + `set strategy`: sets the forwarding strategy for a give prefix. There are 4 different strategies implemented in hicn-light: @@ -211,12 +203,13 @@ implemented in hicn-light: ICNP 2013. - low_latency: uses the face with the lowest latency. In case more faces have similar latency the strategy uses them in parallel -``` +```shell set strategy : the prefix to which apply the forwarding strategy : random | loadbalancer | low_latency ``` + `set wldr`: turns on/off WLDR on the specified connection. WLDR (Wireless Loss Detiection and Recovery) is a protocol that can be used to recover losses generated by unreliable wireless connections, such as WIFI. More information on WLDR are available in: @@ -225,42 +218,46 @@ set strategy ICN 2016. Notice that WLDR is currently available only for UDP connections. In order to work properly, WLDR needs to be activated on both side of the connection. -``` +```shell set wldr :The symbolic name for an exgress (must be unique, start with alpha) : :The egress connection id (see 'help list connections') ``` + `add punting`: Add punting rules to the forwarders. -``` +```shell add punting : listener symbolic name
: prefix to add as a punting rule. (example 1234::0/64) ``` + `mapme enable`: enables/disables mapme -``` +```shell mapme enable ``` `mapme discovery`: enables/disables mapme discovery -``` +```shell mapme discovery ``` `mapme timescale`: set the timescale value expressed in millisencods -``` +```shell mapme timescale ``` + `mapme retx`: set the retrasmission time value expressed in millisecond -``` +```shell mapme retx ``` + `quit`: Exits the interactive shell ### hicn-light Configuration File Example @@ -268,7 +265,7 @@ mapme retx This is an example of a simple configuration file for hicn-light. It can be loaded by running the command `hicn-light-daemon --config configFile.cfg`, assuming the file name is configFile.cfg -``` +```shell #create a local listener on port 9199. This will be used by the applications to talk with the forwarder add listener udp local0 192.168.0.1 9199 @@ -279,22 +276,3 @@ add connection udp conn0 192.168.0.20 12345 192.168.0.1 9199 #add a route toward the remote node add route conn0 c001::/64 1 ``` - -## License - -This software is distributed under the following license: - -``` -Copyright (c) 2017-2019 Cisco and/or its affiliates. -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at: - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -``` -- cgit 1.2.3-korg