[Docs] [txt|pdf] [Tracker] [WG] [Email] [Diff1] [Diff2] [Nits]

Versions: (draft-nair-sip-dhcp) 00 01 02 03 04 05 RFC 3361

Internet Engineering Task Force                                   SIP WG
Internet Draft                                     G.Nair, H.Schulzrinne
draft-ietf-sip-dhcp-00.txt                           Columbia University
February 27, 2000
Expires: August 2000

                      DHCP Option for SIP Servers


   This document is an Internet-Draft and is in full conformance with
   all provisions of Section 10 of RFC2026.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF), its areas, and its working groups.  Note that
   other groups may also distribute working documents as Internet-

   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".

     The list of current Internet-Drafts can be accessed at

     The list of Internet-Draft Shadow Directories can be accessed at


   This document defines DHCP options that contain one or more pointers
   to one or more SIP servers. This is one of the many methods that a
   SIP client can use to obtain the addresses of the SIP servers.

1 Terminology

        DHCP client: A DHCP [1] client is an Internet host that uses
             DHCP to obtain configuration parameters such as a network

        DHCP server: A DHCP server is an Internet host that returns
             configuration parameters to DHCP clients.

        SIP server: As defined in RFC 2543 [2]. In the context of this
             document, a SIP server refers to the host the application
             is running on.

G.Nair, H.Schulzrinne                                         [Page 1]

Internet Draft                                         February 27, 2000

        SIP client: As defined in RFC 2543. In the context of this
             document, a SIP client refers to the host the application
             is running on.

   In this document, the key words "MUST", "MUST NOT", "REQUIRED",
   and "OPTIONAL" are to be interpreted as described in RFC 2119 [3].

2 Introduction

   The Session Initiation Protocol (SIP) [2] is an application-layer
   control protocol that can establish, modify and terminate multimedia
   sessions or calls. In particular, it is used for signalling of
   Internet telephony calls.  A SIP system has two components: user
   agents and servers.  The user agent is the SIP end system that acts
   on behalf of someone who wants to participate in a SIP call.

   This draft specifies a DHCP option [1,4] that allows SIP user agents
   (clients) to locate a local SIP server that is to be used for all
   outbound SIP requests.  (SIP clients MAY contact the address
   identified in the SIP URL directly, without involving a local SIP
   server. However in some circumstances, in particular with firewalls,
   SIP clients need to use a local server for outbound requests.) This
   is one of many possible solutions for locating the outbound SIP

3 Overview

   We identify two methods of notifying the client of the servers'

        1.   DNS [5] SRV records: The host name can be resolved by the
             client, using DNS and the name string obtained via a DHCP
             option. The client first uses the SRV [6] resource records
             to resolve the host name. If this fails the A resource
             records are tried.

        2.   List of IP addresses: Used in case there is no DNS server
             OR in the case that the client host is not DNS capable.

   Either or both of these methods MAY be used to notify the client of
   the servers' location through DHCP.

4 SIP server DHCP options

   We propose two new DHCP options. Our approach is defined in the
   following sections.

G.Nair, H.Schulzrinne                                         [Page 2]

Internet Draft                                         February 27, 2000

