Internet DRAFT - draft-xu-dnssd-sf-update

draft-xu-dnssd-sf-update







Dnssd Working Group                                                X. Xu
Internet-Draft                                                    Huawei
Intended status: Informational                              May 16, 2014
Expires: November 17, 2014


                DNS Update Based Service Function Update
                      draft-xu-dnssd-sf-update-00

Abstract

   In a Service Function Chaining (SFC)-enabled domain, the Domain Name
   System (DNS) can be used as a mechanism for Service Function (SF)
   auto-discovery [I-D.xu-dnssd-sf-discovery].  Since the information
   associated with SF instances (e.g., capacity and current load) would
   change dynamically, the information associated with SF instances
   which is stored in the DNS sever needs to be updated accordingly.
   This document describes how to use the DNS UPDATE mechanism [RFC2136]
   to dynamically update the corresponding Resource Records (RRs) for SF
   instances.

Requirements Language

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
   document are to be interpreted as described in [RFC2119].

Status of This Memo

   This Internet-Draft is submitted in full conformance with the
   provisions of BCP 78 and BCP 79.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF).  Note that other groups may also distribute
   working documents as Internet-Drafts.  The list of current Internet-
   Drafts is at http://datatracker.ietf.org/drafts/current/.

   Internet-Drafts are draft documents valid for a maximum of six months
   and may be updated, replaced, or obsoleted by other documents at any
   time.  It is inappropriate to use Internet-Drafts as reference
   material or to cite them other than as "work in progress."

   This Internet-Draft will expire on November 17, 2014.








Xu                      Expires November 17, 2014               [Page 1]

Internet-Draft         DNS Update Based SF Update               May 2014


