OSI IS-IS 域内路由协议(2)

时间:2024-11-17 18:38:53 来源:网络 浏览:5次

7子网独立功能
本章描述路由函数使用的算法和相关数据库。为系统治理目的定义的治理对象和治理属
性(managedobjectsandattributes)将在第11章描述。
以下是子网独立功能内部的进程和数据库。每一个进程或数据库标题后的圆括号内
是必须保持(keep)此数据库的系统类型。系统类型分为L2(第2层中介系统)和L1
(第1层中介系统)。注重:一个第2层中介系统在它的本域(homearea)内也是一个
第1层中介系统,因此必须象维护第1层数据库一样维护第2层数据库。
过程:
-决定过程(L2,L1)
-更新过程(L2,L1)
-转发过程(L2,L1)
-接收过程(L2,L1)
数据库:
-第1层链接数据库(L2,L1)
-第2层链接数据库(L2)
-邻近数据库(AdjacencyDatabase)(L2,L1)
-线路数据库(CircuitDatabase)(L2,L1)
-第1层最短路径数据库(L2,L1)
-第2层最短路径数据库(L2)
-第1层转发数据库,每路由算法(routeingmetric)一个(L2,L1)
-第2层转发数据库,每路由算法一个(L2)
7.1寻址(Addresses)
网路服务程序访问点(NSAP:NetworkServiceAccessPoint)地址和系统的网络
的长度数量(lengthquantities)是可变的,这符合ISO8348/Add.2的要求。ISO8473
PDUs中包含的相应的NPAI和此PDUs(如LSPs和IIHs)必须首选二进制编码;这种信息
的根本(underlying)句法也许是抽象的二进制的句法或抽象的十进制的句法。此协议将
可能用到任一AFIs(AuthorityandFormatIndicator)和他们相应的DSP语法。
7.1.1路由域内系统的NPAI
图3显示了一个NSAP地址编码或网(NET)的结构。
以下将用由此国际标准描述的协议来解释NPAI的结构:
范围地址(AreaAddress)——路由域内一定范围的地址,一个可变字长的量,包括NPAI
的全部优先部分(entirehigh-orderpart),不包括下面定
义的ID和SEL字段:
ID(系统标志符)——长度范围从1到8字节(octets)变化。每个使用此协议的路由
域的ID字长范围取一定值,域内所有中介系统的系统IDs将使
用此长度。假定至少有一个答应范围内的值能被接受,一组被某
设备(implementation)支持的ID长度称为该设备的设备选择
(implementationchoice)。路由域的治理者必须确保域内所有
的ISs能使用为该域所选的ID字长。
SEL(NSAP选择开关)——一个八位字段,用作接收PDU的实体(entity)(可能是传输
实体也可能是中介系统网络(IntermediatesystemNetwork
entity)实体本身)的选择开关。它是最不重要的NPAI的后
八位(theleastsignificant(last)octet)。

7.1.2系统配置(DeploymentofSystems)
为使本国际标准定义的路由协议正确运行,路由域内配置的系统必须满足以下要求:
a)对所有系统:
1)域内的每一系统必须有唯一的系统ID,即不答应同一域中的两个系统有相同
的ID值。
2)每一个域地址必须在全球开放系统互连环境(globeOSIE)内唯一,即一个
给定的域地址只能对应唯一的域。
3)拥有同一给定的域地址值的所有系统必须在同一域中。
b)对中介系统的附加条件:
1)域内每个第2层中介系统必须有唯一的ID字段,即不答应一个路由域内的两
个第2层ISs拥有相同的ID字段。
c)对终端系统的附加条件:
1)不答应同一域内的两个终端系统有除SEL字段外完全相同的地址
d)只有当一个终端系统的域地址与邻域IS的手册里的入口地址(entriesintheadjacent
IS"smanual)AreaAddressesparameter相同时,它才能与第1层连接(beattached
to)上。
强制要求7.1.2的配置是路由域治理的职责。本国际标准定义的协议假定这些要求得到
了满足,但是没有对其检查的手段。
7.1.3手动域寻址(Manualareaaddresses)
一个IS对若干同义域地址的使用是通过治理参数-手动域地址(manualAreaAddresses
来适应的。
TheuseofseveralsynonymousareaaddressesbyanISisaccommodatedthrough
theuseofthemanagementparametermanualAreaAddresses
这个参数由系统治理为每个第1层IS在本地设置;它包含一个与IS相关的所有同义域
地址列表,表中包括IS自己的NET所包含的域地址。每一个第1层IS分配它的manual
AreaAddresses给它的第1层LSP(LinkStateProtocolDataUnit)的域地址字段(Area
Addressesfield),在就答应第2层IS产生一个所有给定域支持的地址的合成列表。第2
层IS把合成列表放入它们的第2层LSP的域地址字段,以此在第2层子域内依次广播该合成
列表,这样就把信息发布到了与整个路由域相关的所有域地址上。在两个第1层IS间建立邻
域的过程要求至少有一个地址域为两个manualAreaAddresses列表所共有,且在两个第1
层IS和一个终端系统和间建立一个邻域的过程,要求终端系统的域地址与IS的manualArea
Addresses列表中的一个入口相匹配。因此,系统治理的职责是确保每一个与某IS相关的域
地址被包括在其manualAreaAddresses列表中。非凡是,与某给定第1层IS邻近的所有
ES和第1层IS必须包括在其中。假如一个8473PDU的目的地址的域地址字段或它的源路由
域(sourcerouteingfield)的下一个入口的域地址字段不存在于接收此PDU的第1层IS
的域地址参数表(parameterareaAddresses)中,那么目标系统不会在(notresidein)
此IS的域(area)中。这样的PDU将采用第2层路由(level-2routeing)。
7.1.4第2层地址编码(EncodingofLevel2Addresses)
当一个完整NSAP地址采用ISO8348/Add.2中指定的首选二进制编码方式来编码时,IDI
(InitialDomainIdendifier)的前几位(leadingdigits)被填充(假如需要),以此获
得AFI(AuthorityandFormatIndicator)指定的最大IDP(InitialDomainPart)长度。
一个第2层地址前缀是一个完整NSAP地址的前端子串(leadingsub-string),因此,它可
以匹配一组拥有相同前端子串的完整的NSAP地址。然而这种切断匹配(truncationand
matching)在由NSAP地址的抽象句法描述(representedbytheabstractsyntax)的NSAP
上完成,而不是编码形式(andhencepadded)上的。前缀匹配的例子可参见附录B的B.1。
LSP中的第2层地址前缀与完整NSAP地址的编码方式相同,除非前缀的末端进入IDP.
这时该前缀直接编码为无填充的四位信息串。
7.1.5地址比较(ComparisonofAddresses)
除非另外声明,地址的数字比较将按照地址的编码形式进行,给较短的地址添零,使其
与较长的地址等长,然后进行数字比较。这种比较适应于NSAP地址,网络实体标题(Network
EntityTitles)SNPA地址。
7.2决定过程(TheDecisionProcess)
此过程使用链接状态数据库的信息来计算转发数据库,而转发过程从转发数据库获得每
个NPDU的下一转发的正确信息。第1层链路信息数据库用于计算第1层转发数据库,而第2
层链路信息数据库用于计算第2层转发数据库。
7.2.1输入和输出(Inputandoutput)
输入
-链路状态数据库:它是最新的链路状态PDU的一组信息,而这些链路状态PDU来自所有已
知的中介系统(对第1层而言在本域内,对第2层而言在第2层子域内)。次数据库从更新过
程获得信息。
-事件通告:这是更新过程的一个信号,表明域内某处的一个链接已发生了变化。
输出
-每路由算法(routeingmetric)一个第1层转发数据库;
-(仅在第2层中介系统)每路由算法一个第2层转发数据库;
-(仅在第2层中介系统)若域内第1层链接最低ID可达,第1层决定数据库把域内第2
层中介系统的标志符通告第2层更新过程
-(Level2Intermediatesystemsonly)TheLevel1DecisionProcess
informstheLevel2UpdateProcessof
theIDoftheLevel2Intermediatesystemwithinthe
areawithlowestIDreachablewithreallevel1links
(穿过第2层子域的路径组成的虚连接是不答应的)
-(仅在第2层中介系统)假如中介系统是部分指定(PartitionDesignated)第2层中介
系统,第2层决定过程通知第1层更新过程,默认路由算法的值(valuesofdefaultrouteing
metric).
-(Level2Intermediatesystemsonly)IfthisIntermediate
systemistheLevel2Intermediate
systeminthispartition,theLevel2Decision
ProcessinformstheLevel1UpdateProcessofthe
valuesofthetoandIDofthe
partitiondesignatedlevel2Intermediatesystemin
eachotherpartitionofthisarea.
7.2.2路由算法(Routeingmetrics)
对应于ISO8473QoS维护组(QoSMaintenancefield)定义的四种可能的服务质量
(orthogonalqualitiesofservice),有四种路由算法。从一个中介系统发出的每一个线
程将被系统治理(Systemmanagement)分配一个值代表一个或多个算法(metric)
这四个算法如下:
a)缺省算法:能被域内的每一个中介系统理解。每个线程有分配给其算法的一个实际值
(positiveintegralvalue)。此值可能于线程中的任一目标函数有关,但根据习惯,
它可用来测量线程处理通信量(如每秒的吞吐量)的能力。数值越高表明容量越低。
b)延迟度量:此度量测量相关线程的传输延迟。这是一个可选的度量,假如它被分配给
一个线程,就会有一个正整的值。越高的值意味着越长的传输延迟。
c)花费度量:此度量衡量相关线程使用的金钱上的花费。这是个可选的度量,假如它被
分配给一个线程,就会有一个正整的值。这个国际标准中使用的路径计算算法要求所有的
线程的任一个度量都具有一个正值。因此,一个花费度量值为0的免费线程是不可能的。
按惯例,通常1才指一个免费的线程。越高的值意味着越大的金钱花费。
Thismetricmeasuresthemonetary
costofutilisingtheassociatedcircuit.Itisanoptional
metric,whichifassignedtoacircuitshallhaveapositive
integralvalue22Thepathcomputationalgorithmutilisedinthis
InternationalStandardrequiresthatallcircuitsbeassigneda
positivevalueforametric.Therefore,itisnotpossibleto
representafreecircuitbyazerovalueoftheeXPense
metric.Byconvention,thevalue1isusedtoindicateafreecircuit.
.Highervaluesindicatealargermonetaryexpense.

