What Makes For a Successful Protocol?

  • IETF Internet draft, 1/11/2007
  • D. Thaler, B. Aboba, IAB.

Annotations

What is success?

  • a successful protocol = both meets its original goals and is widely deployed.

What is failure?

  • no mainstream implementations.
  • no deployment.
  • no use.
  • cannot be determined until 5-10 years for an average protocol.

Examples of successful protocols:

  • Inter-domain:
    • IPv4 [RFC0791]
    • TCP [RFC0793]
    • HTTP [RFC2616]
    • DNS [RFC1035]
    • BGP [RFC4271]
    • UDP [RFC0768]
    • SMTP [RFC2821]
    • SIP [RFC3261]
  • Intra-domain:
    • ARP [RFC0826]
    • PPP [RFC1661]
    • DHCP [RFC2131]
    • RIP [RFC1058]
    • OSPF [RFC2328]
    • Kerberos [RFC4120]
    • NAT [RFC3022]

Effects of wild success:

  • both good and bad.
  • if a protocol is used for a purpose other than what it was designed for
    • undesirable side effects
    • performance problems
    • work around design limitations without complete understanding of effect on overall protocol behavior.
    • high value targets for attackers (death by success)

How to overcome the initial lack of implementation/deployment?

  • address a critical and imminent problem.
  • provide a “killer app” with low deployment costs.
  • under existing unmodified applications.
  • narrow down to remove complexity.
  • government incentives/disincentives (IPv6)

Initial Success Factors:

  • Positive net value (meet a real need). Benefits of deploying the protocol outweigh the costs.
    • Example, IPsec interferes with netflow, deep packet inspection, etc.
  • Incremental Deployability
    • protocols that can be deployed by a single group have a greater chance of success than those that require cooperation across organization.
    • protocols that don’t require changes to infrastructure. (NAT)
    • only one end changes vs both ends to support the protocol.
  • Open Code Availability (IPv4 vs IPX)
  • Open Specification Availability
  • Open Maintenance Processes
  • Freedom From Usage Restrictions
    • without legal / financial hindrance (Intellectual Property)
  • Good Technical Design

Wild Success Factors:

  • Extensible
  • No Hard Scalability Bound
  • Threats Sufficiently Mitigated
    • good: SSHv1, 802.11 WEP
    • bad: early server-based multiplayer games

Case Studies:

  • HTTP/HTML vs. Gopher and FTP
  • IPv4 vs. IPX
  • SSH
  • Inter-domain IP Multicast
  • Wireless Application Protocol (WAP)
  • Wired Equivalent Privacy (WEP)
  • RADIUS vs. TACACS+
  • NAT
Topic revision: r1 - 14 Nov 2007 - 16:51:53 - QiLiao
 
This site is powered by the TWiki collaboration platformCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback