Implementation of E6 stack via Linux sockets for kernel 2.6.31.5 (Linux Mandriva 2010)
--------------------------------------------------------------------------------------

Dmitry Zaitsev (daze.ho.ua) - implementation for kernel 2.6.22.9, 2009
Mikhail Kharsun (mikefromsky@gmail.com) - adjustment for kernel 2.6.31.5, 2012 

Remark: Datagram style only

Info on stack E6:
----------------- 

Zaitsev D.A., Bolshakov S.I. E6 Addressing Scheme and Network Architecture //
Journal of Advanced Computer Science and Technology, 1 (1) (2012) 18-31. 
http://www.sciencepubco.com/index.php/JACST


Content of E6 kit:
------------------

e6.c - kernel loadable module
Makefile, KBuild - files to build the module via single "make" command

cse6 - directory of application level programs:

e6.h - header file of e6 socket address and symbols

e6server.c - server
e6client.c - client
e6client1.c - client with connection
makefile - make file to build clients and server

- examples of tiny client & server applications for remote execution of shell commands 


Installation:
-------------

1. Unpack archive e6.zip to a separate subdirectory e6

>unzip e6.zip

2. Move to e6 subdirectory

>cd e6

3. Create kernel loadable module e6.ko

>make

4. Load e6sock.ko module into kernel

>su
>insmod e6.ko e6_dev=eth0 e6_addr=000000000001
>exit

5. Compile clients and servers

>cd cse6
>make

6. Run server

>./e6server <e6port>

7. Run client

>./e6client <e6server_address> <e6server_port> <e6_client_port>

8. Input commands by e6client for remote execution by e6server and watch the result

input-command>ls

9. Finish client & server by Ctrl-C

10. Unload the module

>su
>rmmod e6.ko
>exit

If it looks like before than all's OK :-)


P.S.
----

A. In simple case client and server are run on the same computer: better load e6.ko on loopback device

>insmod e6.ko e6_dev=lo
>e6server 25
>e6client 00:00:7f:00:00:01 25 2555

B. Run e6 on a pair of computers: 1 is server, 2 is client

1>insmod e6.ko e6_dev=eth0 e6_addr=000000000001
1>e6server 25

2>insmod e6.ko e6-dev=eth0 e6_addr=000000000002
2>e6client 00:00:00:00:00:01 25 2555

KISS
