⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rfc904.txt

📁 RFC 相关的技术文档
💻 TXT
📖 第 1 页 / 共 5 页
字号:
rate max(P1, S1) or Poll commands near the rate max(P2, S2), theneighbor may observe their succeeding arrivals to violate the pollingrestrictions due to bunching in the net.  For this reason the gatewayshould send at rates somewhat below these.  Just how much below theserates is appropriate depends on many factors beyond the scope of thisspecification.4.1.3.  Hello Polling Mode     The neighbor-reachability algorithm can be used in either theactive or passive mode.  In the active mode Hello commands are sentperiodically along with Poll commands, with reachability determined bythe corresponding I-H-U and Update responses.  In the passive mode Hellocommands are not sent and I-H-U responses are not expected.Reachability is then determined from the Status field of received Helloor Poll commands or Update responses.     The M state variable specifies whether the gateway operates in theactive or passive mode.  At least one of the two neighbors sharing theExterior Gateway Protocol Formal Specification                   Page 12D.L. Millsprotocol must operate in the active mode;  however, theneighbor-reachability protocol is designed to work even if bothneighbors operate in the active mode.  The value of M is determined fromthe Status field of a Request command or Confirm response.  The sendersets this field according to whether the implementation supports theactive mode, passive mode or both:                Status  Sender capabilities                --------------------------------                0       either active or passive                1       active only                2       passive only     The receiver inspects this field and sets the value of M accordingto its own capabilities as follows:                Status  Receiver capabilites                field   0       1       2                -------------------------------                0       *       active  passive                 1       passive active  passive                2       active  active  **     In the case of "*" the mode is determined by comparing theautonomous system numbers of the neigbors.  The neighbor with thesmallest such number assumes active mode, while the other neighborassumes passive mode.  In the case of "**" the neighbor may either senda Refuse response or declare a Stop event, depending on state.4.1.4.  Timers     There are three timers defined in the state machine:  t1, used tocontrol retransmission of Request, Hello and Cease messages, t2, used tocontrol retransmission of Poll commands, and t3, which serves as anabort-timer mechanism should the protocol hang indefinately.  The timersare set to specified values upon entry to each state and count down tozero.     In the case of t1 and t2 state-dependent events are declared whenthe timer counts down to zero, after which the timer is reset to thespecified value and counts down again.  In the case of t3 a Stop eventis declared when the timer counts down to zero.  Implementors may choosenot to implement t3 or, if so, may choose to implement it only incertain states, with the effect that Request, Hello and/or Ceasecommands may be retransmitted indefinately.     The following table shows the initial values for each of the timersin each state.  A missing value indicates the timer is not used in thatstate.  Note that timer t3 is set to P4 upon receipt of aneighbor-reachability indication when in either the Down or Up states.Exterior Gateway Protocol Formal Specification                   Page 13D.L. Mills                Idle    Aqsn    Down    Up      Cease        Timer   0       1       2       3       4        ---------------------------------------------        t1              P3      T1              P3        t2                              T2              t3              P5      P5              P54.2.  Starting and Stopping the Protocol     The Start and Stop events are intrinsic to the system environmentof the gateway.  They can be declared as the result of the gatewayprocess being started and stopped by the operator, for example.  A Startevent has meaning only in some states;  however, a Stop event hasmeaning in all states.     In all except the Idle state the abort timer t3 is presumedrunning.  This timer is initialized at P5 seconds upon entry to anystate and at P4 seconds upon receipt of a neighbor-reachabilityindication in the Down and Up states.  If it expires a Stop event isdeclared.  A Stop event can also be declared by an intrinsic systemaction such as a resource problem or operator command.     If the abort timer is not implemented a manually-initiated Stopevent can be used to stop the protocol.  If this is done in the Down orUp states, the machine will transition to the Cease state and emit aCease command.  If the neighbor does not respond to this command themachine will stay in the Cease state indefinately;  however, a secondStop event can be used in this state to force a transition to the Idlestate.     A Cease command received in any state will cause the gateway toimmediately send the Cease-ack response and transition to the Idlestate.  This causes the protocol to be stopped and all system resourcescommitted to the gateway process to be released.  The interval betweenthe time the gateway enters the Idle state as the result of receiving aCease command and the time when it next sends a Request command toresume the protocol is not specified;  however, it is recommended thisinterval be at least P5 seconds.     It may happen that the Cease-ack response is lost in the network,causing the neighbor to retransmit the Cease response indefinately, atleast if it has not implemented the abort-timer option.  In order toreduce the likelihood of this happening, it is suggested that a gatewayin the Idle state be prepared to reply to a Cease command with aCease-ack response whenever possible.4.3.  Determining Neighbor Reachability     The purpose of the neighbor-reachability algorithm is to confirmthat the neighbor can safely be considered operational and capable ofExterior Gateway Protocol Formal Specification                   Page 14D.L. Millsproviding reliable net-reachability information.  An equally importantpurpose is to filter noisy reachability information before sending it onto the remainder of the Internet gateway system, thus avoidingunneccesary reachability changes.     As described above, a gateway operating in the active mode sendsperiodic Hello commands and listens for I-H-U responses in order todetermine neighbor-reachability indications.  A gateway operating in thepassive mode determines reachability indications by means of the Statusfield in received Hello commands.  Poll commands and Update responsescan be used in lieu of Hello commands and I-H-U responses respectively,since they contain the same Status-field information.     The neighbor-reachability algorithm runs continuously while thegateway is in the Down and Up states and operates as follows.  Define amoving window in time starting at the present and extending backwardsfor t seconds.  Then count the number n of neighbor-reachabilityindications which have occured in that window.  If n increases to j,then declare a Up event.  If n decreases to k, then declare a Downevent.  The number n is set to zero upon entering the Down state fromany state other than the Up state.     The window t in this algorithm is defined as T3 seconds, the valueof which is suggested as four times T1, which itself is determinedduring the Request/Confirm exchange.  For proper operation of thealgorithm only one neighbor-reachability indication is significant inany window of T1 seconds and additional ones are ignored.  Note that theonly way n can increase is as the result of a new neighbor-reachabilityindication and the only way it can decrease is as the result of an oldneighbor-reachability indication moving out of the window.     The behavior of the algorithm described above and using thesuggested fixed parameters j and k differs depending on whether thegateway is operating in the active or passive mode.  In the active mode(j = 3, k = 1 and T3/T1 = 4), once the neighbor has been declared downit will be forced down for at least two T1 intervals and, once it hasbeen declared up it will be forced up for at least two T1 intervals.  Itwill not change state unless at least three of the last fourdeterminations of reachability have indicated that change.     In the passive mode (j = 1, k = 4 and T3/T1 = 4), the neighbor willbe considered up from the first time the Status field of a Hello or Pollcommand or Update response indicates "Up state" until four successive T1intervals have passed without such indication.  This design, suggestedby similar designs used in the ARPANET, has proven effective in theexperimental implementations, but may need to be adjusted for otherconfigurations.     It is convenient for the active gateway to send Hello commands at arate of one every T1 seconds and substitute a Poll command for a HelloExterior Gateway Protocol Formal Specification                   Page 15D.L. Millscommand approximately once every T2 seconds, with theneighbor-reachability indication generated by the corresponding I-H-U orUpdate responses.  Its passive neighbor generates neighbor-reachabilityindications from the Status field of received Hello and Poll commandsand Update responses.     Implementors may find the following model useful in theunderstanding and implementation of this algorithm.  Consider an n-bitshift register that shifts one bit to the right each T1-second interval.If a neighbor-reachability indication was received during the preceedingT1-second interval a one bit is shifted into the register at the end ofthe interval;  otherwise, a zero bit is shifted.  A table of 2**nentries indexed by the contents of the register can be used to calculatethe number of one bits, which can then be used to declare theappropriate event to the state machine.  A value of n equal to four hasbeen found useful in the experimental implementations.4.4.  Determining Network Reachability     Network reachability information is encoded into Update messages inthe form of lists of nets and gateways.  The IP Source Address field ofthe Poll command is used to specify a network common to the autonomoussystems of each of the neighbors, which is usually, but not necessarily,the one common to the neighbors themselves.  The Update responseincludes a list of gateways on the common net.  Associated with eachgateway is a list of the networks reachable via that gateway togetherwith corresponding hop counts.     It is important to understand that, at the present state ofdevelopment as described in RFC-827 and RFC-888, the EGP architecturalmodel restricts the interpretation of "reachable" in this context.  Thisconsideration, as well as the implied topological restrictions, arebeyond the scope of discussion here.  The reader is referred to the RFCsfor further discussion.     Two types of gateway lists can be included in the Update response,the format of which is described in Appendix A.  Both lists include onlythose gateways directly connected to the net specified in the IP SourceNetwork field of the last-received Poll command.  The internal listincludes some or all of the gateways in the same autonomous system asthe sender, together with the nets which are reachable via thesegateways, with the sending gateway listed first.  A net is reachable inthis context if a path exists to that net including only gateways in thesystem.  The external list includes those gateways in other autonomoussystems known to the sender.  It is important to realize that the hopcounts do not represent a routing metric and are comparable betweendifferent gateways only if those gateways belong to the same autonomoussystem;  that is, are in the internal list.Exterior Gateway Protocol Formal Specification                   Page 16D.L. Mills     According to the current system architectural model, only gatewaysbelonging to a designated system, called the core system, may includethe external list in their Update responses.  All other gateways mayinclude only those gateways belonging to the same system and can claimreachability for a particular net only if that net is reachable in thesame system.     The interval between successive Poll commands T2 is determinedduring the Request/Confirm exchange.  However, the specification permitsat most one unsolicited Update indication between succeeding Pollcommands received from the neighbor.  It is the intent of the model herethat an Update indication is sent (a) upon entry to the Up state and (b)when a change in the reachability data base is detected, subject to thislimitation.     Occasionally it may happen that a Poll command or Update responseis lost in the network, with the effect that net-reachabilityinformation may not be available until after another T2 interval.  As animplementation option, the gateway sending a Poll command and notreceiving an Update response after T1 seconds may send another Poll.The gateway receiving this Poll may either (a) send an Update responseif it never received the original Poll for that interval, (b) send asecond Update response (which counts as the unsolicited Updateindication mentioned in the preceeding paragraph) or (c) send an Errorresponse or not respond at all in other cases.4.5.  Error Messages     Error messages can be used to report problems such as described inAppendix A in connection with the Error Response/Indication messageformat.  In general, an Error message is sent upon receipt of anothercommand or response with bad format, content or ordering, but never inresponse to another Error message.  Receipt of an Error message shouldbe considered advisory and not result in change of state, exceptpossibly to evoke a Stop event.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -