• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..03-May-2022-

doc/H03-May-2022-16,30113,610

ext/H02-Mar-2019-1,029614

firefox/H03-May-2022-156107

java/H02-Mar-2019-15718

mfold/H03-May-2022-1,149849

scripts/H02-Mar-2019-4925

tests/H02-Mar-2019-10,1596,878

.gitignoreH A D02-Mar-201955 76

Android.mkH A D02-Mar-20191 KiB3618

Application.mkH A D02-Mar-201928 31

BUGSH A D02-Mar-20192.7 KiB6662

ChangeLogH A D02-Mar-2019196 84

DoxyfileH A D02-Mar-201998.4 KiB2,3111,782

LICENSEH A D02-Mar-201932.3 KiB695546

MakefileH A D03-May-20221.2 KiB3828

Makefile.macH A D02-Mar-20191.2 KiB1910

NativeLib.cppH A D02-Mar-201919.5 KiB664387

README.mdH A D02-Mar-20191.6 KiB4730

SConstructH A D02-Mar-20196 KiB187153

TODOH A D02-Mar-20192.1 KiB8271

address.cppH A D02-Mar-20199 KiB316250

api.cppH A D02-Mar-201922.4 KiB861622

arno-build.batH A D02-Mar-2019126 43

avail.cppH A D02-Mar-20199.1 KiB321235

avail.hH A D02-Mar-20192.4 KiB10046

avgspeed.cppH A D02-Mar-20191.4 KiB6642

avgspeed.hH A D02-Mar-2019698 3823

bin.cppH A D02-Mar-20191.9 KiB9656

bin.hH A D02-Mar-201911.9 KiB790297

bin_utils.hH A D02-Mar-20191.7 KiB9556

binmap.cppH A D02-Mar-201975.9 KiB2,4941,708

binmap.hH A D02-Mar-20196.5 KiB27391

channel.cppH A D02-Mar-201920.6 KiB686493

cmdgw.cppH A D02-Mar-201938.6 KiB1,209822

com_tudelft_triblerdroid_swift_NativeLib.hH A D02-Mar-20193.3 KiB11034

compat.cppH A D02-Mar-201915.1 KiB627513

compat.hH A D02-Mar-20197.1 KiB310206

content.cppH A D02-Mar-201914.3 KiB488329

do_tests.shH A D02-Mar-2019283 206

exttrack.cppH A D02-Mar-201915.4 KiB490328

exttrack.hH A D02-Mar-20192.1 KiB6946

getopt.cH A D02-Mar-20194.5 KiB12165

getopt_long.cH A D02-Mar-201916.6 KiB548370

getopt_win.hH A D02-Mar-20193.7 KiB11143

hashtree.cppH A D02-Mar-201920.9 KiB675484

hashtree.hH A D02-Mar-201911.5 KiB340214

httpgw.cppH A D02-Mar-201949 KiB1,396880

live.cppH A D02-Mar-201920.2 KiB640391

livehashtree.cppH A D02-Mar-201930.8 KiB1,067752

livehashtree.hH A D02-Mar-20199.1 KiB278152

livesig.cppH A D03-May-202231.2 KiB1,235958

livesig.hH A D02-Mar-20195.4 KiB176100

nat_test.cppH A D02-Mar-20194.4 KiB142110

nat_test_server.cH A D02-Mar-20195.2 KiB160123

operational.hH A D02-Mar-2019515 3321

send_control.cppH A D02-Mar-20199.8 KiB299222

sendrecv.cppH A D02-Mar-201990.9 KiB2,4701,733

serialize.hH A D02-Mar-2019516 2512

sha1.cppH A D02-Mar-20199 KiB290195

sha1.hH A D02-Mar-2019673 2411

statsgw.cppH A D02-Mar-20199.1 KiB280201

storage.cppH A D02-Mar-201920.9 KiB685473

svn-build-rev.pyH A D02-Mar-20191.2 KiB4437

svn-revision.hH A D02-Mar-2019114 11

swarm.urlH A D02-Mar-2019139 21

swarmmanager.cppH A D02-Mar-201934.5 KiB1,019825

swarmmanager.hH A D02-Mar-20197.4 KiB204122

swift.cppH A D02-Mar-201947.2 KiB1,305987

swift.hH A D02-Mar-201963.9 KiB1,6601,008

transfer.cppH A D02-Mar-20194 KiB14099

win32-build-jni.batH A D02-Mar-2019107 32

win32-build.batH A D02-Mar-2019192 118

xpimakedist-unix.shH A D02-Mar-20191.1 KiB4221

xpimakedist.batH A D02-Mar-20192 KiB6644

zerohashtree.cppH A D02-Mar-20195 KiB201135

zerostate.cppH A D02-Mar-20196.8 KiB221136

README.md

1libswift
2========
3
4The multiparty transport protocol.
5
6## Description ##
7This is Libswift (aka BitTorrent at the transport layer).
8Differently from TCP, the protocol does not use the ordered data stream abstraction.
9Effectively, it splits a file into 1KB packets and sends them around.
10The secret sauce is Merkle hash trees and binmaps.
11
12Requires libevent-2.0.17 or higher.
13
14See [doc/index.html][1] for marketing stuff, ideas and rants,
15[doc/draft-ietf-ppsp-peer-protocol-00.txt][2] for the drafr protocol specification,
16and `*.cpp` files for the actual code.
17
18[1]: http://htmlpreview.github.com/?https://github.com/libswift/libswift/blob/master/doc/index.html
19[2]: https://raw.github.com/libswift/libswift/master/doc/draft-ietf-ppsp-peer-protocol-00.txt
20
21## Usage ##
22
23`swift.cpp` is the main exec file; it may be run as e.g.
24
25    $ ./swift -t node300.das2.ewi.tudelft.nl:20000 -h \
26    d1502706c46779d361a1d562a10da0a45c4c40e5 -f \
27    trailer.ogg
28
29...to retrieve video and save it to a file.
30
31Alternatively, you might play with the HTTP gateway, the preliminary
32version. First, run the seeder-tracker:
33
34    $ ./swift -f ~/Downloads/big_buck_bunny_480p_stereo.ogg -l 0.0.0.0:20000
35    Root hash: 7c462ad1d980ba44ab4b819e29004eb0bf6e6d5f
36
37...then you may try running the swift-HTTP gateway...
38
39    $ ./swift -t 127.0.0.1:20000 -g 0.0.0.0:8080 -w
40
41...and finally you may point your browser at the gateway...
42
43    http://127.0.0.1:8080/7c462ad1d980ba44ab4b819e29004eb0bf6e6d5f
44
45If you use an HTML5 browser (Chrome preferred),
46you are likely to see the bunny trailer at this point...
47