波长资源预留方法及光网络节点的制作方法

文档序号:7869517阅读:257来源:国知局
专利名称:波长资源预留方法及光网络节点的制作方法
技术领域
本发明涉及光通信技术,尤其涉及一种波长资源预留方法及光网络节点。
背景技术
资源预留是分布式光网络智能化的一项关键技术。它使用一定的路由及信令协议,实现对特定网络资源的预留。资源预留技术是实现诸如交换连接建立、网络保护与恢复等各种智能化操作的基础。在以波长路由为基础的波分复用光网络中,资源预留也常被称为波长预留技术。现有的前向开始预留策略(Source-1nitiated Reservation, SIR),源节点直接预留多个波长资源,目的节点确定预留的波长资源后,路由上的各节点释放预留的多余波长资源。然而,这种方法由于建立链路前就已经预留了多个波长资源,同一节点上的波长资源容易被多条路由所预留,即预留了冗余的波长,引起资源缺乏和资源冲突,从而导致链路建立不易成功。现有的后向开始预留策略(Destination-1nitiatedReservation, DIR),源节点在信令中保存可用资源,目的节点确定预留的资源后,再通知源节点所预留的波长资源以完成链路建立。然而,这种方法在发送信令时并没有预留空闲波长,这就使得选定的工作波长可能被与路由上的节点有交叉链路的另一路由提前占用,而导致链路建立失败
发明内容
本发明提供波长资源预留方法及光网络节点,以提高链路建立成功率。为实现本发明的目的,一方面,本发明提供了一种波长资源预留方法,包括中间节点接收目的节点发送的第一预留消息,所述第一预留消息中携带所述目的节点预留的第一波长资源信息;若所述中间节点根据所述第一波长资源消息确定第一波长资源已占用,则所述中间节点预留本地保存的链路空闲波长集中的第二波长资源,所述本地保存的链路空闲波长集中包括选定路由上从源节点至所述中间节点的全部节点共有的空闲波长资源;所述中间节点分别向源节点和所述目的节点发送第二预留消息,所述第二预留消息中携带所述中间节点预留的所述第二波长资源信息。本发明还提供了一种波长资源预留方法,包括源节点接收第一中间节点发送的第二预留消息,所述第二预留消息中携带所述第一中间节点预留的第二波长资源信息;所述源节点根据所述第二波长资源信息,在所述第二波长资源上向目的节点发起链路建立过程。另一方面,本发明提供了一种光网络节点,包括第一接收模块,用于接收目的节点发送的第一预留消息,所述第一预留消息中携带所述目的节点预留的第一波长资源信息;第一处理模块,用于当根据所述第一波长资源确定第一波长资源已占用时,在本地保存的链路空闲波长集中预留第二波长资源,所述本地保存的链路空闲波长集中包括选定路由上从源节点至所述中间节点的全部节点共有的空闲波长资源;第一发送模块,用于分别向源节点和所述目的节点发送第二预留消息,所述第二预留消息中携带所述中间节点预留的所述第二波长资源信息。本发明还提供了一种光网络节点,包括第二接收模块,用于接收第一中间节点发送的第二预留消息,所述第二预留消息中携带所述中间节点预留的第二波长资源信息;建路模块,用于根据所述第二波长资源信息,在所述第二波长资源上向目的节点发起链路建立过程。本发明提供的波长资源预留方法及光网络节点,目的节点预留一波长,并向源节点发送携带预留波长信息的预留消息,而中间节点收到该消息时,目的节点预留的波长在该中间节点上不可用,即发生了波长预留资源冲突,该中间节点通过重选预留波长资源并分别向源节点和目的节点发送携带更改后的预留波长资源的消息以建立链路,提高链路建立成功率。


