Zeroconf WG M. Hattig
Internet Engineering Task Force Editor
INTERNET DRAFT Intel Corp.
Expires July 2000 January 10, 2000
Zeroconf Requirements
draft-ietf-zeroconf-reqts-02.txt
Status of This Memo
This document is a submission by the Zeroconf Working Group of the
Internet Engineering Task Force (IETF). Comments should be
submitted to the zeroconf@merit.edu mailing list.
Distribution of this memo is unlimited.
This document is an Internet-Draft and is in full conformance with
all provisions of Section 10 of [RFC 2026]. 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-Drafts.
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:
http://www.ietf.org/ietf/1id-abstracts.txt
The list of Internet-Draft Shadow Directories can be accessed at:
http://www.ietf.org/shadow.html.
Abstract
Zero Configuration (Zeroconf) Networks are a particular class of
TCP/IP networks that may be established in the home, in small
offices or even for an adhoc purpose. Zeroconf networks do not
have and should not be expected to have user configurable network
infrastructure such as DHCP, DNS and other administered services.
This is because typical Zeroconf network users neither have the
skill nor desire to configure, administer, or manage a network.
This document presents Zeroconf protocol requirements for four
areas: IP host configuration, domain name to IP address
resolution, IP multicast address allocation, and service
discovery. Security issues and the transitions between a Zeroconf
protocol and a non-Zeroconf protocol are also discussed within
each protocol area.
Table of Contents
Hattig [Page 1]
Internet Draft draft-ietf-zeroconf-reqts-02.txt Jan 2000
1 Overview....................................................2
2 Introduction................................................3
2.1 Reading This Document.....................................3
2.2 Zeroconf Protocols........................................4
2.3 Zeroconf Networks........................................10
3 Scenarios..................................................16
3.1 IP Host Configuration Scenarios..........................16
3.2 Domain Name to IP Address Resolution Scenarios...........18
3.3 IP Multicast Address Allocation Scenarios................19
3.4 Service Discovery Scenarios..............................19
3.5 Additional Scenarios.....................................25
4 Security Requirements......................................25
4.1 ZeroConf Security Threat Analysis........................25
4.2 Security Requirements....................................26
5 Additional Considerations..................................28
5.1 IANA Considerations......................................28
5.2 Internationalization Considerations......................28
5.3 Security Considerations..................................28
6 Full Copyright Statement...................................28
7 Acknowledgements...........................................29
8 References.................................................30
1 Overview
[Editor's Note: Most of the effort that has gone into version 02
has been devoted to section 2. With the exception of service
discovery I believe section 2 is 95% done and hope that we'll
close on all section 2 issues in the next few weeks. This should
put us well on the way to finish by March 10th, which is the
submission deadline for the next IETF meeting.]
Zero Configuration (Zeroconf) Networks are a particular class of
TCP/IP networks. These networks may be established in a home, in a
small office or even for an adhoc purpose. Zeroconf networks
typically do not have and should not be expected to have user
configurable network infrastructure such as DHCP, DNS and other
administered services. This is because typical Zeroconf network
users neither have the skill nor desire to configure, administer,
or manage a network.
This document presents Zeroconf protocol requirements for four
areas: IP host configuration, domain name to IP address
resolution, IP multicast address allocation, and service
discovery. Security issues and the transitions between a Zeroconf
protocol and a non-Zeroconf protocol are also discussed within
each protocol area.
This Zeroconf requirements document is a companion to a Zeroconf
profile document. This requirements document lists requirements
Hattig [Page 2]
Internet Draft draft-ietf-zeroconf-reqts-02.txt Jan 2000
for protocols. The profile document relates the protocol
requirements to actual protocols. In some cases, a protocol may
meet all requirements to become one of the required protocols for
Zeroconf networks. When protocols are insufficient or multiple
protocols are competing, the profile document states the
requirements of the protocol and the relationship of the
requirements to the existing protocols.
The major sections to this requirements document are the
Introduction, Scenarios, and Security. The introduction provides
the background information to enable concise scenario discussions.
Scenarios must be concise in definition and scope to generate
useful protocol requirements. The security section lists threats
and security requirements all four protocol areas.
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 [RFC
2119].
2 Introduction
This introduction presents how to best read this document and
provides restrictions, assumptions, and terms.
2.1 Reading This Document
This Introduction provides the necessary information to have a
concise scenario discussion. This includes reference information,
restrictions, assumptions, and terms. All readers should read the
entire introduction.
Of the scenarios listed in the Scenario section, different
scenarios generate unique requirements but are not the only
scenarios that could possibly generate those unique requirements.
Each scenario has an overview, key points, and protocol
requirements.
The Security section lists threats and security requirements for
each protocol area.
Because this document deals four distinct protocol areas, many
sections are divided into those areas. They are:
- IP host configuration
- Domain name to IP address resolution
- IP multicast address allocation
- Service discovery
The below references follow this division with additional
references for security and general knowledge. Note that some
Hattig [Page 3]
Internet Draft draft-ietf-zeroconf-reqts-02.txt Jan 2000
working groups are listed because they specify protocols that
impact Zeroconf protocols.
IP host configuration:
- [AutoNet] Ipv4 Auto-Configuration I-D
- [MiniDHCP] Auto-Addressing in Multi-segment Networks I-D
- [RFC 1918] RFC 1918 Private Addresses
- [RFC 2131] RFC 2131 DHCP
- [RFC 2132] RFC 2132 DHCP Options
- [RFC 2462] IPv6 Auto-Configuration
- [RFC 2461] IPv6 Neighbor Discovery
- [IPv6 WG] Next Generation (Ipv6) WG
- [DHC WG] Dynamic Host Configuration WG
Domain name to IP address resolution:
- [Mcast DNS] Multicast DNS I-D
- [RFC 1001] NETBIOS: CONCEPTS AND METHODS
- [RFC 1002] NETBIOS: DETAILED SPECIFICATIONS
- [RFC 1034] RFC 1034 DNS
- [DNS WG] DNS Update WG
Multicast address allocation:
- [AutoMcast] Multicast Address Allocation in Auto-Configured
Networks I-D
- [RFC 2730] RFC 2730 MADCAP
- [RFC 2365] RFC 2365 Administratively Scoped Multicast Address
- [MALLOC WG] Multicast Address Allocation WG
Service discovery:
- [SSDP] Simple Service Discovery Protocol I-D
- [RFC 2608] RFC 2608 Service Location Protocol v2
- [RFC 2609] RFC 2609 SLP Schemes
Security:
- [RFC 2316] RFC 2316, IAB Security Architecture Workshop
- [RFC 2401] RFC 2401, Security Architecture for IP
- [RFC 2411] RFC 2411, IP Security Document Roadmap
- [RFC 2504] RFC 2504, User's Security Handbook
General knowledge:
- [STD3] RFC 1122 Requirements for Internet Hosts - Comm Layers
- [STD4] RFC 1123 Requirements for Internet Hosts - App Layers
- [RFC 1458] RFC 1458 Requirements for Multicast Protocols
- [RFC 1812] RFC 1812 Requirements for Internet Gateways
All readers should be familiar with the general knowledge
references.
2.2 Zeroconf Protocols
Hattig [Page 4]
Internet Draft draft-ietf-zeroconf-reqts-02.txt Jan 2000
A subsection below defines what "Zeroconf protocol" means. Then,
additional subsections state the assumptions and restrictions of
each protocol area.
2.2.1 Zeroconf Protocol
Below is a definition of a Zeroconf protocol and a non-Zeroconf
protocol. Additional discussions describe a host transitioning
between Zeroconf and non-Zeroconf protocols, then the coexistence
of these protocols.
2.2.1.1 Definitions
A Zeroconf protocol requires no user configuration and does not
rely on the existence of a centralized server.
A non-Zeroconf protocol requires user configuration or relies on a
centralized server.
2.2.1.2 Transitions
A host using a Zeroconf protocol must easily transition in three
ways:
1. from a Zeroconf protocol to a non-Zeroconf protocol,
2. from a non-Zeroconf protocol to a Zeroconf protocol, and
3. from a Zeroconf protocol back to a Zeroconf protocol (possibly
with new values).
The Zeroconf to non-Zeroconf transition occurs when either a host
moves to a different network or when a server becomes accessible
on the network. For example, if a DHCP server comes on-line after
hosts are configured with [AutoNet], then hosts must re-configure
with DHCP.
The non-Zeroconf to Zeroconf transition occurs when either a
device moves to a different network or when a server is no longer
accessible. For example, if a DHCP server is no longer on the
network then IP hosts must re-configure with [AutoNet].
The third transition occurs when a device moves from one Zeroconf
network to another Zeroconf network or when the Zeroconf network
topology changes significantly. For example, if a bridge is
installed between two networks where hosts were already configured
using [AutoNet], then hosts must re-configure with [AutoNet] to
ensure duplicate IP addresses do not exist.
A host can determine a transition is necessary by two methods: the
host periodically checking if a transition is needed or by
receiving a proactive mechanism from some entity that knows a
transition is underway. Solutions SHOULD have both a periodic
Hattig [Page 5]
Internet Draft draft-ietf-zeroconf-reqts-02.txt Jan 2000
checking and a proactive mechanism (assuming the proactive
mechanism uses an unacknowledged packet such as IP broadcast).
Periodic checking ensures a host transitions even when that host
does not receive the packet carrying the proactive mechanism. A
proactive mechanism allows the time between periodic checks to be
greater; thus the checking will not consume excessive bandwidth or
processing resources.
For example if the DHCP server broadcasts an "DHCPAck" with a new
"I'm Here" option or "I'm Leaving" option as the proactive
mechanism, then [AutoNet] must still send a periodic DCHPDiscover
message.
Note, the DHCP and [AutoNet] examples have no bearing on the
stated requirements in this document. These examples were chosen
simply because they are illustrative.
2.2.1.3 Coexistence
A Zeroconf protocol in one area may coexist with a non-Zeroconf
protocol in another area.
To illustrate this point, suppose there are standard Zeroconf and
non-Zeroconf protocols for IP host configuration and domain name
to IP address resolution (two of the four protocol areas).
For IP host configuration, the Zeroconf protocol is "protocol-A."
The non-Zeroconf protocol is "protocol-B", supported by a fully
conformant "protocol-B" server.
For domain name to IP address resolution, the Zeroconf protocol is
"protocol-C". The non-Zeroconf protocol is "protocol-D" supported
by a fully conformant "protocol-D" server.
Within a single network, the non-Zeroconf protocol-B (with its
server) may coexist with the Zeroconf protocol-C.
Alternately, Zeroconf and non-Zeroconf protocols from a single
area SHOULD not coexist during normal operation. They may coexist
during a transition, but the coexistence period SHOULD be minimal.
2.2.2 IP Host Configuration
IP host configuration is required before virtually any IP
communication can take place. In most cases, IP host configuration
is complete when there is a known IP address, netmask, and default
route for an interface on a host.
DHCP is the common host configuration solution deployed today.
DHCP consists of servers and clients. The client discovers the
Hattig [Page 6]
Internet Draft draft-ietf-zeroconf-reqts-02.txt Jan 2000
server, and then the server offers configuration parameters to
clients. It is assumed that all Zeroconf IP host configuration
schemes will co-existence with DHCP. In other words DHCP is the
non-Zeroconf solution for IP host configuration.
2.2.3 Domain name to IP address resolution
Web browsing to an URL utilizes domain name to IP resolution. This
resolution capability allows applications (and sometimes users) to
remain blissfully unaware of IP addresses.
DNS is the common way to resolve names. DNS consists of servers
that maintain resource records; a record maps a domain name to an
IP address. In addition, resolvers on hosts query the DNS servers
for the information in resource records. DNS is the non-Zeroconf
solution for domain name to IP address resolution.
2.2.4 IP Multicast Address Allocation
Examples of emerging multicast applications include audio/video
(e.g. TV), bulk news, and intra-home intercom system. These
applications require an IP multicast address prior to sending IP
multicast packets. In most cases, the IP multicast address is
unique per application source. The scope of the multicast address
determines if the multicasted packets get transmitted beyond
certain administrative domains (e.g. through a RFC 2365 boundary
router).
MADCAP is the non-Zeroconf IP multicast address allocation
solution. MADCAP is a server-client protocol where clients request
IP multicast addresses from a server. MADCAP operates much like
DHCP.
Zeroconf solutions are only concerned with IP multicast address
scoped as site-local (i.e. 239.255.0.0/16). A boundary router (as
described in [RFC 2365]) must be present to appropriately control
multicast packets from entering and leaving the Zeroconf network.
2.2.5 Service Discovery
Service discovery protocols have proven to be critical to the
usability of networks. AppleTalk/NBP, NetBIOS/SMB and IPX/SAP are
perfect examples in that they greatly improved the utility of
their respective network architectures. Services from printing to
gaming are easily found on these networks.
Unlike the other protocol areas in this document, service
discovery will not likely have separate Zeroconf and non-Zeroconf
protocols; one protocol will serve both purposes.
Hattig [Page 7]
Internet Draft draft-ietf-zeroconf-reqts-02.txt Jan 2000
Also, unlike the other protocol areas, no incumbent service
discovery protocol exists. Service Location Protocol version 2
(SLPv2) is defined in Standards Track RFC 2609. An Internet-Draft
defines Simple Service Discovery Protocols (SSDP), which is
another service discovery protocol.
Considerable service discovery terminology is necessary to have a
service discovery scenario discussion. The terms below are
categorized into basic, processes, packet types, actions, then
alphabetized within those categories. Following the terms is a
list of service discovery protocol assumed requirements.
Basic Terms:
Process - A process is an implementation of an algorithm in
software, hardware, or a combination of software and hardware.
Service - A service is set of processes that do a wide range of
network related things. Services range from printing to
transferring a file to providing on-line pizza order and delivery
service. A service may find some network management information,
perform some action, control some resource, or perform just about
any network-related function.
Service Characteristics - Characteristics differentiate services.
They may differential the same type of service in terms of
capabilities (e.g. color printing vs black and white), state (e.g.
printer ready vs paper jam), physical location (e.g. my office vs
my home), and many other things. Characteristic may include
service-unique information such as access information, version
numbers, contact information, etc.
Service Discovery Protocol - A service discovery protocol enables
a client (or clients) to discover a server (or servers) of a
particular service. A service discovery protocol is an application
layer protocol that relies on, but does not interact with, network
and transport protocol layers.
Service Identifier - A service may be identified by general
service type as well as service characteristics. Clients, servers,
advertisers, discoverers, and registries use service identifiers.
Service Protocol - A service protocol is used between the client
and the server after service discovery is complete.
Processes:
Advertiser - A process that advertises a service using a service
discovery protocol. A server generally activates the advertiser.
Hattig [Page 8]
Internet Draft draft-ietf-zeroconf-reqts-02.txt Jan 2000
Client - A process that uses a service discovery protocol to
discover a service.
Discoverer - A process that discovers a service using a service
discovery protocol. A client generally activates the discoverer.
Registry - A process that acts as an intermediary between
discoverers and advertisers. Servers 'register' service
advertisements and other pertinent (e.g. authentication info,
announcement criteria) with registries, then the service may be
discovered from the registry instead of from a server. The
registry may be centralized for a group of clients to access or
cached within a single client. A registry reduces the number of
queries to enhance the scalability of a service discovery
protocol.
Peer - A process that is both a client and service for a specific
service protocol.
Server - A process that offers a service to clients through a
service discovery protocol.
Packets Types:
Service Advertisement - A solicited response issued by a server or
registry. The advertisement provides the service identifier and
possibly service characteristics.
Service Solicitation - A request made by a client to obtain
service advertisements.
Service Announcement - An unsolicited informative message issued
by a server or registry. The announcement provides the service
identifier and possibly service characteristics.
Registry update - A message that contains updated a registry
information. It may cause one or more registry entries to be
deleted, added, or modified.
Actions:
Client-Server negotiation: The act of a client using the service
protocol to negotiate with a server after the service has been
discovered with the service discovery protocol.
Registry cleanup: An internal process of the registry to remove
unwanted information.
Service discovery: The act of a client discovering a service.
Hattig [Page 9]
Internet Draft draft-ietf-zeroconf-reqts-02.txt Jan 2000
Utilizing a service: The act of a client using a service after the
service has been discovered.
Assumed Service Discovery Protocol Requirements:
A service discovery protocol MUST allow a client to discover then
utilize a service.
A discovery protocol itself MUST require no configuration.
(Clients must know what they need and services must know what they
are, but this is a service installation and configuration issue,
not a service discovery issue.)
A service discovery protocol SHOULD allow a client to use
Solicitation messages with specific characteristics. This enables
a client to avoid complex client-server negotiations that may
occur after service discovery. Characteristics also allow human
users to determine which service to use (browse).
A service discovery protocol SHOULD limit the use of Service
Announcement messages so as to not flood the network unnecessarily
and most importantly not cause 'broadcast storms'.
A service discovery protocol SHOULD automatically sense when it
must stop multicasting requests from Discoverers to Advertisers
and instead employ a Registry of some sort.
A service discovery protocol MUST not cause scalability or
operational problems in larger non-Zeroconf networks if clients
and servers somehow transition to such networks.
A service discovery protocol MUST be rich enough in its semantics
to be able to represent a wide range of services.
2.3 Zeroconf Networks
A Zeroconf network is a network that at some point in time has one
or more Zeroconf protocols. By this definition, almost all
networks are Zeroconf networks. This definition is intentionally
broad to avoid mandating a network to be Zeroconf or exclude
another network from using a Zeroconf protocol. The Internet and
corporate LANs are considered non-Zeroconf networks because,
today, these networks have little use for Zeroconf protocols.
This section describes the existing Internet network model, the
Zeroconf topologies, and a summary of the key points.
2.3.1 Existing Internet Model
Hattig [Page 10]
Internet Draft draft-ietf-zeroconf-reqts-02.txt Jan 2000
All networks in this document follow the Internet Model as
described in [RFC 1812]. Specifically, networks consist of
bridges, routers, hosts, link layer networks, and IP networks to
form internets. A summary of the terms from [RFC 1812] that apply
to this document are:
- Bridge: a device that routes link layer packets (e.g. Ethernet
packets) between link layer networks (e.g. Ethernet) based on
the destination link layer addresses (e.g. 48-bit Ethernet
address) of a packet.
- Router: a devices that routes IP packets between IP networks
based on the destination IP address of an IP packet.
- IP network: a network that consists of hosts with interfaces
that share the same network portion of their IP addresses. A
single IP network may physically consist of several link layer
networks connected by a bridge, but it is one logical IP
network; the hosts remain unaware of the bridge or multiple
link layer networks.
- internet: a network that consists of multiple IP networks
connected by routers.
2.3.2 Isolated Single IP Network
In an isolated single IP network topology, hosts connect directly
to each other without routers. This implies no connectivity to
non-Zeroconf networks.
Enabling isolated single IP networks is one of the primary
motivations behind this document.
Two instances of single IP-network topologies are shown in Figure
1 and Figure 2.
*****************************************************
* Zeroconf Network *
* *
* ------ crossover cable ------- *
* | | *
* | | *
* +------+ +------+ *
* | Host | | Host | *
* +------+ +------+ *
* *
*****************************************************
Figure 1. Cross-over cable Ethernet network
The Zeroconf network in Figure 1 has two hosts connected through a
crossover Ethernet cable. Infrared or other point-to-point
wireless technologies are similar examples. These networks can be
Hattig [Page 11]
Internet Draft draft-ietf-zeroconf-reqts-02.txt Jan 2000
created and torn down on an adhoc basis for seminars, conferences,
hour-long meetings, or for many other reasons.
*****************************************************
* Zeroconf Network *
* *
* -------[ HUB ]------- *
* | | | *
* | | | *
* +------+ +------+ +------+ *
* | Host | | Host | | Host | *
* +------+ +------+ +------+ *
* *
*****************************************************
Figure 2. Hosts connected by Ethernet Hub
The Figure 2 Zeroconf network has a small number of hosts
connected through an Ethernet hub. This may be a small office
network or a gaming network.
In this topology, IP broadcast packets reach all hosts and no
routing takes place, thus a default route is not a needed
configuration parameter. A host sending an IP packet SHOULD not
AND the netmask with the destination IP address to determine
whether to forward the IP packet to the default router or to send
an ARP packet to resolve the destination IP address to a hardware
address. Instead, hosts SHOULD always opt to use ARP; a default
route existing or not existing in the IP host configuration
determines this.
2.3.3 Single IP Network with a Gateway
A specialized router called a gateway resides between the Zeroconf
and non-Zeroconf networks. The single IP network within the
Zeroconf network connects directly to the gateway.
The gateway is a specialized router in that it restricts the
routing of IP packets between the Zeroconf and non-Zeroconf
networks. This restriction ensures autonomy of the Zeroconf
network and avoids many security problems. In addition, the
gateway acts as a multicast boundary router as defined in RFC
2365.
Enabling single IP networks with a gateway is one of the primary
motivations behind this document.
Figure 3 shows the single IP network with a gateway topology.
***************************
Hattig [Page 12]
Internet Draft draft-ietf-zeroconf-reqts-02.txt Jan 2000
* *
* non-Zeroconf *
* Network *
* *
***************************
|
|
|
+----------------+
**********************| Gateway |*************************
* Zeroconf Network +----------------+ *
* | *
* | *
* | IP Network *
* ------------------------|----------------------------- *
* | | | | | *
* | | | | | *
* | | | | | *
* +------+ +------+ +------+ +------+ +------+ *
* | Host | | Host | | Host | | Host | | Host | *
* +------+ +------+ +------+ +------+ +------+ *
* *
*****************************************************************
Figure 3. Single IP Network with a Gateway
Examples of this topology include a typical small business network
with remote-access router and a single Ethernet segment. Another
common example is a home network with an ADSL-modem and a single
Home Phonewire Network Alliance (HomePNA) link connecting a few
PCs.
In this topology, broadcast packets reach all hosts and routing
only occurs to communicate between Zeroconf and non-Zeroconf
networks. All hosts SHOULD rely on netmask and the default route
as a normal IP host does when determining to ARP or to forward
packets to the default route.
2.3.4 Multiple IP Networks through a Gateway
In this topology, all IP networks within the Zeroconf network
connect directly to the gateway.
Enabling this topology is a goal for this document.
Figure 4 shows the general form of this topology.
***************************
* *
* Non-Zeroconf *
Hattig [Page 13]
Internet Draft draft-ietf-zeroconf-reqts-02.txt Jan 2000
* Network *
* *
***************************
|
|
|
+----------------+
**********************| Gateway |*************************
* Zeroconf Network +----------------+ *
* | | | *
* | | | *
* | | | *
* | | | *
* IP network A | | | IP network B *
* ------------------| | |---------------------- *
* | | | | | *
* | | | IP network C | | *
* | | | | | *
* +------+ +------+ +------+ +------+ +------+ *
* | Host | | Host | | Host | | Host | | Host | *
* +------+ +------+ +------+ +------+ +------+ *
* *
*****************************************************************
Figure 4. Multiple IP Networks through a Gateway
The primary example of this topology is a future home network with
many link layers such as HomePNA, HomeRF, IEEE 802.11, and IEEE
1394-1995. These link layers are installed because they either
require no new wires (e.g. phone line, wireless, powerline) or
provide some special function such as the ability to roam (e.g.
wireless) or to carry high-quality video streams (e.g. IEEE 1394-
1995).
Communication between IP networks within the Zeroconf network and
between the Zeroconf and non-Zeroconf networks is achieved by
utilizing the routing capability in the gateway; therefore all
hosts SHOULD be configured with netmask and default route.
Broadcasts do not reach all hosts within the Zeroconf Network;
therefore, multicasting is the best solution to reach all hosts.
In order for multicast packets to reach all hosts, the gateway
must be a multicast router and act as a boundary router (as
defined in RFC 2365) to restrict certain multicast packets from
leaving the Zeroconf network.
2.3.5 Networks with Routers and Gateways
In this topology, routers connect IP Networks within the Zeroconf
network and gateways connect the Zeroconf network to the non-
Zeroconf network.
Hattig [Page 14]
Internet Draft draft-ietf-zeroconf-reqts-02.txt Jan 2000
Supporting this topology is not a goal of this document because it
would require router auto-configuration, router pre-configuration,
or some router-to-router communication to somehow enable router
configuration; this document in no way precludes such work in
other documents.
Zeroconf protocols that communicate between a host and a router to
configure the host MAY be considered.
Figure 5 shows a sample network with routers and gateways.
*************************************
* *
* Internet *
* *
*************************************
| |
| |
| |
+----------------+ +------------+
*******************| Gateway |****| Gateway |***********
* Zeroconf Network +----------------+ +------------+ *
* | | | IP network D *
* | | | *
* IP network A +--------+ | | IP network C +--------+ *
* -----------| Router |---| |--------------| Router | *
* | | +--------+ | | +--------+ *
* | | |IP network B | | *
* | | | | | *
* +------+ +------+ +------+ +------+ +------+ *
* | Host | | Host | | Host | | Host | | Host | *
* +------+ +------+ +------+ +------+ +------+ *
* *
******************************************************************
Figure 5. Routers and Gateways Network
This topology is only applicable in a medium to large business;
generally, these are not Zeroconf networks.
2.3.6 Summary
The purpose of showing topologies is to make this document
concise. The purpose is not to mandate some networks as Zeroconf
and others as non-Zeroconf.
The gateway is a specialized router. It restricts packets that
pass between the Zeroconf and non-Zeroconf networks to ensure
autonomy of the Zeroconf network and to avoid many security
Hattig [Page 15]
Internet Draft draft-ietf-zeroconf-reqts-02.txt Jan 2000
problems. The gateway SHOULD act as a boundary router as defined
in RFC 2365.
All Zeroconf protocols MUST operate in single IP networks
(isolated and connected) and SHOULD operate in networks with
multiple IP networks with a single gateway. It is beneficial, but
not required, for Zeroconf protocols to operate in networks with
multiple gateways and multiple routers.
3 Scenarios
This section lists Zeroconf scenarios that lead to requirements
for protocols. Specific protocols are not discussed.
Each scenario begins with an explanation or overview. Then, the
key points of the scenario are identified along with requirements.
Each scenario has the following outline:
- Overview
- Key Points
- Protocol Requirements
The scenarios are grouped by IP host configuration, domain name to
IP address resolution, IP multicast address allocation, and
service discovery.
The scenarios take place within a Zeroconf network unless
otherwise stated.
3.1 IP Host Configuration Scenarios
3.1.1 Isolated Single IP Network Communication
3.1.1.1 Overview
Hosts on a single IP network communicate to each other.
3.1.1.2 Key Points
This scenario applies to single IP network topologies (isolated or
with a gateway). Only the IP address must be configured. The
netmask can be configured to a value or assumed to be
255.255.255.255. No default route is needed.
3.1.1.3 Protocol Requirements
- IP hosts MUST configure an IP address.
- IP hosts MUST configure a netmask or assume 255.255.255.255.
- The host number of an IP address MUST be unique within a single
IP network.
Hattig [Page 16]
Internet Draft draft-ietf-zeroconf-reqts-02.txt Jan 2000
- The network number of an IP address MUST equal the network
number of other IP addresses within a single IP network.
3.1.2 Multiple IP Network Communication
All the networks in this section are isolated from non-Zeroconf
networks.
3.1.2.1 Overview
Hosts on multiple IP networks within a Zeroconf network
communicate to each other.
3.1.2.2 Key Points
This scenario is important for star topologies and ad-hoc
topologies.
3.1.2.3 Protocol Requirements
- IP hosts MUST configure an IP address.
- IP hosts MUST configure a netmask.
- IP hosts MUST configure a default route.
- The host number of an IP address MUST be unique within a single
IP network.
- The network number of an IP address MUST equal the network
number of other IP addresses within a single IP network.
- Network numbers of IP addresses MUST be unique within the entire
Zeroconf network.
- IP address MUST be routable within the Zeroconf network.
3.1.3 Bridge Installed
3.1.3.1 Overview
Between two operational IP networks, a bridge (or hub) is
installed. Now, two hosts on the newly formed IP network may share
the same IP address. In addition, hosts on different link layer
networks may not have been using the same network number and now
they must share the same network number.
3.1.3.2 Key Points
This is a special case of a previous scenario when IP hosts first
communicate on the same IP network. All the key points and
requirements to the previous scenario apply. In addition, host
must have the ability to re-configure their IP address and net
mask.
Hattig [Page 17]
Internet Draft draft-ietf-zeroconf-reqts-02.txt Jan 2000
3.1.3.3 Protocol Requirements
- Hosts MUST be able to re-configure their IP address and netmask
after networks are connected.
There is an addition requirment to your "periodic conflict
detection" requirement. It is an active mechanism to restart
conflict detction. This is needed in case the period is too
large for a hosts needs.
- All requirements in section 3.1.1.3.
3.1.4 Router Installed
3.1.4.1 Overview
Within a Zeroconf network, a router is installed after IP hosts
have been configured to communicate throughout the Zeroconf
network. Multiple IP networks within the Zeroconf network may now
share the same IP network number.
3.1.4.2 Key Points
This is a special case of a previous scenario when hosts on a
multiple IP networks within a Zeroconf network communicate. All
the key points and requirements to the previous scenario apply. In
addition, host must have the ability to re-configure their IP
address, net mask, and default route.
3.1.4.3 Protocol Requirements
- Hosts MUST re-configure IP address, net mask, and default route
at various times after the initial configuration.
- All requirements in section 3.1.2.3.
3.2 Domain Name to IP Address Resolution Scenarios
3.2.1 Resolve Non-Fully Qualified Name
3.2.1.1 Overview
Domain names within the Zeroconf network must be resolved to IP
addresses. This enables one of the most basic of TCP/IP networking
paradigms of applications only being aware of host names and not
IP addresses.
3.2.1.2 Key Points
Name resolution must span the entire Zeroconf network, but be
limited by the gateway from leaving or entering the Zeroconf
Hattig [Page 18]
Internet Draft draft-ietf-zeroconf-reqts-02.txt Jan 2000
network. This protocol should include the ability for a host to
choose a name, determine if the name is in use, and then choose a
different name if it is re-used.
The name resolution protocol must become active at various times
such as when previously disconnected yet operational networks now
become connected by the installation of a router or a bridge.
3.2.1.3 Protocol Requirements
- A host that wishes to be addressable by name MUST select a
domain name.
- A host MUST determine if the domain name is in use by another
host.
- A host MUST participate to defend the name it uses.
- A host MUST be able to reconfigure its name in the case it was
unable to successfully defend the name it previously used.
- At various times a host MUST actively determine if another host
is using its name.
- Gateways MUST restrict this protocol from leaving or entering
the Zeroconf network.
- Routers MUST route this protocol to ensure it spans the entire
Zeroconf network.
3.2.2 Resolve Fully Qualified Name
[TBD]
3.2.2.1 Overview
3.2.2.2 Key Points
3.2.2.3 Protocol Requirements
3.3 IP Multicast Address Allocation Scenarios
[TBD]
3.3.1 Allocate XX Scoped IP multicast address
[TBD, one XX for each relevant scope.]
3.4 Service Discovery Scenarios
3.4.1 Discover Printer
3.4.1.1 Overview
Networked enabled printers allow various clients to submit print
jobs. There are different printing protocols possible (raw tcp,
lpd, ipp, etc.) Further, printers vary in a number of ways (their
location, status and capabilities). Printer discovery is
Hattig [Page 19]
Internet Draft draft-ietf-zeroconf-reqts-02.txt Jan 2000
important for both printing clients as well as 'printing managers'
- that is, software which manages all printers of a particular
kind on the network.
3.4.1.2 Key Points
Printer discovery must allow a printing client to discover the
location of a printer and enough information about the print job
submission protocol to be able to submit jobs. Further printer
discovery must discriminate between printers which are useful and
those which are not. A printer which is located in a remote
facility (across a continent) is not useful, nor is a printer
which can't print in color, on transparencies, etc. if that is
what the client needs to do. Printer discovery has to be timely -
so that when a printer comes on line, a print client or a print
manager application can discover the printer in a timely way.
3.4.1.3 Protocol Requirements
Printer discovery implies the following requirements for service
discovery.
- The service discovery mechanism has to allow for discriminating
queries. A client has to be able to discover a printer for
which it has a driver, for instance.
- Service discovery has to be able to discover the characteristics
of an advertised service. A print client or a print manager
has to be able to find out the configuration and possibly even
status of the printer to be able to adequately provide
information to the print client or print manager which is
searching for appropriate print servers. This information may
be used for a user interface or by a program so the format of
the information has to be standardized.
- Service discovery has to be able to be done in a 'timely way.'
That is, within a short number of seconds after activating a
print server, a user who is actively browsing for printer
should be able to see the device appear in a browser window, or
a printer manager should be able to begin managing the print
server.
3.4.2 Discover File Access Server
3.4.2.1 Overview
File sharing is done using different protocols. A file sharing
client is only interested in file sharing services which use the
access protocol it is capable of. File sharing is typically done
by human users - in this case attributes of the file access server
Hattig [Page 20]
Internet Draft draft-ietf-zeroconf-reqts-02.txt Jan 2000
have to be discovered so the human user can select which server to
access. File sharing is done on a 'session basis' so timely
rediscovery of selected file servers is necessary.
3.4.2.2 Key Points
File sharing is a key application of personal computing. There
are a variety of file access protocols available (NFS, Novell file
access protocol (?), AppleShare, NetBIOS/SMB, etc.) A client must
be able to discover those file systems which exist on a network,
which the client can get access to, that support the file access
protocol the client is capable of using.
Further, existing service discovery mechanisms for file access
servers (from Novell, Apple and Microsoft proprietary protocols)
allow the user to discover something about the file system they
would access. This include the name of the file system, a human
readable description of it as well as a 'group' or 'groups' that
the file system was shared to.
Since there may be many 'peers' in a network of personal computing
devices, it is critical that some grouping is possible, so that
users can locate file access servers that are meaningful to them
(located nearby, shared by colleagues close to them in the
organization, shared by those who will allow the user access to
the files, file systems whose content is of a general kind, etc.)
Further, grouping file access servers is important to allow the
service discovery activity to be scalable in a network containing
many systems capable of (or actively) providing file access
service. This scalability consideration is different than the
previous point (where grouping services prevents too much
information to select from). In this case, scalability implies
that requests will only be received and processed by a subset of
the file access servers which advertise their services (or by a
subset of the 'service discovery protocol infrastructure' to be
more general). This will prevent service discovery from being a
burden to the network. This is an extremely important point:
Experience has shown that service discovery for services which are
shared by many personal computers in larger networks can have
disastrous effects.
AppleTalk, Novell networks and Microsoft networks all suffer in
performance for this reason. Finally, file access is typically
done on a 'session' basis. That is, when a user decides to access
a file system, he or she wants access to it over time. If the
file system is not available for a time, the user wants to get
access to it again when the file system is again available. If
the client system is moved or deactivated, the user wants to be
able to discover the same file system again when the client device
Hattig [Page 21]
Internet Draft draft-ietf-zeroconf-reqts-02.txt Jan 2000
is again able to locate the previously discovered and selected
file access server.
3.4.2.3 Protocol Requirements
File access server discovery implies the following requirements:
- Clients can discover the location of file access servers which
support the file access protocol they support.
- Clients can discover only those file access servers which are in
a 'group' they are interested in. This grouping has to be
possible along a variety of different conceptual lines
location, organizational - like which department, or functional
- like a general description of the servers such as "reference
library" or "mailing list archives".) This is possible in
Novell, AppleTalk and Microsoft networks. It should be
possible on IP networks in general.
- The groupings listed above must be able to limit the effects of
the file access protocol on the network. This allows for
scalable service discovery in a larger network.
- Clients can discover some information about file systems that
they could choose to access (the name of the file system, a
description of it and whether the user has access permission,
at the very least).
- Clients should be able to rediscover the file system over time
so that the user can discover the same file access service even
if that service goes down and comes back up, or if the client
device moves or goes down, then is once again on a network
where the file access server is present.
3.4.3 Discover Manageable Device
3.4.3.1 Overview
One important application of service discovery is the discovery of
manageable devices by a 'management' system. Conversely,
manageable devices may need to discover their manager. The
relationship between manager and managed system is different than
is the case in most service discovery applications since the
manageable device is in many respects a service with respect to
the manager, but there is usually only one manager and many
manageable systems.
3.4.3.2 Key Points
Hattig [Page 22]
Internet Draft draft-ietf-zeroconf-reqts-02.txt Jan 2000
The management system (manager) needs to be able to discover
devices which support appropriate management services (management
agents). Currently this discovery is done in many networks by
having the manager scan all addresses in order to determine the
location and existence of all agents. This does not scale well to
larger address spaces.
Managers need to discover agents in a timely way. That is, when
an agent is activated, a manager needs to be able to discover it
within a short number of seconds.
Managers often need to discover a set of agents which have a
certain configuration. For instance, only those agents running on
a certain hardware platform, with a certain software version.
This allows the manager to determine the population of agents
which need an upgrade immediately. This is not to say that the
service discovery mechanism should replace the management protocol
(whereby the manager can interrogate the agent and obtain or set
specific management information). The facility to find only
specific agents allows the manager to discriminate among agents on
the network so that it can interrogate only that subset that are
relevent. This is important for scaling management software to
larger networks where there may be many agents. This is even
important on smaller networks where a specialized manager is only
able to manager a very specific subset of all devices.
3.4.3.3 Protocol Requirements
The service discovery mechanisms for managers to find agents (and
thereby manageable devices) require the following:
- Managers have to be able to find all agents they can manage.
- Managers have to have the ability to discover agents shortly
after they are activated.
- Managers have to be able to discover only the subset of agents
that are relevant. This means that managers have to be able to
discover agents on the basis of their hardware, software or
there device specification or status. To some extent the
service discovery protocol has to return information about the
agent to the manager, but this enhances the manager-agent
relationship. It does not replace the management protocol
which can do specific management operations (including very
specific structured queries of an agent by a manager).
3.4.4 Discover Service Discovery Infrastructure
3.4.4.1 Overview
Hattig [Page 23]
Internet Draft draft-ietf-zeroconf-reqts-02.txt Jan 2000
Service discovery protocols have two modes: The first is used in
a zeroconf environment. The protocol in this case may not scale
very well in a larger environment. The second mode is to be used
in a configured network. In this case, the service discovery
protocol must scale well. Clients discovering services and
servers offering services have to be able to discover 'service
discovery infrastructure' when it is present and transition to its
use. Further, configuration must be able to be supplied to
clients and servers so that they will use the service discovery
infrastructure scalably and appropriately.
3.4.4.2 Key Points
Service discovery infrastructure has to be able to be discovered
quickly, and by all clients and servers which are using a service
discovery protocol. This allows for a transition from an ad hoc
(multicast or broadcast based protocol) to one which is suitable
for larger networks.
This service discovery infrastructure provides a concentration of
service discovery information so that point to point messages can
be exchanged instead of all service discovery messages having to
be either multicasted (either solicitations or advertisements).
Clients and servers using a service discovery protocol in a
zeroconf environment have to be able to obtain configuration.
This configuration will enable the clients and servers to use
specific portions of the service discovery infrastructure, or to
use it in a particular way. This allows, for instance, services to
be advertised according to a particular policy, as belonging to a
particular department, in a particular location or network, etc.
Similarly, clients obtaining configuration will only discover
services which they are directed to, such as services in their
department, hotel room, etc.
3.4.4.3 Protocol Requirements
Requirements arising from discovery of service discovery
infrastructure include:
- Service discovery infrastructure provides a transition from
zeroconf service discovery protocol use to scalable and
configured service discovery protocol use.
- Service discovery infrastructure has to be discoverable by
clients and servers which use a service discovery protocol
automatically, and reasonably quickly. The clients and servers
have to use this infrastructure if it becomes available to
ensure scalable behavior.
Hattig [Page 24]
Internet Draft draft-ietf-zeroconf-reqts-02.txt Jan 2000
- Configuration of clients and servers using a service discovery
protocol has to be able to be done dynamicly. This way clients
and servers will obtain the necessary configuration to operate
effectively in larger networks according to the service
deployment policy employed in the network the system is present
in.
3.5 Additional Scenarios
[EDITOR'S NOTE: Please post additional scenarios for discussion to
Zeroconf@merit.edu. Eventually this section will be removed.]
4 Security Requirements
The principal goal of security requirements for ZeroConf
networking is to not make IP networking less secure than it is
without the use of ZeroConf protocols. This is challenging since
ZeroConf provides the ability for any host to obtain host
configuration, to discover and to use network resources. In the
case where ZeroConf access media is physically accessible (e.g.
wireless, powerline) or routed to additional network segments,
there is no longer any physical security.
The following sections are security considerations for the four
areas which this document addresses.
4.1 ZeroConf Security Threat Analysis
The threats fall into three broad categories:
Hoarding: Hosts claim all available resources, whether they plan
to use them or not. This is a form of denial of service attack.
Masquerading: Hosts can respond to requests that they should not
so they can masquerade as another host.
Antagonistic Server: A server could offer support for a critical
service but intentionally misconfigure hosts on the network.
4.1.1 IP Host Configuration
Potential threats include:
- A host could hoard IP addresses, denying others access to the
network.
- A host could pose as an antagonistic DHCP server and
misconfigure other hosts on the network.
4.1.2 Domain name to IP address resolution
Hattig [Page 25]
Internet Draft draft-ietf-zeroconf-reqts-02.txt Jan 2000
Potential threats include:
- A host could masquerade, responding to names requests
illegitimately.
- A host could hoard names, responding to all 'claim' requests.
- A host could pose as an antagonistic DNS server and fail to
resolve names correctly, or intentionally resolve them
incorrectly.
4.1.3 Multicast Address Allocation
Potential threats include:
- A host could hoard multicast addresses, denying others the
ability to obtain them.
4.1.4 Service Discovery
Potential threats include:
- Servers could masquerade by responding to service discovery
requests which they shouldn't respond to.
- A host could pose as an antagonistic service discovery
'infrastructure element.' Some service discovery protocols
offer a 'registry', 'directory', 'proxy' or other
infrastructure element for scalability.
4.2 Security Requirements
Protocols designed for host configuration, name resolution,
service discovery and multicast address allocation include
security mechanisms. These protocols have been designed for use in
configured networks. The same security mechanisms appropriate in a
configured network is not useful in a ZeroConf network.
ZeroConf requirements will not specify that all security threats
be addressed by ZeroConf protocols since it would be inappropriate
to do so.
Security always requires configuration. For that reason, no
secure operation will be possible on a network which has
absolutely no configuration.
That is not the same as saying that ZeroConf requirements are
silent with respect to security. When configuration is added to a
host using ZeroConf protocols, the host transitions to another
mode of operation. In this case, the host which is appropriately
configured may be able to counter threats posed to systems using
ZeroConf protocols.
The ZeroConf requirements specify the transition from insecure to
secure operation. A host fulfilling ZeroConf requirements will be
capable of secure operation in each protocol area, if it is
Hattig [Page 26]
Internet Draft draft-ietf-zeroconf-reqts-02.txt Jan 2000
supplied with appropriate security configuration (such as
cryptographic keys.)
4.2.1 IP Host Configuration
Hosts MUST be able to be configured to use DHCP authentication.
Option 1:
No provision is made for securing IP Host Configuration using
the ZeroConf protocol for IP Host Configuration.
Option 2:
Hosts MUST be able to be configured to use a ZeroConf protocol for
host configuration securely. For example, a claim and defend
protocol used for host configuration would have to include
security data with all messages. A host in the ZeroConf network
could verify that another host's claim was legitimate or not.
4.2.2 Domain name to IP address resolution
Hosts MUST be able to be configured to use DNS Security.
Option 1:
No provision is made for securing the ZeroConf Domain Name to IP
address resolution protocol.
Option 2:
Hosts MUST be able to be configured to use a ZeroConf protocol for
Domain name to IP address resolution securely. For example,
a 'reply' from the resolution protocol could be accompanied by
a 'signature' which could be verified before being accepted.
The security configuration would have to provide the server
portion of the protocol with the data needed to produce a
'signature' which could only be produced if in possession of the
configuration data.
4.2.3 Multicast Address Allocation
Hosts MUST be able to be configured to use MADCAP security.
Option 1:
No provision is made for securing the ZeroConf protocol for
multicast address allocation.
Option 2:
Hattig [Page 27]
Internet Draft draft-ietf-zeroconf-reqts-02.txt Jan 2000
Hosts MUST be able to be configured to use a ZeroConf protocol for
multicast address allocation securely. For example, a claim and
defend protocol used for multicast address allocation would have
to include security data with all messages. A host in the
ZeroConf network could verify that another host's claim was
legitimate or not.
4.2.4 Service Discovery
Both clients and servers MUST be able to be configured to use
security mechanisms offered by the Service Discovery Protocol.
These mechanisms allow a client to determine if both the service
it discovers and the service discovery protocol infrastructure it
uses to discover services are 'legitimate.'
The service discovery protocol MUST provide mechanisms so that a
server can use security configuration to advertise service
information in a way that clients can verify.
The service discovery protocol MUST provide mechanisms so that a
client can use security configuration to verify service
information it obtains. The client is essentially verifying that
the server had possession of certain secrets. The client trusts
that only 'legitimate' servers would possess these secrets.
5 Additional Considerations
5.1 IANA Considerations
There are no known IANA considerations arising from this document.
5.2 Internationalization Considerations
Zeroconf protocols may exchange human readable strings. Human
readable strings may need to be internationalized.
5.3 Security Considerations
Zeroconf security considerations are in Section 5 of this
document.
6 Full Copyright Statement
Copyright (C) The Internet Society (1997). 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,
Hattig [Page 28]
Internet Draft draft-ietf-zeroconf-reqts-02.txt Jan 2000
copied, published 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 English.
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 "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET
ENGINEERING TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF
THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED
WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR
PURPOSE."
7 Acknowledgements
Thanks to Peter Ford for hosting the first BOF that was the
catalyst to forming the Zeroconf Working Group.
Thanks to Erik Guttman and Stuart Cheshire for forming and
chairing the Zeroconf Working Group which is responsible for this
document.
Thanks to Erik Guttman for providing much of the text relating to
service discovery and the security requirements.
Additional recognition goes the following people for their
influential contributions to this document and its predecessors:
Brent Miller, Thomas Narten, Marcia Peters, Bill Woodcock, Bob
Quinn, John Tavs, Matt Squire, Daniel Senie, Cuneyt Akinlar, Karl
Auerbach, Kanchei Loa, Dongyan Wang, James Kempf, Yaron Goland,
Bernard Aboba, and David Thaler.
Editor:
Myron Hattig
Intel Corporation
2111 NE 25th Ave. JF3 206
Hillsboro, OR 97124
myron.hattig@intel.com
Hattig [Page 29]
Internet Draft draft-ietf-zeroconf-reqts-02.txt Jan 2000
8 References
[STD 3] R. Braden Requirements for Internet Hosts --
Communication Layers RFC 1122, STD 3, October 1989
[STD 4] R. Braden, Requirements for Internet Hosts --
Application and Support RFC 1123, STD 4 October 1989
[RFC 1001] PROTOCOL STANDARD FOR A NetBIOS SERVICE ON A TCP/UDP
TRANSPORT: CONCEPTS AND METHODS, RFC 1001 March, 1987
[RFC 1002] PROTOCOL STANDARD FOR A NetBIOS SERVICE ON A TCP/UDP
TRANSPORT: DETAILED SPECIFICATIONS, RFC 1002, March
1987
[RFC 1034] P. Mockapetris, Domain Names - Concepts and
Facilities, RFC 1034, November 1987
[RFC 1458] R. Braudes, Requirements for Multicast Protocols, RFC
1458, May 1993
[RFC 1918] D. Karrenberg, et al, Address Allocation for Private
Internets, RFC 1918, Feb 1996
[RFC 2026] S. Bradner, The Internet Standards Process --
Revision 3, RFC 2026 Oct 1996
[RFC 2119] S. Bradner. Key words for use in RFCs to Indicate
Requirement Levels. RFC 2119, March 1997.
[RFC 2131] R. Droms. Dynamic Host Configuration Protocol. RFC
2131, March 1997.
[RFC 2132] S. Alexander, R. Droms DHCP Options and BOOTP Vendor
Extension RFC 2132, March 1997.
[RFC 2316] S. Bellovin, Report of the IAB Security Architecture
Workshop, RFC 2316, April 1998
[RFC 2365] D. Meyer Administratively Scoped Multicast Address
RFC 2365,July 1998.
[RFC 2401] S. Kent, Security Architecture for the Internet
Protocol, RFC 2401, Nov 1998
[RFC 2411] R. Thayer, IP Security Document Roadmap, RFC 2411,
Nov 1998
Hattig [Page 30]
Internet Draft draft-ietf-zeroconf-reqts-02.txt Jan 2000
[RFC 2461] T. Narten, E. Nordmark, W. Simpson Neighbor
Discovery for IP Version 6 (IPv6) RFC 2461, December
1998.
[RFC 2462] S. Thomson, T. Narten IPv6 Address Autoconfiguration
RFC 2462, December 1998.
[RFC 2504] E. Guttman, Users' Security Handbook, RFC 2504, Feb.
1999
[RFC 2608] E. Guttman, C. Perkins, J. Veizades, and M. Day.
Service Location Protocol version 2. RFC 2608, June
1999.
[RFC 2609] E. Guttman, C. Perkins, J. Kempf Service Templates
and service: Schemes, RFC 2609, June 1999.
[RFC 2730] iS. Hanna, B. Patel, M. Shah, Multicast Address
Dynamic Client Allocation Protocol (MADCAP) draft-
ietf-malloc-madcap-05.txt Dec 1999.
[AutoMcast] D. Thaler, B. Adoba, Multicast Address Allocation in
Auto-Configured Networks, draft-thaler-zeroconf-
multicast-00.txt, Oct 1999. A work in progress
[AutoNet] R. Troll Automatically Choosing an IP Address in an
Ad-Hoc IPv4 Network draft-ietf-dhc-ipv4-autoconfig-
04.txt April, 1999. A work in progress.
[MCAST DNS] B. Woodcock, B. Manning Multicast Discovery of DNS
Services draft-manning-multicast-dns-01.txt
December, 1998. A work in progress.
[MiniDHCP] Bernard Aboba, Auto-Addressing in Multi-segment
Networks, draft-aboba-zeroconf-multi-00.txt, Oct
1999. A work in progress.
[SSDP] Y. Goland et al, Simple Service Discovery Protocol,
draft-cai-ssdp-v1-02.txt, June 1999, A work in
progress.
[IPv6 WG] IP Next Generation WG,
www.ietf.org/html.charters/ipngwg-charter.html.
[DHC WG] Dynamic Host Configuration WG,
www.ietf.org/html.charters/dhc-charter.html.
[NAT WG] Network Address Translation WG,
www.ietf.org/html.charters/nat-charter.html.
Hattig [Page 31]
Internet Draft draft-ietf-zeroconf-reqts-02.txt Jan 2000
[DNS WG] DNS Update WG, www.ietf.org/html.charters/dnsind-
charter.html
[MALLOC WG] Multicast Allocation WG Charter,
www.ietf.org/html.charters/malloc-charter.html.
Hattig [Page 32]