Skip to content
/ utp Public
forked from mafintosh/utp

utp (micro transport protocol) implementation in node

Notifications You must be signed in to change notification settings

daviddias/utp

This branch is 8 commits ahead of, 2 commits behind mafintosh/utp:master.

Repository files navigation

utp

utp (micro transport protocol) implementation in node. It is available through npm

npm install utp

js-standard-style

What is utp?

utp (micro transport protocol) is a network protocol similar to tcp that runs on top of udp. Since it build on top of udp it can provide great peer to peer connectivity through techniques like hole punching and similar while still providing a stream interface. It is currently the main network protocol powering bittorrent.

BEWARE BEWARE BEWARE

This module is a work in progress! So beware of dragons!

Usage

utp has the same interface as the net module in node.

var utp = require('utp');

var server = utp.createServer(function(socket) {
	console.log('new connection!');
	socket.on('data', function(data) {
		console.log('client says '+data);
	});
});

server.listen(10000, function() {
	var client = utp.connect(10000, 'localhost');

	client.write('hello world');
});

server.listen() also accepts a udp socket to listen on instead of a port.

License

MIT

About

utp (micro transport protocol) implementation in node

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 98.7%
  • Shell 1.3%