网络在协议之间的自动转换转让专利

申请号 : CN201280009404.6

文献号 : CN103416010B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 欧利·图恩威廉·马克·汤斯雷港特·范·德·韦德沃伊切赫·德克

申请人 : 思科技术公司

摘要 :

除了其它内容,一个实施例包括与网络中的不同通信协议之间的自动转换相关联的方法、装置、计算机存储介质、机构和手段。在一个实施例中,自动转换路由器以及有关哪些非本地协议需要被跨网络传输的认知被自动地发现。根据需要,自动地建立通信路径以传输这些非本地协议。在将网络从一个协议转换到另一个协议,例如从互联网协议版本4转换到版本6时,一个实施例是特别有用的。

权利要求 :

1.一种用于网络在协议之间的自动转换的方法,包括:

由网络中的多个自动转换路由器自动发现耦合至所述多个自动转换路由器的多个互联网协议版本6IPv6岛,所述多个自动转换路由器经由一个或多个互联网协议版本4IPv4网络被通信地耦合,其中所述自动发现包括所述多个自动转换路由器中的每个广告各自的自动转换路由能力;

响应于所述多个自动转换路由器以及所述多个IPv6岛的所述自动发现:由所述多个自动转换路由器中的一个或多个基于IPv4路由数据库自动地确定将被建立在所述多个自动转换路由器中的两个或更多个自动转换路由器之间的用于通信地耦合所述多个IPv6岛的一个或多个IPv4隧道;

响应于所述一个或多个IPv4隧道的确定:自动地建立所述一个或多个IPv4隧道;以及通过所述一个或多个IPv4隧道中的IPv4隧道在所述多个自动转换路由器中的自动转换路由器之间传送IPv6分组。

2.如权利要求1所述的方法,包括:响应于所述多个IPv6岛中的特定对,经由所述一个或多个IPv4隧道中的一个或多个特定IPv4隧道的所述通信地耦合被经由一个或多个IPv6网络通信地耦合:自动地切换为通过所述一个或多个IPv6网络来传送IPv6分组。

3.如权利要求2所述的方法,其中第一自动转换路由器和第二自动转换路由器经由所述一个或多个IPv6网络被通信地耦合,并且先前在本地被IPv4通信地耦合至所述一个或多个IPv4网络;并且其中所述方法包括:在所述第一自动转换路由器和所述第二自动转换路由器之间自动建立一个或多个IPv6隧道,并且通过所述一个或多个IPv6隧道来传送IPv4分组。

4.如权利要求1所述的方法,包括通过经由路由协议在所述多个自动转换路由器之间传送路由信息,来建立所述IPv4路由数据库。

5.一种用于网络在协议之间的自动转换的方法,包括:

由第一自动转换路由器基于与网络中的一个或多个其它路由器交换的信息,来发现所述网络中的第二自动转换路由器、以及所述第二自动转换路由器支持多个互联网协议之间的自动转换的标识,其中对所述第二自动转换路由器的发现包括:所述第二自动转换路由器广告所述第二自动转换路由器的自动转换路由能力;

基于对所述第二自动转换路由器以及它的所述自动转换能力的发现:由所述第一自动转换路由器基于包括用于本地支持的互联网协议的路由信息的路由数据库,使用所述网络中的所述本地支持的互联网协议来确定到所述网络中的所述第二自动转换路由器的一个或多个路径;

响应于到所述第二自动转换路由器的所述一个或多个路径的确定:在所述第一自动转换路由器和所述第二自动转换路由器之间建立通信通道;以及通过所述第一自动转换路由器和所述第二自动转换路由器之间的所述通信通道,来传送不同于所述本地支持的互联网协议的第二互联网协议的分组。

6.如权利要求5所述的方法,包括:响应于所述第一自动转换路由器和所述第二自动转换路由器能够通过第二互联网协议网络通信,从通过所述第一自动转换路由器和所述第二自动转换路由器之间的所述通信通道来传送所述第二互联网协议的分组,自动地切换为在所述第一自动转换路由器和所述第二自动转换路由器之间通过所述第二互联网协议网络来传送所述第二互联网协议的分组。

7.如权利要求6所述的方法,包括移除所述第一自动转换路由器和所述第二自动转换路由器之间的所述通信通道。

8.如权利要求7所述的方法,包括:

