1 Raw socket-based implementation of swift transport protocol.
3 Swift is a multiparty protocol implemented at Tranport Layer (layer 4)
4 in the OSI stack. It is a form of BitTorrent in kernel space.
6 This is a "simulated" implementation of the protocol using raw sockets.
7 After testing and implementation focus is going to be to "port" the
8 implementation in the Linux kernel as a true transport protocol.
12 Use the git repository:
13 git clone gitolite@koala.cs.pub.ro:swifty.git
17 Just use the Makefile:
22 Use the test/ folder to test the implementation. Use the Makefile to
23 build the test executable and then run it:
28 Test suite (and other usage of the API) must be run as root as it uses
34 - swift_raw.c: implements the swift "syscalls". System calls are
35 simulated using raw sockets.
36 - swift_list.h/swift_list.c: list implementation for socket
38 - swift_raw_simple_test.c: simple test going through all major swift
42 - util.h: error handling utility functions and macros.
43 - debug.h: debugging functions and macros.
44 - swift_raw.h: raw socket-API (swift "syscalls").
45 - swift_types.h: swift address structure and header. These are
46 independent of the implementation; they should be unmodified when
47 doing the port to the Linux kernel.
50 - test.h: defines the test macro used throughout the tests.
51 - test.c: test source code file. Defines main() and invokes test
53 - test_sw.h: declaration of test functions invoked in test.c.
54 - test_*.c: definition of test functions; each file consists of a
55 different set of functions within the same scope.