Skip to content

nets-cs-pub-ro/smkex

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

43 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

smc

Secure Multipath Communication Protocols

Install

Download the patched MultipathTCP kernel from https://github.com/scrye/mptcp.

Compile the kernel with MPTCP support and the fullmesh path manager.

The following headers have changed and need to be copied in the include path:

  • include/asm-generic/poll.h
  • include/linux/tcp.h
  • include/x86_64-linux-gnu/bits/poll.h

Testing environment

The connection between client and server must have exactly two subflows (including the master subflow). Between a single pair of IP addresses you can configure the mptcp_fullmesh path manager on the client machine to open two subflows:

 echo '2' > /sys/module/mptcp_fullmesh/parameters/num_subflows

Running the tests

Build the binaries using make.

apps/client connects to apps/server and downloads a single file, passed as argument, over an encrypted multipath connection. To run the test, first create a new file for transfer:

dd if=/dev/urandom of=smallfile.dat bs=1 count=512

Run apps/server on the Server machine:

LD_PRELOAD=../smkex/libsmkex.so ./server -i 0.0.0.0 -f smallfile.dat

Run apps/client on the Client machine, replacing 192.168.241.2 with the IP of the Server machine:

LD_PRELOAD=../smkex/libsmkex.so ./client -i 192.168.241.2 -p 1337 -f recv.dat

About

Secure Multipath Key Exchange

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages