rfc911.txt

来自「RFC中文技术文档」· 文本 代码 · 共 783 行 · 第 1/3 页

TXT
783
字号
unacquired邻居被发送到Ceases。  这方法提供一种快速响应妥协,当邻居没有最初响应而
且期望最小化一个可能是已发出一个确认但还没收到证实的停止的邻居。  如果该指定的邻
居的最大数没能获得,请求被无穷地重传输到全部unacquired邻居。
2.3 Hello和Poll轮询间隔

请求和确认信息包含Hello和Poll间隔的最小值。  由他和核心网关告知的最小数当前分别
是30和120秒。
收到的间隔要检查上界以便防止其值无意义。 当前上界是分别定在120和480秒。  假使
某邻居超出上界,则被认为是非法的并且不再发送要求达一小时。 这个允许去改正这种情
况,在另一处的网关正常运行直到那个网关自动地重新恢复而不必产生过多不必要的网络信
息流通量。


实际的Hello与Poll间隔由第一次选择由网关与它的对等网关报告的间隔的极值决定。考虑
到可能网络时延变化2秒容差被加到Hello间隔上,Poll间隔增加为Hello间隔的整数倍。
这导致32秒Hello与128秒Poll间隔。

如果一个响应Poll的更新没有被收到,至多发送一个repoll (顺序号码相同)代替下一个已经安
排的Hello。
2.4邻居中止

如果EGP进程通过Kill命令发送一SIGTERM信号,全部已经获得的邻居都发送Cease (停止)
命令。 Ceases在hello间隔内至多重复传输3次。 一旦全部具有任一个具有Cease - acks
的响应或者已发送三重复传输的Ceases,该进程终止。
2.5邻居可达性

只有当前可达性判定被实现。 它的行为与在[中Mills 84a]推荐的有微小的变化。

应答移位寄存器被维护。 关于各个Poll or Hello命令发送一个零变换为移位寄存器。 如果
一个响应( I - H - U,更新或错误)得到正确的序号反应,零被一替代。 各个新命令发送之前
可达性通过检查上移位寄存器四项判断。如果该邻居是可以达到的并且收到的响应< = 1,该
邻居被认为不可达。 如果该邻居被认为不可达并且收到的应答> =3,现在被认为可以达到
的。

一个邻居后获取之后被立即认为可以达到的,所以第一个来源于一个核心网关(一旦它认为
这个网关可以达到的)poll用一个更新回答。Polls不发送除非一个邻居已经认为可以达到的
并且它没有在它的最后的Hello I - H - U或Poll报文中建议它认为这个网关不可达。   这个
防止第一个Poll在一个down/up转换以后被丢弃。这是重要的因为轮询用于可达性判定。
遵循至少一获取报文必须被接到,在第一个轮询发送之前。 这将决定同位体不认为这个网关
停机。在第一个poll之前通常要求至少发送一个Hello。这段落的讨论不同于[ Mills 84a],它
建议一个同位体按照获取被认为停机并且一旦同位体被认为开机Polls就可能发送。这是唯
一偏离[ Mills 84a]的重要的之处。
由被认为不可达的同位体收到的Polls发送一个错误反应,它允许他们的可达性判定正确地
改进。
此举是一个[Mills 84a]选项。

当一个邻居变成不可达,利用它的全部路由从该路由表上删掉。如果知道不能获得邻居的话
该不可达网关被停止并且尝试获得一个新邻居。
如果知道已经获得的全部邻居,可达性判定延长30分钟( [ Mills 84a]建议60分钟),在定时
不可达邻居中止以后并且reacquisition每4分钟尝试一次。
目的在于减少不必要的网络信息流通量。

如果三个连续的轮询没有收到正确的更新应答该邻居被停止并且在4分钟内尝试获得或
reacquisition一个替换。本规定防备邻居发送不正确的更新数据格式。这些情况一度在测试
过程中出现。


2.6序号