d)错误尺度(Errormetric):此尺度测量整个线路的剩余错误概率。它是可任意选择的
尺度,当指定于一个线路时有一个非零值。高数值表明该环路有未检测到的错误的概率较
高。
注重-决定进程将尺度值简单的加在后面。因而,这个尺度值的选定是很重要的。
每个中间系统应该能够根据默认的尺度来计算路由。任何一个或全部其它尺度的支持
都是任选的。假如一个中间系统支持基于某个尺度的路由计算,它的更新进程应该在链路
状态分组中向整个线路报告这个尺度值;否则,IS将无法汇报此尺度。
当决定进程为一个任选的路由尺度计算路径时,它只用一个向相应尺度报告的值来使
用链路状态分组。假如任何一个IS线路的尺度不包含任何值,系统将不计算基于此尺度的
路由。
注重-上述情况的一个结果是一个经过默认尺度可到达的系统是经过其它尺度无法到
达的。
看7.4.2可得到转发进程如何根据ISO8473QoS中的维护选项的内容来选择尺度的描述。
以上四种尺度中的任何一个都有两种类型:内部尺度或外部尺度。内部尺度用来将通往
内部目的的链接/路由描述成路由域。外部尺度用来将通往外部目的的链接/路由描述成路由
域。尺度的这两种类型是不能直接比较的,除非内部路由相对外部路由来说总是首选的。换
句话来说,即使外部路由整个耗费更低的话也会选择内部路由。
7.2.3广播子网络
一个广播子网络不应被看成是一个完全连接的拓扑结构,它应被看成是一个和每一个附
属系统都有连接的伪网点。附属系统只报告与伪网点的连接。这个指定的中间系统用来代表
此伪网点,它将使每一个支持的路由尺度为零,构造链路状态协议数据单元来报告与广播子
网中所有系统的连接。这些路由尺度在通过与伪网点的连接被指定后被设为零值。在伪网点
中指定一个非零值,链路状态分组有使真实值翻倍的效果。
伪网点会通过指定中间系统的源标志符识别,源标志符后面有一个被指定中间系统赋值
的非零伪网点标志符。此伪网点标志符对指定中间系统来说是唯一的。
指定中间系统分别在第一层和第二层定义。它们就是我们所知的局域网第一层指定中间
系统和局域网第二层指定中间系统。见8.4.4。
假如一个中间系统或它在广播子网上的SNPA被关闭,或者有更高优先级的中间系统已经
接管了此功能,该中间系统就成为指定中间系统。当一个中间系统不作为指定中间系统时,
它通过将伪网点链路状态协议数据单元剩余值设为零,并进行7.3.16.4中描述的操作,来在
整个网络内清除伪网点链路状态协议数据单元。一个局域网第一层指定中间系统清除第一层
链路状态协议数据单元,一个局域网第二层指定中间系统清除第二层链路状态协议数据单元。
假如一个中间系统既不作为第一层指定中间系统,也不作为第二层指定中间系统,它将清除
两层的链路状态分组。
当一个中间系统成为指定中间系统,同时它有同一层的链路状态协议数据单元,该协议
数据单元是由前一个指定中间系统为线路发出的,它将像前文所述一样,在整个网络内清除
链路状态协议数据单元。
7.2.4链接
只有两个中间系统中的一个通过它们的任一个SNPs可直接到达另一个,我们才可以说这
两个中间系统是相邻的。在一个连通的子网(点对点或一般的拓扑结构)中,当连接建立或
"hello"协议数据单元交换时,问题中的两个中间系统应该确定它们的相邻关系。然而,一个
故障的中间系统可能会报告与另一个中间系统是相邻的,而实际上并不是这样的。为了查出
此类错误,决定进程检查以上连接在链路状态分组上是否如两个中间系统所报告的那样。如
果一个中间系统排除某个连接,它将不在它的链路状态协议数据单元中描述它。在子网广播
中,此类错误应该被指定的中间系统所确认,该中间系统有责任确定所有的中间系统都与子
网相连接。该中间系统在链路状态协议数据单元中包含这些中间系统(没有其它的),此协议
数据单元是为代表子网的伪网点产生的。
7.2.5同一系统中的多链路状态分组
更新进程为了保存连接带宽和处理,可以将一个简单的逻辑链路状态分组分成许多独立
的协议数据单元(见7.3.4)。另一方面,决定进程将非凡注重顺序号为零的链路状态分组。
假如顺序号为零且生存期大于零的链路状态分组在指定系统中不存在,那么决定进程将不应
该处理任何存储在这个系统中的具有非零序列号的链路状态分组。
下列信息只能从顺序号为零的链路状态分组中获得。决定进程将忽略任何具有非零序列
号的链路状态分组。
a)链路状态分组数据库超载位的设置。
b)中间系统类型域的值。
c)区域地址选项。
7.2.6路由算法概述
决定进程使用的路由算法是路径最短的算法。比如说,这些算法是由所有的中间系统在
路由范围中独立且并发运行的。一个链路状态分组的内部范围的路由是发生在一个站对站的
基础上的:即算法只是决定下一站,而不决定一个数据链路状态分组到达目的的整个路径。
为了保证在路由范围中每一个中间系统能算出正确和一致的路由,国际标准是依靠以下性质:
a)路由范围中的所有中间系统统一使用同样的拓扑信息;
b)路由范围中的每一个中间系统在输入相同的拓扑结构和尺度时产生相同的路由组。
第一个属性对防止出现不一致的路由是必要的,它是潜在的环型路径。第二个属性是为
了实现6.6中所规定的决定论所必须的。
一个系统运行SPF算法可在路由域中找出一组通往目标系统的合法路径。这组路径可由
下述几种路径组成:
a)一个有最小尺度数的简单路径:这些路径被认为是耗费最小的路径;
b)一组有相等的最小尺度数的路径:这些路径被认为是耗费同样最小的路径;或者
c)一组到达比本地系统更接近目标系统的协议数据单元的路径:被称为向下流程的路径。
不具备上述几种情况的路径是不合法的,将不被使用。
决定进程在确定路径时,也会确定通往目的每条路径的下一站。此邻接关系沿用前面进
程用来转发协议数据单元的数据库。
每一个路由层使用某个支持的路由尺度计算各自的路由。既然有四种路由尺度和两个层,
系统可以使用多种最小路程优先的算法。例如,
--假如一个中间系统是一个第二层的中间系统,支持所有四种尺度,用所有尺度计算
最小路程耗费时,它将实现此算法八次。
--假如一个中间系统是一个第一层的中间系统,支持所有四种尺度,并附加计算向下
流程路径,它将实现此算法4×(邻居数+1)次。
在国际标准中条款12的动态及静态适应条件下,任何最小路程优先算法的实现都是答应
的。推荐的实现方法在附录C中有具体描述。
7.2.7多余路径的移除
WhentherearemorethanmaximumPathSplitsminimalcostpathstoadestination,thisset
shallbepruneduntilonlymaximumPathSplitsremain.TheIntermediatesystemshall
discriminatebasedupon:
注重-为了顺应6.6中定义的决定论,路径的精确优先级应被确定下来。
--邻接类型:连接到中间系统的路径或第二层可到达的地址前面的邻接保持对其它邻
接的优先权。
--尺度数:较小尺度数的路径对较大尺度数的路径保持优先权。通过尺度数,我们可
以知道沿着路径到达目的的尺度总数。
--邻居标志符:在两个或更多路径与同一类型的邻接相连时,具有较低邻居标志符的
邻接对具有较高邻居标志符的邻接保持优先权。
--线路标志符:在两个或更多路径与同一类型的邻接相连,并且邻居标志符相同时,
具有较低线路标志符的邻接对具有较高线路标志符的邻接保持优先权,它的线路标志符为下
列几种值:
非广播线路的7ptpt线路标志符,
运行第一层决定进程时广播线路的711线路标志符,
运行第二层决定进程时广播线路的712线路标志符。
--局域网地址:当两个或更多的邻接的类型,邻居标志符和线路标志符都相同时(例如
一个系统在同一条线路上有多个局域网适配器)时,具有较低局域网地址的邻接对具有较高局
域网地址的邻接保持优先权。
7.2.8健壮性检查
7.2.8.1在整个过载的中间系统中计算路由
决定进程将不使用从IS到邻接中间系统的连接,该IS的链路状态分组有链路状态分组
数据库检测设备。当过载的IS没有完全的路由信息库时,这样的路径可能会引入循环。在路
径保证没有循环的情况下,决定进程仍然使用与终端系统邻接的连接。
7.2.8.2双向连通性检查
除非两个中间系统都报告它们的连接,否则决定进程将不使用该连接。
注重--此检查不适用于和终端系统的连接。
报告连接指出默认的路由尺度至少有一个定义值。在一个连接中,同一个尺度的两个端
点答应有两个不同的定义值。因此,路由可能是不对称的。
7.2.9转发数据库的建立
转发数据库需要的关于路由尺度k的数据,是每一个系统n的一系列邻接。
7.2.9.1根据一个第一层IS辨认最近的第二层IS
对每一个路由尺度中间系统需要一条附加信息:根据此路由尺度到达的距最近的第二层
中间系统的下一站。第一层中间系统应该对尺度k确定整套套接的第二层中间系统R,使对
尺度K中间系统R的耗费最小。
IftherearemoreadjacenciesinthissetthanmaximumPathSplits,thentheISshallremove
excessadjacenciesasdescribedin7.2.7.
7.2.9.2第二层中间系统中套接标志位的设置
假如一个第二层中间系统在对尺度K计算第二层路由后,发现使用该尺度不能到达任何
其它区域,它将:
--为尺度K设置套接标志位为假;
--重新生成它的第一层链路状态分组,其分组号为零;同时
--根据7.2.9.1中描述的算法为第一层中间系统对尺度k计算最近的第二层中间系统,
并将其插入到合适的转发数据库中。
注重--更新进程将检查每一个尺度K的套接标志位,使它能够在其链路状态协议数据单元
的ATT域中报告该值。
假如一个第二层中间系统在对尺度K计算第二层路由后,发现使用该尺度能够到达至少
一个其它区域,它将:
--为尺度K设置套接标志位为真;
--重新生成它的第一层链路状态分组,其分组号为零;同时
--将与最近的第二层中间系统对应的尺度K的转发数据库入口设为本身。
7.2.10修补分割区的信息
一个区域可能会因为一条或多条连接的错误变得支离破碎。然而,假设第二层子域本身
是完整的,假如每一个分区都与第二层子域有连接,它将有可能经由第二层子域修补。见图
4

