kubo/p2p/net
Juan Batiz-Benet feb5e495f5 use ZeroLocalTCPAddress for network tests
This commit makes all network tests use ZeroLocalTCPAddress
as the initial peer address, and then relies on
net.ListenAddresses()

This should get rid of the tcp addr clash problems.
2015-01-02 08:46:46 -08:00
..
conn use ZeroLocalTCPAddress for network tests 2015-01-02 08:46:46 -08:00
mock swap net2 -> net 2015-01-02 08:46:46 -08:00
swarm use ZeroLocalTCPAddress for network tests 2015-01-02 08:46:46 -08:00
interface.go swap net2 -> net 2015-01-02 08:46:46 -08:00
README.md net -> p2p/net 2015-01-02 08:46:45 -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)