序号是如同在[ Mills 84a]中推荐的方式处理。为各个邻居维护单独的发送和接收顺序号。 发
送序列号被赋初值零并且在各个新Poll (非repoll)发送与不在其他的时间之前加1。发送序
列号用于全部命令。 接收顺序号通过拷贝上次来源于一个邻居的请求、Hello或Poll命令
维护。
本序号用于输出更新。全部应答(包含错误应答)返回该刚才收到的报文的序号。


2.7过多命令的处理

如果在任一8分钟之内从一个邻居收到多于20命令,该邻居被认为非法的,中止并且
reacquisition一小时。

在poll interval期满之前(小于4秒网络时延变化性容量)最多收到一一个repoll (相同顺序号
码),用一个更新答复,其它则发送一个错误反应。当在响应中发送一个更新到的repoll时, 
unsolicited [未经请求的位]没有被设定,它不同于在[ Mills 84a]中的建议。

2.8不适当的Messages

如果证实从任一网关(巳知的或未知)收到Hello、I - H - U、Poll或更新也就是说进入
unacquired状态,同步大概由于某种原因被淹没。发送中止(协议违规)报文以避免与减少不必
要的网络信息流通量。此举是一个[Mills 84a]选项。


2.9缺省网关

缺省网关在EGPINITFILE中详细说明。缺省路由(在Unix 4.2 BSD中的net 0)用于内核包转
发,如果目的网络没有具体的路由。如果全部巳知的EGP邻居不可达时,它提供结局级备
份。如果仅存在一个可用的EGP EGP邻居时这个尤其有用,象在5.2.2节的ISI情况中那样。

缺省路由在初始化时安装并且在一个正确的EGP更新报文收到之后被删除.如果全部已经获
得的邻居并无一个可以达到的那么它被重新安装,如果在进程终止前路由超时而不存在已经
获得并且可以达到的EGP邻居。

因为缺省网关不会知道比通过EGP获悉的更多路由选择信息,所以一个正确的EGP更新报
文收到后它被删除。 如果没被删除,全部转到不可达网络的通信量可能发送给Unix 4.2转发
策略下面的缺省网关。

缺省网关将设置成一个标准地全路由核心网关而不是巳知的万一所有的EGP gateways同时
停机时提供另一个备份的EGP邻居网关。

⒊测试

在此简短地描述一些在测试期间发生的有趣的情况。

不同的实现者对序号有不同的解释。因此一些实现拒收具有不正确的序号的报文,导致对等
网关被宣布停机。
难题要点是该规格完全是文字报告式的,容易产生不一致、含糊和不完善的。[ Mills 84a]
的更多的格式说明已经除去这个含糊。

当测试响应发给一个邻居网关不在同一网络的接口的包的时候,回路产生了,因为两个网关
重复地交换指出一个非法接口的错误报文。 该难题在于两个网关在检查地址之后,EGP消
息类型被之前发送错误应答。 通过不发送错误响应除非可以确信该报文不是一个错误响应
本身来纠正。

曾经一个核心网关在更新报文中具有某种形式的数据错误引起他们被拒绝即使可达性正在
令人满意地传导。这导致全部路由超时。   解决方案是去计算不导致收到正确的更新的连
续的轮询的数目,如果这号码达到3去中止EGP,努力获得一个替换网关。

由Mike Karels在伯克来报告的另一个使发生兴趣的特性,由在MILNET和ARPANET具有多
网关两者之间引起。每个ARPANET主机具有一个给定的gateway去用于访问MILNET。如
果该EGP gateway是一个主机又是一个网关, EGP更新报文可能指出一个不同的
MILNET/ARPANET网关从该给定的一个。当host/gateway发生通过EGP报告的网关路由的
一个包时,它将收到一个去往它的给定的网关的重定向。 因此该MILNET网关能够在由EGP
报告的网关和指派的网关两者之间保持是交换式的。 当使用去其他的通过
MILNET/ARPANET gateways达到的网络时类似东西出现了。
⒋将来的改进
4.1多独立系统