系统A-I、R及P都在区域n中。当D和E的连接断开时,区域将变得分割的。在每一
个分区中,从第二层中间系统中选出分区指定的第二层中间系统。在分区1中是P,在分区2
中是R。第一层修补通路建立在这两个第二层中间系统之间。注重现在修补的连接是在P和R
之间,而不是在D和E之间。
系统指定的第二层中间系统使用通往其它分区的转发网络协议数据单元,修补分区。它们
行使第一层中间系统的功能,并且向每一个分区指定的第二层中间系统公告第一层链路状态
分组中的邻接关系。这就是众所周知的虚邻接和虚连接。这样其它第一层中间系统通过分区
指定的第二层中间系统就可以计算它们通往其它分区的通路。这样分区指定的第二层中间系
统在8473数据网络协议数据单元中,把它的虚网络实体头标当作源NSAP和把邻接分区指定
的第二层中间系统虚网络实体头标当作目的NSAP,并压缩第一层网络协议数据单元,然后转
发它们。以下章节将对此有更具体的描述。
7.2.10.1分区检测和第一层虚连接的建立
通过在整个区域的操作,第二层中间系统可以检测出第一层区域的分区。为了参与分区
修补进程,这些第二层中间系统必须行使第一层中间系统的功能。无论是两个和更多的第二
层中间系统在第二层链路状态分组中报告它们成为分区指定的第二层中间系统,则给定的区
域的分区将存在。反过来说,当只有一个第二层中间系统报告时,整个区域就不会被分割。
分区指定的第二层中间系统就完成了分区修补。分区指定的第二层中间系统的选取,在下一
章有具体描述,应该在探测之前完成,这样修补进程才能开始。
为了修补第一层区域的分区,分区指定的中间系统产生一个虚网络实体来代表分区。这
个虚网络实体的头标由第一列地区地址、第二层连接状态协议数据单元和分区指定的第二层
IS的标志符组成。这个IS将同时用记录在检验属性中的分区网络来建立一个通往每一个分
区指定的第二层IS的虚拟连接(用一个新的虚邻接关系处理对象来表示)。这些虚联接是分区
的修补路径。第二层中间系统通过在它的第一层链路状态协议数据单元的中间系统邻接关系
域加入每一个邻接的分区指定的第二层中间系统的标志符来向整个第一层区域报告。这些中
间系统邻居应该将虚连接标志位置成真。这个虚连接的尺度值应该是从系统的第二层路由数
据库中获得的默认尺度值d(N),N表示邻接分区指定的第二层IS经由第二层子域。
为了探知第一层区域的分区和创立修补通路,一个分区指定的第二层中间系统在完成第
二层最小路程计算后应该执行下列步骤:
a)检查所有第二层中间系统的第二层链路状态协议数据单元

