joe-degs / zink Goto Github PK
View Code? Open in Web Editor NEWlong journey to designing/implementing peer-to-peer file sharing protocol
long journey to designing/implementing peer-to-peer file sharing protocol
what i want is a tool to use to send files my many virtual machines. I want to do this myself, and i want to make it work as expected. So maybe a daemon running in the background on udp obviously that connects to peers and keeps and can share files or other types of media between each other. - i want files sent to be able to keep their state, permissions and all the other stuff should be kept same accross the various. - so basically a daemon running on unixgram that handles sending the files and connecting to the other peers and all that. it accepts requests from - a single computer can have as many peers as possible right. - port to run is 60009 - 0xffff Uniquely identifying requests ------------------------------ - adding a hash to the packets can help to identify them all. so the request wrapper will have a way to embed the hash of the packet in the packet. responses to the request will have to include the hash of the request in their packets to uniquely identify them. - what if the ping request is used to initiate handshakes between peers and exchange information that peers persist in their databases or something. didn't realise p2p networking is this hard. Requests and Packet Types --------------------------- 1. Checking if a peer is active to find out if a peer is active, you send a ping request and it responds with a peerinfo packet - Request Packet - Ping - Response Packet - PeerInfo
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.