Middlebox Communication (MIDCOM) Protocol Semantics
RFC 5189

 
Document Type RFC - Proposed Standard (March 2008; No errata)
Obsoletes RFC 3989
Last updated 2013-03-02
Stream IETF
Formats plain text pdf html
Stream WG state (None)
Consensus Unknown
Document shepherd No shepherd assigned
IESG IESG state RFC 5189 (Proposed Standard)
Telechat date
Responsible AD Magnus Westerlund
Send notices to midcom-chairs@ietf.org,
Network Working Group                                     M. Stiemerling
Request for Comments: 5189                                    J. Quittek
Obsoletes: 3989                                                      NEC
Category: Standards Track                                      T. Taylor
                                                                  Nortel
                                                              March 2008

          Middlebox Communication (MIDCOM) Protocol Semantics

Status of This Memo

   This document specifies an Internet standards track protocol for the
   Internet community, and requests discussion and suggestions for
   improvements.  Please refer to the current edition of the "Internet
   Official Protocol Standards" (STD 1) for the standardization state
   and status of this protocol.  Distribution of this memo is unlimited.

Abstract

   This document 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.  This document obsoletes RFC 3989.

Stiemerling, et al.         Standards Track                     [Page 1]
RFC 5189               MIDCOM Protocol Semantics              March 2008

Table of Contents

   1. Introduction ....................................................4
      1.1. Terminology ................................................5
      1.2. Transaction Definition Template ............................7
   2. Semantics Specification .........................................8
      2.1. General Protocol Design ....................................8
           2.1.1. Protocol Transactions ...............................8
           2.1.2. Message Types .......................................9
           2.1.3. Session, Policy Rule, and Policy Rule Group ........10
           2.1.4. Atomicity ..........................................11
           2.1.5. Access Control .....................................11
           2.1.6. Middlebox Capabilities .............................12
           2.1.7. Agent and Middlebox Identifiers ....................12
           2.1.8. Conformance ........................................13
      2.2. Session Control Transactions ..............................13
           2.2.1. Session Establishment (SE) .........................14
           2.2.2. Session Termination (ST) ...........................16
           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) ..........................25
           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
Show full document text