Middlebox Communications (MIDCOM) Protocol Semantics
RFC 3989

Document Type RFC - Informational (February 2005; No errata)
Obsoleted by RFC 5189
Last updated 2013-03-02
Stream IETF
Formats plain text pdf html
Stream WG state (None)
Consensus Unknown
Document shepherd No shepherd assigned
This information refers to IESG processing after the RFC was initially published:
IESG IESG state RFC 3989 (Informational)
Telechat date
Responsible AD Magnus Westerlund
IESG note This has been replaced by draft-ietf-midcom-rfc3989-bis. See that document for future state.
Send notices to midcom-chairs@ietf.org
Network Working Group                                     M. Stiemerling
Request for Comments: 3989                                    J. Quittek
Category: Informational                                              NEC
                                                               T. Taylor
                                                                  Nortel
                                                           February 2005

          Middlebox Communications (MIDCOM) Protocol Semantics

Status of This Memo

   This memo provides information for the Internet community.  It does
   not specify an Internet standard of any kind.  Distribution of this
   memo is unlimited.

Copyright Notice

   Copyright (C) The Internet Society (2005).

Abstract

   This memo specifies semantics for a Middlebox Communication (MIDCOM)
   protocol to be used by MIDCOM agents for interacting with middleboxes
   such as firewalls and Network Address Translators (NATs).  The
   semantics discussion does not include any specification of a concrete
   syntax or a transport protocol.  However, a concrete protocol is
   expected to implement the specified semantics or, more likely, a
   superset of it.  The MIDCOM protocol semantics is derived from the
   MIDCOM requirements, from the MIDCOM framework, and from working
   group decisions.

Table of Contents

   1.  Introduction .................................................  3
       1.1.  Terminology ............................................  4
       1.2.  Transaction Definition Template ........................  6
   2.  Semantics Specification ......................................  7
       2.1.  General Protocol Design ................................  7
             2.1.1.  Protocol Transactions ..........................  8
             2.1.2.  Message Types ..................................  9
             2.1.3.  Session, Policy Rule, and Policy Rule Group ....  9
             2.1.4.  Atomicity ...................................... 10
             2.1.5.  Access Control ................................. 11
             2.1.6.  Middlebox Capabilities ......................... 11
             2.1.7.  Agent and Middlebox Identifiers ................ 12
             2.1.8.  Conformance .................................... 12
       2.2.  Session Control Transactions ........................... 13

Stiemerling, et al.          Informational                      [Page 1]
RFC 3989               MIDCOM Protocol Semantics           February 2005

             2.2.1.  Session Establishment (SE) ..................... 13
             2.2.2.  Session Termination (ST) ....................... 15
             2.2.3.  Asynchronous Session Termination (AST) ......... 16
             2.2.4.  Session Termination by Interruption of
                     Connection ..................................... 17
             2.2.5.  Session State Machine .......................... 17
       2.3.  Policy Rule Transactions ............................... 18
             2.3.1.  Configuration Transactions ..................... 19
             2.3.2.  Establishing Policy Rules ...................... 19
             2.3.3.  Maintaining Policy Rules and Policy Rule Groups  20
             2.3.4.  Policy Events and Asynchronous Notifications ... 21
             2.3.5.  Address Tuples ................................. 21
             2.3.6.  Address Parameter Constraints .................. 23
             2.3.7.  Interface-specific Policy Rules ................ 25
             2.3.8.  Policy Reserve Rule (PRR) ...................... 26
             2.3.9.  Policy Enable Rule (PER) ....................... 30
             2.3.10. Policy Rule Lifetime Change (RLC) .............. 36
             2.3.11. Policy Rule List (PRL) ......................... 38
             2.3.12. Policy Rule Status (PRS) ....................... 39
             2.3.13. Asynchronous Policy Rule Event (ARE) ........... 41
             2.3.14. Policy Rule State Machine ...................... 42
       2.4.  Policy Rule Group Transactions ......................... 43
             2.4.1.  Overview ....................................... 43
             2.4.2.  Group Lifetime Change (GLC) .................... 44
             2.4.3.  Group List (GL) ................................ 46
             2.4.4.  Group Status (GS) .............................. 47
   3.  Conformance Statements ....................................... 48
       3.1.  General Implementation Conformance ..................... 49
       3.2.  Middlebox Conformance .................................. 50
       3.3.  Agent Conformance ...................................... 50
   4.  Transaction Usage Examples ................................... 50
       4.1.  Exploring Policy Rules and Policy Rule Groups .......... 50
Show full document text