假如发现匹配并且分区指定的第二层中间系统的标志符与这个系统的标志符不相等,将
分区指定的第二层中间系统的认证以及到那个中间系统的默认尺度的路径耗费,通知系统中
的第一层更新进程。
b)继续检查第二层链路状态分组直到在其它的分区中找到所有的分区指定第二层中间系统,
并且通知其它分区指定的第二层中间系统的第一层更新进程,这样
1)第一层链路状态协议数据单元可以被传播到所有其它的分区指定的第二层中间系统(经由
第二层子域)
2)所有其它的分区指定的第二层中间系统应该在系统的第一层链路状态协议数据单元被告知
邻接关系。假如一个分割已结束,该中间系统应该通过消除虚连接关系,消除网络虚连接实
体和虚连接。在运行完分区检测及上述的虚连接算法后,并且另一个分区指定的第二层中间
系统的在它的第一层链路状态协议数据单元的虚连接没有被检测到,这个分区指定的第二层
中间系统应该检测到一个修补完的分割。
假如这样的一个虚邻接关系被创建或销毁,中间系统将产生一个"分区虚连接被改变"的
通知。
7.2.10.2分区指定第二层中间系统的选择。
这个第二层中间系统应该是这样的系统:
--在它的链路状态分组中使用默认的尺度,接着报告本身;
--在实现分区修补选项时报告本身;
--像这个区域第一层中间系统那样工作;
--不通过任何虚连接经由第一层就能到达;
--有最小的标志符。
在第一层决定进程结束后和第二层决定进程决定第二层路径之前,通过运行决定进程运
算选择分区指定第二层中间系统。
为了保证正确的选择分区指定第二层中间系统,通过检查那些虚连接位标志位为假的第
二层中间系统邻居,决定进程只使用在这个区域中的第一层链路状态分组来运行。这个决定
进程运行的结果得到了所有的不通过虚连接路径而通过第一层就可以到达的第一层中间系
统。通过这种设置,第二层中间系统将从满足下列条件的中间系统中选择:
--IS类型(在第一层链路状态分组中所报告的)是第二层中间系统;
--ATT指出必须具有默认尺度;
--P位指示支持分区修复选项;
--ID必须是第二层中间系统的子集中最小的。
7.2.10.3分区地址的计算
ALevel2IntermediateSystemshallcomputethesetofpartitionAreaAddresses,whichis
theunionofallmanu-alAreaAddressesasreportedintheLevel1LinkStatePDUsofallLevel2
Intermediatesystemsreachableinthepartitionbythetraversalofnon-virtuallinks.Ifmorethan
MaximumAreaAddressesarepresent,theIntermediatesystemshallretainonlythoseareaswith
numericallylowestAreaAddress(asdescribedin7.2.11.1).Ifoneofthelocalsystem"s
ManualAreaAddressesissorejectedtheevent"ManualAddressDroppedFromArea"shallbe
generated.
7.2.10.4虚连接中网络协议数据单元的封装
通过虚连接的传播的所有的网络协议数据单元必须以ISO8473的标准来封装。它必须包
含分区指定第二层中间系统的虚网络实体头标,在网络协议数据单元前即在源地址域中加此
头标,在目的地址域中加邻接的分区指定第二层中间系统的虚网地址。在双方NSAP中的SEL
域中都应包含IS-IS路由选择值。输出协议数据单元的服务质量维护域应被设成表明转发使
用默认路由尺度的值。(见32页表1)
为了标识数据和错误报告网络协议数据单元,外部的网络协议数据单元应该从内部的网
络协议数据单元中拷贝分割答应和错误报告位以及生存期域。当内部网络协议数据单元未被
封装,它的生存期域将被设成外部网络协议数据单元的生存期域的值。
对LSP和SNP分割答应标志位应该设为真,错误报告标志位设为假。生存期域被设为255。
当一个内部LSP未被封装,它的剩余生存期将消耗255与外部网络协议数据单元的生存期域
的值的差的一半。
数据网络协议数据单元未被封装之前不答应被分割,除非它的长度(包括分组头)超过
65535字节,在这种情况下,原始数据网络协议数据单元应该分割后封装。在任何情况下,
为了在分区指定第二层目标中间系统能够将其重新组合并解封装,在传输之前必须依据ISO
8473标准进行分割。在7.4.3.2中,封装作为发送进程的一部分有更具体的描述。在7.4.4
中解封装作为接收进程的一部分有更具体的描述。
7.2.11区域地址的计算(Computingofareaaddresses)
ALevel1orLevel2IntermediateSystemshallcomputethevaluesofareaAddresses(the
setofAreaAddressesforthisLevel1area),byformingtheunionofthesetsof
manualAreaAddressesreportedintheAreaAddressesfieldofallLevel1LSPswithLSP
numberzerointhelocalIntermediatesystem"slinkstatedatabase.
注重--这包括所有的源系统,不管现在是否能够达到。它还包括本地中间系统本身的
链路状态分组为零的链路状态分组。
注重--这个设置对于数据库内容的每一个改变,没有必要马上更新。计算可以延续到
下一个决定进程运行之前。
IfmorethanMaximumAreaAddressesarepresent,theIntermediatesystemshallretainonly
thoseareaswithnu-mericallylowestAreaAddress(asdescribedin7.2.11.1).Ifoneofthelocal
system"sManualAreaAddressesisrejectedtheevent"ManualAddressDroppedFromArea"
shallbegenerated.
7.2.12路由优先级(OrderofPerenceofRoutes)
假如一个中间系统参加第一层的路由并且通过检查区域地址确定给定的目的的是可以到
达的,那么将只通过第一层路由到达目的。非凡的:
a)第一层路由总是建立在内部尺度基础上的。
b)在这个区域的路由中,那些支持服务质量申请的路由优先于不支持的。
c)支持相同服务质量的路由,最小路径优先。对于最小路径的确定,假如一个支持非凡服
务质量的路由是可用的,将使用它,否则将使用默认尺度。
d)在相等成本的路线之间,分区方法(spilitting)可以被应用。
假如一个IS在第一层路由中,但不在第二层路由中,那么就必须找到一个目的地址至
少与第二层IS相连,则目的地址可以通过以下方法路由到第二层IS:
a) 第一层路由总是根据内部的标准。
b) 在连接第二层ISs的路线中,支持所要求的QoS的路线是被优先考虑的。
c) 在相同的QoS情况下,最短路线是被优先考虑的。在决定最短路线时,
若路由上预先设定的QoS是被答应的,则使用这个设置,否则将使用缺
省设置。
d) 在相等成本的路线之间,分区方法(spilitting)可以被应用。
假如一个IS参与第二层的路由并且与第二层相连,则这个IS(通过寻找
地区地址)发现已给定的目的地址在这个区域中并不可达,寻路这样的目
的地址可如下所述:
a)若路由路线上预先设定的QoS是被答应的,则优先使用这个设置所在
的路由路线。
b)若路由路线上的QoS都一样,优先级这样设置:
1) 最高优先级:有路线符合寻路领域中的地区地址
2) 中等优先级:有路线符合带有内部标准的可达地址前缀。若有多
个目的地址符合上述要求,最长的前缀优先。
3) 最低优先级:有路线符合带有外部标准的可达地址前缀。若有多
个目的地址符合上述要求,最长的前缀优先。
c)当优先级相同的路线选取时,最短路线优先。在决定最短路线时,支
持预先设置的QoS的路线优先;否则将使用缺省的设置。在相等成本
的路线之间,分区方法(spilitting)可以被应用。
7.3更新过程
更新过程是为了生成和繁殖链环状态信息,并且要可靠的遍及路径领域。
判定过程(Decisionprocess)使用链环状态信息计算路径。
7.3.1输入和输出
输入
--邻接数据库维持在子网络依靠的功能。
--可达成的地址治理目标维持在系统治理层次。
--邻接数据库变化的通知由子网络依靠的功能实现。
(环路向上,环路向下的,邻域向上,邻域向下的,以及成本改变事件)
--附加帧(仅适用于第2层的间接系统)
此帧指示这个系统是否能到达其他领域(穿过第2层路由)。
--连接状态的PDUs
接收过程传递连接状态的PDUs到更新过程,并指示出它所在的邻域。
――PDUs的序号
 接收过程传递PDUs的序号到更新过程,并指示出它所在的邻域。
