Simultaneous SYN

Simultaneous SYN (known as well as TCP splicing) has been introduced by Eric Hopper in a slashdot post. To established a connexion, this technic proposes a real peer-to-peer mecanism: none of the peers is a server as a classical TCP architecture, both of them is a client. TCP standard allows two clients to get connected if they try to establish the connexion at the same time. Moreover, our architecture proposes a broker to achive this simultaneity.

This prototype has been developped by Tangui Morlier and Vincent Neri. To understand the TCP details of this technique, we provide a TCP dump of a simultaneous SYN connection. Unfortunately, we did not obtain the firewall traversing results found in the litterature, that is why this prototype was not integrated in the PVC project.

Download

You can download the c/perl source code of our prototype here.

The source is distributed under both GPL and CeCCIL licences. If you want to modify to modify the source code, feel free to choose one of these.

The archive contains a broker (in perl) and the c client. To use it, compile the client, launch a broker on a host and then the two clients on other hosts (it will not work if a client and the broker are hosted on a same machine).

Related works