Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/nickdesaulniers/node-ice
[WIP] Interactive Connectivity Establishment (ICE) (RFC 5245) for Node.js
https://github.com/nickdesaulniers/node-ice
Last synced: 9 days ago
JSON representation
[WIP] Interactive Connectivity Establishment (ICE) (RFC 5245) for Node.js
- Host: GitHub
- URL: https://github.com/nickdesaulniers/node-ice
- Owner: nickdesaulniers
- License: other
- Created: 2016-01-11T19:45:59.000Z (almost 9 years ago)
- Default Branch: master
- Last Pushed: 2016-01-15T19:25:31.000Z (almost 9 years ago)
- Last Synced: 2024-08-01T17:33:18.262Z (3 months ago)
- Language: JavaScript
- Homepage:
- Size: 28.3 KB
- Stars: 33
- Watchers: 5
- Forks: 4
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
- awesome-peer-to-peer - node-ice
- awesome-peer-to-peer - node-ice
README
# Node-ICE
An implementation of Interactive Connectivity Establishment (ICE, RFC 5245) for
Node.js.## Why is ICE useful?
ICE solves the problem of establishing a UDP based connection between two peers
potentially behind NATs without them having to muck around with their router's
port forwarding settings. Without ICE, it's *highly likely* for UDP
connections given between two random peers to fail.## Implementation Details
For those of you who have read the spec(s). This is a full implementation (not
a lite implementation), with full trickle (as opposed to half trickle), and
aggressive nomination (as opposed to regular nomination).This module was seperated from
[my Node.js RTCPeerConnection](https://github.com/nickdesaulniers/node-rtc-peer-connection)
implementation for reusability. As such, that library drives the interface to
this library.## What's Missing
* TURN candidate support
* Peer Reflexive candidate support## API
...## Relevant Specs
* [RFC 5245 - ICE (Interactive Connectivity Establishment)](https://tools.ietf.org/html/rfc5245)
* [RFC 5389 - STUN (Session Traversal Utilities for NAT)](https://tools.ietf.org/html/rfc5389)
* [RFC 5766 - TURN (Traversal Using Relays around NAT)](https://tools.ietf.org/html/rfc5766)
* [RFC 7064 - STUN URI Scheme](https://tools.ietf.org/html/rfc7064)
* [DRAFT ICE-BIS - ICE (Interactive Connectivity Establishment)](https://tools.ietf.org/html/draft-ietf-ice-rfc5245bis-00)
* [DRAFT ICE-Trickle - Incremental Provisioning for ICE](https://tools.ietf.org/html/draft-ietf-ice-trickle-01)