――其他分割
在第2层的判定过程(指对于第1层的更新过程,但是建立在第2层的间接系
统之上)能够使一系列被指定的分割有效。
输出
――连接状态数据库
――输出信号到达判定过程的事件,此事件或者是接收一个具有信息的LSP,或是
清除一个数据库中的LSP。假如被接收的LSP有一个不同的序列号,又或是其生存
寿命(RemainingLifetime)具有一可变化的长度部分,就不应产生输出事件。
注――
一个执行功能会比较根据序列号的变化存储的LSP的校验和,与之比较的是,
接收到的校验和。若其不同,则假定变化的长度部分不同,
并要把这一事件告知判定过程。若其相同,一个8位对照要产生,用以决定是否报
告此事件。
7.3.2局部链环情形的产生
更新过程是为了产生一系列的LSP。产生一系列的LSP的目的是通知其他的间接系
统(在第1或第2层的子域中)这个连接的状态,此连接是在间接系统和其邻系统
之间的。在间接系统中的更新过程,在以下的环境中产生一个或多个新的LSP:
A) 计时期满的时候;
B) 当收到来自邻域数据库的变化(AdjacencyDatabaseChange)的子网依靠性功能
(SubnetworkDependentFunctions)的通知;
C) 当有一些网络治理特征改变时会引起LSP信息的改变(例如,在寻址手册中的
改变)。
7.3.3手册路由信息(ManualRouteingInformation)的应用
手册路由信息是来自系统治理的路由信息。可分为两类:
a) 手册邻域
b) 可达地址

