kubo/net
Brian Tiger Chow c2c95d1105 start threading context through the system
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-12-09 07:11:48 -08:00
..
conn style(logging) demote some statements to Debug (from info) 2014-12-08 15:07:33 -08:00
handshake style(logging) demote some statements to Debug (from info) 2014-12-08 15:07:33 -08:00
message start threading context through the system 2014-12-09 07:11:48 -08:00
mux fix(core, peer) helpers to testutil, err handling 2014-12-08 14:32:52 -08:00
service fix(core, peer) helpers to testutil, err handling 2014-12-08 14:32:52 -08:00
swarm net: add LocalPeer funcs 2014-12-08 20:52:45 -08:00
interface.go net/interface: use iota 2014-12-08 21:12:58 -08:00
net_test.go net interface 2014-09-22 04:05:12 -07:00
net.go net: add LocalPeer funcs 2014-12-08 20:52:45 -08:00
README.md net: README. 2014-12-09 02:12:43 -08:00

Network

The IPFS Network package handles all of the peer-to-peer networking. It connects to other hosts, it encrypts communications, it muxes messages between the network's client services and target hosts. It has multiple subcomponents:

  • Conn - a connection to a single Peer
    • MultiConn - a set of connections to a single Peer
    • SecureConn - an encrypted (tls-like) connection
  • Swarm - holds connections to Peers, multiplexes from/to each MultiConn
  • Muxer - multiplexes between Services and Swarm. Handles Requet/Reply.
    • Service - connects between an outside client service and Network.
    • Handler - the client service part that handles requests

It looks a bit like this:

![](https://docs.google.com/drawings/d/1FvU7GImRsb9GvAWDDo1le85jIrnFJNVB_OTPXC15WwM/pub?h=480)