P2P tech documents
- STUN ... UDP Traversal
- P2PNAT, STUNT ... TCP Traversal
- TURN ... Public Relay for Traversal
- ICE ... A way to stitch stun/turn/... together
NUTSS stands for (NAT, URIs, Tunnel, SIP, STUNT)
NUTSS is a network architecture that uses signaling before establishing the data channel. The goal is to enable middle boxes like firewalls and NATs, which can intercept the signals to discover the intent of the connection. The middle boxes can then facilitate the connection setup, or enforce other policies. While the data channel is a direct TCP/IP connection between two IP addresses and ports, the signaling is through SIP, which uses stable endpoint identifiers for routing.
NUTSS stands for its constituent components -- NAT that effectively extends the IP address space, URIs that restore end-to-end stable addressing, Tunnels that allow protocols like IPsec and mobile IP to run through NATs, SIP that routes messages with URIs, end-to-end, and lets hosts signal their intentions to each other and to middle boxes in real time, and lastly STUNT that tells how to establish direct IP connectivity through NATs.
Teredo 一項號稱可以和 NUTSS 並駕齊驅, 競爭的project, 都可能成為下一代 P2P 的直接連線運作技術
Teredo is an IPv6 transition technology that provides address assignment and host-to-host automatic tunneling for unicast IPv6 traffic when IPv6/IPv4 hosts are located behind one or multiple IPv4 network address translators (NATs). To traverse IPv4 NATs, IPv6 packets are sent as IPv4-based User Datagram Protocol (UDP) messages. This article provides an overview of Teredo—including Teredo addresses and packet structures—and detailed explanations of how communication is initiated between Teredo clients, Teredo host-specific relays, and IPv6-only hosts using the IPv4 Internet, the IPv6 Internet, Teredo servers, and Teredo relays.
Source Forge development