Skip to content

BackupGGCode/arpmanetdc

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ArpmanetDC

https://raw.githubusercontent.com/BackupGGCode/arpmanetdc/master/Resources/Logo128x128.png

An awesome UDP-based peer-to-peer-plus-direct-connect application for distributed file distribution over a heterogeneous network environment.

This project requires the Qt4 toolkit >= 4.8, the Crypto++ libraries for TTH hashing, as well as the sqlite3 libraries for the database backend.

Progress

Project started: 9 Nov 2011

Current version: 0.1.8

Current stage: Alpha

26 Nov 2011 - The project has just passed the 10,000 lines of code mark!

September 2012

Some major restructuring around transfers is taking place, which in its currently bit-banged form can be described as barely functional.

The long term goal is to break the whole hierarchy of different types of segments down to just one (a segment :) that reads/writes through a connection, which is managed by the shiny new connection manager. Different protocols can be wrapped up inside connections, of which TCP is to be the first.

TCP can obviously not be run through our dispatch system, therefore we need to hang on to the FSTP transfers a little bit more as a failsafe alternative until we have uTP running. uTP will be our first dispatched connection based protocol, paving the way for our experimental work with FECTP transfers.

Progress per feature

Stage Feature Notes
Implementing Connection manager Subsystem to manage connection based protocols, such as uTP, TCP, etc.
Implementing TCP server Catches TCP connections
Implementing TCP connection First connected protocol, others will follow along its path.
Implementing Connected segment Transfer segment that reads and writes through a Connection of any kind.
Inception uTP server Catch and manage uTP connections the correct way
Inception uTP connection Connection wrapper around a uTP socket
Implementing Stats collector Keep track of p2p transfer and control data of various kinds.
Beta DC++ Hub integration Chat and private messaging
Beta Sharing Hashing what you choose to share
Beta Settings and Help
Beta Bootstrapping Finding friends automatically
Beta Searching P2P decentralised search
Beta Smart scanning for bootstrap Finding even moar friends automatically
Beta Download queue (GUI side) List management tested
Beta FSTP transfer protocol
Beta Finished downloads List management tested
Beta Transfer management (GUI side) Transfers can be stopped
Beta Network topology mapper Keeps track of the broadcast/multicast buckets
Beta P2P message dispatcher First-in-line protocol decoding and encoding.
Beta Download queue (Transfer side)
Alpha Segmented transfers Implemented, seems to work well.
Alpha Containers Queueing, browsing, processing
Inception FECTP

Screenshots (Click for larger version)

Chat (X11)

Chat (Windows)

Search (X11)

Search (Windows)

Share (X11)

Share (Windows)

About

Peer-to-peer direct connect client for Arpmanet network

Resources

License

Stars

Watchers

Forks

Packages

No packages published