Simplemux. A generic multiplexing protocol

Document Type Expired Internet-Draft (individual)
Last updated 2019-09-05 (latest revision 2019-03-04)
Stream (None)
Intended RFC status (None)
Expired & archived
pdf htmlized (tools) htmlized bibtex
Stream Stream state (No stream defined)
Consensus Boilerplate Unknown
RFC Editor Note (None)
IESG IESG state Expired
Telechat date
Responsible AD (None)
Send notices to (None)

This Internet-Draft is no longer active. A copy of the expired Internet-Draft can be found at


The high amount of small packets present in nowaday's networks results in a low efficiency, as the size of the headers and the payload of these packets can be in the same order of magnitude. In some situations, multiplexing (i.e. aggregating) a number of small packets into a bigger one is desirable in order to improve the efficiency. For example, a number of small packets can be sent together between a pair of machines if they share a common network path. This may happen between machines in different locations or even inside a datacenter with a number of servers hosting virtual machines. Thus, the traffic profile can be shifted from small to larger packets, reducing the network overhead and the number of packets per second to be managed by intermediate routers. This document describes Simplemux, a protocol able to encapsulate a number of packets belonging to different protocols into a single packet. Small headers (separators) are added at the beginning of each multiplexed packet, including some flags, the packet length and a "Protocol" field. This allows the inclusion of a number of packets belonging to different protocols (the "multiplexed packets") on a packet of another protocol (the "tunneling protocol"). In order to reduce the overhead, the size of the multiplexing headers is kept very low (it may be a single byte when multiplexing packets of small size).


Jose Saldana (
Julian Navajas (
Jose Mas (

(Note: The e-mail addresses provided for the authors of this Internet-Draft may no longer be valid.)