Copyright Notice

   Copyright (c) 2014 IETF Trust and the persons identified as the
   document authors.  All rights reserved.

   This document is subject to BCP 78 and the IETF Trust's Legal
   Provisions Relating to IETF Documents
   (http://trustee.ietf.org/license-info) in effect on the date of
   publication of this document.  Please review these documents
   carefully, as they describe your rights and restrictions with respect
   to this document.  Code Components extracted from this document must
   include Simplified BSD License text as described in Section 4.e of
   the Trust Legal Provisions and are provided without warranty as
   described in the Simplified BSD License.

Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   2
   2.  Terminology . . . . . . . . . . . . . . . . . . . . . . . . .   3
   3.  Updating SF-Specific RRs  . . . . . . . . . . . . . . . . . .   3
     3.1.  RR Format . . . . . . . . . . . . . . . . . . . . . . . .   3
     3.2.  Updating SRV RR . . . . . . . . . . . . . . . . . . . . .   4
     3.3.  Updating TXT RR . . . . . . . . . . . . . . . . . . . . .   5
   4.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .   6
   5.  Security considerations . . . . . . . . . . . . . . . . . . .   6
   6.  Acknowledgement . . . . . . . . . . . . . . . . . . . . . . .   6
   7.  References  . . . . . . . . . . . . . . . . . . . . . . . . .   6
     7.1.  Normative References  . . . . . . . . . . . . . . . . . .   6
     7.2.  Informative References  . . . . . . . . . . . . . . . . .   7
   Author's Address  . . . . . . . . . . . . . . . . . . . . . . . .   7

1.  Introduction

   In a Service Function Chaining (SFC)-enabled domain, the Domain Name
   System (DNS) can be used as a mechanism for Service Function (SF)
   auto-discovery [I-D.xu-dnssd-sf-discovery].  Since the information
   associated with SF instances (e.g., capacity and current load) would
   change dynamically, the information associated with SF instances
   which is stored in the DNS needs to be updated accordingly.
   Specifically, the SRV [RFC2782] and TXT [RFC1035] records containing
   the information associated with SF instances need to be updated
   accordingly.

   This document describes how to use the DNS update mechanism as
   described in [RFC2136] to dynamically update the corresponding SRV
   and TXT RRs for SF instances.





Xu                      Expires November 17, 2014               [Page 2]

Internet-Draft         DNS Update Based SF Update               May 2014


2.  Terminology

   This section contains definitions for terms used frequently
   throughout this document.  However, many additional definitions can
   be found in [I-D.xu-dnssd-sf-discovery], [RFC2136] and
   [I-D.quinn-sfc-arch].

      Service Function (SF): A function that is responsible for specific
      treatment of received packets.  A Service Function can act at the
      network layer or other OSI layers.  A Service Function can be a
      virtual instance or be embedded in a physical network element.
      One of multiple Service Functions can be embedded in the same
      network element.  Multiple instances of the Service Function can
      be enabled in the same administrative domain.  A non-exhaustive
      list of Service Functions includes: firewalls, WAN and application
      acceleration, Deep Packet Inspection (DPI), server load balancers,
      NAT44 [RFC3022], NAT64 [RFC6146], HOST_ID injection, HTTP Header
      Enrichment functions, TCP optimizer, etc.

      Service Function Chain (SFC): A service function chain defines an
      ordered set of service functions that must be applied to packets
      and/or frames selected as a result of classification.

      SF Identifier (SF ID): A unique identifier that represents a
      service function within an SFC-enabled domain.

      Service Node (SN): Physical or virtual element that hosts one or
      more service functions and has one or more network locators
      associated with it for reachability and service delivery.

      SID: Segment Identifier

      Service SID: A locally unique SID indicating a particular service
      function on a service node.

3.  Updating SF-Specific RRs

3.1.  RR Format

   All RRs as defined in [RFC1035] have the same top level format shown
   below:










Xu                      Expires November 17, 2014               [Page 3]

Internet-Draft         DNS Update Based SF Update               May 2014


                                              1  1  1  1  1  1
                0  1  2  3  4  5  6  7  8  9  0  1  2  3  4  5
              +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
              |                                               |
              /                                               /
              /                    NAME                       /
              |                                               |
              +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
              |                                               |
              |                    TYPE                       |
              +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
              |                                               |
              |                    CLASS                      |
              +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
              |                                               |
              |                    TTL                        |
              +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
              |                                               |
              |                    RDLENGTH                   |
              +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
              /                                               /
              /                    RDATA                      /
              +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+

      o NAME: a domain name to which this resource record pertains.

      o TYPE: two octets containing one of the RR type codes.  This
      field specifies the meaning of the data in the RDATA field.

      o CLASS: two octets which specify the class of the data in the
      RDATA field.

      o TTL: a 32 bit signed integer that specifies the time interval
      that the resource record may be cached before the source of the
      information should again be consulted.

      o RDLENGTH: an unsigned 16 bit integer that specifies the length
      in octets of the RDATA field.

      o RDATA: a variable length string of octets that describes the
      resource.  The format of this information varies according to the
      TYPE and CLASS of the resource record.

3.2.  Updating SRV RR

   The SF-specific SRV record has a name of the form
   "<Instance>.<Service>.<Domain>" and gives the target host
   (representing the Service Node) where the SF instance can be reached



Xu                      Expires November 17, 2014               [Page 4]

Internet-Draft         DNS Update Based SF Update               May 2014


   (Note that the port number given by the SRV record is meaningless in
   the SFC case).  When a particular SF instance is moved from one
   service node to another, the Target field within the corresponding
   SRV RR for that SF instance needs to be updated accordingly.  The
   following is an example:

                              Table 1: SRV RR
          +------------------------+-----------------------------+
          |     SRV Name           |     SRV Data                |
          +------------------------|-----------------------------+
          |<instance1>.<firewall>. |Target:FQDN of Service Node 2|
          |<sfc.example.com>       |                             |
          |                        |Priority: Not Available      |
          |                        |                             |
          |                        |Weight: Not Available        |
          |                        |                             |
          |                        |Port: Not Available          |
          |                        |                             |
          +------------------------+-----------------------------+

3.3.  Updating TXT RR

   The TXT record is used to contain additional information (such as
   capacity, current load, service SID) associated with an SF instance.
   Once any information (e.g., current load) is changed, the
   corresponding key/value pair within the TXT record for that SF
   instance needs to be updated accordingly.  The following is an
   example:

                               Table 1: TXT RR
             +------------------------+-----------------------+
             |     TXT Name           |     TXT Data          |
             +------------------------+-----------------------+
             |<instance1>.<firewall>. |0x09 ssid=1000         |
             |<sfc.example.com>       |                       |
             |                        |0x0D capacity=1024     |
             |                        |                       |
             |                        |0x08 load=80%          |
             |                        |                       |
             +------------------------+-----------------------+

      o ssid=1000: The Service SID for the named SF instance.

      o capacity=1024: The capacity of the named SF instance.  For
      example, this information can refer to the maximum number of
      entries that can be supported by a firewall SF.





Xu                      Expires November 17, 2014               [Page 5]

Internet-Draft         DNS Update Based SF Update               May 2014


      o load=80%: The current load of the named SF instance.  This
      information may be used for load-balancing purposes for instance.
      This parameter may reflect the amount of active entries vs. the
      total amount of entries.

4.  IANA Considerations

   TBD.

5.  Security considerations

   The security considerations described in [RFC3007] is applicable to
   this document.  No additional security measure is required.

6.  Acknowledgement

   TBD.

7.  References

7.1.  Normative References

   [RFC1035]  Mockapetris, P., "Domain names - implementation and
              specification", STD 13, RFC 1035, November 1987.

   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119, March 1997.

   [RFC2136]  Vixie, P., Thomson, S., Rekhter, Y., and J. Bound,
              "Dynamic Updates in the Domain Name System (DNS UPDATE)",
              RFC 2136, April 1997.

   [RFC2782]  Gulbrandsen, A., Vixie, P., and L. Esibov, "A DNS RR for
              specifying the location of services (DNS SRV)", RFC 2782,
              February 2000.

   [RFC3007]  Wellington, B., "Secure Domain Name System (DNS) Dynamic
              Update", RFC 3007, November 2000.

   [RFC3022]  Srisuresh, P. and K. Egevang, "Traditional IP Network
              Address Translator (Traditional NAT)", RFC 3022, January
              2001.

   [RFC6146]  Bagnulo, M., Matthews, P., and I. van Beijnum, "Stateful
              NAT64: Network Address and Protocol Translation from IPv6
              Clients to IPv4 Servers", RFC 6146, April 2011.





Xu                      Expires November 17, 2014               [Page 6]

Internet-Draft         DNS Update Based SF Update               May 2014


7.2.  Informative References

   [I-D.quinn-sfc-arch]
              Quinn, P. and J. Halpern, "Service Function Chaining (SFC)
              Architecture", draft-quinn-sfc-arch-05 (work in progress),
              May 2014.

   [I-D.xu-dnssd-sf-discovery]
              Xu, X., "DNS-SD Extensions for Service Function
              Discovery", draft-xu-dnssd-sf-discovery-00 (work in
              progress), May 2014.

Author's Address

   Xiaohu Xu
   Huawei

   Email: xuxiaohu@huawei.com

































Xu                      Expires November 17, 2014               [Page 7]