Software Guidelines for Protocol Evolution

Document Type Expired Internet-Draft (individual)
Last updated 2017-08-11 (latest revision 2017-02-07)
Stream (None)
Intended RFC status (None)
Expired & archived
plain text pdf html 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


This document outlines a set of recommendations and guidelines for how networking software should be designed to enable the development, testing, and deployment of new protocols and protocol features. The focus is primarily on the API contract that a client-side networking library should present to applications using networking features, and how that library can be architected to maximize flexibility and longevity. Specific areas of protocol development that should be enabled include: o Making security and privacy easy to use o Reducing latency with 0-RTT protocols o Allowing wider use of multi-stream protocols o Providing a simple interface for multi-path protocols


Tommy Pauly (

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