7.3.3.1手册邻域(ManualAdjacencies)
一个终端系统的邻域可能是由系统治理产生。这样的一个邻域被定义为
手册终端系统邻域。为了产生一个手册终端系统邻域,系统治理将按以下分类:
a) 可从邻域到达的系统Ids
b) 相关的SNPA地址
这些邻域将以带种类手册邻域的形式和邻近系统种类的终端系统的形式出现。这些
邻域向更新过程提供输入,类似于通过ISO9542操作产生的邻域的形式。当状态
改变到达上层邻域时,信息被包括在间接系统自己的第1层LSPs中。
注――手册终端系统邻域不应被包括在代表虚结点的第1层LSPs中,因为那将预
示在广播子网中的所有间接系统具有同样的一系列手册邻域被这个环路定义。
被指派到手册邻域的规则必须是内部规则。
7.3.3.2可达地址
第2层间接系统应该拥有许多由系统生成的可达地址,来治理目标。
当一个可达地址处于状态On下并且其产生环路同样处在状态On下时,其定义的路
由测量标准的名字和每个都将包括在这系统产生的第2层的LSPs内。
被分配给可达到的地址作为治理对象的目标的测量标准既可是内部的,也可是外部
的。
当全部下列条件都实现的时候,可达到的地址被认为是积极的:
a) 父环路处于状态On下;
b) 可达到的地址处于状态On下;
c) 父环路属于广播型或处于数据连接状态运行中。
当一个可达地址由不活跃状态变为活跃状态时,将会使得更新过程包含第2层LSPs
的可达地址的地址前缀,它是由7.3.9的系统产生的。
当一个可达地址由活跃状态变为不活跃状态时,将会使得更新过程中不再包含第2
层LSPs的可达地址的地址前缀。
7.3.4多层LSPs
由于一个LSP的缓冲区的大小是受限制的,它不可能包含所有系统邻域的信息。在
这种情况下,系统可以用多层的LSPs来传递这信息。
在同一个set中的每一个LSP具有同样的源ID域(见第9条),但是他们各自的LSP
号域却不一样。虽然几个不同的LSPs要独立的被更新过程处理,但是答应运用管
道的方法对拓扑分配进行更新。不过,决定过程可以因为他们全部都使用相同的
sourceID来识别他们全部都附属于同一开始系统。
注――
即使信息量的大小可以放在单一的LSP中,系统也可以选择性地选择用几个
LSPs来传递它;
这里使用单一的LSP传递信息不是强制性的。
注――
为了最大限度的控制冗余信息的传输,建议根据环路的可达到的地址前缀信
息,将IS分组。
这样去做将保证假如对另一个路由的领域的环路改变状态,最少的LSP片断
将必须被传送。
在系统中的第1层和第2层的LSP的最大容量,分别由产生L1LSP和产生
L2LSP缓冲区的治理参数控制。
注重――
这些参数应该由系统从始至终的控制。假如不这样做,一些邻域的初始化将失
败。
IS对于LSP号为零时,作如下规定:
a) 下列情况仅在LSP号为零时具有意义:
1) 对于LSP数据库的设置溢出了。
2) IS的类型值field(?)。
3) 区域地址选项。(仅在LSP号为零时出现,见下)。
b) 当上述的项目的某一个的值被改变的时候,IS将用LSP的数字0重新发
行LSP通知变化给其他的IS。其他的LSPs没有必要被重新发行。
假如特定的毗邻关系被分配给特定的LSP数字,它不应再被分配到其他的
LSP数字。
因为把毗邻关系从一个LSP移动到另一个LSP,能给那个系统的连接性造
成暂时的损失。他将会引起原来包括有关毗邻关系的(现在不包括那个信
息)信息的LSP的新版本在其他的LSP的新(现在包括有关毗邻关系的信
息)版本前面被传播出去。
为了减少其影响,下列限制被放到LSPs的信息的工作任务上:
a)
区域地址选项将仅仅发生在LSP数字为的LSP中。
b)
将在地区地址任意选择(AreaAddressesoption)后面,并且在任何的
中端系统(或者就第2层来说,给加上前缀)选择的前面,发生中间
系统邻居任意选择(ISNeighboursoptions)。
c)
EndSystem(orPrefix)Neighbouroptions发生在任何一个AreaAddress
orIntermediateSystemNeighbouroptions的后面。
注――
在这里的上下文中,采用的方法是,从同一LSP或更高一层LSP号中的开始找
到高八位号。
注――
这里的一个执行是为了保证由特定的系统产生的LSPs的号,被包含在10%的
理想数字内。这些理想数字是必须的,假如所有的LSPs被紧密的打包。这样
就可以重新使用那些较低的LSP号,为了新的邻域的需要。假如要把一个邻域
从一个LSP移到另一个LSP中,SRM帧将被作为基本动作。假如这两个SRM
帧没有被设为基本动作,竞争将会存在,两个中的一个将会被先传播,而另一
个则要等待一个完整的传播周期。假如发生这,毗邻关系将从拓扑结构中被错
误的删除,并且,路线可以变得对于LSPGeneratonInterval来说潜在性的,对
时间的时期来说不稳定。当一些事件需要改变LSP信息和系统的时候,系统将
重新发行那个(或者那些)将有不同的内容的LSPs。它不要求重新发行那些不
变的LSPs。这样单一的终端系统的毗邻关系变化,仅仅需要把提到那个毗邻关
系的终端系统邻居任意选择的LSP重新发行。参数的最大的LSP产生间隔和最
小的LSP产生间隔将个别地适用于每个LSP。
7.3.5周期性LSP产生
更新过程将定期地把全部LSPs(第1层或第2层)再生并广播到所有环路(通过把
SRMflag放在每个环路上),这样作是为了传给当地的系统和任何它有关联的虚结
点。中间系统将用最大的LSP产生间隔再生每个LSP,应用的是紧张不安(jitter),
如同10.1中描述。
这些LSPs可以在单一的计时器期满时被完全产生,或者,对于个别的LSP有两个
可供选择的计时器,在这个计时器期满时产生。
7.3.6事件驱动LSP产生
不仅是LSPs会周期性的产生,中间系统也将产生LSP,当有使得信息内容改变的
事件发生的时候。
下列事件可以引起这样的变化:
-邻域或者环路的Up/Down事件
-一个环路的规格(metric)变化
-可达地址的规格(metric)变化
-在手册中变化
地域地址
-在系统ID中变化
-被指定的IS状态的变化
-在等的状态中变化
发生这样的事件的时候,IS将会产生一个再生的带有新的序列号的LSP(s)。假如
一个事件要产生一个以前未被产生的LSP(例如,对于一个不在现存LSP的邻域的
邻域向上事件),序列号将被设为1。IS将通过为每一个环路设置SRM帧,来广播
这个LSP(s)。计时器的最大的LSP产生间隔将不被复位。在产生每一个独立的
LSP时,都存在一个控制向下的计时器(最小的LSP产生间隔)。
7.3.7第一层LSPs的产生
(非虚结点的)
第一层的LSP(不代表虚结点的)在其变化的长度域中包含以下信息:
――在地区地址选项中,有一系列针对IS的手册地区地址。
――在IS的邻域选项中,有一系列IS的邻域系统的IDs,形成于: 一系列邻域
系统的IDs具有一个附加的八位零组(表示为非虚结点),来自邻域的Up
态,环路的形式是点到点式,带有类型L1和类型L2的xneighbourSystem的邻域
功能。
测量标准(为每个被支持的路由的测量标准)被放到环路第1层的测量标准值上。
这一系列的具有附加八位零组的IDs,来源于IS的虚邻域的网络实体。(当要编码
这些项目式,就要标注这个虚帧,见7.2.10.)
缺省的标准被设置为虚拟网所有成本,为了缺省的路由的设置。
剩下的测量标准将被设定为未得到支持。
――一系列的邻域终端系统的IDs形成于:
IS本身的系统ID,根据标准的要求有一个零值。
来自邻域的一系列终端系统IDs,自动设置成Up态,环路形式为点到点式,
进或出邻域终端系统。
测量标准将设置为每个被支持的路由测量标准,并被放到环路的第1层的
标准值上。
――在鉴别信息的领域中
假如系统地区有传输信号功能口令非无效,包括在鉴别信息区包含鉴别信息
类型以及值的承认型的传输口令。
7.3.8第1层的虚结点的LSPs产生
IS将产生一个第1层的虚结点的LSP,环路中的IS是被指定的局域网IS系统。LSP
将在其变化的长度范围内指定下列信息。在零值情况下,支持所有的路由标准。
-不答应地区的地址选项。
注:
因为这些将要设置为虚结点LSP的地区地址已经被设置为可以通过它自己的非
虚结点LSP。
-在IS邻域选项中
对于在环路中邻接IS的一系列IS的IDs,其虚结点LSP产生于:
被指定的IS自身的系统ID,带有附加的八位零(表示非虚结点)。
来自环路邻域的,邻接(xneighbourSystemTypeL1)的IS,邻接(xL2的IS),
邻接(UsageLevel1),并且环路处在Up态,一系列邻域系统IDs。
(neighbourSystemIDs,带有表示非虚结点的附加八位零)
-在终端系统邻域选项中
一系列邻域终端系统的IDs产生于:
这样的终端系统IDs,它们是自动设置的,处于Up态,并且其环路中有与邻域
系统类型有关的虚结点。
-在鉴别信息的领域中
假如系统地区有地区传输信号口令(areaTransmitPassWord)非无效,则包括在鉴
别信息区内,包含有鉴别信息类型的以及值的地区传输信号口令。
7.3.9第二层LSPs的产生
(非虚结点的)
第二层的LSP(不代表虚结点的)在其变化的长度域中包含以下信息:
-在地区地址选项中
如同在7.2.11所描述的那样,给定这中间系统的地区地址的一套计算。
-在分割指定的第二层IS选项中
为了划分第二层的IS,定义了分割指定ID。
-在IS邻域选项中
有一系列IS的邻域系统的IDs,形成于:
IS本身的系统ID,根据标准的要求有一个零值。
来自邻域的一系列终端系统IDs,自动设置成Up态,环路形式为点到点式,进
或出邻域终端系统。
测量标准将设置为每个被支持的路由测量标准,并被放到环路的第2层的标准
值上。
广播类型的全部12个回路的IDs。(即邻域虚结点的IDs)
测量标准(为每个被支持的路由的测量标准)被放到环路第2层的测量标准值上。
-在前缀邻域选项中,一系列不同长度的前缀来源于:
在所有的环路处于On的状态时,一系列操纵对象的可达地址的名字处于On的
状态。
标准被设置为第2层的可达地址的标准值。
-在鉴别信息的领域中
假如系统地区有邻域传输信号口令(domainTransmitPassword)非无效,则包括
在鉴别信息区内,包含有鉴别信息类型的以及值的领域传输信号口令。
7.3.10在第二层的虚结点LSPs的产生
在第二层的虚结点LSP产生于每一个环路,环路中的IS是被指定的第二层局域网IS。
而且,这个LSP在其可变的长度域中包含以下信息。无论在何种情况下,零值被用于
所有被支持的路由规则中。
-不提供地区地址选项。
注重- 因为这些将要设置为虚结点LSP的地区地址已经被设置为可以通过它自己
的非虚结点LSP。
-在IS邻域选项中。
对于在环路中邻接IS的一系列IS的IDs,其虚结点LSP产生于:
被指定的IS自身的系统ID,带有附加的八位零(表示非虚结点)。
一系列带有八位附加零的领域系统IDs(neighbourSystemIDs),它们来自于处在
Up态的环路(此环路邻接邻域系统类型L2的IS)。
-不提供前缀邻域选项。
-在鉴别信息的领域中
假如系统地区有邻域传输信号口令(domainTransmitPassword)非无效,则包括在
鉴别信息区内,包含有鉴别信息类型的以及值的领域传输信号口令。