由所述第一自动转换路由器基于包括用于所述第二互联网协议的路由信息的路由数据库,使用所述网络中的所述第二互联网协议来确定到所述第二互联网协议网络中的所述第二自动转换路由器的一个或多个第二路径;

响应于到所述第二自动转换路由器的所述一个或多个第二路径的确定:通过所述第二互联网协议网络在所述第一自动转换路由器和所述第二自动转换路由器之间建立第二通信通道;以及通过所述第一自动转换路由器和所述第二自动转换路由器之间的所述第二通信通道,来传送所述本地支持的互联网协议的分组。

9.如权利要求8所述的方法,包括响应于确定不存在附接到所述第一自动转换路由器和所述第二自动转换路由器中的每个自动转换路由器的本地支持的互联网协议岛,来自动地移除所述第一自动转换路由器和所述第二自动转换路由器之间的所述第二通信通道。

10.如权利要求8所述的方法,其中所述本地支持的互联网协议是互联网协议版本

4IPv4,并且所述第二互联网协议是互联网协议版本6IPv6。

11.如权利要求8所述的方法,其中所述本地支持的互联网协议是互联网协议版本

6IPv6。

12.如权利要求5所述的方法,其中所述本地支持的互联网协议是互联网协议版本

4IPv4,并且所述第二互联网协议是互联网协议版本6IPv6。

13.如权利要求12所述的方法,其中所述第一自动转换路由器和所述第二自动转换路由器之间的所述通信通道是隧道。

14.如权利要求5所述的方法,其中所述本地支持的互联网协议是互联网协议版本

6IPv6。

15.一种用于网络在协议之间的自动转换的装置,包括:

一个或多个处理元件;

存储器;

多个接口,所述多个接口被配置为发送和接收分组;以及

一个或多个分组交换机构,所述一个或多个分组交换机构被配置为在所述多个接口之间交换分组;

其中所述一个或多个处理元件被配置为执行下述操作,包括:

基于与网络中的一个或多个其它路由器交换的信息,来发现所述网络中的自动转换路由器、以及所述自动转换路由器支持多个互联网协议之间的自动转换的标识;

基于对所述自动转换路由器的发现以及它的所发现的自动转换能力:基于包括用于本地支持的互联网协议的路由信息的路由数据库,使用所述网络中的所述本地支持的互联网协议来确定到所述网络中的所述自动转换路由器的一个或多个路径;以及响应于到所述自动转换路由器的所述一个或多个路径的确定,建立到所述自动转换路由器的通信通道;并且其中所述装置被配置为通过所述装置和所述自动转换路由器之间的所述通信通道,来传送不同于所述本地支持的互联网协议的第二互联网协议的分组。

16.如权利要求15所述的装置,其中所述操作包括:响应于能够通过第二互联网协议网络与所述自动转换路由器通信,从通过所述通信通道来传送所述第二互联网协议的分组自动地切换为通过所述第二互联网协议网络向所述自动转换路由器传送所述第二互联网协议的分组。

17.如权利要求16所述的装置,包括:

基于包括用于所述第二互联网协议的路由信息的路由数据库,使用所述网络中的所述第二互联网协议来确定到所述第二互联网协议网络中的所述自动转换路由器的一个或多个第二路径;

响应于到所述自动转换路由器的所述一个或多个第二路径的确定:通过所述第二互联网协议网络建立与所述自动转换路由器的第二通信通道;以及通过与所述自动转换路由器的所述第二通信通道,来传送所述本地支持的互联网协议的分组。

18.如权利要求17所述的装置,包括响应于确定不存在附接到所述装置和第二自动转换路由器中的每个的本地支持的互联网协议岛,自动地移除所述第二通信通道。

19.如权利要求17所述的装置,其中所述本地支持的互联网协议是互联网协议版本

4IPv4,并且所述第二互联网协议是互联网协议版本6IPv6。

20.如权利要求17所述的装置,其中所述本地支持的互联网协议是互联网协议版本

4IPv4,并且所述第二互联网协议是互联网协议版本6IPv6。

21.如权利要求15所述的装置,其中所述装置是自动转换路由器。

说明书 :

网络在协议之间的自动转换

技术领域

[0001] 本公开一般地涉及网络中不同通信协议之间的自动转换,诸如但不限于网络在互联网协议版本4到版本6之间的自动转换。