当前获得一个来自一个信赖的列表EGP邻居的最大数的方式暗示全部邻居位于同一个AS
中。 意思是他们全部隶属于核心AS。更新路由表时,更新被独立地对待没有区别被建议路
由是对等体的AS的内部还是外部。 并且,路由选择公制没有参考源AS进行比较。

如果EGP用附加的除核心AS之外AS的管理,需要获得列表上的全部邻居以确保来自两个
AS的网关总是能获得。这导致一个不必要的额外的EGP通信量,如果为安全性获取众多的
邻居。一个更可取的方法将是为每个AS持有单独的被信赖的EGP gateways列表和获得的
最大数。路由登记项需要持有源AS以便将优先权能够给与来源于自己的AS的信息(看5.1.2
节)。

4.2接口监控

目前接口状态仅在一个响应Poll的更新发送前检查。 接口状态应能够更经常的进行监控并
且探测到一个变化时发送一个未经请求的更新。 这时改善EGP轮询响应缓慢的一个方面。
这对于通过dial - in线路连接网络具有特殊的重要性。
当上述的一个网络拨入时,它的相关的接口将被标记为up但是直到该变化已经通过EGP传
送之前它不会收到包。这对于未经请求的更新报文的情况将有所帮助,但是对于其他的非核
心网关为新路由选择信息去轮询核心EGP网关时依旧存在延迟。

开始认为这个情况可能对于内核EGP的实现有所帮助 但是该内核目前不通过中断加入新
设备传递接口状态改变。
如果这样做,当一个接口状态改变时可能象提供一个用户级信号一样简单。


4.3网络级状态信息

目前网络级状态报告诸如IMP目的地不可达报文、不用来探测在EGP邻居或其他的邻居网
关的可达性方面变化。这个信息应该用于改善响应时间改变。


4.4内部网关协议接口

目前所有的AS内部路由选择信息都是是静态的,而且都是从初始化文件中选读。内部路由
管理职能已经编写以便它合理地便于动态内部路由更新连接一个IGP。通过分离的外部和内
部路由表这个变得更为方便。

输出EGP Updates通过rt_NRnets ()正确地为内部路由表做好准备,不管是静态的或动态内
部路由。
函数也提供检查、增加、改变和删除内部路由, i.e.,那就是说分别是rt_int_lookup (), rt_add (), 
rt_change () and rt_delete ()。

一个IGP用当前数据结构的交互作用基本上包括三个功能∶用一个类似于...的rt_NRupdate ()
的函数更新内部路由表,制定输出内部更新类似于去rt_NRnets (),超时interior routes类似于
rt_time)。

⒌拓扑问题
5.1拓扑约束和路由回路
5.1.1背景

EGP不是一个路径选择算法。 它仅仅能使外部邻居去交换路由选择信息,很可能需要通过
一个路径选择算法。 它不能传递充分的信息去防止路由回路,如果循环存在于拓扑之中
[ Rosen 82].

路由回路可能出现当两个网关认为通过彼此存在达到一个第三网关的候选路由时。当第三网
关停机时,他们结束彼此指向,形成路由路由一个路由回路。 当前核心系统内部,回路通过
从零数到无限(国际互联网络网关站数直径)解除。 这个(通常)工作的令人满意因为GGP传
送变化十分迅速,一旦变化出现路由选择更新就被发送。
国际互联网络直径是相当小的( 5)而且使用一个通用的距离公制,段数,。但是这个将来可能有
所改变。

用EGP,改变被迟缓地传送。 虽然单个未经请求的NR报文可能发送,但是它不必要地直接地
传递给其他的需要间接收听的网关。 还有,不同的AS的距离公制是完全独立的,因此从零
数到无限不能总是时适用。

初始的提议将通过限制AS的拓扑成为树状结构以便不存在通过候选AS的多路由来防止路
由回路。 相同AS内部多路由被允许,如果内部路由选择策略负责控制回路。

[ Mills 84b]注意到即使树状构形约束, "我们必须假定短暂的回路有时可能在核心系统内部
形成而且这个信息可能逃到其他的系统;然而,人们预期这个回路不会持续良久而且在核心系
统内部不久将被解除。因此一个非核心系统间回路可能持续直到第一个更新报文圆发送给其
他的系统之后全部回路探测已经被清除或直到可达性信息页表超时,无论那一个首先出现"。

用初始简单stub EGP systems,树状构形约束能够达到目地。但是对于长期这个不提供充分
的强度。

[ Mills 83]建议一个方法,通过方法AS能够动态地重新配置他们自己因此拓扑约束总是满
足,没有对单个" core " AS的需要。 一个AS拥有一个共享网络而且它的邻居AS用自己传
导EGP。属主将间接地传递上述的信息,象核心系统现在所做。如果拥有AS被定义去接近
于该树状构形根,所有的不规则的互连能够形成一个适当的树状结构拓扑。 通过路由拓扑我
依照在路由选择中通知的理解拓扑。存在其他物理连接是可能的,但是如果他们未被报告则
不会用于路由。每个AS最多只能用一个拥有共享网络的AS传导EGP。所有的不通过另一
个AS拥有的网络传导EGP的AS是子树的根。它可能用拥有一个共享网络的其他的AS传
导EGP。这个"附件"将两个子树组合变成单个子树,因此整个拓扑还是一个树。 拓扑违规
能够判断,因为两个不同的AS拓扑违规将报告他们能够达到相同网络。

上述的动态树,可能有较佳的备份连接。在此情况下必须监视器失败的连接以便路由能够被
改回到较佳的连接,当服务被恢复时。

另一方面考虑是探测路由回路的可能性然后中断他们。包生存时间( TTL)期满可用于做这件
事情。如果一个诊断程序包怀疑有一个回路,诸如ICMP echo,能够通过发送可疑的路由去证
实它是否是一个回路。如果探测到一个回路,可以通过该路由发送一个特殊的路由包,它指
示每个网关转发该包之后去删除该路由。新路由选择信息的接受可能需要被推迟一段停工检
修时间。 这方法需要为初始TTL做出明智的选择。但是许多主机并没有这么做。

5.1.2现行政策

鉴于总趋势是增加网络互连而且替换long - haul networks诸如ARPANET、WBNET (宽带卫
星网络)和公用数据网的有效性,树状拓扑约束通常是不受欢迎的。当前推荐的是限制的较
少的拓扑。
以下取自[ Mills 84b]。

EGP拓扑学模型∶

   -一个独立系统包含一组通过网络连接的网关。 在该系统中的每个网关对于在它的系统
中的每个其他的网关必须是可以达到的,路径仅包含在该系统中的网关。

   -系统中的一个网关可以与在任一其他的系统中的网关一起运行EGP,只要通过的那个
EGP的路径在第三系统中不包含一个它自己运行EGP的网关。

   -"核心系统"不同于其它核心系统,由于只有它被允许去分布关于系统而不是它自己的可
达性信息。

   -在每个系统中至少一个网关必须具有一个和在核心系统中的网关一样的网络。

   -除了上面那些暗示不存在拓扑的或连通性约束。

一个网关将使用来源于它的配置(直接连接网络)、它的系统的IGP、调用在下文中的S、(内
部网络)与EGP (内部和外部网络的邻居系统)去构造它的路由表。信息如果与一个特殊的网
络N出现冲突,他们将被如同下述那样解决:

   如果N直接连接到该网关,全部关于N的IGP与EGP报告被忽略不计。

   如果N被IGP报告为S内部,被EGP报告为另一系统的外部或者内部,则该IGP报告
优先处理。

   -如果N被EGP通告作为一个系统内部和另一系统外部,该内部report占主导地位。

   - If N被使用EGP的相同系统的两个或更多网关作为内部,该报告指定的最小的站数占主
导地位。

   -在全部其他的情况中,最近的收到的报告占主导地位。

旧的信息可能来源于表的过时信息。

⌨️ 快捷键说明

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