After checking out all git-Repositories only libevent-dev
and
libboost-system-dev
are required. Everything else, including PARC libs, are
in included in the repositories.
Installation order:
- cframework (libparc and longbow)
- ccnxlibs (comparable with ndn-cxx)
- sb-forwarder (Socket-Based forwarder)
- (optional) cicn-plugin (Plugin for Ciscos Vector Packet Processing (vpp) stuff)
- (optional) libicnet (Sample apps)
sb-forwarder
and libicnet
must be compiled and installed for this test.
In this section the sb-forwarder is configured for local use and tested with a simple ping-application:
Metis is the name of the socket-based forwarder.
Start metis
$ metis_daemon [--log all=debug]
Open new terminal and configure metis
Create keypair for metis configuration
$ parc-publickey -c ~/.ccnx/my_keystore.p12 password Description
start configuration tool
$ metis_control -k ~/.ccnx/my_keystore.p12
show connections
> list connections
27 UP inet4://127.0.0.1:9695 inet4://127.0.0.1:56980 TCP
Tell Metis to listen to local TCP Port 9695
> add listener tcp local0 127.0.0.1 9695
Ping-Server and Client App are included in libicnet
folder.
$ iPing_Server -l ccnx:/my/pingserver -s 4096
Parameters for Ping-Server
-l
: Prefix of the pingserver-s
: Size of Datapackets
$ iPing_Client -p -l ccnx:/my/pingserver
Insert entry ccnx:/my/pingserver/6b8b4567/4096/000101
Received content
4096 bytes from ccnx:/my/pingserver/6b8b4567/4096/000101: time=346 us
Insert entry ccnx:/my/pingserver/6b8b4567/4096/000102
Received content
4096 bytes from ccnx:/my/pingserver/6b8b4567/4096/000102: time=545 us
Insert entry ccnx:/my/pingserver/6b8b4567/4096/000103
Received content
4096 bytes from ccnx:/my/pingserver/6b8b4567/4096/000103: time=676 us
Insert entry ccnx:/my/pingserver/6b8b4567/4096/000104
Received content
4096 bytes from ccnx:/my/pingserver/6b8b4567/4096/000104: time=690 us
Insert entry ccnx:/my/pingserver/6b8b4567/4096/000105
Received content
4096 bytes from ccnx:/my/pingserver/6b8b4567/4096/000105: time=683 us
Insert entry ccnx:/my/pingserver/6b8b4567/4096/000106
Received content
4096 bytes from ccnx:/my/pingserver/6b8b4567/4096/000106: time=653 us
Insert entry ccnx:/my/pingserver/6b8b4567/4096/000107
Received content
4096 bytes from ccnx:/my/pingserver/6b8b4567/4096/000107: time=509 us
Insert entry ccnx:/my/pingserver/6b8b4567/4096/000108
Received content
4096 bytes from ccnx:/my/pingserver/6b8b4567/4096/000108: time=673 us
Insert entry ccnx:/my/pingserver/6b8b4567/4096/000109
Received content
4096 bytes from ccnx:/my/pingserver/6b8b4567/4096/000109: time=721 us
Insert entry ccnx:/my/pingserver/6b8b4567/4096/000110
Received content
4096 bytes from ccnx:/my/pingserver/6b8b4567/4096/000110: time=723 us
Sent = 10 : Received = 10 : AvgDelay 621 us
Parameters for Ping-Client
-p
: Ping Mode, Send one ping after the other-f
: Flooding Mode, Send all pings at the same time-l
: Prefix of the pingserver-i
: Interval between pings-c
: Number of Pings
Add listener to local face
> add listener udp remote0 [local-ip] [local-port]
Configure connection to neighbouring forwarder
> add connection udp conn0 [remote-ip] [remote-port] [local-ip] [local-port]
> list connections
Configure static route
> add route conn0 ccnx:/remote/pingserver [link costs as integer]
These settings (except route) have to be configured on both nodes. Unfortunately ping is currently not working properly over remote connections.