📄 rfc925.txt
字号:
RFC 925 October 1984Multi-LAN Address Resolution method could result in an out-of-date entry persisting in a cache for a very long time if ARP requests for that address mapping were received at just less than the time out period. When handling regular datagrams, the BOXes must decrement the IP datagram Time-To-Live field (TTL) and update the IP header check sum. If the TTL becomes zero the datagram is discarded (not forwarded). ARP, as currently defined, will take the most recent information as the best and most up-to-date. In a complicated multi-LAN environment where there are loops in the connectivity it is likely that one will get two (or more) responses to an ARP request for a host on some other LAN. It is probable that the first response will be from the BOX that is the most efficient path. The one change to the host implementation of ARP that is suggested here is to prevent later responses from replacing the mapping recorded from the first response. Potential Problems Bad Cache Entries If some wrong information get into a cache entry, it will stay there for time T3. The persistence of old information could prevent communication (for a time) if a host changed its IA:HA mapping. One way to replace bad or out-of-date entries in a cache would be to have the BOXes explicitly interpret a broadcast ARP reply to require an entry with either this IA or HA to be replaced with this new IA:HA mapping. One could have important servers send a broadcast ARP reply when they come up. Non-ARP Hosts It seems unrealistic to expect to use both ARP hosts and non-ARP hosts on the same LAN and expect them to communicate. If all the non-ARP hosts are on the same LAN the situation is considered with under the next heading (Non-Broadcast LANs). Hosts that do not implement ARP must use some other means of address mapping. Either they hold a complete table of all hosts, or they access some such table in a server via some protocol; or they expect to make all routing decisions based on analysis of address fields.Postel [Page 6]RFC 925 October 1984Multi-LAN Address Resolution Non-Broadcast LANs BOXes that are connected to LANs that do not have broadcast capability and/or LANs where the hosts do not respond to ARP may have a static or dynamic table of the IA:HA mappings for that LAN (or the addresses may be computed from one another). All the hosts on that LAN must be in the table. When a BOX must find the address mapping and would otherwise send an ARP request into a non-broadcast LAN (this can only happen when the sought host is not the non-broadcast LAN since all the hosts are in the table), it must instead send an ARP type request specifically to each of the other BOXes on that LAN. Size of Tables The worst case of the size of the tables in the BOXes is the number of hosts in the set of LANs for each table. That is, the table kept for each LAN interface may (in the worst case) grow to have an entry for each host in the entire set of LANs. However, these tables are really caches of the entries needed for current communication activity and the typical case will be far from the worst case. Most hosts will communicate mostly with other hosts on their own LAN and with a few hosts on other LANs. Most communication on LANs is between work station hosts and server hosts. It can be expected that there will be frequent communication involving the main server hosts and that these server hosts will be entered in the tables of most of the BOXes most of the time. Infinite Transmission Loops The possibility of infinite transmission loops through an interconnected set of LANs is prevented by keeping search lists in the BOXes and terminating the search when a request is received for an address already on the list. Transmission loops of regular datagrams can not persist because them the BOXes must decrement the TTL, and discard the datagram if the TTL is reduced to zero. For debugging purposes it would be useful for a BOX to report to the implementer any datagrams discarded for this reason.Postel [Page 7]RFC 925 October 1984Multi-LAN Address Resolution Broadcast Note that broadcast does not really have anything to do with either transparent subnets or explicit subnets. Since it was discussed in [1], it will be discussed here, too. Two of the three broadcast functions suggested in [1] work just the same and have the same effects, the third can be supported, too. It is also argued that the support for a broadcast interpretation of IAs is a bigger issue that the question of explicit subnets versus transparent subnets and it should be decided separately. It is also suggested that broadcast is not really what is desired, but rather multicast is the better function. It may make sense to understand how to do an Internet multicast before adopting a broadcast scheme. This IP Network If the IA of this network number and an all ones host number (e.g., 36.255.255.255) is used, an IP level broadcast to all hosts on this Network (all LANs) is intended. A BOX must forward this datagram. A BOX must examine the datagram for potential significance to the BOX itself. To prevent infinite transmission loops each BOX must keep a list of recent broadcasts. The entries in this list contain the source IA and the Identification field from the datagram header. If a broadcast is received and matches an entry on the list it is discarded and not forwarded. The entries on this list time out in time T2. This LAN Only If the IA of all ones (i.e., 255.255.255.255) is used an IP level broadcast to all hosts on this LAN only is intended. A BOX must not forward this datagram. A BOX must examine the datagram for potential significance to the BOX itself. Another LAN Only Since the LANs are not individually identified in the IA this can not be supported in the same way. Some have also argued that this is a silly capability to provide. One way to provide it is to establish a specific IA for eachPostel [Page 8]RFC 925 October 1984Multi-LAN Address Resolution LAN that means "broadcast on this LAN". For example, 36.255.255.128 means broadcast on LAN A, and 36.255.255.187 means broadcast on LAN B, etc. These addresses would be specially interpreted by the BOXes attached to the specific LAN where they had the special interpretation, other BOXes would treat these address as any other IAs. Where these addresses are specially interpreted they are converted to the broadcast on this LAN only address.DISCUSSION The claim for the extended ARP scheme is that the average host need not even know it is in a multi-LAN environment. If a host took the trouble to analyze its local cache of IA:AH address mappings it might discover that several of the IAs mapped to the same HA. And if it took timing measurements it might discover that some hosts responded with less delay that others. And further, it might be able to find a correlation between these discoveries. But few hosts would take the trouble. Address Structure In the explicit subnet scheme, some IA bits are devoted to identifying the subnet (i.e., the LAN). The address is broken up into network, subnet, and host fields. Generally, when fields are use the density of the assigned addresses in the address space goes down. That is, there is a less efficient use of the address space. Significant implementation problems may arise if more subnets than planned are installed and it becomes necessary to change the size of the subnet field. It seems totally impractical to use the explicit subnet scheme with a class C IA. In the extended ARP scheme the address is simply the network, and host fields. The extended ARP scheme may be used with any class of IA. Relocating Hosts In the explicit subnet scheme when a host is unplugged from one LAN and plugged into another its IA must change. In the extended ARP scheme it may keep the same IA.Postel [Page 9]RFC 925 October 1984Multi-LAN Address Resolution One view of the situation suggests that there are really two problems: 1. How does the host discover if the destination is in this LAN or some other LAN? This question assumes that a host should know the difference and should do something different in the two cases, and further that once the host knows the answer it also know how to send the data (e.g., directly to the host, or to the box). The claim here is that the hosts should not know the difference and should always do the same thing. 2. How do the BOXes that connect LANs know which BOXes are the routes to which LANs? This question assumes that the BOXes need some kind of topological knowledge, and exchange BOX-to-BOX protocol information about connectivity. The claim here is that the BOXes do not need topological knowledge and do not need to explicitly know about the existence of other BOXes. It has been suggested that there are two problems: first, how the hosts do routing; and second, how the BOXes do routing. A claim has been made that the competing strategies each have an approach to each problems and one could select a solution made up partly from one approach and partly from another. For example: use ARP within the LAN and have the BOX send ARP replies and act as a agent (as in the extended ARP scheme), but use a BOX-to-BOX protocol to get the "which hosts are where" information into the BOXes (as in the explicit subnet scheme). There are two places where code is involved: a large number of hosts, and a small number of BOXes. In considering the trade off between explicit subnet scheme and extended ARP scheme, the work done in the hosts should weigh a lot more than the work done in the BOXes. What do hosts do? Explicit Subnet Scheme The host must be able to decide if this IA is on this LAN orPostel [Page 10]
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -