Efficient Cross-Layer Negotiation

Abstract:

Internet evolution often depends on
either inserting new protocol layers
or upgrading existing layers to new protocols,
but both of these evolutionary paths are obstructed
by the difficulty and inefficiency of determining
which protocols a pair of hosts mutually support and prefer.
We propose a novel cross-layer Negotiation Protocol
that sets up a complete stack of connection-oriented protocols at once,
concurrently performing handshaking for multiple layers
and choosing among alternative protocols for each layer
in as few round trips as possible, often just one.
The initiator proposes a protocol graph
explicitly encoding possible configurations
along with protocol-specific handshake data;
the peers then prune, refine, and atomically commit to a final configuration,
exchanging messages over a specialized transport
that can operate in-line with the negotiated protocol stack.
Although a practical Negotiation Protocol presents many challenges,
our initial exploration suggests that these challenges are solvable,
and we believe addressing them is a necessary step
toward a more evolvable Internet.