📄 rfc904.txt
字号:
Poll commands recieved P3 30 sec interval between Request or Cease command retransmissions P4 1 hr interval during which state variables are maintained in the absence of commands or responses in the Down and Up states. P5 2 min interval during which state variables are maintained in the absence of responses in the Acquisition and Cease states Parameters P4 and P5 are used only if the abort-timer option isimplemented. Parameter P4 establishes how long the machine will remainin the Down and Up states in the absence of commands or responses andwould ordinarily be set to sustain state information while the neighboris dumped and restarted, for example. Parameter P5 establishes how longthe machine will remain in the Acquisition or Cease states in theabsence of responses and would ordinarily be set in the same order asthe expected value of T3 variables. Following is a list of other parameters of interest. Name Active Passive Description ----------------------------------------------- j 3 1 neighbor-up threshold k 1 4 neighbor-down threshold The j and k parameters establish the "noise immunity" of theneighbor-reachability protocol described later. The values in theActive column are suggested if the gateway elects to do hello polling,while the values in the Passive column are suggested otherwise.3.3. Events Following is a list of events that can cause state transitions inthe model.Exterior Gateway Protocol Formal Specification Page 7D.L. MillsName Event----------------------------------------------------------------------Up At least j neighbor-reachability indications have been received within the last T3 seconds.Down At most k neighbor-reachabilitiy indications have been received within the last T3 seconds.Request Request command has been received.Confirm Confirm command has been received.Refuse Refuse response has been received.Cease Cease command has been received.Cease-ack Cease-ack response has been received.Hello Hello command has been received.I-H-U I-H-U response has been received.Poll Poll command has been received.Update Update response has been received.Start Start event has been recognized due to system or operator intervention.Stop/t3 Stop event has been recognized due to (a) system or operator intervention or (b) expiration of the abort timer t3.t1 Timer t1 has counted down to zero.t2 Timer t2 has counted down to zero. There is one special event, called a neighbor-reachabilityindication, which occurs when:1. The gateway is operating in the active mode (hello polling enabled) and either a Confirm, I-H-U or Update response is received.2. The gateway is operating in the passive mode (hello polling disabled) and either a Hello or Poll command is received with the "Up state" code in the Status field.3.4. State Transition Table The following table summarizes the state transitions that can occurin response to the events listed above. Transitions are shown in theform n/a, where n is the next state and a represents the action.Exterior Gateway Protocol Formal Specification Page 8D.L. Mills 0 Idle 1 Aqsn 2 Down 3 Up 4 Cease +-----------+-----------+-----------+-----------+-----------+Up |0 |1 |3/Poll |3 |4 |Down |0 |1 |2 |2 |4 |Request |2/Confirm *|2/Confirm |2/Confirm |2/Confirm |4/Cease |Confirm |0/Cease **|2 |2 |3 |4 |Refuse |0/Cease **|0 |2 |3 |4 |Cease |0/Cease-ack|0/Cease-ack|0/Cease-ack|0/Cease-ack|0/Cease-ack|Cease-ack |0 |1 |2 |3 |0 |Hello |0/Cease **|1 |2/I-H-U |3/I-H-U |4 |I-H-U |0/Cease **|1 |2/Process |3/Process |4 |Poll |0/Cease **|1 |2 |3/Update |4 |Update |0/Cease **|1 |2 |3/Process |4 |Start |1/Request |1/Request |1/Request |1/Request |4 |Stop/t3 |0 |0 |4/Cease |4/Cease |0 |t1 |0 |1/Request |2/Hello |3/Hello |4/Cease |t2 |0 |1 |2 |3/Poll |4 | +-----------+-----------+-----------+-----------+-----------+Note *: The transition shown applies to the case where theneighbor-acquisition request is accepted. The transition "0/Refuse"applies to the case where the request is rejected.Note **: The Cease action shown is optional.3.5. State Transitions and Actions The following table describes in detail the transitions of thestate machine and the actions evoked. Next MessageEvent State Sent Actions------------------------------------------------------------------------Idle State (0)Request 2 Confirm Initialize state variables and Hello reset timer t1 to T1 seconds and reset timer t3 to P5 seconds. (or) 0 Refuse Return resources.Cease 0 Cease-ack Return resources.Start 1 Request Reset timer t1 to P3 seconds and reset timer t3 to P5 seconds.Acquisition State (1)Request 2 Confirm Initialize state variables and Hello reset timer t1 to T1 seconds and reset timer t3 to P5 seconds.Confirm 2 Hello Initialize state variables andExterior Gateway Protocol Formal Specification Page 9D.L. Mills reset timer t1 to T1 seconds and reset timer t3 to P5 seconds.Refuse 0 Stop timers and return resources.Cease 0 Cease-ack Stop timers and return resources.Start 1 Request Reset timer t1 to P3 seconds and reset timer t3 to P5 seconds.Stop/t3 0 Stop timers and return resources.t1 1 Request Reset timer t1 to P3 seconds.Down State (2)Note: Reset timer t3 to P4 seconds on receipt of a reachabilityindication.Up 3 Poll Reset timer t2 to T2 seconds.Request 2 Confirm Reinitialize state variables and Hello reset timer t1 to T1 seconds and reset timer t3 to P5 seconds.Cease 0 Cease-ack Stop timers and return resources.Hello 2 I-H-UI-H-U 2 Process neighbor-reachability info.Start 1 Request Reset timer t1 to P3 seconds and reset timer t3 to P5 seconds.Stop/t3 4 Cease Reset timer t1 to P3 seconds and reset timer t3 to P5 seconds.t1 2 Hello Reset timer t1 to T1 seconds.Up State (3)Note: Reset timer t3 to P4 seconds on receipt of a reachabilityindication.Down 2 Stop timer t2.Request 2 Confirm Renitialize state variables and Hello reset timer t1 to T1 seconds and reset timer t3 to P5 seconds.Cease 0 Cease-ack Stop timers and return resources.Hello 3 I-H-UI-H-U 3 Process neighbor-reachability info.Poll 3 UpdateUpdate 3 Process net-reachability info.Start 1 Request Reset timer t1 to P3 seconds and reset timer t3 to P5 seconds.Stop/t3 4 Cease Reset timer t1 to P3 seconds and reset timer t3 to P5 seconds.Exterior Gateway Protocol Formal Specification Page 10D.L. Millst1 3 Hello Reset timer t1 to T1 seconds.t2 3 Poll Reset timer t2 to T2 seconds.Cease State (4)Request 4 CeaseCease 0 Cease-ack Stop timers and return resources.Cease-ack 0 Stop timers and return resources.Stop/t3 0 Stop timers and return resources.t1 4 Cease Reset timer t1 to P3 seconds.4. Functional Description This section contains detailed descriptions of the variousprocedures and algorithms used to manage the protocol.4.1. Managing the State Variables The state variables which characterize the protocol are summarizedin Section 3.1. This section describes the detailed management of thesevariables, including sequence numbers, polling intervals and timers.4.1.1. Sequence Numbers All EGP commands and replies carry a sequence number. The statevariable R records the last sequence number received in a command fromthat neighbor. The current value of R is used as the sequence numberfor all replies and indications sent to the neighbor until a commandwith a different sequence number is received from that neighbor. Implementors are free to manage the sequence numbers of thecommands sent; however, it is suggested that a separate send statevariable S be maintained for each EGP neighbor and that its value beincremented just before the time an Poll command is sent and at no othertimes. The actions upon receipt of a response or indication withsequence number not equal to S is not specified; however, it isrecommended these be discarded.4.1.1. Polling Intervals As part of the Request/Confirm exchange a set of polling intervalsare established including T1, which establishes the interval betweenHello command retransmissions, and T2, which establishes the intervalbetween Poll retransmissions. Each gateway configuration is characterized by a set of fixedparameters, including P1, which specifies the minimum polling intervalExterior Gateway Protocol Formal Specification Page 11D.L. Millsat which it will respond to Hello commands, and P2, which specifies theminimum polling interval at which it will respond to Poll commands. P1and P2 are inserted in the Hello Interval (S1) and Poll Interval (S2)fields, respectively, of Request commands and Confirm responses. A gateway receiving a Request command or Confirm response uses theS1 and S2 fields in the message to calculate its own T1 and T2 statevariables, respectively. Implementors are free to perform thiscalculation in arbitrary ways; however, the following constraints mustbe observed:1. If T1 < S1 the neighbor may discard Hello commands. If T2 < S2 the neighbor may discard Poll commands.2. The time window T3 in which neighbor-reachability indications are counted is dependent on T1. In the case where two neighbors select widely differing values for their T3 state variables, the neighbor-reachability algorithm may not work properly. This can be avoided if T1 > max(P1, S1).3. If either S1 or S2 or both are unacceptable for some reason (e.g. exceed useful limits), the neighbor may either send a Refuse response or declare a Stop event, depending on state. It is suggested that T3 be computed as four times the value of T1,giving a window of four neighbor-reachability indications, which hasbeen found appropriate in the experimental implementations.Implementors may choose to make T3 a fixed parameter in those caseswhere the path between the neighbors has well-known characteristics. Note that, if a gateway attempts to send Hello commands near the
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -