📄 rfc911.txt
字号:
| | link | single logical gateway | | | | UCI-750A | | Vax 11/750 | | Unix 4.2 | +--------------+ | | | ---------------------- / \ / UCI-ICS \ \ 192.5.19 / \ / ---------------------- Figure 5-1: Simplified ISI Network ConfigurationRFC 911 17EGP can either be conducted with ISI-Gateway across ARPANET or ISI-NET.5.2.1 EGP Across ARPANETISI-Hobgoblin will advise ISI-Gateway across ARPANET, and hence the coresystem, that it can reach ISI-NET and UCI-ICS.Packets from AS's exterior to ISI and destined for UCI-ICS will be routed viaISI-Gateway, ISI-Hobgoblin and ISI-Troll. The extra hop via ISI-Gateway (orother core EGP gateway) is because the core gateways do not currently pass onindirect-neighbor exterior gateway addresses in their IGP messages(Gateway-to-Gateway Protocol). Packets originating from UCI-ICS destined forexterior AS's will be routed via ISI-Troll and ISI-Gateway. Thus the incomingand out going packet routes are different.Packets originating from ISI-Hobgoblin as a host and destined for exterior AS'swill be routed via the appropriate gateway on ARPANET.UCI-ICS can only communicate with exterior AS's if ISI-Troll, ISI-Hobgoblin andISI-Gateway are all up. The dependence on ISI-Gateway could be eliminated ifISI-Troll routed packets via ISI-Hobgoblin rather than ISI-Gateway. However,as ISI-Hobgoblin is primarily a host and not a gateway it is preferable thatISI-Gateway route packets when possible.ISI-Hobgoblin can provide a back-up gateway function to ISI-Gateway as it canautomatically switch to an alternative core EGP peer if ISI-Gateway goes down.Even though ISI-Hobgoblin normally advises the core system that it can reachISI-NET the core uses its own internal route via ISI-Gateway in preference.For hosts on ISI-NET to correctly route outgoing packets they need their staticgateway entries changed from ISI-Gateway to ISI-Hobgoblin. At present thiswould have to be done manually. This would only be appropriate if ISI-Gatewaywas going to be down for an extended period.5.2.2 EGP Across ISI-NETISI-Hobgoblin will advise ISI-Gateway across ISI-NET that its indirectneighbor, ISI-Troll, can reach UCI-ICS net.All exterior packet routing for UCI-ICS will be via ISI-Gateway in bothdirections with no hops via ISI-Hobgoblin. Packets originating fromISI-Hobgoblin as a host and destined for exterior AS's will be routed viaISI-Gateway, rather than the ARPANET interface, in both directions, thus takingan additional hop.UCI-ICS can only communicate with exterior AS's if ISI-Troll and ISI-Gatewayare up and ISI-Hobgoblin has advised ISI-Gateway of the UCI-ICS route. IfISI-Hobgoblin goes down, communication will still be possible becauseISI-gateway (and other core gateways) do not time out routes to indirectRFC 911 18neighbors. If ISI-Gateway then goes down, it will need to be readvised byISI-Hobgoblin of the UCI-ICS route, when it comes up.Conducting EGP over ISI-NET rather than ARPANET should provide more reliableservice for UCI-ICS for the following reasons: ISI-Gateway is specificallydesigned as a gateway, it is expected to be up more than ISI-Hobgoblin, it isdesirable to eliminate extra routing hops where possible and, the exteriorrouting information will persist after ISI-hobgoblin goes down. IfISI-Hobgoblin is to be used in its back-up mode, EGP could be restarted acrossARPANET after the new gateway routes are manually installed in the hosts.Therefore, EGP across ISI-NET was selected as the preferred mode of operation.5.2.3 Potential Routing LoopBecause both ISI-Gateway and ISI-Hobgoblin provide routes between ARPANET andISI-NET there is a potential routing loop. This topology in fact violates theoriginal tree structure restriction. Provided ISI-Hobgoblin does not conductEGP simultaneously with ISI-Gateway over ISI-NET and ARPANET, the gateways willonly ever know about the alternative route from the shared EGP network and notfrom the other network. Thus a loop cannot occur. For instance, if EGP isconducted over ISI-NET, both ISI-Gateway and ISI-Hobgoblin will know about thealternative routes via each other to ARPANET from ISI-NET, but they will notknow about the gateway addresses on ARPANET to be able to access ISI-NET fromARPANET. Thus they have insufficient routing data to be able to route packetsin a loop between themselves.5.3 Possible Future Configuration5.3.1 Gateway to UCI-ICSAn improvement in the reliability and performance of the service offered toUCI-ICS can be achieved by moving the UCI-ICS interface from ISI-Troll toISI-Hobgoblin. Reliability will improve because the connection will onlyrequire ISI-Hobgoblin and its ARPANET interface to be up and performance willimprove because the extra gateway hop will be eliminated.This will also allow EGP to be conducted across ARPANET giving access to thealternative core gateways running EGP. This will increase the chances of beingable to reliably acquire an EGP neighbor at all times. It will also eliminatethe extra hop via ISI-Gateway for packets originating from ISI-Hobgoblin, as ahost, and destined for exterior networks.This configuration change will be made at sometime in the future. It was notdone initially because ISI-Hobgoblin was experimental and down more often thanISI-Troll.RFC 911 195.3.2 Dynamic Switch to Backup GatewayIt was noted in Section 5.2.1 that ISI-Hobgoblin can provide a backup gatewayfunction to ISI-Gateway between ARPANET and ISI-NET. Such backup gateways couldbecome a common approach to providing increased reliability.At present the change over to the backup gateway requires the new gateway routeto be manually entered for hosts on ISI-NET. This section describes a possiblemethod for achieving this changeover dynamically when the primary gateway goesdown.The aim is to be able to detect when the primary gateway is down and have allhosts on the local network change to the backup gateway with a minimum amountof additional network traffic. The hosts should revert back to the primarygateway when it comes up again.The proposed method is for only the backup gateway to monitor the primarygateway status and for it to notify all hosts of the new gateway address whenthere is a change.5.3.2.1 Usual OperationThe backup gateway runs a process which sends reachability-probe messages, suchas ICMP echoes, to the primary gateway every 30 seconds and uses the responsesto determine reachability as for EGP. If the primary gateway goes down a"gateway-address message" indicating the backup gateway address is broadcast(or preferably multicast) to all hosts. When the primary gateway comes upanother gateway message indicating the primary gateway address is broadcast.These broadcasts should be done four times at 30 second intervals to avoid theneed for acknowledgements and knowledge of host addresses.Each host would run a process that listens for gateway-address messages. If adifferent gateway is advised it changes the default gateway entry to the newaddress.5.3.2.2 Host InitializationWhen a host comes up the primary gateway could be down so it needs to be ableto determine that it should use the backup gateway. The host could read theaddress of the primary and backup gateways from a static initialization file.It would then set its default gateway as the primary gateway and send a"gateway-request message" to the backup gateway requesting the current gatewayaddress. The backup gateway would respond with a gateway-address message. Ifno response is received the gateway-request should be retransmitted three timesat 30 second intervals. If no response is received the backup gateway can beassumed down and the primary gateway retained as the default.Whenever the backup gateway comes up it broadcasts a gateway-address message.Alternatively, a broadcast (or multicast) gateway-request message could beRFC 911 20defined to which only gateways would respond. The backup gateway-addressmessage needs to indicate that it is the backup gateway so that future requestsneed not be broadcast. Again, three retransmissions should be used. But theprimary gateway also needs to broadcast its address whenever it comes up.5.3.2.3 When Both the Primary and Backup are DownIf the primary gateway is down and the backup knows it is going down, it shouldbroadcast gateway-address messages indicating the primary gateway in case theprimary gateway comes up first.But the backup could go down without warning and the primary come up before it.If the primary gateway broadcasts a gateway-address message when it comes upthere is no problem. Otherwise, while hosts are using the backup gateway theyshould send a gateway-request message every 10 minutes. If no response isreceived it should be retransmitted 3 times at 30 second intervals and if stillno response the backup assumed down and the primary gateway reverted to.Thus the only time hosts need to send messages periodically is when the primarygateway does not send gateway-address messages on coming up and the backupgateway is being used. In some cases, such as at ISI, the primary gateway ismanaged by a different organization and experimental features cannot beconveniently added.5.3.2.4 Unix 4.2 BSDOne difficulty with the above is that there is no standard method of specifyinginternet broadcast or multicast addresses. Multicast addressing is preferableas only those participating need process the message (interfaces with hardwaremulticast detection are available). In the case of Unix 4.2 BSD an internetaddress with zero local address is assumed for the internet broadcast address.However, the general Internet Addressing policy is to use an all ones value toindicate a broadcast function.On Unix 4.2 BSD systems, both the gateway and host processes could be run atthe user level so that kernel modifications are not required.A User Datagram Protocol (UDP) socket could be reserved for host-backup-gatewaycommunication.Super user access to raw sockets for sending and receiving ICMP Echo messagesrequires a minor modification to the internet-family protocol switch table.RFC 911 216. ACKNOWLEDGEMENTI acknowledge with thanks the many people who have helped me with this project,but in particular, Dave Mills, who suggested the project, Jon Postel fordiscussion and encouragement, Liza Martin for providing the initial EGP code,Berkeley for providing the "routed" code, Mike Brescia for assistance withtesting, Telecom Australia for funding me, and ISI for providing facilities.RFC 911 227. REFERENCES[Berkeley 83] "Unix Programmer's Manual", Vol. 1, 4.2 Berkeley Software Distribution, University of California, Berkeley.[Kirton 84] Kirton, P.A., "EGP Gateway Under Berkeley Unix 4.2", University of Southern California, Information Sciences Institute, Research Report ISI/RR-84-145, to be published.[Mills 83] Mills, D.L., "EGP Models and Self-Organizing Systems" Message to EGP-PEOPLE@BBN-UNIX, Nov. 1983.[Mills 84a] Mills, D.L., "Exterior Gateway Protocol Formal Specification", Network Information Center RFC 904, April 1984.[Mills 84b] Mills, D.L., "Revised EGP Model Clarified and Discussed", Message to EGP-PEOPLE@BBN-UNIX, May 1984.[Postel 84] Postel, J., "Exterior Gateway Protocol Implementation Schedule" Network Information Center RFC 890, Feb. 1984.[Rose 84] Rose, M.T., "Low-Tech Connection into the ARPA-Internet: The Raw-Packet Split Gateway", Department of Information and Computer Science, University of California, Irvine, Technical Report 216, Feb. 1984.[Rosen 82] Rosen, E.C., "Exterior Gateway Protocol", Network Information Center RFC 827, Oct. 1982.[Seamonson & Rosen 84] Seamonson, L.J. and Rosen, E.C., "Stub Exterior Gateway Protocol", Network Information Center RFC 888, Jan. 84.[Xerox 81] "Internet Transport Protocols", Xerox System Integration Standard XSIS 028112, Dec. 1981.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -