RFC 2603
ILMI-Based Server Discovery for NHRP
RFC 2603: ILMI-Based Server Discovery for NHRP β¨
Network Working Group πΈ Request for Comments: 2603 π Category: Standards Track π Date: June 1999 π¦ Author: Mike Davison, Cisco Systems π Obsoletes / Updates: this doc doesn't list either one π
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.
Copyright Notice π
Copyright (C) The Internet Society (1999). All Rights Reserved.
Abstract π
okay so this memo explains how ILMI-based Server Discovery gets used to find NHRP servers π§ It's the method where ATM-attached hosts and routers figure out the ATM addresses of servers all on their own, no manual setup needed. literally the whole point π
1. Introduction π
okay so right now setting up a host or router for NHRP [1] is a whole mess π You have to hand-configure at least one ATM address on every single host or router in the network. And diskless hosts? Can't even do NHRP, because they have no local config to lean on π ILMI-based Server Discovery (we'll call it "server discovery") fixes all of that π«Ά
This memo gives a quick tour of the Integrated Local Management Interface (ILMI) and the Service Registry MIB, both from the ATM Forum β¨ If you want the full deep dive, go read [2]. But what's in here is enough to get how NHRP server discovery works π¦
2. Integrated Local Management Interface π
The Integrated Local Management Interface (ILMI) [2] is how ATM-attached devices like hosts, routers, and ATM switches pass management info back and forth π It's built on Simple Network Management Protocol (SNMP) Version 1 and supports get, get-next, set and trap operations π₯
The ILMI spec calls the switch side of the ATM link the 'network side', and the host/router side the 'user side'. The Service Registry MIB (more on it in Section 3) lives on the network side, and the user side is what queries it π
3. ILMI 4.0 Service Registry MIB π§
Server discovery runs on the Service Registry MIB, which the ATM Forum defined in ILMI Specification Version 4.0 [2] β¨ To keep the existing IP over ATM setup working, ATM switches MUST support the Service Registry MIB π
Each row in the service registry table [2] looks like this:
AtmfSrvcRegEntry ::= SEQUENCE {
atmfSrvcRegPort INTEGER,
atmfSrvcRegServiceID OBJECT IDENTIFIER,
atmfSrvcRegATMAddress AtmAddress,
atmfSrvcRegAddressIndex INTEGER,
atmfSrvcRegParm1 OCTET STRING
}
Here's what each field does π«Ά
atmfSrvcRegPort: the ATM port number this entry has info for. A value of zero MAY be used to mean whichever ATM interface the management request came in on πΈatmfSrvcRegServiceID: the service identifier that uniquely names the type of service at the address in the table (see Section 3.2 for the NHRP OID) πatmfSrvcRegATMAddress: the full address of the service. The ATM client uses this to set up a connection with the service π¦atmfSrvcRegAddressIndex: an arbitrary integer that tells apart multiple rows with different ATM addresses for the same service on the same port πatmfSrvcRegParm1: an octet string whose size and meaning depend on the value ofatmfSrvcRegServiceIDπ§
The service registry table is indexed by atmfSrvcRegPort, atmfSrvcRegServiceID and atmfSrvcRegAddressIndex π
3.1 Service Parameter String π
The service registry table has a generic parameter string, so protocol-specific parameters can be specified β¨ To stay consistent with [1], the parameter string for NHRP SHALL be:
ar$pro.type 16 bits Protocol type
ar$pro.snap 40 bits Optional extension to protocol type
ar$plen 8 bits Length of protocol address
ar$addr plen octets Network address
ar$mask plen octets Network mask
Where:
ar$pro.type - See [1]. (IPv4 is 0x0800, IPv6 is 0x86DD)
ar$pro.snap - See [1]. (IPv4 and IPv6 are 0)
ar$plen - Length of the protocol address.
(IPv4 is 4, IPv6 is 16)
ar$addr - Network address represented in network byte
order
ar$mask - Network mask represented in network byte order
3.2 Service Object Identifier π¦
This OID is assigned in the ATM Forum Service Registry MIB, and it names ATMARP within the context of server discovery π
atmfSrvcRegNHRP OBJECT IDENTIFIER ::= { 1.3.6.1.4.1.353.1.5.5 }
It doesn't name any managed objects. It's just used to find the right rows in the service registry table π
4. Next Hop Client Behavior π
A Next Hop Client (NHC) reads the service registry table over ILMI with the SNMP GetNext operator πΈ It "sweeps" (SNMP lingo for a linear search) starting from {Port = 0, ServiceID = <see Section 3.2>, Index = 0}, keeping the port number and serviceID fixed the whole time. (Port number 0 is what ILMI uses to mean "this port" π§)
An NHC with no local configuration, like a diskless workstation, MUST use the row with the lowest index value when several Next Hop Servers (NHS) are listed, possibly for multiple networks π
An NHC that has local IP configuration MUST use a row with the matching IP address π₯ For example, say an IP router has 3 logical interfaces on one physical interface, with IP addresses 1.0.0.1/8, 128.10.0.1/16 and 171.69.150.226/24. The router sweeps the service registry table looking for rows whose atmfSrvcRegParm1 values match these π«Ά
Net number/mask atmfSrvcRegParm1
---------------- --------------------------------------------------
1.0.0.0/8 08 00 00 00 00 00 00 04 01 00 00 00 ff 00 00 00
128.10.0.0/16 08 00 00 00 00 00 00 04 80 0a 00 00 ff ff 00 00
171.69.150.0/24 08 00 00 00 00 00 00 04 ab 45 96 00 ff ff ff 00
Once the right atmfSrvcRegParm1 values turn up, the router MAY set up an SVC to the chosen NHS and run the protocol operations it needs π
Redundant NHS are supported through multiple rows in the service registry table β¨ The NHS list is ordered, with the primary NHS holding the lowest index value. The NHC MUST try the primary NHS before it tries a secondary NHS π Administrators MUST make sure the listed NHS are synchronized π
5. NHRP Server (NHS) Behavior π
A Next Hop Server (NHS) SHALL be configured locally π§ The NHS MAY pull the NHRP service registry data to validate the results. If it grabs an incorrect row, the error MAY be flagged in a way that only matters locally π
6. Relationship with PNNI Augmented Routing π¦
The ATM Forum made an augmented version of PNNI, called "PNNI Augmented Routing" (PAR) [3] β¨ PAR can distribute data such as NHS addresses. The ATM Forum is also working on a proxy mechanism for PAR (Proxy PAR), which would let a UNI-attached host or router get PAR data without running a full PAR implementation π
These mechanisms are a promising way to manage the service registry tables kept on each switch in an ATM network πΈ They wouldn't need any changes to the mechanism this memo defines. Hosts and routers can keep using ILMI-based or Proxy PAR-based server discovery, and network admins can manage the service registry data through local config or via PAR and Proxy PAR π
7. Security Considerations π₯
Okay, this part is serious bestie π The server discovery mechanism is built on the ILMI management framework and whatever security that framework has. Access to user-side or network-side info is controlled by how the MIB is designed, NOT by protocol security mechanisms π
The service registry MIB, the table with the server discovery info, is defined in [2] with read-only access. So any user-side device MAY query the service registry, but it may not change it via ILMI. The service registry table MUST be modified through local configuration on the ATM switch instead π«Ά
References π
[1] Luciani, J., et al., "NBMA Next Hop Resolution Protocol", RFC
2332, April 1998.
[2] ATM Forum, "Integrated Local Management Interface (ILMI)
Specification Version 4.0," af-ilmi-0065.000, September 1996.
[3] ATM Forum, "PNNI Augmented Routing (PAR) Version 1.0," af-ra-
0104, January 1999.
Author's Address π
Mike Davison
Cisco Systems
170 West Tasman Drive
San Jose, California 95134
Phone: (408) 526-4000
EMail: mike.davison@cisco.com
Full Copyright Statement π
Copyright (C) The Internet Society (1999). 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 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.
Acknowledgement π§
Funding for the RFC Editor function is currently provided by the Internet Society. β¨
π¦ where this page comes from
- ietf: rfc2603 1999-06
- π girlified by claude-haiku-5-5 on : a language model's rewrite of the original, under its terms