4.1 SIP server DNS name option

   This option specifies the DNS [5] name of the SIP server The client
   SHOULD first use this string to send an SRV query to the DNS server.
   If the client is not SRV-cognizant OR the SRV query fails, the client
   sends the same string in an A record query.  The code for this option
   is TBD. The length of the DNS name string is specified in `Len'. The
   maximum length of this string is 255 octets and minimum length is 1

             Code  Len      DNS name of SIP server
           | TBD |  n  | s1  | s2  | s3  | s4  | s5  |  ...

   Clients SHOULD use this method to locate the SIP server. The reason
   to list the SRV string and use DNS to resolve the address is that
   load sharing can be implemented more readily by an SRV-cognizant

4.2 SIP server IP address option

   This option specifies the list of IP addresses indicating SIP servers
   available to the client. The option SHOULD only be used if the client
   does not implement DNS (as in the case of some emebedded systems) OR
   if the DNS server is not responding. We duplicate relevant parts of
   the SRV record [6] in this option. Each item of the list consists of
   an ASCII string with 5 fields separated by a single space (ASCII
   0x20) as shown below:

               <IP Address> <prio> <wt> <port> <prot>

        IP address: This field contains the IP address of the SIP server
             in dotted quad notation.

        prio: This field indicates the priority of this target host. A
             client MUST attempt to contact the target host with the
             lowest-numbered priority it can reach; target hosts with
             the same priority SHOULD be tried in a round-robin fashion
             starting with a randomly chosen address. The range of

G.Nair, H.Schulzrinne                                         [Page 3]

Internet Draft                                         February 27, 2000

             priorities is 0-65535.

        wt: This field is used by the load balancing mechanism.  When
             selecting a target host among those that have the same
             priority, the chance of trying this one first SHOULD be
             proportional to its weight. The range of this number is 1-
             65535. Domain administrators are urged to use Weight 0 when
             there isn't any load balancing to do, to make the option
             easier to read for humans (less noisy).

        port: This field indicates the port on this target SIP server.
             The range is 0-65535. This is often 5060 - as specified in
             the IANA Assigned Numbers, but need not be.

        prot: This field indicates the protocol used by the SIP server.
             This can be either `TCP' or `UDP'. The protocol name is
             case sensitive.

   The code for this option is TBD. The length of this option is
   specified in `Len'. The minimum length of this option is 17 octets.
   The maximum length of this option is 255 octets.

            Code  Len       string 1              string 2
          +-----+-----+-----+-----+-----+--   --+-----+-----+--
          | TBD |  n  | s1  | s2  | s3  |  ...  | s13 | s14 |  ...
          +-----+-----+-----+-----+-----+--   --+-----+-----+--

5 Multiple options

   More than one SIP server option MAY be returned by the DHCP server.
   More than one of any option types MAY be present. This permits the
   client to select the option that suits its capabilities (DNS-SRV,
   DNS-A, or no DNS capability).

6 Security Consideration

   There are no security considerations beyond those described in RFC

7 Acknowledgements

   We would like to thank Jonathan Rosenberg, Bernie Volz, Kundan Singh,
   Sven Ubik and Wenyu Jiang for their contributions.

8 Authors' Addresses

G.Nair, H.Schulzrinne                                         [Page 4]

Internet Draft                                         February 27, 2000

   Gautam Nair
   Dept. of Computer Science
   Columbia University 1214 Amsterdam Avenue, MC 0401
   New York, NY 10027
   electronic mail:  gnair@cs.columbia.edu

   Henning Schulzrinne
   Dept. of Computer Science
   Columbia University 1214 Amsterdam Avenue, MC 0401
   New York, NY 10027
   electronic mail:  schulzrinne@cs.columbia.edu

9 Bibliography

   [1] R. Droms, "Dynamic host configuration protocol," Request for
   Comments (Draft Standard) 2131, Internet Engineering Task Force, Mar.

   [2] M. Handley, H. Schulzrinne, E. Schooler, and J. Rosenberg, "SIP:
   session initiation protocol," Request for Comments (Proposed
   Standard) 2543, Internet Engineering Task Force, Mar. 1999.

   [3] S. Bradner, "Key words for use in RFCs to indicate requirement
   levels," Request for Comments (Best Current Practice) 2119, Internet
   Engineering Task Force, Mar. 1997.

   [4] S. Alexander and R. Droms, "DHCP options and BOOTP vendor
   extensions," Request for Comments (Draft Standard) 2132, Internet
   Engineering Task Force, Mar. 1997.

   [5] P. V. Mockapetris, "Domain names - implementation and
   specification," Request for Comments (Standard) 1035, Internet
   Engineering Task Force, Nov. 1987.

   [6] A. Gulbrandsen and P. Vixie, "A DNS RR for specifying the
   location of services (DNS SRV)," Request for Comments (Experimental)
   2052, Internet Engineering Task Force, Oct. 1996.

   Full Copyright Statement

   Copyright (c) The Internet Society (2000). All Rights Reserved.

   This document and translations of it may be copied and furnished to
   others, and derivative works that comment on or otherwise explain it
   or assist in its implementation may be prepared, copied, published

G.Nair, H.Schulzrinne                                         [Page 5]

Internet Draft                                         February 27, 2000

   and distributed, in whole or in part, without restriction of any
   kind, provided that the above copyright notice and this paragraph are
   included on all such copies and derivative works. However, this
   document itself may not be modified in any way, such as by removing
   the copyright notice or references to the Internet Society or other
   Internet organizations, except as needed for the purpose of
   developing Internet standards in which case the procedures for
   copyrights defined in the Internet Standards process must be
   followed, or as required to translate it into languages other than

   The limited permissions granted above are perpetual and will not be
   revoked by the Internet Society or its successors or assigns.

   This document and the information contained herein is provided on an

                           Table of Contents

   1          Terminology .........................................    1
   2          Introduction ........................................    2
   3          Overview ............................................    2
   4          SIP server DHCP options .............................    2
   4.1        SIP server DNS name option ..........................    3
   4.2        SIP server IP address option ........................    3
   5          Multiple options ....................................    4
   6          Security Consideration ..............................    4
   7          Acknowledgements ....................................    4
   8          Authors' Addresses ..................................    4
   9          Bibliography ........................................    5

G.Nair, H.Schulzrinne                                         [Page 6]

Html markup produced by rfcmarkup 1.129d, available from https://tools.ietf.org/tools/rfcmarkup/