用于管理光分配网络的方法和系统的制作方法
【专利摘要】本发明提供了在光子网络中生成光路径的一种方法。使用光子网络的模型来存储描述光子网络元件之间关系的关系信息以及关于光子网络元件的配置信息。路径管理器接收请求以生成基于输入端口和一个或多个输出端口的一个或多个路径。路径管理器使用光子网络模型中存储的信息生成一个或多个候选路径。
【专利说明】用于管理光分配网络的方法和系统
【背景技术】
[0001]在当今的网络世界中,几乎所有的网络通信都在某个时候在基于光纤的网络上进行。由于更多的设备彼此互连,并且采用更多的应用程序,所以通信量以非常快的速度持续上升。不仅是时时产生的大量通信量,而且其流动也随整个光网络的路径而频繁地变化。这对为了网络安全而监视网络的分析师及其对紧迫的威胁迅速采取行动的能力提出了巨大的挑战。这些威胁越来越复杂。他们需要多种处理和分析工具来并行实时地探查信号。带宽增长、协议进化以及包括DWDM的多种信号格式的当前趋势使得在没有显著增加的CAPEX和OPEX的情况下更难以追踪事件并对事件做出响应。需要灵活的网络平台来监控并选择性地拦截来自地理上不同区域的通信,将采集的光信号分配至一个或多个目的地,并且按来自远程位置的要求集中管理过程。
[0002]该监测网络的边缘通常连接智能光学设备,诸如传感器、信号探针、数据存储器和其他客户设备。光信号由设备在入口进行选择和采集,并且由客户设备在网络的出口进行处理、分析、监控和存储。在入口设备采集的光信号必须以其原始模拟形式且无失真的情况下忠实地传送至其最终目的地或客户。该要求排除了使用由常规数字通信光纤网络采用的光-电-光(0-E-0)重新生成技术。该解决方案必须利用纯光学、光子信号管理技术来创建在网络的端点之间的“透明”路径。这意味着该网络平台独立于光波长、数据格式或数据速率。例如,该网络平台能够在无需硬件或甚至软件升级的情况下管理光RF模拟信号以及数字信号,诸如IOG或100G。
[0003]由该全光分配网络所采用的基本组件包括分光器、光放大器、波分复用器(WDM)、透明的光交叉连接设备(OXC)或光子开关(photonic switch)以及将这些组件与边缘设备连接在一起的光纤。分光器是无源设备(不需要电电源),该设备以规定的功率比将由单个输入光纤携带的光学功率分至多个输出光纤中。光放大器是在无需首先将光信号转换为电气信号的情况下直接放大光信号的设备。波分复用器也是无源设备,该设备分开或结合光波长。透明的光交叉连接设备是用于重新配置网络中的光信号路径的设备,该设备在不考虑光信号的数据速率或协议的情况下接收光信号。由这些光学组件构成的可重构光纤网络,连同在该网络的边缘连接的、用于信号采集、监控和分析的所有智能终端设备,提供了有效的集成的且可扩展的网络平台。该网络平台允许资源共享、管理信号采集、分配远程监控以及对在光容量方面未来增长的数据存储的灵活性和可扩展性。此外,与电子解决方案相比较,该全光分配网络解决方案将大幅降低功耗。
[0004]光子开关是待管理的、配置光路径的基本元件。作为光子开关的示例,光学MEMS(微机电系统)开关的两个微反射镜(micro-mirror)被物理地操纵并以指导光信号束的角度放置,从而在该开关内生成确保信号经由所期望的端口离开该开口的光交叉连接。与基于电信号的网络设备不同,基于光子开关的光信号分配网络(OSDN)不会以与基于电的开关相同的方式读取或处理所分配的信号以为该信号确定路径。网络中光子开关的控制通过带外或带内方法来实现。带外方法需要通过单独的网络或连接访问智能光开关上的管理接口,控制说明从该管理接口被接收并由该开关进行处理以将所接收的信号指向外出端口。带内方法的情况为控制说明嵌入在光学数据通道中,并且当由开关接收时,在被处理之前,必须从光学数据中分离出来。
[0005]在光网络上行进的增大的网络通信量以及不断变化的通信模式流已经导致分析这种通信的实体建设由许多智能光开关组成的特殊(ad-hoc)光网络。这些开关彼此互连,并且具有各种光学输入信号。这种类型的特殊光网络的特点是在设备边缘之间的临时连接。当网络操作者希望对特定输入信号执行数据分析时,该输入信号被引导至具有连接至数据分析系统的输出端口或能够读取和分析信号的探针的网络边缘设备。
[0006]然而,由于这些特殊网络持续增长,所以通过这些网络手动创建和配置路径变得非常困难且耗费时间。而且,因为现有网络管理系统依赖电开关的具体属性,所以它们不支持光子开关的路径生成。因此,出现了新兴的、建立灵活的、可扩展的且透明的光信号分配网络的需要,以将渐增的光信号量连接至不断扩大的信号处理装置。在本文中描述的方法是可追求的方法,而不一定是以前已经构思或追求的方法。因此,除非另有说明,不应仅由于其包括于本文中而将本文中所描述的任何方法假设作为现有技术。
【专利附图】
【附图说明】
[0007]本发明通过示例的方式(而非限制的方式)在附图的图像中示出,其中,相同的附图标记指令相同的元件,在附图中:
[0008]图1是示出了实施方式可在其中实施的环境的框图。
[0009]图2是示出了实施方式中的光开关的框图。
[0010]图3是示出了实施方式中的路径管理器的框图。
[0011]图4是示出了实施方式中可由路径管理器管理的示例特殊光子网络的框图。
[0012]图5是示出了实施方式可在其上实施的示例计算系统的框图。
【具体实施方式】
[0013]在下面的描述中,出于解释的目的,阐明了许多具体细节以提供对本发明的全面理解。然而,显而易见的是,可在没有这些具体细节的情况下实行本发明。在其他示例中,众所周知的结构和设备以框图方式示出,以避免不必要地模糊本发明的。
[0014]总体概述
[0015]光子网络部分地由通过采用反射镜或其它物理机制指引光子介质上携带的信号路径来使光信号方便方向。在大型特殊光子网络中,即使当网络操作者知道输入信号用哪个端口进入网络以及哪个端口代表所期待的输出端口时,为给定信号确定通过网络的合适路径也是很困难的。
[0016]在实施方式中,保持了用于光子网络的网络模型。该网络模型可以存储在数据库、文本文件或平面文件、存储器或任何其他计算机可读存储介质中。该模型包括与光子网络体系结构相关的任何或所有信息,包括信号放大器的位置、是否使用资源(诸如开关上的端口)以及分光器(splitter)的位置。该模型还包括描述光子网络元件(诸如交叉连接开关、光链路、放大器、分光器、端口、WDM、输入信号源)之间关系的关系信息以及可描述数据分析系统或探针的特征的输出信息。该网络内元件的顺序也可以在网络模型中进行描述。配置信息也存储在网络模型中。配置信息描述了实施方式中每个网络元件的当前状态。历史和“测试”配置信息也可以存储在网络模型中。
[0017]在实施方式中,使用路径管理器以基于期望的输入端口和一个或多个输出端口生成路径。例如,路径管理器可接收来自需要在一个或多个已知输出端口对来自已知输入端口的信号进行分析的网络操作者的路径生成请求。在实施方式中,路径管理器使用存储在网络模型中的关系信息来生成可用于满足请求的一个或多个路径。路径管理器可从候选路径中选择路径,或可通过用户界面将候选路径呈现给网络操作者,以便网络操作者可从候选路径列表中选择路径。然后,在实施方式中,通过采用管理界面将指令发至路径的元件(诸如光子开关)来自动配置所选择的路径。
[0018]路径管理器环境
[0019]图1示出了可在其中根据实施方式实施用于光子网络的路径管理器的逻辑环境的框图。参照图1,该环境一般包括路径管理器100、客户端110、光学开关120-130。
[0020]在图1所示的实施方式中,路径管理器100可通信地联接至客户端110和光开关120-130。路径管理器100通过网络连接(诸如本地网络连接或因特网)被连接至光开关120-130。客户端110也通过网络连接连接至路径管理器100。
[0021]在实施方式中,用于将路径管理器100连接至光开关120-130的网络连接没有可通信地联接至由光开关120-130控制的网络。例如,光开关120-130可以彼此互连以形成如图4所示的光网络。然而,即使路径管理器100通过不同的网络连接至光开关120-130,路径管理器100也不能在光网络上发出配置命令。
[0022]在实施方式中,路径管理连接100与光开关120-130之间的连接用于允许路径管理器100在光开关120-130上执行配置操作。例如,路径管理器100可使用网络管理协议(诸如SNMP)向光开关120-130发出配置指令。
[0023]在实施方式中,客户端110使用网络浏览器与路径管理器100进行通信。在另一实施方式中,客户端110包括配有用于控制路径管理器100的资源的指令的软件。在另一实施方式中,路径管理器包括客户端110。
[0024]智能光开关
[0025]图2示出了示例智能光开关的框图。智能光开关200是可被配置成选择性地将光信号(诸如红外信号)从一个电路切换至另一电路的开关。智能光开关包括被称为“光子开关”的一类开关,光子开关因其能够在没有首先转换至电子信号的情况下转换光信号而得名。光子开关通常是基于以物理方式操纵镜倾斜度或光学材料的折射率来改变光束的方向的机制。
[0026]参照图2,信号220在端口 220处进入智能光开关200。信号220由镜230改变方向,并且由镜240再次改变方向。然后,信号220通过端口 240离开智能光开关200。端口A与端口 B之间的内部路径被称为光交叉连接。通过以物理方式操纵镜230和镜240以及智能光开关200 (未示出)中的其他镜,智能光开关200可被配置成使用智能光开关200内的不同配置的光交叉连接使信号220改变方向,并且经由不同端口离开。
[0027]智能光开关(IOS)控制器210包括用于接收请求以改变智能光开关200内的光交叉连接的逻辑。该逻辑与智能光开关200的机械特性相关联,并且因此能够引起在智能光开关200内使光信号改变方向的物理操纵。IOS控制器210包括网络接口或能够接收指令的其他接口以及用于执行指令的处理器,处理器引起对信号220的物理处理。[0028]在实施方式中,任意数量的智能光开关(诸如智能光开关200)可以彼此相互连接。每个智能光开关可具有一百多个端口,并且不止一个端口可以被用于使两个开关彼此连接。光开关还可以连接至其自身,并且为这种连接可使用分光器。
[0029]除了智能光开关之外,还设计了基于光子开关的光信号分配网络,以将来自该网络一侧的光信号透明地分配至同一网络的另一侧的一个点或许多点。光信号分配网络包括光子开关、分光器、光放大器、光纤和执行信号的其他有源或无源元件。这些元件可被用于根据处理设备、信号源的地理位置和其他因素以各种组合来建光信号分配网络。这就导致了点对点的网络拓扑结构。
[0030]路径管理器
[0031]图3是示出根据一个实施方式的、图1的路径管理器1001的更详细的框图。参照图3,输入312由路径管理器100在输入/输出(IO)接口 310处接收。IO接口 310可为网络接口,诸如基于以太网的接口或无线网络接口。
[0032]输入312可包括指向与用户界面逻辑360相关联的网络服务器的请求,用户界面逻辑360通过展示逻辑350生成响应。该请求可用于基于网页的接口,客户端110的用户(诸如网络工程师)可使用该接口来为给定的输入/输出端口组请求路径选择或路径推荐。在另一实施方式中,输入312包括用于路径选择或路径推荐的直接请求。
[0033]输出314可包括用于IOS开关(诸如IOS开关120-130)的指令。这些指令可以是由路径管理引擎330做出的自动路径选择决定的结果。该指令可包括用于需要进行配置改变以完成创建所期望路径的每个IOS开关的指令。在另一实施方式中,输出314包括动态生成的输出,该输出通知用户与一个或多个IOS开关或其他光网络设备有关的事情。在实施方式中,该输出为由与用户界面逻辑350相关联的网络服务器生成的网页的形式。该信息可包括关于当前路径的信息、网络状态信息、统计数据或路径推荐。例如,包括用于用户从中选择的一个或多个路径的路径推荐可作为响应来自用户的、要求路径选择或路径推荐的输入312的输出314来发送。
[0034]IO逻辑320被联接至IO接口 310。根据实施方式,IO逻辑被配置成解析和分配传入数据并准备用于经由IO接口 310发送的输出314。IO逻辑320可实现一个或多个通信协议。在实施方式中,IO逻辑装置320被联接至路径管理引擎330、展示逻辑350和用户界面逻辑360。在实施方式中,IO逻辑装置320还被联接至数据库370。
[0035]在实施方式中,路径管理引擎330、展示逻辑350和用户界面逻辑360都联接至数据库370。数据库370可包括网络模型数据372。网络模型数据372表示存储网络的元件之间的关系以及当前、过去和默认网络配置数据的数据库表或其他存储。例如,限定网络中设置的所有路径、可用端口、可用放大器和分光器以及描述网络的当前状态的其他网络信息的数据可存储在数据库370中。其他关系信息可包括实施方式中网络具体部分的元件的顺序。
[0036]在实施方式中,数据库370可还包括其它数据,诸如用户的认证数据(未示出)。例如,在实施方式中,用户可通过客户端110请求通过路径管理器100中的用户界面逻辑360访问用户界面。用户界面逻辑360接收作为用户名和密码组合或其他身份验证信息的输入312。用户界面逻辑360向数据库370发出请求以通过将用户名和密码组合与数据库370中存储的一个用户名和密码组合相匹配来验证用户。一旦成功验证,用户界面逻辑360就生成将通过展示逻辑350展示给用户的用户界面。
[0037]路径管理引擎330、展示逻辑350、用户界面逻辑360和数据库370都被联接至处理器380,处理器380执行由路径管理器100的这些元件提供的指令。
[0038]示例网络
[0039]参考图4,矩形框表示支持交叉连接功能的光子开关。它们提供动态地将任何输入信号转换至同一开关上的任何输出端口的性能。光子开关是提供在以其他方式静态连接的网络上建立动态信号线路或路径的能力的关键元件。
[0040]光纤用于将光子开关连接在一起。放大器用于确定光信号能够在不丢失信息情况下经过整个网络或网络的一部分。分光器用于对光学级的信号进行多路广播。
[0041]这些元件共同构成灵活的、透明的且可扩展的结构以支持许多光信号的同时分配和多路广播。在图4的网络图中,为了更好的可读性,绘制了具有相同的特性的许多光纤链路。例如,DLG13_1是具有1: 4分光器以及具有6dB增益的放大器的链路。
[0042]网络建模
[0043]生成网络模型以为任何给定的输入/输出要求确定通过网络的潜在路径是很有用的。以下概念和定义旨在为模型提供环境,以使得该模型更容易进行解释:
[0044]光子开关:被设计成在没有对信号本身的任何转换和分析的情况下对光子级的光信号进行切换的系统。采用先进的设备和技术(诸如由MEMS(微电子机械系统)控制的微型镜)使输入信号重新定向至给定的输出端口。
[0045]光链路:在2个或更多光子开关之间的物理连接。光链路可以简单如2个光子开关之间的直通式光纤连接。光链路可以复杂如用放大器将一个光链路连接至很多开关的链路,以促进信号和分光器来有源地多路广播。在图4所示的实施方式中,例如,DLG13_1示出了直通式光链路,而DLG6_1是具有将信号分配至光子开关PS3和光子开关PS4的1: 2分光器以及具有4dB增益的放大器的光链路。
[0046]光学交叉连接:应用于光子开关中的输入端口和输出端口对的逻辑配置,用于将进入开关的信号从指定的输入端口转换至指定的输出端口。
[0047]光路径:为了提供路径以将光信号从指定的输入端口带至指定的输出端口而建立的光学交叉连接和光链路的具体组合。光路径的最简单形式是将光信号从光子开关的输入端口带至同一开关的输出端口的光交叉连接。复杂的光路径可包括由多个光学链路互连的数个不同光子开关中的许多交叉连接。
[0048]光子路由:互连在一起的光子开关的组合,具有支持用于将光信号分配至所需输出端口的光路径的潜在能力。
[0049]参照图4,示出了光子开关、光交叉连接、光链路的概念。线路示出从光子开关PS2的输入端口 12至PS5的输出端口 20、21和PS6的输出端口 38、39。该光路径经过以下光链路:
[0050].DLG6_1:从PS2上的输出端口 10至PS3上的输入端口 43以及PS4上的输入端Π 2 ;
[0051].DLG9_2:从PS3上的输出端口 17至PS5上的输入端口 21、22 ;
[0052].DLG17_1:从PS4上的输出端口 17至PS6上的输入端口 23、24 ;
[0053]该光路径还经过以下动态创建的光交叉连接以向指定的输出端口提供输入信号;
[0054].0XC1210:从PS2上的输入端口 12至输出端口 10 ;
[0055].0XC4317:从PS3上的输入端口 43在输出端口 17 ;
[0056].0XC216:从PS4上的输入端口 2至输出端口 16 ;
[0057].0XC2120:从PS5上的输入端口 21到输出端口 20
[0058].0XC2221:从PS5上的输入端口 22至输出端口 21 ;
[0059].0XC2338:从PS6上的输入端口 23至输出端口 38 ;
[0060].0XC2439:从PS6上的输入端口 24至输出端口 39。
[0061]支持该光路径的光子线路为:PS2、PS3、PS4、PS5和PS6。没有替代线路。
[0062]网络拓扑结构
[0063]为了确定为信号通过光子网络潜在路径,正在使用的网络的拓扑结构应该是已知的。网络拓扑结构可以以两种不同的方式来获得:a)手动:网络操作者使用具有明确定义的格式的文本文件或图形工具手动输入网络拓扑结构;或抝自动:采用专用工具以由网络操作者提供的最少信息来自动发现拓扑结构。
[0064]一旦获得网络拓扑结构,就可以创建对象表示并存储在网络模型数据372数据库表中。拓扑结构信息基于模型中表示的对象之间的关系。这些对象可以以XML格式或者以能够记录对象之间关系的任何其他格式存储在关系数据库中。
[0065]在实施方式中建立了几种类型的关系来创建网络的逻辑表示:A)光子开关及其端口:这是一个直接的包含关系;B)上游光子开关:光子开关位于讨论中的光子开关的上游侧;C)下游光子开关:光子开关位于讨论中的光子开关的下游侧;D)进入光链路:从输入侧连接至光子开关的光链路;E)外出光链路:从输出侧连接至光子开关的光链路;以及F)回送光链路:连接至光子开关的输出侧与同一开关的输入侧的光链路。这些关系为后续的线路和路径的寻找奠定了基础。还可以存储其他关系,诸如网络中网络元件的顺序。
[0066]在实施方式中,网络模型数据372是动态的,而非静态的。路径管理器100包括网络监控逻辑装置,该网络监控逻辑装置被配置成连接至光开关(诸如10S200),并且,随着IOS控制器210监控开关的状态从IOS控制器210学习关于该网络的信息。例如,比特误码率、光信噪比、功率水平、延迟时间、增益以及可从IOS控制器210学习的、与开关200相关联的其他属性。路径管理器100还可以使用用于学习网络元件状态的其他机制。一检测到存储在网络模型数据372中的信息之间的差异,网络监控逻辑装置就能够更新数据库370中的数据。然后,新数据可用于生成路径。
[0067]光路径
[0068]在光网络环境中,路径是信号通过网络从输入传播至一个或多个输出的道路。在实施方式中,路径包括输入端口、输出端口阵列和路径元件阵列。路径元件是由于表示进入元件的线性阵列的树结构路径元件。路径元件由“锚(anchor)”光子开关及其用于支持路径的所有外出光链路来限定。“共享的光纤链路”是通过使用分光器将一个光子开关连接至多个光子开关的光链路。
[0069]重要的是应注意,因为信号可被分裂,所以在某些情况下光网络路径自然而然地包括支路。例如,图4示出了在光子开关2 (PS2)的端口 12处的输入信号开始的路径。信号通过交叉连接0XC1210传播并经由端口 10离开PS2。信号在经过+4dB信号放大器后在链路DLG61上继续传播。光链路DLG6_1具有分光器,分光器使信号进入PS3的端口 43以及PS4的端口 2 二者。路径经过PS3的部分包括交叉连接0XC4317、+4dB信号放大器以及导致该分路分裂为两个信号的分光器,该两个信号分别使用端口 21和端口 22经过PS5。经由端口 21进入PS5的、信号的部分经过交叉连接0XC2120,并且经由离开端口 20离开。经由端口 22进入PS5的、信号的部分经过交叉连接OXC2221,并且经由离开端口 21离开。进入PS4的、由第一分光器分裂的、信号的部分将最终分裂成两个信号,并且经由PS6的输出端口 38和输出端口 39离开。未讨论该信号的附加路径元件,但是在图4中可见。然而,图4示出了单一路径可从一个输入(PS2的端口 12)开始,并且以4个输出结束(PS5的端口20和21以及PS6的端口 38和39)。
[0070]光网络中的路径有时需要使用回送光链路以满足请求路径的要求。例如,在两个开关之间没有分光器的情况下,路径可仅包括两个开关。但是,回送光链路可包括分光器,使得在第一输入端口的信号被分裂成在两个额外的输入端口处输入同一开关的信号。分裂的信号每个都可交叉连接至期望的输出端口,并且能够被指向第二开关。
[0071]根据大型特殊光网络,存在从输入信号端口至一个或多个输出端口的许多潜在路径。虽然图4中所示的示例网络远小于当今生产中的许多光网络,但是它很容易地示出了与在光网络中确定路径的复杂程度。当数百个光开关(每个都常常具有多于100个的端口)以特殊方式彼此连接时,复杂程度被放大了。当考虑光路径的性质(即,它们可具有多个输出)时,路径确定的复杂程度被进一步复合。
[0072]路由确定
[0073]在实施方式中,在路由确定过程开始之前,对存储在网络模型数据372中的关系进行分析,以确定哪些路由与由路径管理器100接收的输入端口和输出端口信息相匹配的可能路由。路由寻找为后继的路径寻找设定了环境和范围。路由发现包括寻找能够将信号从输入端口一路导向由用户指定的所有输出端口的、互接光子开关的连续。换言之,路由由信号可经过的开关来限定以满足所请求的路径的要求。
[0074]路由确定的第一个步骤是寻找输入开关。输入开关是输入端口所在的光子开关。将输入端口作为路径建议或路径选择请求的一部分来提供。通过将输入端口与网络模型数据372中的已知的网络拓扑结构信息中的设备相匹配来确定输入开关。然后,通过使用网络模型数据372中存储的网络拓扑结构信息将输出端口(作为初始请求的一部分提供)与一个或多个开关相匹配来检测所有的输出开关。每个输出开关都与输入开关相比较以查看它们是否为同一开关。如果是这样,那么该开关就是一个可能的路由。
[0075]如果输出开关并不同样是输入开关,那么对与输出开关有上游关系的开关进行检查。对于尚未进行检查的每个上游开关,该上游开关都要与输入开关相比较,以查看它们是否为同一开关。如果是这样,那么该开关与下游开关组成一个可能的路由。然后,以同一方式对上游开关进行递归地检查,以确定它们是否匹配输入开关。当已对所有输出开关完成了该过程时,将路由列表存储在存储器中以与路径选择过程一起使用。一旦已确定可能的路由,这些路由就被用于确定潜在路径。
[0076]示例路由确定伪代码
[0077]下文显示了用于寻找如上所述的可用的路由的示例伪代码列表:
[0078]方法findRoutes (输入端口,输出端口阵列):返回路径阵列[0079]1.使用以前获得的输入端口和网络拓扑结构寻找输入开关ps(a);
[0080]2.为所有输出装置和网络拓扑结构寻找ps (Z)阵列;
[0081]3.创建阵列来保存发现的线路;
[0082]4.对于每个输出开关ps (Z):
[0083]4.1创建空线路结构来记录当前被搜索的线路:current—route ;
[0084]4.2检查该开关是否同样是输入开关;
[0085]4.3 如果是,
[0086]4.3.1 将 ps(z)添加至 current—route ;
[0087]4.3.2将current—route添加至所发现路径的阵列;
[0088]4.4 如果否,
[0089]4.4.1 将 ps (z)添加至 current—route ;
[0090]4.4.2 调用 Method findRoutes (ps (a),current—route,所发现路径的阵列);
[0091]4.4.3将在该迭代中发现的线路的阵列添加至所发现路径的总阵列中;
[0092]5.如果所发现路径的总阵列不是空的:
[0093]5.1合线路阵列以创建新的线路阵列,每个线路都是将输入开关ps (a)连接至输出开关ps (Z)的独特线路。
[0094](Method findRoutes (input port,array of output ports):returns an array ofroutes
[0095]1.Find the input switch ps(a)using the input port and network topologypreviously acquired
[0096]2.Find the array of ps (z) for all outputs and network topology
[0097]3.Create an array to hold the routes found
[0098]4.For each output switch ps (z):
[0099]4.1Create an empty route structure to record current route being searched:current—route
[0100]4.2Check whether this switch is also the input switch
[0101]4.3If yes,
[0102]4.3.1add ps (z) to the current—route ;
[0103]4.3.2add current—route to the array of routes found
[0104]4.4If no,
[0105]4.4.1add ps (z) into current—route ;
[0106]4.4.2call method findRoutes (ps (a),current—route,array of routes found);
[0107]4.4.3add the array of routes found in this iteration into the overall arrayof routes found
[0108]5.1f the overall array of routes found is not empty:
[0109]5.1merge the array of routes to create a new array of routes each of which isan unique route connecting the input switch ps (a) to all the output switches ps (z).)
[0110]方法findRoutes (ps (a),current—route,所发现路径的阵列):为给定的ps(z)寻找所有线路。结果在所发现路径的阵列中。[0111]Il注:current—route还包括已经通过该方法访问的开关。
[0112]1.获取上一个访问的开关:从current—route ps(上次访问的);
[0113]2.获取ps (上次访问的)=> upstream—ps的上游光子开关;
[0114]3.对于 upstream—ps 中的每个开关 ups (i):
[0115]3.1如果已经访问过,跳过
[0116]3.2 如果 ups (i) = ps (a):
[0117]3.2.I 在 current—route 中添加 ups(i);
[0118]3.2.2将current—route添加至所发现线路的阵列中;
[0119]3.2.3从current—route中去除上一个访问的开关;
[0120]4.对于 upstream—ps 中的每个开关 ups (i):
[0121]4.1如果已经访问或ups (i) =ps(a),跳过;
[0122]4.2 在 last—visited 位置将 ups(i)添加至 current—route 中;
[0123]4.3 调用方法 findRoutes (ps (a),current—route,所发现路径的阵列);
[0124]4.4删除上次访问的开关。
[0125](Method findRoutes (ps (a), current_route, array of routes found):find all theroutesfor a given ps (z).Results are in array of routes found
[0126]//Note:current_route contains also the switch already visited by thismethod
[0127]1.Get last visited switch:ps (last visited) from current—route
[0128]2.Get list of upstream photonic switches of ps (last visited) = > upstream—ps
[0129]3.For each switch ups (i) in upstream—ps:
[0130]3.1If already visited, skip
[0131]3.2If ups (i) = ps (a):
[0132]3.2.1Add ups(i) in current—route
[0133]3.2.2Add current—route into the array of routes found
[0134]3.2.3Remove last visited from current—route
[0135]4.For each switch ups (i) in upstream—ps:
[0136]4.1If already visited or ups (i) = ps (a), skip
[0137]4.2Add ups (i) into the current—route at last_visited position
[0138]4.3Call method findRoutes (ps (a),current—route,array of routes found)
[0139]4.4Remove last visited)
[0140]路径确定
[0141]在实施方式中,路径寻找过程的目的在于寻找以每个输出端口处所需的充足光信号功率将光信号分配至指定输出端口的一个或多个路径;最大限度地减少资源使用;总的来说为光链路,具体的说是的放大器;以及最大限度地降低信噪比。为了实现这些目标,已经开发了用于各种实施方式的以下试探法,以引导路径发现过程:如果信号将被分配至多个输出端口,那么尽量靠近输出端口分裂信号;如果可能,表面使用放大器;如果需要放大信号,尽量靠近输入端口放大;随着路径被创建并投入运行,使用实际测量来逐步地并精确地记录路径所经过的链路的信号功率损失。
[0142]在实施方式中,路径确定过程通过访问所存储的线路信息开始,其中所存储的线路信息在如上所述的路由确定过程中收集。采用该信息以及网络模型数据372中存储的信息确定一组候选路径。下面的伪代码示例提供了在实施方式中如何确定候选路径的细节。
[0143]候选路径基于数个标准生成,这些标准也可以用于路径排序。每个因数都可基于其重要性被分配加权度量,并且可根据分配至将用于候选路径的路径元件的组合度量对候选路径进行排列。生成候选路径所期望的是使用最少资源的路径元件。
[0144]应计算在每个输出端口处的估计信号功率水平。在实施方式中,如果输出功率水平满足要求,那么候选路径将被添加至候选路径的最终阵列中。如果输出功率水平不符合要求,那么可使用最接近输入端口的替代链路(具有放大器)来创建另一独特的候选路径。如果输出功率水平满足要求,那么候选路径应被添加至所发现的候选路径的最终阵列中。如果输出功率水平不符合要求,那么继续创建替代候选路径的过程继续。在生成路径时还可以考虑其他信息。例如,可影响路径排列或路径选择的链接广泛度、光学链路的长度或一天的时间。
[0145]路径一选定就可以在网络上实现。在实施方式中,所选择的路径可在虚拟的或模拟的网络上实现。模拟的网络环境可提供关于具体路径实施可对网络或单独网络元件的潜在影响的附加高级细节。然后,在实施方式中,该信息可用于更新网络模型数据372。
[0146]示例路径确定伪代码
[0147]下文显示了用于寻找如上所述的可用的路径的示例伪代码列表:
[0148]//以下方法使用先前方法:findPaths (输入端口,输入信号功率,输出端口阵列,线路阵列):返回候选路径阵而找到的每个线路来寻找路径。
[0149]对于每个线路:
[0150]1.调用方法findPathsSingleRoute (输入端口,输出端口阵列,线路);
[0151]2.将所发现的候选路径添加至所发现的路径的最终阵列中;
[0152]3.对于每个所发现的候选路径:
[0153]3.1用在每个候选路径元件处具有最少资源的链路创建独特的候选路径;
[0154]3.2计算在每个输出端口处的估计信号功率水平;
[0155]3.3如果输出功率水平符合要求,那么将该候选路径添加至所发现的候选路径的最终阵列;
[0156]3.4如果输出功率水平不符合要求,那么使用最接近输入端口的替代链路(具有放大器)来创建另一独特的候选路径;
[0157]3.5如果输出功率水平满足要求,那么将该候选路径添加至所发现的候选路径的最终阵列中;
[0158]3.6如果输出功率水平不符合要求,那么,如果可能,继续创建替代候选路径的过程;
[0159]4.基于使用最少资源标准对路径进行排序;
[0160](//Following method finds paths using each of the routes found previouslyMethod:findPaths (input port, input signal power, array of output ports, array ofroutes):returns an array of candidate paths[0161]For each route:
[0162]1.Call method findPathssingleRoute (input port,array of output ports,aroute)
[0163]2.Add the candidate paths found into the final array of paths found
[0164]3.For each candidate path found:
[0165]3.1Create a distinct candidate path with a link with minimum resource atevery candidate path element
[0166]3.2Calculate the estimated signal power level at each output port
[0167]3.3If the output power levels meet the requirements,add this candidate pathto the final array of candidate paths found
[0168]3.4If the output power levels don/ tmeet the requi rements,createanotherdistinct candidate path with an alternate link (with amplifier) closest to the inputport
[0169]3.5If the output power levels meet the requirements,add this candidate pathto the final array of candidate paths found
[0170]3.6If the output power levels don/ t meet the requirements,continue thisprocess of creating alternative candidate path if possible
[0171]4.sort the paths based on the least resource usage criteria)
[0172]Il以下方法通过先前的方法!findPathsSingleRoute (输入端口,输出端口阵列,线路):返回候选路径阵发现的具体线路来找到路径;
[0173]1.基于从输入端口至输出端口的跳跃(hop)数来建造线路;
[0174]2.从该线路创建候选路径元件阵列;
[0175]3.用每个候选路径元件的相应的“锚”开关填入候选路径元件;
[0176]4.使用输出端口的阵列来为每个候选路径元件确定初始输出端口计数:
[0177]4.1如果没有输出端口位于候选路径元件的“锚”开关上时,那么初始输出端口计数为O ;
[0178]4.2否则,将初始输出端口计数设置为位于该候选路径元件的相应的“锚”开关上的输出端口的数量。
[0179]5.使用所建造的线路来通过候选路径元件的阵列前后循环。对于每个候选路径元件:
[0180]5.1 调用方法 findSharedLinksForCandidatePathElement (输入端口,线路,候选路径元件);
[0181]6.对于每个候选路径元件:
[0182]6.1 调用 method findNonSharedLinksForCandidatePathElement (输入端 口,线路,候选路径元件);
[0183](//Following method finds paths through a particular route found previouslyMethod:findPathsSingleRoute (input port,array of output ports,route):returns anarray of candidate paths
[0184]1.structure the route based on how many hops from the input port to theoutput ports
[0185]2.Create an array of candidate path elements from the route
[0186]3.Populate each candidate path element with itscorresponding" anchor" switch
[0187]4.Use the array of output ports to determine the initial output port countfor each candidate path element:
[0188]4.1If no output port is located on the" anchor" switch of the candidatepath element,the initial output port count isO ;
[0189]4.20therwise,the initial output port count is set to the number of outputports located on the corresponding " anchor " switch of this candidate pathelement.[0190]5.Use structured route to loop through the array of candidate path elementsfrom back to front.For each candidate path element:
[0191]5.1Call method findsharedLinksForCandidatePathElement (input port,route,candidate path element)
[0192]6.For each candidate path element:
[0193]6.1Call method findNonsharedLinksForCandidatePathElement (input port,route, candidate path element))
[0194]方法findSharedLinksForCandidatePathElement (输入端 口,线路,候选路径兀件)
[0195]1.首先寻找线路上连接至2个或更多开关的共享链路;
[0196]2.对于找到的每个共享链路:
[0197]2.1将找到的每个共享链路附接至通过该链路的起始端口确定的、相应的候选路径元件;
[0198]2.2更新该链路连接的开关上的输出端口计数:
[0199]2.2.1对于该链路的起始端口所在的开关,将输出端口增加I ;
[0200]2.2.2对于输出端口所在的一个或多个开关,将输出端口计数减小该连接在该开关上的结束端口的数量。
[0201](Method findSharedLinksForCandidatePathElement (input port,route,candidate path element)
[0202]1.Find shared links first that connect to2or more switches on the route
[0203]2.For each shared link found:
[0204]2.1Attach it to the corresponding candidate path element determined by thestart port of the link
[0205]2.2Update the output port counts on the switches this link connects:
[0206]2.2.1For the switch on which the start port of the link is located,increasethe output port by I ;
[0207]2.2.2For the switch(es)on which the end ports are located,decrease theoutput port count by as many end ports of the link landing on that switch ;)[0208]方法findNon SharedLinksForCandidatePathElement (输入端 口,线路,候选路径元件)
[0209]1.用 initialOutputPortCount 的值初始化 remainingOutputPortCount ;
[0210]2.只要(remainingOutputPortCount > O 且 link—found—at_last_iteration =true (真)),就进行迭代:
[0211]2.1寻找具有为超过remainingOutputPortCount的值的最大结束端口数的可用链路。如果由不止一个链路与该标准匹配,那么选择无放大器的链路(如果存在的话)。
[0212]2.2如果发现了链路:
[0213]2.2.1Link—found—at—last—iteration = true (真);
[0214]2.2.2将remainingOutputPortCount减去所发现链路的结束端口数;
[0215]2.2.3将该链路添加至相应的候选路径元件;
[0216]2.2.4寻找相同结构的、具有放大器的替代链路(如果可用);
[0217]2.2.5将该链路也添加至候选路径元件;
[0218]2.3如果没有找到链路:
[0219]宣布失败
[0220](Method findNonSharedLinksForCandidatePathElement (input port,route,candidate path element)
[0221]1.1nitialize remainingOutputPortCount with the value ofinitialOutputPortCount
[0222]2.1terate as long as (remainingOutputPortCount > Oand link—found—at_last_iteration = true):
[0223]2.1Find an available link with largest number of end ports that does notexceed the value of remainingOutputPortCount.1f there are more than one linkmatches the criteria,choose one without amplifier if exist.[0224]2.2If a link is found:
[0225]2.2.1Link—found—at_last_iteration = true ;
[0226]2.2.2remaining0utputPortCount is decreased by the number of end ports ofthe link found
[0227]2.2.3Add this link to the corresponding candidate path element
[0228]2.2.4Find an alternate link of the same structure with amplifier ifavailable
[0229]2.2.5Add this link to the candidate path element as well
[0230]2.3If no link found:
[0231]Declare failure)
[0232]硬件概述
[0233]根据一个实施方式,本文所描述的技术通过一个或多个专用计算设备来实现。专用计算设备可进行硬连线以执行技术,或可包括进行持续编程以执行技术的数字电子设备,诸如一个或多个特定用途集成电路(ASIC)或现场可编程门阵列(FPGA),或可包括被编程以执行根据固件、存储器、其它存储装置或组合中的程序指令的技术的一个或多个通用硬件处理器。这种专用计算设备还可以将自定义的硬接线逻辑、ASIC或FPGA与自定义编程结合起来以完成技术。专用计算设备可以是台式计算机系统、便携式计算机系统、手持设备、网络设备或合并硬接线和/或程序逻辑来实现技术的任何其它设备。
[0234]例如,图5是示出了本发明的实施方式可在其上实施的计算机系统500的框图。计算机系统500包括用于传达信息的总线502或其他通信机制以及用于处理信息的、用总线502进行联接的硬件处理器504。硬件处理器504可以是例如通用的微处理器。
[0235]计算机系统500还包括被联接至总线502的主存储器506 (诸如随机存取存储器(RAM)或其他动态存储设备),主存储器506用于存储将由处理器504执行的信息和指令。主存储器506还可以用于在执行将由处理器504执行的指令的过程中存储临时变量或其它中间信息。当存储在处理器504可访问的存储介质中时,这种指令将计算机系统500转化为被自定义成执行指令中指定的操作的专用机器。
[0236]计算机系统500还包括被联接至总线502的、用于为处理器504存储静态信息和指令的只读存储器(ROM) 508或其他静态存储设备。设有用于存储信息和指令的、并且被联接至总线502的存储设备510,诸如磁盘或光盘。
[0237]计算机系统500可经由总线502被联接至用于为计算机用户显示信息的显示器512,诸如一个阴极射线管(CRT)。用于将信息和命令选择传送在处理器504的、包括字母数字和其它键的输入设备514被联接至总线502。另一类型的用户输入设备是用于将方向信息和命令选择传送至处理器504并用于控制显示器512上的光标的移动的光标控制装置516,诸如鼠标、轨迹球或光标方向键。该输入设备通常具有允许设备指定平面中的位置的、两个轴线(第一轴线(例如,X)和第二轴线(例如,y))中的两个自由度。
[0238]计算机系统500可以使用与计算机系统相结合以使计算机系统500成为或编程为专用机器的程序逻辑装置和/或固件、定制硬连线逻辑、一个或多个ASIC或FPGA来实现本文中描述的技术。根据一个实施方式,本文中的技术由响应于执行主存储器506中包括的一个或多个指令的一个或多个序列的处理器504的计算机系统500来执行。这种指令可以从另一存储介质(诸如存储设备510)读入主存储器506。主存储器506中包括的指令的序列的执行使处理器504执行本文中所描述的过程步骤。在替代的实施方式中,可使用硬连线电路来代替软件指令或与软件指令相结合。
[0239]在本文中使用的术语“存储介质”是指存储使机器以具体方式操作的数据和/或指令的任何介质。这种存储介质可包括非易失性介质和/或易失性介质。非易失性介质包括例如光盘或磁盘,诸如存储设备510。易失性介质包括动态存储器,诸如主存储器506。存储介质的普通形式包括例如软盘、软磁盘、硬盘、固态驱动器、磁带或任何其它磁性数据存储介质、CD-ROM、任何其它光学数据存储介质、具有孔模式的任何物理介质、RAM、PROM和EPROM、FLASH-EPROM、NVRAM、任何其它存储器芯片或存储器匣。
[0240]存储介质与传输介质不同,但可以连同传输介质使用。传输介质参与在存储介质之间传输信息。例如,传输介质包括构成总线502的线的同轴电缆、铜导线和光纤。传输介质还可以采取声波或光波的形式,诸如那些在无线电波和红外数据通信过程中生成的声波或光波。
[0241]各种形式的介质可涉及将一个或多个指令的一个或多个序列携带至处理器504来执行。例如,指令最初可由远程计算机的固态驱动器或磁盘携带。远程计算机可将指令加载至其动态存储器中,并在使用调制解调器的电话线上发送指令。对于计算机系统500为本地的调制解调器可接收电话线上的数据,并使用红外发射机将数据转换为红外信号。红外探测器可接收红外信号中携带的数据,并且适当的电路可将数据置于总线502上。总线502将数据携带至主存储器506,处理器504从主存储器506接收指令并执行指令。由主存储器506接收的指令可以在由处理器504执行之前或之后可选地存储在存储设备510上。
[0242]计算机系统500还包括联接至总线502的通信接口 518。通信接口 518提供联接至网络链路520的双向数据通信,其中,网络链路520并连接至本地网络522。例如,通信接口 518可为综合业务数字网络(ISDN)卡、电缆调制解调器、卫星调制解调器或调制解调器,以提供至电话线的相应类型提供数据通信连接。作为另一示例,通信接口 518可为局域网络(LAN)卡,以提供至兼容LAN的数据通信连接。也可以实施无线链路。在任何这种实施中,通信接口 518都发送和接收携带标志各种类型信息的数字数据流的电、电磁或光信号。
[0243]网络链路520通常通过一个或多个网络提供至其他数据设备的数据通信。例如,网络链路520可以通过本地网络522提供至主机计算机524或至由互联网服务提供商(ISP) 526操作的数据设备的连接。ISP526进而通过现在通常被称为“因特网” 528的全球分组数据通信网络提供数据通信服务。本地网络522和因特网528 二者都使用携带数字数据流的电、电磁或光信号。将数字数据携带至计算机系统500以及从计算机系统500携带数字数据的、通过各种网络的信号以及网络链路520上并通过通信接口 518的信号是传输介质的示例形式。
[0244]计算机系统500可通过网络、网络链路520和通信接口 518发送信息和接收数据,包括程序代码。在因特网示例中,服务器530可通过因特网528、ISP526、本地网络522和通信接口 518传输应用程序所请求的代码。
[0245]所接收的代码可随其被接收由处理器504执行和/或存储在存储设备510或其它非易失性存储装置中供以后执行。
[0246]在以上说明书中,已经参照可在实施之间变化的大量具体细节对本发明的实施方式进行了描述。因此,应将本说明书和附图视为是说明性的,而非限制性的。本发明的范围的唯一且专属指示以及 申请人:打算作为本发明的范围的是从本申请发出的权利要求书的字面和等效范围,在该权利要求发出的具体形式中,包括任何后续更正。
[0247]附录A-用户界面
[0248]
【权利要求】
1.一种方法,其包括: 维持光子网络模型,其中,所述光子网络模型存储: a)关系信息,描述光子网络中的多个网络元件之间的关系;以及 b)配置信息,描述所述多个网络元件中的每个网络元件的当前状态; 接收路径生成请求,所述路径生成请求包括第一端口标识符和第二端口标识符,其中,所述第一端口标识符表示输入端口,并且所述第二端口标识符表示第一输出端口 ; 至少部分地基于所述关系信息和所述配置信息生成一个或多个候选路径,所述一个或多个候选路径起始于所述输入端口并终止于至少所述第一输出端口 ; 其中,所述方法由一个或多个计算设备执行。
2.根据权利要求1所述的方法,其中,所述路径生成请求还包括表示第二输出端口的第三端口标识符,并且所述一个或多个候选路径起始于所述输入端口并发送至少所述第一输出端口和所述第二输出端口。
3.根据权利要求1所述的方法,还包括: 至少部分地基于与所述第一输出端口相关联的功率需求生成所述一个或多个候选路径的排序列表。
4.根据权利要求1所述的方法,还包括: 至少部分地基于每个所述候选路径的资源使用生成所述一个或多个候选路径的排序列表。
5.根据权利要求1所述的方法,还包括: 至少部分地基于候选路径中的一个或多个放大器的位置生成所述一个或多个候选路径的排序列表。
6.根据权利要求1所述的方法,还包括: 至少部分地基于候选路径中从所述输入端口至所述输出端口的跳跃数生成所述一个或多个候选路径的排序列表。
7.根据权利要求1所述的方法,其中,生成所述一个或多个候选路径包括: 确定一个或多个潜在光子网络路由,其中所述潜在光子网络路由中的每个都识别能够支持通过网络的路径的一个或多个光子开关;以及 至少部分地基于存储在所述光子网络模型中的当前配置信息从所述一个或多个潜在光子网络路由中确定候选路径。
8.根据权利要求6所述的方法,其中,所述候选路径中的至少一个包括光回送链路。
9.根据权利要求1所述的方法,还包括: 生成所述一个或多个候选路径的排序列表; 至少部分地基于所述一个或多个候选路径的排序列表,选择用于配置的候选路径;以及 根据所选路径的需求自动配置多个光开关。
10.根据权利要求1所述的方法,还包括: 生成所述一个或多个候选路径的排序列表;以及 使候选路径的所述排序列表被显示在客户端计算系统的用户界面处。
11.根据权利要求1所述的方法,还包括:至少部分地基于潜在候选路径中的预计的光信噪比生成一个或多个候选路径。
12.根据权利要求1所述的方法,还包括: 至少部分地基于与潜在候选路径相关联的一个或多个潜在属性生成一个或多个候选路径。
13.根据权利要求1所述的方法,还包括: 至少部分地基于在潜在候选路径中从第一分光器至所述输出端口的逻辑距离生成一个或多个候选路径。
14.根据权利要求1所述的方法,还包括: 响应于对被检测的网络属性与所述光网络模型中储存的网络属性之间的不一致的检测,更新所述光网络模型以反映所检测的变化; 采用改变的信息来生成一个或多个候选路径。
15.一种计算机可读永久存储介质,所述计算机可读永久存储介质存储指令,所述指令在由一个或多个处理器执行时使一个或多个指令执行: 维持光子网络模型,其中,所述光子网络模型存储: a)关系信息,描述 光子网络中的多个网络元件之间的关系;以及 b)配置信息,描述所述多个网络元件中的每个网络元件的当前状态; 接收路径生成请求,所述路径生成请求包括第一端口标识符和第二端口标识符,其中,所述第一端口标识符表示输入端口,并且所述第二端口标识符表示第一输出端口 ; 至少部分地基于所述关系信息和所述配置信息生成一个或多个候选路径,所述一个或多个候选路径起始于所述输入端口并终止于至少所述第一输出端口 ; 其中,所述方法由一个或多个计算设备执行。
16.根据权利要求15所述的计算机可读永久存储介质,其中,所述路径生成请求还包括表示第二输出端口的第三端口标识符,并且所述一个或多个候选路径起始于所述输入端口并发送至少所述第一输出端口和所述第二输出端口。
17.根据权利要求15所述的计算机可读永久存储介质,其中,所述指令还包括用于以下步骤的指令: 至少部分地基于与所述第一输出端口相关联的功率需求生成所述一个或多个候选路径的排序列表。
18.根据权利要求15所述的计算机可读永久存储介质,其中,所述指令还包括用于以下步骤的指令: 至少部分地基于每个所述候选路径的资源使用生成所述一个或多个候选路径的排序列表。
19.根据权利要求15所述的计算机可读永久存储介质,其中,所述指令还包括用于以下步骤的指令: 至少部分地基于候选路径中的一个或多个放大器的位置生成所述一个或多个候选路径的排序列表。
20.根据权利要求15所述的计算机可读永久存储介质,其中,所述指令还包括用于以下步骤的指令: 至少部分地基于候选路径中从所述输入端口至所述输出端口的跳跃数生成所述一个或多个候选路径的排序列表。
21.根据权利要求15所述的计算机可读永久存储介质,其中,生成所述一个或多个候选路径包括以下步骤: 确定一个或多个潜在光子网络路由,其中所述潜在光子网络路由中的每个都识别能够支持通过网络的路径的一个或多个光子开关;以及 至少部分地基于存储在所述光子网络模型中的当前配置信息从所述一个或多个潜在光子网络路由中确定候选路径。
22.根据权利要求19所述的计算机可读永久存储介质,其中,所述候选路径中至少一个包括光回送链路。
23.根据权利要求15所述的计算机可读永久存储介质,其中,所述指令还包括用于以下步骤的指令: 生成所述一个或多个候选路径的排序列表; 至少部分地基于所述一个或多个候选路径的排序列表,选择用于配置的候选路径;以 及 根据所选择路径的需求自动配置多个光开关。
24.根据权利要求15所述的计算机可读永久存储介质,其中,所述指令还包括用于以下步骤的指令: 生成所述一个或多个候选路径的排序列表;以及 使候选路径的所述排序列表被显示在客户端计算系统的用户界面处。
25.根据权利要求15所述的计算机可读永久存储介质,其中,所述指令还包括用于以下步骤的指令: 至少部分地基于潜在候选路径中的预计的光信噪比生成一个或多个候选路径。
26.根据权利要求15所述的计算机可读永久存储介质,其中,所述指令还包括用于以下步骤的指令: 至少部分地基于与潜在候选路径相关联的一个或多个潜在属性生成一个或多个候选路径。
27.根据权利要求15所述的计算机可读永久存储介质,其中,所述指令还包括用于以下步骤的指令: 至少部分地基于在潜在候选路径中从第一分光器至所述输出端口的逻辑距离生成一个或多个候选路径。
28.根据权利要求15所述的计算机可读永久存储介质,其中,所述指令还包括用于以下步骤的指令: 响应于对被检测的网络属性与所述光网络模型中储存的网络属性之间的不一致的检测,更新所述光网络模型以反映所检测的变化; 采用改变的信息来生成一个或多个候选路径。
【文档编号】H04J14/00GK103999390SQ201280050446
【公开日】2014年8月20日 申请日期:2012年10月2日 优先权日:2011年10月14日
【发明者】何雄伟 申请人:格雷姆格拉斯网络公司