综述
本备忘录状况
本文是一份Internet草案。Internet草案是Internet Engineering Task Force(IETF)的工作文档及其涉及的领域与工作组。请注意,其它工作组也可发布工作文档作为Internet草案。
Internet草案的有效期最长为6个月,这是一个有可能随时被其它文档修改、替代或废止的草案文档。使用Internet草案作为参考材料或不以"进行中的工作"的方式来引用它们都是不恰当的。
若想了解任意一份Internet草案的当前状况,请查阅包含在ftp.is.co.za(非洲),nic.nordu.net(欧洲),munnari.oz.au(环太平洋地区),ds.internic.net(美国东海岸)或ftp.isi.edu(美国西海岸)上,Internet-Drafts Shadow目录中的"lid-abstracts.txt"文件。
摘要
本文概括介绍了一种称为标记交换的技术,该技术是一种用于网络层信息包转发的新方法。本文主要描述这种标记交换体系结构的两个主要部件:转发与控制。转发通过应用简单的标签交换技术来完成实施,而现有的网络层路由协议则与联编和分配标记的机制一同进行用于控制。标记交换能够保持IP的扩展属性,并有助于提高IP网的伸缩能力。标记交换并不依赖于ATM,它能直接应用于ATM交换机。本文同时还介绍了一系列标记交换的应用与部署场合。
引言
Internet的持续发展日益要求Internet服务提供商(ISPs)提供更高带宽。不过,Internet的发展并不是更高带宽的唯一驱动因素─对更高带宽的需求,还来源于日渐蓬勃发展的多媒体应用。
而更高带宽的需求又要求:路由器对多播与单播流量都具有更高的转发性能(每秒信息包数)。
Internet的发展也要求Internet路由系统改善其扩展性能。由单个路由器维护大量路由信息的能力与建立一个路由知识层的能力对支持一个高质量、可扩展的路由系统是必不可少的。
我们已经意识到有必要改善转发性能,同时,增加路由功能支持多点广播,从而能够更灵活地控制流量路由,并提供建立一个路由知识层的能力。不仅如此,拥有一个能支持适度发展以适应新的需要的路由系统,正变得越来越重要。
标记交换是针对这些挑战而提供的一种有效解决方案。标记交换可以将网络层路由的灵活性及丰富功能与标签交换转发模式的简易性紧密融合在一起。标记交换转发模式(标签交换)的简易性改进了转发性能,同时保持了极具竞争力的性能价格比。通过将大范围的转发粒度与标记联系起来,同一转发模式可以用于支持各种各样的路由功能,比如:基于目的地的路由,多点广播,路由知识层与灵活的路由控制。最后,在保持同样转发模式的情况下把简单的转发,大范围的转发粒度与发展路由功能的能力结合起来,便产生了可以确保适度发展以适应新涌现需求的路由系统。
本文档其余部分的安排如下:第2节介绍标记交换的主要组成部件─转发与控制。第3节阐述转发部件。第4节阐述控制部件。第5节阐述标记交换如何与ATM并用。第6节阐述标记交换协助提供一系列服务质量的用途。第7节简单地阐述了可能的配置场合。第8节结论。
标记交换部件
标记交换包括两个部件:转发与控制。转发部件运用信息包所携带的标记信息(tags)和标记交换机所维护的标记转发信息来完成信息包的转发。控制部件负责在一组互连的标记交换机中维护正确的标记转发信息。
转发部件
标记交换所用的基本转发模式是以标签交换的构想为基础的。当一个带有标记的信息包被标记交换机收到时,该交换机用这个标记作为其Tag Information Base(TIB)中的一个索引。TIB的每一个项都包括一个进站标记,一个或多个表单子项(出站标记、出站接口、出站链路级信息)。如果交换机发现一个项的进站标记与该信息包所携带的标记相同,那么交换机就会对该项的每个子项(出站标记,出站接口、出站链路级信息)进行处理,即用出站标记替换信息包中的标记,用出站链路级信息替换信息包中的链路级信息(如:MAC地址)。并通过出站接口,将此信息包转发出去。
从以上对转发部件的介绍中,我们可以发现如下几点:第一,转发决策是以精确匹配算法为基础的,该算法用一个固定长度、相当短的标记作为索引。相对于传统的用于网络层的最长匹配转发而言,它使用了一个简化的转发过程。
反过来,这确保了更高的转发性能(每秒更多的信息包数)。这个转发过程,简单到足以允许直接的硬件实施。第二点发现是:转发决策与标记的转发粒度无关。例如,同一转发算法适用于多路广播与单路广播─一个单路广播项只会有一个单一的(出站标记、出站接口,出站链路级信息)子项,而一个多路广播会有一个或许多个(出站标记,出站接口,出站链路级信息)子项。(对于多访问链路,在这种状况下,出站链路级信息将包括一个多路广播MAC地址)。这就说明了同一转发模式是如何运用标记交换来支持不同的路由功能的(如多路广播、单路广播、等等)。
这一简单的转发过程必须与标记交换的控制部件不相耦合。新的路由(控制)功能可以被方便地部署,而无需干扰转发模式。这就意味着:当增添新的路由功能时,没必要重新优化转发性能(通过修改硬件或软件)。
标记封装
标记信息可以以多种途径的方式封装在信息包中:
以一个小"楔子"标记头,填加在层与Network Layer头之间;
如果层头提供了足够的语义(例如,下面讨论的ATM),可作为层头的部分;
作为Network Layer头的部分(如:以适当修改的语义,来使用Ipv6中的Flow Label域)。因此通过虚拟的任何介质类型(包括点到点链路,多访问链及ATM)实施标记交换是可能的。
还应注意到:标记转发部件与网络层无关。使用特定于某个Network Layer协议的控制部件,实现以不同的Network Layer协议应用标记交换。
控制部件
标记交换所必需的是标记与网络层路由之间的联编概念。为了提供良好的伸缩性能,同时适应多种路由功能,标记交换可支持很大范围的转发粒度。在一个极端上,一个标记可能被关联(联编)到一组路由上(更具体地说,是与这个组内路由的Network Layer Reachability有联系在另一个极端上,一个标记可能被联系到一个单独的应用流上(例如,一个RSVP流)。一个标记也可能被联系到一个多路广播树上。
控制部件负责产生标记联编信息,然后在标记交换机中将这个标记联编信息进行分配。
控制部件是一系列模块的集合,每个模块均可支持一项特定的路由功能。为了支持新的路由功能,可随时增添新的模块。下面,对这些模块进行简要介绍。
基于目的地的路由
在本节中,我们将介绍标记交换如何支持基于目的地的路由。回忆一下,用基于目的地的路由,一个路由器是根据信息包中携带的目的地址和转发信息库(FIB)中存贮的信息(由路由器维护)来作转发决策的。路由器是用其从路由协议(例如,OSPF,BGP)中接到的信息来构造其FIB的。
为了以标记交换支持基于目的地的路由,一个标记交换机可以象一个路由器一样参与路由协议(例如,OSPF,BGP),并用从这些协议中接到的信息来构造其FIB。
进行标记分配及标记信息库(TIB)管理的三种许可方法为:(a)下行标记分配,(b)下行按需标记分配及(c)上行标记分配。
在所有情况下,交换机分配标记并将它们联编到其FIB的地址前缀码上。在下行分配中,信息包中携带的标记是由链路的下行端的交换机(就数据流的方向而言)产生并取编到前缀码上的。在上行分配中,标记是在链路的上行端,被分配和联编的。"按需"分配意味着只有在上行交换机要求去做时,标记方才由下行交换机分配和分布。方法(b)与(c)在ATM网络中最有用(参见第5节)。请注意,在下行分配中,交换机负责:生成应用于进站数据信息包的标记联编,并从其毗邻的交换机接收出站信息包的标记联编。在上行分配中,交换机负责:为出站标记生成标记联编,如:应用于离开此交换机的数据信息包的标记,并从其毗邻交换机接收进站信息包的联编。
下行标记分配方案操作如下:交换机为其FIB中的每一个路由分配一个标记。用设置给这个分配标记的进站标记,在其标记信息库(TIB)中生成一项,然后把这个(进站)标记与这个路由之间的联编通知给其它的领接标记交换机。这个通知,或者通过将此联编置于现有的路由协议上或者通过使用一个独立的标记分配协议(TDP)来实现。当一个标记交换机接收到一个路由的标记联编信息,并且那个信息是由那个路由的下一次跳转所生成,则这个交换机就把这个标记(作为联编信息的一部分携带)放入与此路由关联的那个TIB项的出站标记中。这就产生了出站标记与路由之间的联编。
下行按需标记配置方案操作如下:交换机为其FIB中每个路由指定下一次跳转。然后向下一次跳转发布一个请求(通过TDP):索要那个路由的标记联编。当下一个跳转接收到这个请求时,它就分配一个标记,以设置给这个被分配标记的进站标记,在其TIB中产生一项,然后再把这个(进站)标记与这个路由之间的联编返回至发出此原始请求的那个交换机。当那个交换机接收到这个联编信息后,它就会在其TIB中生成一项,并将此项中的出站标记设置成从下一个跳转接收到的值。
上行标记分配方案如下使用:如果一个标记交换机有一个或多个点到点接口,则它为其FIB中那些下一个跳转通过这些接口之一可及的每一个路由,分配一个标记,用设置给此被分配标记的出站标记,在其TIB生成一项,然后把这个(出站)标记与这个路由之间的联编通知给下一个跳转(通过TDP)。当一个正是下一个跳转的标记交换机接收到这个标记联编信息时,这个