背景技术

[0002] 通信行业正在迅速改变,以适应新兴的技术和日益增加的客户需求。客户对新应用和现有应用的增强性能的需求驱使着通信网络和系统供应商使用具有更高的速度和容量(例如,更大的带宽)的网络和系统。在尝试达成这些目标时,许多通信供应商所采用的常见方法是使用分组交换技术。
[0003] 在局域网和广域网(包括互联网)中广泛部署和使用了互联网协议版本4(IPv4)来传送信息。互联网协议版本6(IPv6)是被设计用来接替IPv4的互联网协议版本。但是,IPv4和IPv6的头部是显著不同的,并且因此,这些协议不直接交互操作。

发明内容

[0004] 除了其它内容,公开了与网络中的不同通信协议之间的自动转换相关联的方法、装置、计算机存储介质、机构和手段。一个实施例包括在包含多个自动转换路由器的网络中执行的方法。当然,一个实施例包含单个或者一个以上自动转换路由器进行的转换的多个方面。此外,一个实施例进行操作,以在因特网协议以外的通信协议和/或不同的因特网协议版本之间自动地转换。对特定协议的使用是出于示意性目的,并且为了便于读者理解,仅描述使用实施例的一个示例。
[0005] 一个实施例最初在占主导地位的互联网协议版本4(IPv4)网络中操作,其中该IPv4网络正转换为互联网协议版本6(IPv6)网络。自动转换路由器自动发现(auto-discover)其它自动转换路由器和/或耦合到该些自动转换路由器的互联网协议版本6(IPv6)岛。这些岛之间的IPv4隧道是基于IPv4路由数据库被计算出来,并且被建立的。随后,通过这些建立的IPv4隧道来传送IPv6分组,以提供自动转换路由器和需要它的IPv6岛之间的IPv6通信。由于网络的本地(native)IPv4由IPv6取代,或者与IPv6并行操作,所以该网络被更新以根据需要自动地添加和移除IPv4和/或IPv6隧道从而通信地耦合这些协议岛。例如,在一个实施例中,当先前通过IPv4隧道被通信地耦合的IPv6岛变得经由IPv6被耦合时,IPv6分组通过IPv6网络部分被传送,而不再通过IPv4隧道(这些隧道可以从网络中移除)被传送。此外,由于向IPv6的转换的发生,可能创建IPv4岛,并且上述同样的过程被一个实施例用来自动发现IPv4岛,并且经由IPv6隧道来通信地耦合它们。

附图说明

[0006] 所附权利要求阐述了一个或多个实施例的特征的特性。结合附图,通过下面具体的描述可以最好地理解(一个或多个)实施例以及它的优点,其中:
[0007] 图1示出了根据一个实施例操作的网络;
[0008] 图2A-E示出了根据一个实施例操作的网络;
[0009] 图3A-F示出了根据一个实施例操作的网络;
[0010] 图4A示出了在一个实施例中执行的自动转换路由器的过程;
[0011] 图4B示出了在一个实施例中执行的确定自动转换路由器之间的隧道的过程;
[0012] 图5示出了在一个实施例中执行的自动转换路由器的过程;
[0013] 图6示出了根据一个实施例操作的分组交换设备;并且
[0014] 图7示出在一个实施例中使用的装置或组件。

具体实施方式

