README.md 804 Bytes
Newer Older
Juan Batiz-Benet's avatar
Juan Batiz-Benet committed
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
# 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:

<center>
16
![](https://ipfs.io/ipfs/Qme7oC5qvYh7F2KvyNArHjz9B1dFEsXRxVEofaGm86EUve)
Juan Batiz-Benet's avatar
Juan Batiz-Benet committed
17
</center>