diff --git a/Concept.md b/Concept.md new file mode 100644 index 000000000..48a2d6a8e --- /dev/null +++ b/Concept.md @@ -0,0 +1,8 @@ +# Concept + + +\diafile path_simple.dia + +## Path + +## Node diff --git a/Configuration.md b/Configuration.md new file mode 100644 index 000000000..a11ebd442 --- /dev/null +++ b/Configuration.md @@ -0,0 +1,6 @@ +# Configuration + +## Configuration file + +\example loopback.conf +\example server.conf diff --git a/Contributors.md b/Contributors.md new file mode 100644 index 000000000..de134a3eb --- /dev/null +++ b/Contributors.md @@ -0,0 +1,3 @@ +The following persons have been working on the s2ss: + +- Steffen Vogel diff --git a/Readme b/Readme deleted file mode 100644 index b1477f691..000000000 --- a/Readme +++ /dev/null @@ -1,56 +0,0 @@ -S2SS Documentation -================================================================================ - -Contacts: - Steffen Vogel - Marija Stevic - - 0. Compilation - ------------------------------------------------------------------------------- - - Install libraries including developement headers for: - - - libconfig - - libnl-3 - - libnl-route-3 - - $ make - - 1. Installation --------------------------------------------------------------------------------- - - - 2. Configuration --------------------------------------------------------------------------------- - - The s2ss server needs several capabilities(7) to run: - - - CAP_NET_ADMIN to increase the socket priority - - CAP_SYS_NICE to set the realtime priority and cpu affinity - - CAP_IPC_LOC to lock pages for better realtime - - 3. Examples --------------------------------------------------------------------------------- - - 1. Send/Receive of random data: - - $ ./random 1 4 100 | ./send 4 192.168.1.12:10200 - - 2. Ping/Pong Latency - - $ ./test latency 192.168.1.12:10200 - - - A Operating System and Kernel --------------------------------------------------------------------------------- - - Kernel command line: isolcpus=[cpu_number] - - Map NIC IRQs => ??? - Map Tasks => taskset or sched_cpuaffinity - Nice Task => Realtime Priority - - Linux RT-preemp: https://rt.wiki.kernel.org/index.php/Main_Page - precompiled kernels: http://ccrma.stanford.edu/planetccrma/software/ - for Fedora 20 (https://fedoraproject.org/) - diff --git a/Readme.md b/Readme.md new file mode 100644 index 000000000..2b36f3d6b --- /dev/null +++ b/Readme.md @@ -0,0 +1,76 @@ +# Readme \section Readme + +This is the readme file for the S2SS server. Take a look at the `doc/html` directory for a full documentation. + +## Contact + +This project is developed at the [Institute for Automation of Complex Power Systems](www.acs.eonerc.rwth-aachen.de) (ACS) at the EON Energy Research Center (EONERC) at the [RWTH University](http://www.rwth-aachen.de) in Aachen. + + - Steffen Vogel + - Marija Stevic + +## Compilation + +Install libraries including developement headers for: + + - libconfig + - libnl-3 + - libnl-route-3 + +Start the compilation with: + + $ make + +Add `V=5` for a more verbose debugging output. + +## Installation + +Install the server by executing: + + $ make install + +Add `PREFIX=/usr/local/` to specify a non-standard installation destination. + +The s2ss server needs several [capabilities(7)](http://man7.org/linux/man-pages/man7/capabilities.7.html) to run: + + - `CAP_NET_ADMIN` to increase the socket priority + - `CAP_NET_BIND_SERVICE` to listen to UDP ports below 1024 + - `CAP_SYS_NICE` to set the realtime priority and cpu affinity + - `CAP_IPC_LOC` to lock pages for better realtime + +## Configuration + +See [configuration](Configuration.md) for more information. + +## Usage + + Usage: ./server CONFIG + CONFIG is a required path to a configuration file + + Simulator2Simulator Server 0.1-d7de19c (Jun 4 2014 02:50:13) + Copyright 2014, Institute for Automation of Complex Power Systems, EONERC + Steffen Vogel + + +### Examples + + 1. Send/Receive of random data: + + $ ./random 1 4 100 | ./send 4 192.168.1.12:10200 + + 2. Ping/Pong Latency + + $ ./test latency 192.168.1.12:10200 + +## A Operating System and Kernel + +Kernel command line: isolcpus=[cpu_number] + +Map NIC IRQs => ??? +Map Tasks => taskset or sched_cpuaffinity +Nice Task => Realtime Priority + +Linux RT-preemp: https://rt.wiki.kernel.org/index.php/Main_Page +Precompiled kernels: http://ccrma.stanford.edu/planetccrma/software/ + for Fedora 20 (https://fedoraproject.org/) +