[0015] 除了其它内容,公开了与网络中的不同通信协议之间的自动转换相关联的方法、装置、计算机存储介质、机构和手段。本文所述的实施例包括各种元件和限制,其中没有一个元件或限制被视为关键元件或限制。每个权利要求整体上单独叙述了本实施例的一个方面。而且,除了其它内容,所述的一些实施例可包括但不限于,系统、网络、集成电路芯片、嵌入式处理器、ASIC、方法和包含指令的计算机可读介质。一个或多个系统、设备、组件等可包括一个或多个实施例,这些实施例可包括由相同或不同的系统、设备、组件等执行的权利要求的一些元件或限制。处理元件可为通用处理器、专用处理器(task-specific processor)或用于执行相应处理的其它实施方式。下文中所描述的实施例囊括了各个方面和配置,其中附图示出了示例性和非限制性的配置。注意,用于执行方法和处理块操作的计算机可读介质和手段(例如,被配置为执行这种操作的处理器和存储器或其它装置)被公开,并且符合实施例的可延伸的范围和精神。注意,在本文中,“装置(apparatus)”一词的使用与其常见定义——器具(appliance)或设备(device)—致。
[0016] 注意,附图中示出的步骤、连接、以及信号和信息的处理(包括但不限于,任何方块图和流程图以及消息顺序图)通常可以以相同或不同的串行或并行顺序来执行,和/或通过不同的组件和/或过程、线程等来执行,和/或通过不同的连接且与其它实施例中的其它功能组合来执行,除非使得实施例不能实施,或者明示或暗示需要按某一顺序(例如,读取值并处理该读取值的顺序-必须先获得该值,然后再对其进行处理(尽管一些相关联的处理也可在读取操作之前执行,与读取操作同时执行,和/或在读取操作之后执行))。还需注意,除非明确说明,否则在此文件中描述或参照的事物不能被认为是此申请的现有技术。
[0017] 本文中术语“一个实施例”被用来提起特定实施例,其中对“一个实施例”的每一次提起可以指代不同的实施例,并且在描述相关联的特征、元件和/或限制时在本文中重复使用这个词并不会建立每一个实施例必须包括的相关联特征、元件和/或限制的累积集合,尽管实施例通常可能包括所有这些特征、元件和/或限制。另外,本文中术语“第一”、“第二”等通常被用来表示不同的单元(例如,第一元件、第二元件)。在本文中使用这些术语并不一定意味着某种顺序(诸如,一个单元或事件出现或发生在另一单元或事件之前),而是提供了一种区分特定单元的机制。此外,短语“基于X”和“响应于X”用来指示推导或促使产生某事物的“X”项目的最小集合,其中“X”是可扩展的,且并不一定描述被执行操作的项目的完整列表等。此外,短语“被耦合到”用来指示两个元件或设备之间的某种程度的直接或间接连接,其中一个或多个耦合设备修改或不会修改耦合信号或传送信息。此外,本文中术语“或者”被用来表示从连续的项目中选择一个或多个项目(包括所有项目)。此外,过渡性术语“包括(comprising)”(其与“包含(including)”、“含有(containing)”或“特征在于”同义)是包括界限的且是开放式的,并且不排除附加的、未列举出的元件或方法步骤。最后,术语“特定机器”在用于执行步骤的方法权利要求中被引用时,是指35USC§101机器法定类别内的特定机器。
[0018] 特别地转向附图,图1示出了根据一个实施例操作的网络100。如图所示,网络100包括自动转换路由器101和102,其中该自动转换路由器101和102经由在本地运行协议N的网络111被通信地耦合(注意,网络111可以并且通常包括其它分组交换设备和通信仪器)。路由器101和102被描述为“自动转换”路由器,因为除了路由器的正常能力之外,它们还包括一个实施例的自动转换能力。
[0019] 出于说明性目的,网络100正在运行N个用于传送分组的不同协议,其中这些协议诸如但不限于:用于在分组交换设备(例如,网桥、路由器)之间传送分组的一个或多个网络层、或者不同的互联网协议版本(例如,IPv4)的协议。如图所示,自动转换路由器101和102中的每个具有在一个或多个接口上启用的所有N个协议(P1-PN),而网络111仅通过协议N传送分组。这意味着,存在由自动转换路由器101和102中的每个支持的N-1个孤立的流量岛(isolated island of traffic),协议N的流量通过网络111被传送,并且网络111在本地使用协议N来传送分组。自动转换路由器101和102(通常基于跨网络111传送的路由协议来)自动发现彼此以及这N-1个协议岛,并且确定如何通信地耦合这N-1个协议岛。一个实施例在自动转换路由器101和102之间通过网络111建立一个或多个协议N隧道,这N-1个协议的分组将通过这些隧道被传送。
[0020] 在一个实施例中,协议N指一个以上协议,所以N-1个协议的分组流量可以横跨该多个本地协议被分配和传输。注意,形容词“本地”在本文中被用来指代用于在网络中的路由器之间传输分组的基础协议(例如,用于直接传送(即,不必通过本地协议隧道发送)分组的层3协议)。例如,如果网络111在自动转换路由器101和102之间仅经由IPv4传送分组,并且在自动转换路由器101和102之间使用IPv4隧道传送IPv6分组,则IPv4是网络111的本地协议并且IPv6不是网络111的本地协议。
[0021] 此外,网络111可以在本地支持一个或多个协议,所使用的这些(一个或多个)本地协议可以随时间而改变。例如,在正在IPv4和IPv6之间转换的网络中,本地协议最初可以是IPv4。然而,当配置改变从而使得自动转换路由器101和102可以使用IPv6通过网络111直接通信时,现在IPv6是本地协议。此外,在含有三个或更多的自动转换路由器的网络中,可以有多个本地协议(例如,自动转换路由器A和B之间的IPv4,以及自动转换路由器B和C之间的IPv6)。
[0022] 这些进展的示例由图2A-2E和图3A-F中的网络进展示出。
[0023] 图2A示出了根据一个实施例操作的网络200。如图所示,网络200包括自动转换路由器201和202,其中该自动转换路由器201和202经由在本地使用IPv4的网络211被通信地耦合。如图所示,自动转换路由器201和202分别需要传送IPv4分组,它们可以通过网络211在本地这样做。
[0024] 但是,如图2B所示,IPv6功能可在自动转换路由器201和202中的每个自动转换路由器的一个或多个接口上开启。如图所示,自动转换路由器201和202中的每个自动转换路由器都可以使IPv4和IPv6在不同于连接到网络211的接口的其它接口上被启用。可以通过网络211传送IPv4分组,并且传统的路由协议将启用这种通信。不过,存在IPv6岛——由于自动转换路由器201和202中的每个自动转换路由器上的IPv6流量都不能通过网络211在本地被传送。响应于这些岛,自动转换路由器201和/或202自动发现彼此以及它们各自的IPv6岛(例如,它们有非本地的流量要传送)。
[0025] 一个实施例执行将被支持的非本地协议和其他自动转换的这种自动发现。在第一到第二协议之间的网络转换发生的一个实施例中,用于自动转换路由器201或202的接口的非本地协议是固有的——因为它是两个协议中在接口上不被本地支持的协议。在一个实施例中,特定路由器支持一个实施例的自动转换能力的标识(例如,它是“自动转换路由器”)通过本地网络经由路由协议(例如,边界网关协议、内部网关路由协议、开放最短路径优先、中间系统到中间系统、内部网关协议)被传送。例如,在一个实施例中,该标识被承载在不透明的值、社区属性或者路由协议的其它值中。此外,在一个实施例中,使用服务描述或发现协议来广告和发现路由器的自动转换路由能力。注意,在一个实施例中,当特定路由器(即使它能够自动转换)不具有将传送的非本地流量岛(例如,非本地协议未在不同的接口上被启用)时,它不广告它的这种能力和/或其它自动转换路由器将不会把它自动发现为自动转换路由器。注意,在一个实施例中,自动转换路由器201和202被手动配置为知晓耦合到本地网络的其它自动转换路由器。
[0026] 基于自动转换路由器201和202的自动发现以及它们对传送IPv6流量的需要,通过网络211的通信通道(例如,IPv4隧道)被自动地建立以用来承载非本地(非IPv4)分组流量。这种情景在图2B中示出。
[0027] 如图2C中所示,作为从IPv4到IPv6的转换的一部分,这两种协议可能都在网络211中被启用。在这种情况下,IPv4和IPv6都被认为是网络211的本地协议。此外,IPv4和IPv6分组都可以通过网络211在自动转换路由器201和202之间本地传送,并且因此,不需要隧道(例如,图2B中所示的隧道),并且在该转换过程期间任何先前建立的隧道可以由自动转换路由器201和/或202自动地移除。
[0028] 如图2D中所示,从IPv4到IPv6的转换的下一部分可能是,IPv4路由在网络211中被关断。在这种情况下,自动转换路由器201和202仍然自动地发现对方,然而本地协议现在是IPv6(而不是图2B中所示的IPv4),并且岛是IPv4。因此,自动转换路由器201和/或202自动地在它们之间建立通信路径(例如,IPv6隧道),从而使得IPv4分组(例如,非本地分组)可以通过IPv6本地网络211被承载。
[0029] 最后,图2E示出了自动转换路由器201和202不需要路由非本地IPv4流量,并且因此,本地IPv6流量在自动转换路由器201和202之间通过网络211被路由的情况。
[0030] 接着,图3A-F中的进展示出了网络300从IPv4路由到IPv6的转换。如图3A中所示,网络300包括如图所示的通信地耦合的自动转换路由器301、302、303以及其它路由器311、312、313。注意,自动转换路由器301、302、303中的每个自动转换路由器各自的朝向外部的接口(321、322和323)被仅配置用于IPv4。因此,网络300分组流量是本地IPv4。
[0031] 图3B示出了一个实施例中的网络300的最短路径连接(例如,一些链路被从示出在图3A中的链接中移除)。注意,网络300的最短路径连接可能随时间而改变。出于使用图3A-F解释的目的,如图所示,对于所有协议而言,网络300的最短路径连接将保持不变。
[0032] 图3C示出了自动转换路由器301、302、303中的每个自动转换路由器各自的朝向外部的接口(321、322和323)被配置用于IPv4和IPv6二者的情况。由于网络300的内部网络仅仅是IPv4的,所以自动转换路由器301、302、303(例如,经由路由协议或其它发现服务来)自动发现彼此、以及它们对通过网络300的本地IPv4部分来传送IPv6分组的需要。因此,自动转换路由器301、302、303通常基于经由路由协议建立的IPv4路由信息(并有可能是在其上执行路由优化计算(如最短路径优先)之后),自动地在它们之间建立IPv4通信通道(例如,IPv4隧道)。因此,在自动转换路由器301和302之间,以及自动转换路由器302和303之间建立了IPv4隧道,从而在自动转换路由器301、302、303之间的IPv4通信连接上提供了完整的IPv6。
[0033] 如图3D中所示,网络300从IPv4到IPv6的转换的自然发展继续,内部网络本地支持IPv4和IPv6,因此,不需要任何隧道,并且先前自动建立的用于承载IPv6分组的IPv4隧道通常可以被自动地移除。注意,在一个实施例中,自动转换路由器301、302和303自动发现这样的需要或缺乏,以基于所传送的发现信息或者通过不广告它本身(例如,由于每个自动转换路由器301、302和303有没有协议岛)而在它们本身之间建立隧道。
[0034] 如图3E中所示,网络300从IPv4到IPv6的转换的自然发展继续,内部网络仅本地支持IPv6,自动转换路由器301、302、303中每个自动转换路由器各自的朝向外部的接口(321、322和323)被配置用于IPv4和IPv6二者。由于网络300的内部网络仅是IPv6的,所以自动转换路由器301、302、303(例如,通过路由协议或其它发现服务来)自动发现彼此以及它们对通过网络300的本地IPv6部分来传送IPv4分组的需要。因此,自动转换路由器301、302、303通常基于经由路由协议建立的IPv6路由信息(并有可能是在其上执行路由优化计算(如最短路径优先)之后),自动在它们之间建立IPv6通信通道(例如,IPv6隧道)。因此,在自动转换路由器301和302之间,以及自动转换路由器302和303之间建立了IPv6隧道,从而在自动转换路由器301、302、303之间的IPv6通信连接上提供了完整的IPv4。
[0035] 如图3F中所示,网络300从IPv4到IPv6的转换的自然发展继续,自动转换路由器301、302、303中的每个自动转换路由器各自的朝向外部的接口(321、322和323)被仅配置用于IPv6,并且网络300的内部部分本地支持IPv6。因此,不需要任何隧道,并且先前自动建立的用于承载IPv4分组的IPv6隧道被自动地移除。
[0036] 图4A示出了在一个实施例中执行的用于自动转换路由器的过程。处理开始于过程块400,并且进行到过程块402,其中自动转换路由器周期性地广告和发现其它自动转换路由器(可能包括哪些协议不被通信耦合网络本地支持(例如,在另一个自动转换路由器的其它接口上启用了什么协议岛))。
[0037] 在过程块404,针对需要通过本地支持的(一个或多个)协议传输的非本地支持的(一个或多个)协议,(一个或多个)路径被基于路由数据库(例如,通过经由路由协议传送路由信息而开发的数据库)确定,以通信地耦合需要传送相应的非本地支持的(一个或多个)协议的自动转换路由器。在一个实施例中,例如通过使用最短隧道路径优先(例如,通过隧道的最小成本路径)或其它优化计算,确定路径的优化集合。注意,当有多个非本地协议时,这些计算可以是相互独立的,或者这些计算可以被一同考虑用于确定自动转换路由器之间的连通映射(connectivity map)。
[0038] 在过程块406,通信通道(例如,隧道)在自动转换路由器之间通过本地支持的(一个或多个)协议被配置(例如,那些将被配置为通过本地支持的协议来传送非本地支持的(一个或多个)协议的路由器)。该操作可以包括添加、删除或保留现有的隧道。在过程块408,用于不同的非本地支持的协议的路由信息在自动转换路由器中间被传送,并且分组被相应地传送。
[0039] 如在过程块409中确定的,当在网络中有变化(例如,不同的路径、本地网络中的协议变化、自动转换路由器的(一个或多个)接口上的协议变化、需要被通信地耦合的协议岛中的变化和/或例如经由过程块402的自动转换路由器的变化)时,处理返回过程块404以根据需要更新网络的自动转换能力。
[0040] 在一个实施例中,如图4B中所示,每个特定自动转换路由器确定最短隧道路径优先连接(处理在过程块420处开始)。在过程块422,特定自动转换路由器确定到每个其它自动转换路由器(该特定自动转换路由器需要到这些其它自动转换路由器(例如,该特定自动转换路由器不能通过本地支持的互联网协议通信的自动转换路由器)的隧道)的路径。特定自动转换路由器使用本地支持的互联网协议路由数据库(例如,基于生成树协议开发的数据库)来确定这些路径。在过程块424,这些路径/隧道被过滤以除去从特定自动转换路由器经由另一个指定自动转换路由器到(一个或多个)其它自动转换路由器的任何路径。这些路径/隧道不被需要来将分组发送至这些(一个或多个)其它自动转换路由器。由于网络中的每个自动转换路由器将针对本地支持的互联网协议具有相同的生成树,所以特定自动转换路由器可以依赖指定自动转换路由器,该指定自动转换路由器通过对应的隧道来向这些(一个或多个)其它自动转换路由器转发分组。
[0041] 换言之,假设网络中有五个需要传送IPv6分组但经由IPv4网络相互连接的自动转换路由器。每个自动转换路由器可以基于本地IPv4路由数据库中的最短路径/最低成本路由信息来确定到其它四个自动转换路由器中的每个自动转换路由器的隧道的路径。这些将通过另一个自动转换路由器的隧道是不被需要的,因为分组可以简单地被发送到该路径中距离发送自动转换路由器较近的自动转换路由器。同样,因为这五个自动转换路由器中的每个都将在它们的本地IPv4路由数据库中具有网络的相同的最短路径/最低成本路由视图,所以每个自动转换路由器可以依赖所确定的路径上的最接近的自动转换路由器来适当地转发分组到另一个自动转换路由器。同样,设立单独的隧道/通信通道(例如,如在一个实施例的过程块406中执行的),可以由作为这些隧道的端点的两个自动转换路由器进行,而不被其它自动转换路由器或者集中式网络管理系统控制。
[0042] 如过程块429所示,流程图的处理完成。
[0043] 图5示出了在一个实施例中执行的用于自动转换路由器的过程,该过程类似于图4A的流程图,但指定了IPv4和IPv6协议。处理开始于过程块500,并且进行到过程块502,其中自动转换路由器周期性地广告和发现其它自动转换路由器,可能包括哪些IPv4和IPv6协议不被通信耦合网络本地支持(例如,在另一个自动转换路由器的其它接口上启用了什么协议岛)。
[0044] 在过程块504,针对需要通过本地支持的IPv4或IPv6协议传输的非本地支持的IPv4或IPv6协议,(一个或多个)路径被基于路由数据库(例如,通过经由路由协议传送路由信息而开发的数据库)确定,以通信地耦合需要传送相应的非本地支持的IPv4或IPv6协议的自动转换路由器。在一个实施例中,例如通过使用最短路径优先或其它优化计算,来确定路径的优化集合。在过程块506,通信通道(例如,隧道)通过本机支持的IPv4或IPv6协议被配置在自动转换路由器之间(例如,将被配置为通过本地支持的IPv4或IPv6协议来传送非本地支持的IPv4或IPv6协议的路由器)。该操作可以包括添加、删除或保留现有的隧道。在过程块508,用于不同的非本地支持的IPv4或IPv6协议的路由信息在自动转换路由器之间被传送,并且分组被相应地传送。
[0045] 如在过程块509中确定的,当网络中有变化(例如,不同的路径、本地网络中的协议变化、自动转换路由器的(一个或多个)接口上的协议变化、需要被通信地耦合的协议岛中的变化和/或例如通过过程块502的自动转换路由器的变化)时,处理返回过程块504来根据需要更新网络的自动转换能力。
[0046] 图6示出了一个实施例的分组交换设备600(例如,路由器、自动转换路由器、交换机)的示例。如图所示,分组交换设备600包括:包括入口接口和出口接口(620)、队列(queuing)(621-634)和具有存储装置的分组处理器(641-642)的线卡601-602;可以包括输入或输出队列(或这些队列可能位于其它位置,例如线卡601-602上)的交换机构650(例如,交换结构、总线、交叉开关);以及具有存储装置的控制处理器652。
[0047] 在一个实施例中,控制处理器652例如通过但不限于与网络中的其它路由器发送和接收信息来自动发现耦合网络中的自动转换路由器。在一个实施例中,特定路由器支持一个实施例的自动转换能力(例如,它是“自动转换路由器”)的标识被通过本地网络经由路由协议(例如,边界网关协议、内部网关路由协议、开放最短路径优先、中间系统到中间系统、内部网关协议)传送。例如,在一个实施例中,该标识被承载在不透明的值、社区属性或者路由协议的其它值中。基于这样的信息(该信息可以包括它支持的一个或多个协议,这些协议未由网络本地承载(例如,发现非本地的协议岛以及(一个或多个)自动转换路由器被附接(attach)到哪里),控制处理器652确定网络中的自动转换路由器之间需要的通信路径,并且使得这些通道(例如,本地协议隧道)被建立(或至少将终止于自动转换路由器600的通道)。控制处理器652传送路由信息,并且相应地转发分组。这些通道响应于网络中的变化而被自动地更新。注意,这里参考图1、图2A-E、图3A-F、图4、图5和/或图7描述了自动转换路由器600的一个实施例的操作。
[0048] 图7是用在与网络中的不同通信协议之间的自动转换相关联的一个实施例中的装置或组件700的框图。在一个实施例中,装置或组件700执行与本文示出或者以其它方式描述的流程图和/或网络变化序列中的一个对应的一个或多个过程。
[0049] 在一个实施例中,装置或组件700包括一个或多个处理元件701、存储器702、(一个或多个)存储设备703、(一个或多个)专有元件705(例如,诸如用于执行操作等的优化硬件)、以及用于传送信息的(一个或多个)接口707(例如,发送和接收分组、用户接口、显示信息等),其中装置或组件700包括的这些元件通常通过一种或多种通信机构709通信地耦合,并且通信路径通常被定制以满足应用的需要。在一个实施例中,装置或组件700对应于图1的网络设备101,或者是图1的网络设备101的一部分。
[0050] 装置或组件700的各种实施例可以包括更多或更少的元件。装置或组件700的操作通常由(一个或多个)处理元件701使用存储器702和(一个或多个)存储设备703来控制,以执行一个或多个任务或过程。存储器702是一种类型的计算机可读/计算机存储介质,通常包括随机存取存储器(RAM)、只读存储器(ROM)、闪速存储器、集成电路和/或其它存储器组件。存储器702通常存储将由(一个或多个)处理元件701执行的计算机可执行指令和/或由(一个或多个)处理元件701操控来实现根据实施例的功能的数据。(一个或多个)存储设备703是另一种类型的计算机可读介质,通常包括固态存储介质、磁盘驱动器、软盘、网络服务、磁带驱动器和其它存储设备。(一个或多个)存储设备703通常存储将由(一个或多个)处理元件701执行的计算机可执行指令和/或由(一个或多个)处理元件701操控来实现根据实施例的功能的数据。
[0051] 鉴于可应用本发明的原理的很多可能的实施例将会理解的是,本文参照附图所描述的实施例和其各方面仅仅是示意性的,并且不应被视为限制本发明的范围。例如,对于本领域的技术人员而言显而易见的是,可重新给多个过程块操作排序,以在其它操作之前、之后执行,或与其它操作大体上同时执行。同样,多种不同形式的数据结构可以被用在各种实施例中。本文所述的本发明将覆盖落入下列权利要求书及其等效内容的范围内的所有实施例视。