图1为本发明提供的波长资源预留方法的一实施例的流程图;图2为本发明提供的波长资源预留方法的又一实施例的流程图;图3为本发明提供的波长资源预留方法的又一实施例的流程图;图4为本发明提供的波长资源预留方法的又一实施例的流程
图5为本发明提供的波长资源预留方法的一实例的流程图;图6为本发明提供的波长资源预留方法的又一实例的流程图;图7为本发明提供的光网络节点的一实施例的结构示意图;图8为本发明提供的光网络节点的又一实施例的结构示意图;图9为本发明提供的光网络节点的又一实施例的结构示意图;图10为本发明提供的光网络节点的又一实施例的结构示意图。
具体实施例方式下面结合附图与实施例对本发明做进一步的描述。图1为本发明提供的波长资源预留方法的一实施例的流程图,如图1所示,本实施例具体可适用于分布式光网络的链路建立过程中的波长资源预留,可以由实施波长资源预留的一个或多个网元来执行,或由独立的网元执行,这些网元可以通过软件和/或硬件的形式来实现分布式光网络的链路建立过程中的波长资源预留,本实施例的波长资源预留方法的具体步骤如下Sll :中间节点接收目的节点发送的第一预留消息,该第一预留消息中携带目的节点预留的第一波长资源信息。在光网络中,当源节点接收到建路请求时,根据该建路请求约束路由,即根据一定约束条件(可以是服务质量(Quality of Service,QoS)约束条件也可以是其他策略性的约束条件)计算出所有的可能路径并根据一定的优选策略选出一条最优的路径,光网络通信中约束路由即是以一定的策略选择光网络节点作为从源节点到目的节点的传输路径。该源节点可以通过该路由上的节点逐跳向目的节点发送路径消息(Path Message,下称Path消息),该Path消息中携带有链路空闲波长集,其中包括该源节点上可用的空闲波长资源,该链路空闲波长集可以由Path消息中的标签适配体(Label Set Object,缩写为LSO)携带。当该Path消息发送至中间节点时,更新该链路空闲波长集为该中间节点与该源节点共有空闲波长,并在该中间节点保存该链路空闲波长集。其中,中间节点的个数可以是一个或多个。当目的节点接收到该Path消息时,更新该链路空闲波长集为该路由上全部节点共有空闲波长,并在该目的节点保存该链路空闲波长集,若该链路空闲波长集为非空,则该目的节点通过预设算法从该链路空闲波长集中选取至少一个波长作为工作波长,例如可以通过首次适应(First Fit,缩写为FF)波长选择算法,即选择该链路空闲波长集中第一个空闲波长作为工作波长,该目的节点再向该源节点发送携带已预留的波长资源信息(即第一波长资源信息)的第一预留消息。该已选路由上的中间节点接收该目的节点发送的该第一预留消息,该第一预留消息中携带该目的节点预留的第一波长资源信息。S12:若中间节点根据第一波长资源消息确定第一波长资源已占用,则该中间节点预留本地保存的链路空闲波长集中的第二波长资源,该本地保存的链路空闲波长集中包括选定路由上从源节点至该中间节点的全部节点共有的空闲波长资源。选定路由上的每一个节点接收到该节点的上游节点发送的链路空闲波长集时,更新该链路空闲波长集为该节点及其全部上游节点共有空闲波长,并在该节点保存该链路空闲波长集。则该中间节点本地保存的链路空闲波长集中包括选定路由上从源节点至该中间节点的全部节点共有的空闲波长资源。选定路由上的一个节点,可能同时为其他不同链路的源节点或者中间节点或者目的节点,即在该节点上形成多条链路的交叉。因此,当该中间节点接收到该第一波长资源时,可能由于其`他的交叉链路已经将该中间节点上的该第一波长资源预留或者使用,则该中间节点将从本地保存的链路空闲波长集中重新选取可用波长作为工作波长并预留,即预留第二波长资源。例如,目的节点预留了波长为X1的波长资源,中间节点接收到该第一波长资源时,λi在该节点上已经不可用,则该中间节点可以从本地保存的链路空闲波长集中重新选取可用波长λ 2作为工作波长并预留。S13:该中间节点分别向源节点和目的节点发送第二预留消息,该第二预留消息中携带该中间节点预留的第二波长资源信息。该中间节点更改了预留波长资源,则分别向源节点和目的节点发送第二预留消息,该第二预留消息中携带该中间节点预留的第二波长资源信息。该中间节点向源节点发送第二预留消息,源节点收到该消息后将以第二波长作为工作波长建立链路;该中间节点向目的节点发送第二预留消息,目的节点收到该消息,则将目的节点预留的第一波长资源更改为第二波长。本实施例的技术方案,目的节点预留一波长,并向源节点发送携带预留波长信息的预留消息,而中间节点收到该消息时,目的节点预留的波长在该中间节点上不可用,即发生了波长预留资源冲突,该中间节点通过重选预留波长资源并分别向源节点和目的节点发送携带更改后的预留波长资源的消息以建立链路,提高链路建立成功率。
图2为本发明提供的波长资源预留方法的又一实施例的流程图,如图2所示,本实施例在前述实施例的基础上,步骤Sll中间节点接收目的节点发送的第一预留消息之前,还可以包括以下步骤S21 :中间节点接收源节点发送的第一路径消息,该第一路径消息中携带路径长度信息,该路径长度信息用于表示源节点至该中间节点的上一跳节点之间的距离。源节点向其下游节点发送第一路径消息,该第一路径消息中携带了路径长度信息,该路径长度信息用于表示该源节点至该中间节点的上一跳节点之间的距离。这里所说的距离,可以是逻辑上的距离。具体的可以是该源节点至该中间节点的上一跳节点之间的跳数,例如第一路径消息发送至源节点下游第一个中间节点,则该消息中的路径长度信息表示源节点至该中间节点的上一跳节点(即源节点)间的距离,此时该距离为O。该路径长度信息可通过请求评议标准(Request For Comments, RFC)第2205号文件定义的资源预留协议(Resource Reservation Protocol, RSVP)消息通用头文件(Message Common Header)中可用于已有消息的扩展来表示,例如,可对用于功能扩展的Reserve字段进行扩展,选取其中的4bit作为路径长度信息。S22 中间节点将该路径长度信息更新为源节点至该中间节点之间的距离。该中间节点接收到将该源节点至该中间节点的上一跳节点之间的距离加上该中间节点与其上一跳节点之间的距离作为该源节点至该中间节点之间的距离,并更新该路径长度信息。例如,若该源节点至该中间节点的上一跳节点之间的跳数为D,则更新该路径长度信息为D+1。S23 :该中间节点向下一跳节点发送第二路径消息,该第二路径消息中携带更新后的路径长度信息。该中间节点将携带更新后的路径长度信息的第二路径消息向该中间节点的下一跳节点发送。本实施例中,接收到携带路径长度信息的第一路径消息的中间节点,将其中的路径长度更新为源节点至接收到该消息的中间节点间的距离,并向下游节点发送携带更新后的路径长度信息的第二路径消息。可从不断更新的路径消息中的路径长度获知路径消息在整个路由中传送的距离,便于在发生波长预留资源冲突时考虑更改预留波长资源的时间成本。优选地,该第一预留消息中还携带路径长度信息以及源节点至目的节点的路径长度信息。中间节点分别向源节点和目的节点发送第二预留消息之前,还可以包括以下步骤步骤A :根据路径长度信息判断该中间节点距源节点的距离是否小于设定距离,若是,则该中间节点分别向源节点和目的节点发送第二预留消息;否则,该中间节点不向源节点和目的节点发送第二预留消息。如果该中间节点距源节点的距离小于设定距离,则发送第二预留消息,即更改预留波长;如果该中间节点距源节点的距离大于或者等于设定距离,则不更改预留波长,结束链路建立过程或者向目的节点发送预留错误消息,由收到预留错误消息后的目的节点重新预留波长。例如,假设该中间节点距源节点的距离为D,源节点至目的节点的路径长度为Dm,设定距离为Dm/2,如果D〈Dm/2,则说明第一预留消息已经传输经过了整个链路中超过一半的节点,此时更改第一预留消息中的预留波长,并发送预留更改消息至目的节点所要经过的路径长度为D,而发送预留错误消息至目的节点再由目的节点重新选择预留波长并再次向源节点发送预留消息所要经过的路径长度则为2Dm-D,因此更改第一预留消息已经传输经过了的节点上的预留波长所需时间与由目的节点重新选择预留波长相比较短,从而该中间节点分别向源节点和目的节点发送第二预留消息;否则,该中间节点不向源节点和目的节点发送第二预留消息。通过判断中间节点距源节点的距离与设定距离的大小关系,来衡量更改预留波长资源的时间成本。图3为本发明提供的波长资源预留方法的又一实施例的流程图,如图3所示,本实施例具体可适用于分布式光网络的链路建立过程中的波长资源预留,可以由实施波长资源预留的一个或多个网元来执行,或由独立的网元执行,这些网元可以通过软件和/或硬件的形式来实现分布式光网络的链路建立过程中的波长资源预留,本实施例的波长资源预留方法具体包括S31 :源节点接收第一中间节点发送的第二预留消息,该第二预留消息中携带该第一中间节点预留的第二波长资源信息。在光网络中,当源节点接收到建路请求时,根据该建路请求约束路由,即根据一定约束条件(可以QoS约束条件也可以是其他策略性的约束条件)计算出所有的可能路径并根据一定的优选策略选出一条最优的路径,光网络通信中约束路由即是以一定的策略选择光网络节点作为从源节点到目的节点的传输路径。该源节点可以通过该路由上的节点逐跳向目的节点发送Path消息,该Path消息中携带有链路空闲波长集,其中包括该源节点上可用的空闲波长资源,该链路空闲波长集可以由Path消息中的LSO携带。当该Path消息发送至第一中间节点时,更新该链路空闲波长集为该中间节点与该源节点共有空闲波长,并在该第一中间节点保存该链路空闲波长集。其中,中间节点的个数可以是一个或多个。当目的节点接收到该Path消息时,更新该链路空闲波长集为该路由上全部节点共有空闲波长,并在该目的 节点保存该链路空闲波长集,若该链路空闲波长集为非空,则该目的节点通过预设算法从该链路空闲波长集中选取至少一个波长作为工作波长,例如可以通过FF波长选择算法,即选择该链路空闲波长集中第一个空闲波长作为工作波长,该目的节点再向该源节点发送携带已预留的波长资源信息(即第一波长资源信息)的第一预留消息。该已选路由上的第一中间节点接收该目的节点发送的该第一预留消息,但是该第一预留消息中携带的该目的节点预留的第一波长资源信息在该第一中间节点上已经被其他交叉链路预留或者占用,则该第一中间节点从该第一中间节点上保存的链路空闲波长集中以预设算法重新选取一波长作为工作波长,例如可以通过最后适应(Last Fit,缩写为LF)波长选择算法,即选择该链路空闲波长集中最后一个空闲波长作为工作波长,该第一中间节点再向该源节点发送携带重新选取预留的波长资源信息(即第二波长资源信息)的第二预留消息。该源节点接收该第一中间节点发送的该第二预留消息。S32 :源节点根据第二波长资源信息,在该第二波长资源上向目的节点发起链路建立过程。该源节点接收到该第二预留消息后,根据其中携带的第二波长资源信息,以该第二波长为工作波长,向目的节点发起链路建立过程。
本实施例的技术方案,目的节点预留一波长,并向源节点发送携带该预留波长信息的预留消息,而中间节点收到该消息时,目的节点预留的波长在该中间节点上不可用,即发生了波长预留资源冲突,该中间节点通过重选预留波长资源并分别向源节点和目的节点发送携带更改后的预留波长资源的消息,该源节点接收到该消息后,以该更改后的预留波长为工作波长向该目的节点发起链路建立过程,提高链路建立成功率。图4为本发明提供的波长资源预留方法的又一实施例的流程图,如图4所示,本实施例的波长资源预留方法,包括以下步骤S41 :源节点接收第一中间节点发送的第二预留消息,该第二预留消息中携带该第一中间节点预留的第二波长资源信息。在光网络中,当源节点接收到建路请求时,根据该建路请求约束路由,即根据一定约束条件(可以QoS约束条件也可以是其他策略性的约束条件)计算出所有的可能路径并根据一定的优选策略选出一条最优的路径,光网络通信中约束路由即是以一定的策略选择光网络节点作为从源节点到目的节点的传输路径。该源节点可以通过该路由上的节点逐跳向目的节点发送Path消息,该Path消息中携带有链路空闲波长集,其中包括该源节点上可用的空闲波长资源,该链路空闲波长集可以由Path消息中的LSO携带。当该Path消息发送至第一中间节点时,更新该链路空闲波长集为该中间节点与该源节点共有空闲波长,并在该第一中 间节点保存该链路空闲波长集。其中,中间节点的个数可以是一个或多个。当目的节点接收到该Path消息时,更新该链路空闲波长集为该路由上全部节点共有空闲波长,并在该目的节点保存该链路空闲波长集,若该链路空闲波长集为非空,则该目的节点通过预设算法从该链路空闲波长集中选取至少一个波长作为工作波长,例如可以通过FF波长选择算法,即选择该链路空闲波长集中第一个空闲波长作为工作波长,该目的节点再向该源节点发送携带已预留的波长资源信息(即第一波长资源信息)的第一预留消息。光网络中的一个节点,可能同时为多条不同链路的源节点或者中间节点或者目的节点,即在该节点上形成多条链路的交叉。该已选路由上的第一中间节点接收该目的节点发送的该第一预留消息,但是该第一预留消息中携带的该目的节点预留的第一波长资源信息在该第一中间节点上已经被其他交叉链路预留或者占用,则该第一中间节点从该第一中间节点上保存的链路空闲波长集中以预设算法重新选取一波长作为工作波长,例如可以通过LF波长选择算法,即选择该链路空闲波长集中最后一个空闲波长作为工作波长,该第一中间节点再向该源节点发送携带重新选取预留的波长资源信息(即第二波长资源信息)的第二预留消息。该源节点接收该第一中间节点发送的该第二预留消息。S42 :若该源节点在设定时间内没有接收到第二中间节点发送错误消息,该错误消息用于指示接收到该错误消息的节点释放已预留波长,源节点根据第二波长资源信息,在该第二波长资源上向目的节点发起链路建立过程。本实施例的技术方案,目的节点预留一个波长作为工作波长,并向源节点发送携带该预留波长信息的预留消息,而第一中间节点收到该消息时,目的节点预留的波长在该第一中间节点上不可用,即发生了波长预留资源冲突,该第一中间节点通过重选预留波长资源并分别向源节点和目的节点发送携带更改后的预留波长资源的消息,若该源节点能够接收到该携带更改后的预留波长资源的消息并且该目的节点也能够接收到该携带更改后的预留波长资源的消息,则从该源节点到该目的节点之间选定的路由上的各个节点均预留了同一波长资源,则该源节点以该更改后的预留波长作为工作波长便可成功建立该源节点与该目的节点之间的链路。然而,如果该第一中间节点向目的节点发送携带更改后的预留波长资源的消息经过第二中间节点时,该更改后的预留波长在该第二中间节点上已经被其他交叉链路预留或者占用,则该第二中间节点将分别向该源节点和该目的节点发送错误消息,指示接收到该错误消息的节点释放已预留波长。因此,当该源节点接收到该第二预留消息(即携带已经更改预留波长为第二波长资源的预留消息)后,若该源节点在设定时间内如果没有接收到第二中间节点发送错误消息,则认为该第一中间节点向该目的节点发送的该第二预留消息顺利发送至该目的节点,即该源节点至该目的节点之间的路由上的所有节点均已预留第二波长资源。则该源节点可根据接收到的该第二预留消息中携带的第二波长资源信息,以该第二波长为工作波长,向目的节点发起链路建立过程。一种可实施的方式为,在该目的节点发送该第一预留消息时,可以在该第一预留消息中加入一计时器,该计时器从该目的节点发送该第一预留消息时开始计时,当在第一中间节点上发生波长预留资源冲突而发送第二预留消息时,该第二预留消息中依然包括该计时器,直至该源节点接收到该第二预留消息时该计时器停止计时,假设该计时器停止计时的计时为T,则可设定该源节点在2T时间内没有接收到该第二中间节点发送的错误消息,则认为该第一中间节点向该目的节点发送的该第二预留消息顺利发送至该目的节点,即该源节点至该目的节点之间的路由上的所有节点均已预留第二波长资源。则可进行该源节点在该第二波长资源上向目的节点发起链路建立过程。该路径长度信息可通过标准RFC2205定义的RSVP Message Common Header中可用于已有消息的扩展来表不,例如,可对用于功能扩展的Reserve字段进行扩展,选取其中的另外4bit作为计时器。本实施例的技术方案,该源节点接收到该消息后,不必等待该目的节点反馈的是否接收到该第二预留消息的信息,即可判定该目的节点反馈的已经接收到该第二预留消息的信息,并以该更改后的预留波长为工作波长向该目的节点发起链路建立过程,从而节省等待时间,提高链路建立的效率,也提高链路建立成功率。以下以一个具体例子对本发明提供的波长资源预留方法进行详细说明,如图5所示,A、B、C、D、E分别为从节点A至节点E这一路由上的5个节点,其中节点A为源节点,节点E为目的节点,节点B、C、D为中间节点。节点A向节点B发送Path消息,其中携带节点A上的空闲波长信息,包括入工、λ2、λ3、入4和λ 5五个空闲波长;节点B接收到该Path消息,节点B上的本地空闲波长包括λ1、λ 2、λ 3、入6和λ 7,根据该Path消息中的空闲波长和节点B上的本地空闲波长更新该Path消息,并向节点C发送该更新后的Path消息,可看出该更新后的Path消息中的链路空闲波长集包括入1、λ 2和λ 3三个空闲波长资源,即节点A与节点B上均空闲的波长为λ P λ 2和λ 3 ;同理,该Path消息一直传送至节点E,在节点E上更新后的Path消息中的空闲波长包括λ1、λ 2和λ 3, 即节点AB⑶E五个节点共有的空闲波长为λ ^ λ 2和λ 3。目的节点E通过FF算法从链路空闲波长集中选择波长λi作为工作波长进行预留,并向节点D发送携带预留波长为λ I的预留消息(Resv Message,下称Resv消息);
节点D根据该Resv消息,节点D上波长λ 也空闲,则节点D预留波长λ 1 并继续向节点C发送携带预留波长为λ I的Resv消息;同理,该Resv消息一直传送至节点B,节点B上波长λ 已经被其他交叉链路所预留或者占有,则节点B从链路空闲波长集中通过LF算法重新选取波长λ 3作为工作波长预留,并向节点A发送携带预留波长为λ 3的Path消息,以及向目的节点E发送携带预留波长为λ 3的预留更改消息(ResvChange Message,下称ResvChange消息);源节点A接收到该携带预留波长为λ 3的Path消息,则源节点A预留波长λ 3 ;该携带预留波长为λ 3的ResvChange消息经过节点C和D传输至目的节点Ε,且波长λ 3在节点C、D和E上均可用,则节点C、D和E均预留波长λ3。至此,本实例中路由上的全部节点Α、B、C、D、E均预留了可用的波长λ 3,则源节点A可以波长λ 3为工作波长发起建立链路过程。作为一种优选地可实施方式,源节点A在一设定时间内如果没有接收到节点B发送的预留更改错误消息(ResvChangeErr Message,下称ResvChangeErr消息),则认为该ResvChange消息已经顺利传送至目的节点E,即节点C、D和E均已预留波长λ 3,则源节点A可以波长λ3为工作波长发起建立链路过程。另一实例如图6所示,A、B、C、D、E分别为从节点A至节点E这一路由上的5个节点,其中节点A为源节点,节点E为目的节点,节点B、C、D为中间节点。节点A向节点B发送Path消息,其中携带节点A上的空闲波长信息,包括入、λ2、λ3、入4和λ 5五个空闲波长;节点B接收到该Path消息,节点B上的本地空闲波长包括λ1、λ 2、λ 3、入6和λ 7,根据该Path消息中的空闲波长和节点B上的本地空闲波长更新改Path消息,并向节点C发送该更新后的Path消息,可看出该更新后的Path消息中的链路空闲波长集包括入1、λ 2和λ 3三个空闲波长资源,即节点A与节点B上均空闲的波长为λ P λ 2和λ 3 ;同理,该Path消息一直传送至节点E,在节点E上更新后的Path消息中的空闲波长包括λ1、λ 2和λ 3,即节点AB⑶E五个节点共有的空闲波长为λ ^ λ 2和λ 3。目的节点E通过FF算法从链路空闲波长集中选择波长λi作为工作波长进行预留,并向节点D发送携带预留波长为λ I的Resv消息;节点D根据该Resv消息,节点D上波长λ 也空闲,则节点D预留波长λ 1 并继续向节点C发送携带预留波长为λ I的Resv消息;
同理,该Resv消息一直传送至节点B,节点B上波长λ 已经被其他交叉链路所预留或者占有,则节点B从链路空闲波长集中通过LF算法重新选取波长λ 3作为工作波长预留,并向节点A发送携带预留波长为λ 3的Path消息,以及向目的节点E发送携带预留波长为λ 3的ResvChange消息;源节点A接收到该携带预留波长为λ 3的Path消息,则源节点A预留波长λ 3 ;该携带预留波长为λ 3的ResvChange消息传送至节点C时,节点C上波长λ 3已被其他交叉链路预留或者占用,则此次重选波长预留失败。节点C向源节点A发送ResvChangeErr消息,向目的节点E发送预留错误消息(ResvErr Message,下称ResvErr消息)。节点A和节点B接收到该ResvChangeErr消息后,释放已经预留的波长λ 3,节点D和节点E接收到该ResvErr消息后,释放已经预留的波长入lt)应当说明的是,图5、图6所示的实例仅是为了更加清楚的说明本发明的波长资源预留方法的具体应用实例,并不用于限制本发明的技术方案。可以看出,当发生波长预留资源冲突时,通过重选预留波长资源,以更改后的预留波长为工作波长发起链路建立过程,可提高链路建立成功率。图7为本发明提供的光网络节点的一实施例的结构示意图,如图7所示,本实施例的光网络节点可用于执行图1所示实施例的波长资源预留方法,该光网络节点包括第一接收模块11、第一处理模块12和第一发送模块13。第一接收模块11,用于接收目的节点发送的第一预留消息,该第一预留消息中携带该目的节点预留的第一波长资源信息;第一处理模块12,用于当根据该第一波长资源确定第一波长资源已占用时,在本地保存的链路空闲波长集中预留第二波长资源,该本地保存的链路空闲波长集中包括选定路由上从源节点至该中间节点的全部节点共有的空闲波长资源;第一发送模块13,用于分别向源节点和该目的节点发送第二预留消息,该第二预留消息中携带该中间节点预留的该第二波长资源信息。在光网络中,当源节点接收到建路请求时,根据该建路请求约束路由,即根据一定约束条件(可以是QoS约束条件也可以是其他策略性的约束条件)计算出所有的可能路径并根据一定的优选策略选出一条最优的路径,光网络通信中约束路由即是以一定的策略选择光网络节点作为从源节点到目的节点的传输路径。该源节点可以通过该路由上的节点逐跳向目的节点发送Path消息,该Path消息中携带有链路空闲波长集,其中包括该源节点上可用的空闲波长资源,该链路空闲波长集可以由Path消息中的LSO携带。

当该Path消息发送至中间节点时,更新该链路空闲波长集为该中间节点与该源节点共有空闲波长,并在该中间节点保存该链路空闲波长集。其中,中间节点的个数可以是一个或多个。当目的节点接收到该Path消息时,更新该链路空闲波长集为该路由上全部节点共有空闲波长,并在该目的节点保存该链路空闲波长集,若该链路空闲波长集为非空,则该目的节点通过预设算法从该链路空闲波长集中选取至少一个波长作为工作波长,例如可以通过FF波长选择算法,即选择该链路空闲波长集中第一个空闲波长作为工作波长,该目的节点再向该源节点发送携带已预留的波长资源信息(即第一波长资源信息)的第一预留消息。该已选路由上的中间节点的第一接收模块11接收该目的节点发送的该第一预留消息,该第一预留消息中携带该目的节点预留的第一波长资源信息。光网络中的一个节点,可能同时为多条不同链路的源节点或者中间节点或者目的节点,即在该节点上形成多条链路的交叉。该中间节点接收到该第一波长资源时,可能由于其他的交叉链路已经将该中间节点上的该第一波长资源预留或者使用,则该中间节点的第一处理模块12将从本地保存的链路空闲波长集中重新选取可用波长作为工作波长并预留,即预留第二波长资源。例如,目的节点预留了波长为X1的波长资源,中间节点接收到该第一波长资源时,λ i在该节点上已经不可用,则该中间节点从本地保存的链路空闲波长集中重新选取可用波长λ2作为工作波长并预留。该中间节点的第一处理模块12更改了预留波长资源,再由第一发送模块13分别向源节点和目的节点发送第二预留消息,该第二预留消息中携带该中间节点预留的第二波长资源信息。该中间节点向源节点发送第二预留消息,源节点收到该消息后将以第二波长作为工作波长建立链路;该中间节点向目的节点发送第二预留消息,目的节点收到该消息,则将目的节点预留的第一波长资源更改为第二波长。本实施例的技术方案,目的节点预留一波长,并向源节点发送携带预留波长信息的预留消息,而中间节点收到该消息时,目的节点预留的波长在该中间节点上不可用,即发生了波长预留资源冲突,该中间节点通过重选预留波长资源并分别向源节点和目的节点发送携带更改后的预留波长资源的消息以建立链路,提高链路建立成功率。本实施例提供的光网络节点,与图1所示的波长资源预留方法对应,具体可参见该方法实施例中的相关描述。图8为本发明提供的光网络节点的又一实施例的结构示意图,如图8所示,在前一实施例的基础上,本实施例的光网络节点还包括第一判断模块14。第一接收模块11 ,还用于接收该源节点发送的第一路径消息,该第一路径消息中携带路径长度信息,该路径长度信息用于表示该源节点至该中间节点的上一跳节点之间的距离;第一处理模块12,还用于将该路径长度信息更新为该源节点至该中间节点之间的距离;第一发送模块13,还用于向下一跳节点发送第二路径消息,该第二路径消息中携带更新后的该路径长度信息;第一判断模块14,用于根据该路径长度信息判断该光网络节点与该源节点之间的距离是否小于设定距离,若是,则该光网络节点分别向该源节点和该目的节点发送该第二预留消息,否则,该光网络节点不向该源节点和该目的节点发送该第二预留消息。该源节点下游节点的第一接收模块11接收该源节点发送的第一路径消息,该第一路径消息中携带了路径长度信息,该路径长度信息用于表示该源节点至该中间节点的上一跳节点之间的距离。这里所说的距离,可以是该源节点至该中间节点的上一跳节点之间的跳数,例如第一路径消息发送至源节点下游第一个中间节点,则该消息中的路径长度信息表示源节点至该中间节点的上一跳节点(即源节点)间的距离,此时该距离为O。该路径长度信息可通过RFC2205定义的RSVP消息通用头文件(Message CommonHeader)中可用于已有消息的扩展来表示,例如,可对用于功能扩展的Reserve字段进行扩展,选取其中的4bit作为路径长度信息。中间节点的第一处理模块12通过该中间节点接收到将该源节点至该中间节点的上一跳节点之间的距离加上该中间节点与其上一跳节点之间的距离得到该源节点至该中间节点之间的距离,更新该路径长度信息。例如,若该源节点至该中间节点的上一跳节点之间的跳数为D,则更新该路径长度信息为D+1。该中间节点的第一发送模块13将携带更新后的路径长度信息的第二路径消息向该中间节点的下一跳节点发送。该中间节点的第一判断模块14判断该中间节点距源节点的距离是否小于设定距离,如果是则发送第二预留消息,即更改预留波长;如果该中间节点距源节点的距离大于或者等于设定距离,则不更改预留波长,结束链路建立过程。例如,假设该中间节点距源节点的距离为D,源节点至目的节点的路径长度为Dm,设定距离为Dm/2,如果D〈Dm/2,则说明第一预留消息已经传输经过了整个链路中超过一半的节点,此时更改第一预留消息已经传输经过了的节点上的预留波长所需时间较短,从而该中间节点分别向源节点和目的节点发送第二预留消息;否则,该中间节点不向源节点和目的节点发送第二预留消息。本实施例中,接收到携带路径长度信息的第一路径消息的中间节点,将其中的路径长度更新为源节点至接收到该消息的中间节点间的距离,并向下游节点发送携带更新后的路径长度信息的第二路径消息。可从不断更新的路径消息中的路径长度获知路径消息在整个路由中传送的距离,便于在发生波长预留资源冲突时考虑更改预留波长资源的时间成本。再通过判断中间节点距源节点的距离与设定距离的大小关系,可衡量更改预留波长资源的时间成本。本实施例提供的光网络节点,与图2所示的波长资源预留方法对应,具体可参见该方法实施例中的相关描述。图9为本发明提供的光网络节点的又一实施例的结构示意图,如图9所示,本实施例的光网络节点可用于执行图1和图2所示实施例的波长资源预留方法,该光网络节点包括第二接收模块21和建路模块22。第二接收模块21,用于接收第一中间节点发送的第二预留消息,该第二预留消息中携带该中间节点预留的第二波长资源信息;建路模块22,用于根据该第二波长资源信息,在该第二波长资源上向目的节点发起链路建立过程。在光网络中,当源节点接收到建路请求时,根据该建路请求约束路由,该源节点可以通过该路由上的节点逐跳向目的节点发送Path消息,该Path消息中携带有链路空闲波长集,其中包括该源节点上可用的空闲波长资源,该链路空闲波长集可以由Path消息中的LSO携带。 当该Path消息发送至第一中间节点时,更新该链路空闲波长集为该中间节点与该源节点共有空闲波长,并在该第一中间节点保存该链路空闲波长集。其中,中间节点的个数可以是一个或多个。当目的节点接收到该Path消息时,更新该链路空闲波长集为该路由上全部节点共有空闲波长,并在该目的节点保存该链路空闲波长集,若该链路空闲波长集为非空,则该目的节点通过预设算法从该链路空闲波长集中选取至少一个波长作为工作波长,例如可以通过FF波长选择算法,即选择该链路空闲波长集中第一个空闲波长作为工作波长,该目的节点再向该源节点发送携带已预留的波长资源信息(即第一波长资源信息)的第一预留消息。该已选路由上的第一中间节点接收该目的节点发送的该第一预留消息,但是该第一预留消息中携带的该目的节点预留的第一波长资源信息在该第一中间节点上已经被其他交叉链路预留或者占用,则该第一中间节点从该第一中间节点上保存的链路空闲波长集中以预设算法重新选取一波长作为工作波长,例如可以通过LF波长选择算法,即选择该链路空闲波长集中最后一个空闲波长作为工作波长,该第一中间节点再向该源节点发送携带重新选取预留的波长资源信息(即第二波长资源信息)的第二预留消息。该源节点的第二接收模块21接收该第一中间节点发送的该第二预留消息。该源节点接收到该第二预留消息后,该源节点的建路模块22根据其中携带的第二波长资源信息,以该第二波长为工作波长,向目的节点发起链路建立过程。本实施例的技术方案,目的节点预留一波长,并向源节点发送携带该预留波长信息的预留消息,而中间节点收到该消息时,目的节点预留的波长在该中间节点上不可用,即发生了波长预留资源冲突,该中间节点通过重选预留波长资源并分别向源节点和目的节点发送携带更改后的预留波长资源的消息,该源节点接收到该消息后,以该更改后的预留波长为工作波长向该目的节点发起链路建立过程,提高链路建立成功率。本实施例提供的光网络节点,与图3所示的波长资源预留方法对应,具体可参见该方法实施例中的相关描述。图10为本发明提供的光网络节点的又一实施例的结构示意图,如图10所示,在前一实施例的基础上,本实施例的光网络节还包括第二判断模块23。第二判断模块23,用于判断该光网络节点在设定时间内是否接收到第二中间节点发送错误消息,该错误消息用于指示接收到该述错误消息的节点释放已预留波长。本实施例的技术方案,目的节点预留一个波长作为工作波长,并向源节点发送携带该预留波长信息的预留消息,而第一中间节点收到该消息时,目的节点预留的波长在该第一中间节点上不可用,即发生了波长预留资源冲突,该第一中间节点通过重选预留波长资源并分别向源节点和目的节点发送携带更改后的预留波长资源的消息,若该源节点能够接收到该携带更改后的预留波长资源的消息并且该目的节点也能够接收到该携带更改后的预留波长资源的消息,则从该源节点到该目的节点之间选定的路由上的各个节点均预留了同一波长资源,则该源节点以该更改后的预留波长作为工作波长便可成功建立该源节点与该目的节点之间的链路。然而,如果该第一中间节点向目的节点发送携带更改后的预留波长资源的消息经过第二中间节点时,该更改后的预留波长在该第二中间节点上已经被其他交叉链路预留或者占用,则该第二中间节点将分别向该源节点和该目的节点发送错误消息,指示接收到该错误消息的节点释放已预留波长。因此,当该源节点接收到该第二预留消息(即携带已经更改预留波长为第二波长资源的预留消息)后,若该源节点的第二判断模块23判断在设定时间内时候接收 到第二中间节点发送错误消息,如果没有,则认为该第一中间节点向该目的节点发送的该第二预留消息顺利发送至该目的节点,即该源节点至该目的节点之间的路由上的所有节点均已预留第二波长资源。则该源节点可根据接收到的该第二预留消息中携带的第二波长资源信息,以该第二波长为工作波长,向目的节点发起链路建立过程。本实施例的技术方案,该源节点接收到该消息后,不必等待该目的节点反馈的是否接收到该第二预留消息的信息,即可判定该目的节点反馈的已经接收到该第二预留消息的信息,并以该更改后的预留波长为工作波长向该目的节点发起链路建立过程,从而节省等待时间,提闻链路建立的效率。本实施例提供的光网络节点,与图4所示的波长资源预留方法对应,具体可参见该方法实施例中的相关描述。本领域普通技术人员可以理解实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括R0M、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围 。
权利要求
1.一种波长资源预留方法,其特征在于,包括 中间节点接收目的节点发送的第一预留消息,所述第一预留消息中携带所述目的节点预留的第一波长资源信息; 若所述中间节点根据所述第一波长资源消息确定第一波长资源已占用,则所述中间节点预留本地保存的链路空闲波长集中的第二波长资源,所述本地保存的链路空闲波长集中包括选定路由上从源节点至所述中间节点的全部节点共有的空闲波长资源; 所述中间节点分别向源节点和所述目的节点发送第二预留消息,所述第二预留消息中携带所述中间节点预留的所述第二波长资源信息。
2.根据权利要求1所述的方法,其特征在于,所述中间节点接收到目的节点发送的第一预留消息之前,还包括 所述中间节点接收所述源节点发送的第一路径消息,所述第一路径消息中携带路径长度信息,所述路径长度信息用于表示所述源节点至所述中间节点的上一跳节点之间的距离; 所述中间节点将所述路径长度信息更新为所述源节点至所述中间节点之间的距离; 所述中间节点向下一跳节点发送第二路径消息,所述第二路径消息中携带更新后的所述路径长度信息。
3.根据权利要求2所述的方法,其特征在于,所述第一预留消息中还携带所述路径长度信息以及所述源节点至所述目的节点的路径长度信息,所述中间节点分别向源节点和所述目的节点发送第二预留消息之前,还包括 若所述中间节点根据所述路径长度信息判断所述中间节点距所述源节点小于设定距离,则所述中间节点分别向所述源节点和所述目的节点发送所述第二预留消息,否则,所述中间节点不向所述源节点和所述目的节点发送所述第二预留消息。
4.一种波长资源预留方法,其特征在于,包括 源节点接收第一中间节点发送的第二预留消息,所述第二预留消息中携带所述第一中间节点预留的第二波长资源信息; 所述源节点根据所述第二波长资源信息,在所述第二波长资源上向目的节点发起链路建立过程。
5.根据权利要求4所述的方法,其特征在于,所述在所述第二波长资源上向目的节点发起链路建立过程之前,还包括 若所述源节点在设定时间内没有接收到第二中间节点发送错误消息,所述错误消息用于指示接收到所述错误消息的节点释放已预留波长。
6.一种光网络节点,其特征在于,包括 第一接收模块,用于接收目的节点发送的第一预留消息,所述第一预留消息中携带所述目的节点预留的第一波长资源信息; 第一处理模块,用于当根据所述第一波长资源确定第一波长资源已占用时,在本地保存的链路空闲波长集中预留第二波长资源,所述本地保存的链路空闲波长集中包括选定路由上从源节点至所述中间节点的全部节点共有的空闲波长资源; 第一发送模块,用于分别向源节点和所述目的节点发送第二预留消息,所述第二预留消息中携带所述中间节点预留的所述第二波长资源信息。
7.根据权利要求6所述的光网络节点,其特征在于, 所述第一接收模块,还用于接收所述源节点发送的第一路径消息,所述第一路径消息中携带路径长度信息,所述路径长度信息用于表示所述源节点至所述中间节点的上一跳节点之间的距离; 所述第一处理模块,还用于将所述路径长度信息更新为所述源节点至所述中间节点之间的距离; 所述第一发送模块,还用于向下一跳节点发送第二路径消息,所述第二路径消息中携带更新后的所述路径长度信息。
8.根据权利要求7所述的光网络节点,其特征在于,还包括 第一判断模块,用于根据所述路径长度信息判断所述光网络节点与所述源节点之间的距离是否小于设定距离,若是,则所述光网络节点分别向所述源节点和所述目的节点发送所述第二预留消息,否则,所述光网络节点不向所述源节点和所述目的节点发送所述第二预留消息。
9.一种光网络节点,其特征在于,包括 第二接收模块,用于接收第一中间节点发送的第二预留消息,所述第二预留消息中携带所述中间节点预留的第二波长资源信息; 建路模块,用于根据所述第二波长资源信息,在所述第二波长资源上向目的节点发起链路建立过程。
10.根据权利要求9所述的光网络节点,其特征在于,还包括 第二判断模块,用于判断所述光网络节点在设定时间内是否接收到第二中间节点发送错误消息,所述错误消息用于指示接收到所述错误消息的节点释放已预留波长。
全文摘要
本发明提供一种波长资源预留方法及光网络节点。该方法包括中间节点接收目的节点发送的第一预留消息,所述第一预留消息中携带所述目的节点预留的第一波长资源信息;若所述中间节点根据所述第一波长资源消息确定第一波长资源已占用,则所述中间节点预留本地保存的链路空闲波长集中的第二波长资源;所述中间节点分别向源节点和所述目的节点发送第二预留消息,所述第二预留消息中携带所述中间节点预留的所述第二波长资源信息。该光网络节点包括第一接收模块、第一处理模块和第一发送模块。本发明的波长资源预留方法及光网络节点,当发生波长预留资源冲突时,通过重选预留波长资源,提高链路建立成功率。
文档编号H04Q11/00GK103036812SQ20121055917
公开日2013年4月10日 申请日期2012年12月20日 优先权日2012年12月20日
发明者王光全, 刘晓甲, 张红, 刘刚, 何磊, 郑波, 陆月明, 王丽琼, 周晓霞, 王海军, 杨伟, 程保 申请人:中国联合网络通信集团有限公司, 中讯邮电咨询设计院有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1