7.3.11校验和的产生
这个国际标准利用了在ISO 8473中定义了的校验和功能。
当LSP产生时,源IS应当计算其校验和.这个校验和不能再被任何其他系统修改.
此校验和使侦测存储错误成为可能,进而防止其被使用在正确的路由信息中以及被更新
过程进一步传播.
校验和的计算应当包括LSP中出现在RemainingLifetime域之后的所有域,而这个域
和其之前的域不包含在内.以便系统不通过计算就能够使用和更改LSP的生命周期.
作为对硬件失败的一项附加的预防,当源端计算校验和时,应当在开始时将两个校验和
变量初始化为计算出的系统ID(源ID的一部分,例如6字节).(当网络实体有效时,只要系统
ID改变,此值将被计算且存储起来.)然后IS应当在源ID域的第一个ID长度的字节后的内
容上继续校验和的计算.
注重-所有对LSP校验和计算军将源ID域作为第一个字节.这个过程防止了源端
将其它系统的ID当作源而发出连接状态(LinkState)PDU.
7.3.12初始传递
IS应能在连接状态数据库中存储生成的连接状态PDU,覆盖掉系统以前生成的相同LSP
号码的连接状态PDU。然后IS为连接状态PDU设置SRMflag标志,指示这些连接状态PDU
将在IS邻接的所有环中传播。
一个IS应能确保(通过预定资源,或其他发放)它总能存储,并能内部化(internalise)其自
己的非伪网点的零LSP。当它不能存储或不能本地化它自己的LSP的时候,它应当进入7.3.19.1
描述的那种超载情况。
注重-推荐IS能确保(通过预定资源,或其他发放)它总能存储,并能内部化它自己的
LSP(零LSP,非零LSP,伪网点或非伪网点)
7.3.13顺序保持
当一个已存在的连接状态PDU(以相同或不同的序号)被重新传送,但由于本地拓扑数据
库没有发生任何改变,因而它传送相同的消息时(即可变长部分),那么可变长部分带有的消息
顺序应当与原来传送过的LSP相同。
注重-假如数据库的状态产生了一系列的变化而回到某个以前的值,则不需要保持顺
序。只有在没有任何变化的情况下才要求保持顺序。这就答应接收者通过对可变
长部分逐字节比较以侦测信息内容没有任何变化,进而无需重新运行决策过程。
7.3.14LSP的传播
更新过程负责在整个域(在一级的情况下,整个区域)中传播连接状态PDU。
传播的基本机制是扩散,即每个IS会向到所有与其相邻的系统传送某个PDU,除了发送这
个PDU的系统.重复数据被检测到并废弃。
连接状态PDU由接收过程接收。一个系统能够接收的控制PDU(连接状态PDU或序号
PDU)的最大尺寸为ReceiveLSPBufferSize规定的字节数。(也就是说更新过程必须至少提供这
个尺寸的缓冲区,用来接收,存储以及转发收到的连接状态PDU和序号PDU)。假如接收到一
个比该尺寸大的控制PDU,将被认为具有无效的校验和(被更新过程忽略,并却产生一个
corruptedLSPReceived消息)。
一旦收到连接状态PDU,更新过程应当执行下列功能:
a)二级连接状态PDU应当在至少有一个二级邻接的环上传播。
b)一级连接状态PDU应当在至少有一个一级邻接或至少有一个没有标志为仅为二级的
二级邻接上传播.
c)当在一个广播型子网上传播一个一级连接状态PDU,IS将传到地址为ALLL1IS的
多目的子网。
d)当在一个广播型子网上传播一个二级连接状态PDU,IS将传到地址为ALLL2IS的多
目的子网。
注重-当一个连接状态PDU在一个一般拓扑子网络上传播时,数据链接地址是明确的
(因为连接状态PDU不能通过在动态分配的环传播).
e)一个IS接收到一个有错误的校验和或无效的PDU语法的连接状态PDU将会:
1)记录一个环消息corruptedLSPReceived.
2)用0覆盖校验和和剩余生存期
3)将连接状态PDU视为剩余生存期已过期来处理(见7.3.16.4)
f)当一个中介系统收到一个新的(在7.3.16中定义)连接状态PDU时,应当:
1)将连接状态PDU存储到连接状态数据库中
2)将其标志为需要在除了发送这个PDU的环以外的所有环上传播.
g)当一个IS从源S收到一个连接状态PDU,而且认为这个PDU比存储在为S而设的数
据库中的PDU要旧,它应将连接状态PDU设置SRMflag标志为与接收到旧的连接
状态PDU的环相关联,以指示这个已存储的PDU需要发送到接收到旧的连接状态
PDU的环。
h)当一个系统收到一个与已经存储的完全相同的连接状态PDU,则IS应当
1)如在7.3.17中所描述,对它做出应答
2)为收到的连接状态PDU以及环清除SRMflag标志
i)收到0校验和的连接状态PDU应视为其剩余生存期为0.此时,若它的寿命不为0,则
以0覆盖.
更新过程扫描连接状态数据库中连接状态PDU的SRMflag标志设置.当找到某一个时,
倘若时戳lastSent指示传播时间超过minimumLSPTransmissionInterval,IS应当:
1)为它设置SRMflag标志,并在所有的环上传播它
2)更新lastSent.
7.3.15SRMflag与SSNflag标志的处理
对每一个连接状态PDU和每一个需要交换路由信息的环(也就是不在DA环上),有两个标
志:
SRMflag标志(SendRouteingMassege):假如设置了此标志,表示连接状态PDU应
在那个环上传送。在广播型环上,一旦LSP已传送完毕,SRMflag标志清除,但在非
广播型环上,SRMflag标志只有在收到了一个连接状态PDU或序号PDU时才清除,
如下所述:
对于一个序列号为0的LSP或一个externalDomain属性为真的环(见7.3.15.2),不设
置其SRMflag标志.
SSN标志(SendSequenceNumbers):假如此设置了标志,表示连接状态PDU的信息
应当包含在环上传送的部分序号PDU上.当序号PDU传送完毕,SSNflag标志清除。
注重,部分序号PDU作为连接状态PDU已经被接收的应答。
对于一个externalDomain值为真的环,不能设置其SSNflag标志。
7.3.15.1接收到连接状态PDU的动作
当在环C接受到一个连接状态PDU,IS将执行以下功能:
a)执行以下PDU接受测试:
1)假如LSP在一个externalDomain属性为真的环上被接收,IS应当放弃这个
PDU。
2)假如PDU的ID长度域不等于IS的routeingDomainIDLength的值,PDU应当
被放弃并且产生一个IDfieldLengthMismatch的消息。
3)假如这是一个一级LSP,并且areaRecievePasswords非空,那么执行以下测试:
i)假如PDU不包含认证信息域,则PDU将被放弃并且产生一个
authenticationFailure消息。
ii)假如PDU包含认证信息域,但认证信息的类型不是密码,则这个PDU应当被
接受,除非IS实现的认证过程指出密码类型。在此情况下,IS应当接受还是忽
略这个PDU不在本国际标准讨论范围内。
iii)否则,IS应当将收到PDU的密码和areaReceivePasswords(扩充到
areaTransmitPasswords)进行比较。假如PDU的密码与以上任一个值匹配,IS
应当接受这个PDU进行进一步处理。否则IS应当忽略这个PDU,并产生一个
authenticationFailure熟悉失败消息。
4)假如这是一个二级LSP并且domainReceivePasswords为非空,则执行以下测试:
i)假如PDU不包含认证信息域,则这个PDU应当被废弃,并产生一个
authenticationFailure认证失败消息。
ii)假如PDU包含认证信息域,但认证信息的类型不是密码,则这个PDU应当被
接受,除非IS实现的认证过程指出密码类型。在此情况下,IS应当接受还是忽
略这个PDU不在本国际标准讨论范围内。
iii)否则,IS应当将收到PDU的密码和domainReceivePasswords(扩充到
domainTransmitPasswords)进行比较.假如PDU的密码与以上任一个值匹配,IS
应当接受这个PDU进行进一步处理。否则IS应当忽略这个PDU,并产生一个
authenticationFailure熟悉失败消息。
b)假如LSP有0剩余生存期,执行7.3.16.4中的动作。
c)假如LSP的源S为一个IS或为一个除了最后一个字节全部都与接收IS的SystemID
相等的伪网点,并且接收IS数据库中不存在此LSP或是存在此LSP但是此LSP不
被认为是在由这个系统生成的LSP集合中(例如:此LSP是由以前的系统生成的),
则执行7.3.16.1中描述的动作。
d)假如LSP的源S是一个第一个ID长度字节等于接收IS的systemID的系统(伪网点
或其他),并且接收IS在其数据库中当前由源S生成的LSP系列中有一个LSP(例
如:一个由此IS生成的LSP),执行7.3.16.1中的动作。
e)否则(源S是其他系统):
1)假如该LSP比存储在数据库中的新,或者原本在数据库中就不存在:
i)存储新的LSP,用接收到的LSP覆盖数据库中已经存在的此源的LSP。
ii)为该LSP设置环C以外的其他环的SRMflag标志。
iii)清除环C的SRMflag标志。
iv)假如C是一个非广播型环,为该LSP设置环C的SSNflag标志。
v)为该LSP清除环C以外的其他环的SSNflag标志。
2)假如该LSP与存储在数据库中的相等(有相同的序列号,剩余生存期都为0
或非0,相同的校验和):
i)清除环C的SRMflag标志。
ii)假如C是一个非广播型环,为该LSP设置环C的SSNflag标志。
3)假如该LSP比存储在数据库中的旧:
i)为环C设置SRMflag标志。
ii)清除环C的SSNflag标志位。
当存储一个新的LSP时,IS应先确定它有足够存储资源来存储该LSP以及更新程序处
理该LSP所需要的任何内部数据结构。假如这些资源是无效的,则该LSP被忽略。它既不能
被存储也不能应答。当一个LSP因为上述原因被忽略时,IS将进入“等待状态”(见7.3.19)。
当试图为一个已存在的LSP存储一个新版本时(有相同的LSPID),这个新版本长度小于
或等于已存在的LSP,已存在的LSP将从路由信息中移出,新的LSP将作为一个单独的原子
动作存储。这就确保了这样一个LSP(它能从一个超载的IS中携带LSP数据库超载的指示)
将不会因为存储资源的缺乏而被忽略。
7.3.15.2接收到序号PDU时的动作
当在环C上接收到序号PDU(完全或部分的序号PDU,见7.3.17)时,IS应该执行以下功能:
a)执行以下PDU接受测试:
1)假如接收到的SNP属于一个externalDomain属性为TRUE的环,则IS应当废弃该PDU.
2)假如PDU的ID长度域不等于IS的routeingDomainIDLength,则该PDU应当被废弃,
并且产生一个ID域长度不匹配消息.
3)假如这是一个一级SNP并且areaReceivePasswords为非空,则执行以下测试:
i)假如PDU不包含认证信息域,则这个PDU应当被废弃,并产生一个认证失败消
息。
ii)假如PDU包含认证信息域,但认证信息的类型不是密码,则这个PDU应当被接受,
除非IS实现的认证过程指出密码类型。在此情况下,IS应当接受还是忽略这个
PDU不在本国际标准讨论范围内。
iii)否则,IS应当将收到PDU的密码和areaReceivePasswords(扩充到
areaTransmitPasswords)进行比较。假如PDU的密码与以上任一个值匹配,IS应
当接受这个PDU进行进一步处理。否则IS应当忽略这个PDU,并产生一个
authenticationFailure熟悉失败消息。
4)假如这是一个二级SNP并且domainReceivePasswords为非空,则执行以下测试:
i)假如PDU不包含认证信息域,则这个PDU应当被废弃,并产生一个
authenticationFailure认证失败消息。
ii)假如PDU包含认证信息域,但认证信息的类型不是密码,则这个PDU应当被接受,
除非IS实现的认证过程指出密码类型。在此情况下,IS应当接受还是忽略这个
PDU不在本国际标准讨论范围内。
iii)否则,IS应当将收到PDU的密码和domainReceivePasswords(扩充到
domainTransmitPasswords)进行比较。假如PDU的密码与以上任一个值匹配,
IS应当接受这个PDU进行进一步处理。否则IS应当忽略这个PDU,并产生一
个 authenticationFailure熟悉失败消息。
b)对于每个在序号PDU中报告的LSP数据
1)假如报告的值等于数据库值,并且C是一个非广播环,则清除LSP的环C的SRMflag
标志。
2)假如报告的值比数据库值旧,则清除SSNflag标志,并设置SRMflag标志。
3)假如报告的值比数据库值新,则将设置SSNflag标志,并且若C是非广播环,清除
SRMflag标志。
4)假如不存在这个LSP的数据库入口,并且报告仍在生命期内,LSP的校验和以及序号域
均非零,则使用序号0创建一个入口(见7.3.16.1),并且设置入口和环C的SSNflag标
志。在任何情况下,都不应设置一个零序号的LSP的SRMflag标志。
注重-这是因为0序号的LSP在语义上等价于没有LSP的信息.假如这样的LSP
设置了SRMflag标志进行传输,将会导致不必要的带宽和存储资源的浪费。
c)假如此序号PDU是一个完全的序号PDU,则应为C和所有的LSP设置SRMflag标志(所
有的LSP指LSPID在CSNP中由StartLSPID和EndLSPID域指定范围内的LSP)。
7.3.15.3完全SNP间隔过期时的动作
IS应当在每个环C的CompleteSNPInterval秒内执行以下操作:
a)假如C是一个广播环,那么
1)假如IS是在环C上的一级指定IS,应当在环C上传送一个一级完全序号PDU完全集,
忽略一级连接状态PDU中的SSNflag标志。假如IS的areaTransmitPasswords非空,
那么IS应当在传送的CSNP中包含认证信息域,指示密码认证类型并包含
areaTransmitPasswords作为认证值。
2)假如IS是在环C上的二
评论
评论
发 布