📄 rfc827.txt
字号:
This procedure is necessary to ensure that networks which can no longer be reached, but which are never explicitly declared unreachable, are timed out and removed from the list of reachable networks. It may often be the case that where G and G' are exterior neighbors on network N, G knows of many more gateway neighbors on network N, and knows for which networks those other neighbors are the appropriate first hop. Since G' may not know about all these other neighbors, it is convenient and often more efficient for it to be able to obtain this information from G. Therefore, the EGP NR message also contains fields which allow G to specify the following information: a) A list of all neighbors (both interior and exterior) of G (on network N) which G has reliably determined to be reachable. Gateways should be included in this list only if G is actively running its neighbor reachability protocol with them. - 17 - RFC 827 Bolt Beranek and Newman Inc. Eric C. Rosen b) For each of those neighbors, the list of networks for which that neighbor is an appropriate first hop (relative to network N). c) For each such <neighbor, network> pair, the "distance" from that neighbor to that network. Thus the NR message provides a means of allowing a gateway to "discover" new neighbors by seeing whether a neighbor that it already knows of has any additional neighbors on the same network. This information also makes possible the implementation of the INDIRECT NEIGHBOR strategy defined below. A more precise description of the NR message is the following. The data portion of the message will consist largely of blocks of data. Each block will be headed by a gateway address, which will be the address either of the gateway sending the message or of one of that gateway's neighbors. Each gateway address will be followed by a list of the networks for which that gateway is an appropriate first hop, and the distance from that gateway to each network. Preceding the list of data blocks is: a) The address of the network which this message is about. - 18 - RFC 827 Bolt Beranek and Newman Inc. Eric C. Rosen If G and G' are neighbors on network N, then in the NR message going from G to G', this is the address of network N. For convenience, four bytes have been allocated for this address -- the trailing one, two, or three bytes should be zero. b) The count (one byte) of the number of interior neighbors of G for which this message contains data blocks. By convention, this count will include the data block for G itself, which should be the first one to appear. c) The count (one byte) of the number of exterior neighbors of G for which this message contains data blocks. Then follow the data blocks themselves, first the block for G itself, then the blocks for all the interior neighbors of G (if any), then the blocks for the exterior neighbors. Since all gateways mentioned are on the same network, whose address has already been given, the gateway addresses are given with the network address part (one, two, or three bytes) omitted, to save space. Each block includes a one-byte count of the number of networks for which that gateway is the appropriate first hop. In the list of networks, each network address is either one, two, or three bytes, depending on whether it is a class A, class B, or - 19 - RFC 827 Bolt Beranek and Newman Inc. Eric C. Rosen class C network. No trailing bytes are used. It may sometimes be necessary to fragment the NR message. The NR message contains a byte indicating the number of this fragment (fragments will be numbered from zero), and a byte containing the number of the last fragment (NOT the number of fragments). If fragmentation is not used, these bytes must both be zero. EACH FRAGMENT MUST BE A FULLY SELF-CONTAINED NR MESSAGE. That is, each fragment will begin with a count of interior and exterior neighbors, and will have some integral number of gateway data blocks. The number of data blocks in each fragment must correspond to the neighbor counts at the beginning of that fragment. However, only the first fragment should begin with a data block describing the sending gateway. This scheme enables each fragment to be processed independently, and requires no complex reassembly mechanisms. It also enables processing of a message all of whose fragments have not been received. If, after some amount of time and some number of retransmissions of a poll, not all fragments have been received, the fragments which are present shall be processed as if they constituted the complete NR message. (This means that networks mentioned only in the missing fragment will retain the "distance" values they had in the previous NR message from that gateway. However, if no new value for a particular network is - 20 - RFC 827 Bolt Beranek and Newman Inc. Eric C. Rosen received in the next NR message from that gateway, the network will be declared unreachable.) - 21 - RFC 827 Bolt Beranek and Newman Inc. Eric C. Rosen 5 POLLING FOR NR MESSAGES No gateway is required to send NR messages to any other gateway, except as a response to an NR Poll from a direct neighbor. However, a gateway is required to respond to an NR Poll from a direct neighbor within several seconds (subject to the qualification two paragraphs hence), even if the gateway believes that neighbor to be down. The EGP NR Poll message is defined for this purpose. No gateway may poll another for an NR message more often than once per minute. A gateway receiving more than one poll per minute may simply ignore the excess polls, or may return an error message. The Hello and I Heard You messages which gateway G sends to gateway G' indicate the minimum interval which G will accept as the polling interval from G'. That is, G' will not guarantee to respond to polls from G that arrive less than that interval apart. Polls must only be sent to direct neighbors which are declared reachable by the neighbor reachability protocol. An NR Poll message contains an identification number chosen by the polling gateway. The polled gateway will return this number in the NR message it sends in response to the poll, to enable the polling gateway to match up received NR messages with - 22 - RFC 827 Bolt Beranek and Newman Inc. Eric C. Rosen polls. It will be the responsibility of the polling gateway to choose an identification number which is sufficiently "unique" to allow detection of out-of-date NR messages which may still be floating around the network. Since polls are relatively infrequent, this is not expected to be much of a problem. However, to aid in choosing an identification number, the Hello and I Heard You messages carry the identification number of the last NR poll received from the neighbor to which they are being sent. In general, a poll should be retransmitted some number of times (with a reasonable interval between retransmissions) until an NR message is received. IF NO NR MESSAGE IS RECEIVED AFTER THE MAXIMUM NUMBER OF RETRANSMISSIONS, THE POLLING GATEWAY SHOULD ASSUME THAT THE POLLED GATEWAY IS NOT AN APPROPRIATE FIRST HOP FOR ANY NETWORK WHATSOEVER. The optimum parameters for the polling/retransmission algorithm will be dependent on the characteristics of the two neighbors and of the network connecting them. If only some fragments of an NR message are received after the maximum number of retransmissions, the fragments that are present shall be treated as constituting the whole of the NR message. - 23 - RFC 827 Bolt Beranek and Newman Inc. Eric C. Rosen Received NR messages whose identification numbers do not match the identification number of the most recently sent poll shall be ignored. There is no provision for multiple outstanding polls to the same neighbor. - 24 - RFC 827 Bolt Beranek and Newman Inc. Eric C. Rosen 6 SENDING NR MESSAGES In general, NR messages are to be sent only in response to a poll. However, between two successive polls from an exterior neighbor, a gateway may send one and only one unsolicited NR message to that neighbor. This gives it limited ability to quickly announce network reachability changes that may have occurred in the interval since the last poll. Excess unsolicited NR messages may be ignored, or an error message may be returned. An NR message should be sent within several seconds after receipt of a poll. Failure to respond in a timely manner to an NR poll may result in the polling gateway's deciding that the polled gateway is not an appropriate first hop to any network. NR messages sent in response to polls carry the identification number of the poll message in their "identification number" fields. Unsolicited NR messages carry the identification number of the last poll received, and have the "unsolicited" bit set. (Note that this allows for only a single unsolicited NR message per polling period.) To facilitate the sending of unsolicited NR messages, the NR poll message has a byte indicating the polling interval in minutes. - 25 - RFC 827 Bolt Beranek and Newman Inc. Eric C. Rosen Polls from non-neighbors, from neighbors which are not declared reachable, or with bad IP source network fields, should be responded to with an EGP error message with the appropriate "reason" field. If G sends an NR poll to G' with IP source network N, and G' is not a neighbor of G on its interface to network N (or G' does not have an interface to network N), then the source network field is considered "bad". Duplicated polls (successive polls with the same
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -