专利名称:一种显示隧道节点主机名的方法、系统及节点的制作方法
技术领域:
本发明涉及网络通信领域中基于流量工程扩展的资源预留协议(RSVP-TE, Resource Reservation Protocol-Traffic Engineering)技术,尤其涉及一禾中显不隧道节点主机名的方法、系统及节点。
背景技术:
由于多协议标签交换(MPLS,Multiprotocol Label Switching)技术在流量工程、 服务质量、可靠性等方面的优势,基于MPLS技术的网络已经得到大量部署。RSVP-TE技术作为一种建立MPLS隧道的信令协议,同样得到了广泛的应用。在传统的网络管理中,网络管理员只能在隧道节点上看到该节点的IP地址,而事实是网络管理员更加愿意通过更直观和人性化的主机名来更好的了解和管理网络隧道节点,并且网络管理员更加愿意方便的在一个隧道节点上对全部隧道节点的主机名和IP 地址有所了解,以掌握整个隧道的情况。目前,互联网工程任务组(IETF,The Internet Engineering Task Force) ,^Μ^ΜΛΜΜ ^ @ Χ % (0SPF, Open Shortest Path First)协议和IS-IS协议的动态主机名交换机制完成了标准规定,分别为RFC 5642和RFC 5301。但是,对于跨越OSPF不同区域的隧道节点,还无法实现动态的获取全部隧道节点的主机名。在当前的MPLS技术的隧道网络管理中,网络管理员往往需要直观的了解整条隧道所经过的节点,从而更好的对节点进行管理,以及对业务流量的转发进行控制,从而保证用户数据的服务质量。
发明内容
有鉴于此,本发明的主要目的在于提供一种显示隧道节点主机名的方法、系统及节点,能够在某个节点上动态的显示所有隧道节点的主机名。为达到上述目的,本发明的技术方案是这样实现的本发明提供一种显示隧道节点主机名的方法,所述隧道上的节点包括入节点、出节点、以及位于入节点和出节点之间的一个或多个中间节点,所述中间节点中含有作为路由边界节点的中间节点;该方法包括作为路由边界节点的中间节点将接收预留消息的接口所在区域的节点的主机名映射关系发送给上游节点,将接收路径消息的接口所在区域的节点的主机名映射关系发送给下游节点;上游节点或下游节点根据收到的主机名映射关系对本地保存的主机名映射关系进行更新,并根据本地保存的通告节点地址将收到的主机名映射关系转发给对应的节点。上述方法中,所述作为路由边界节点的中间节点将接收预留消息的接口所在区域的节点的主机名映射关系发送给上游节点,将接收路径消息的接口所在区域的节点的主机名映射关系发送给下游节点为当作为路由边界节点的中间节点收到预留消息时,同时将通告消息发送给上游节点和下游节点;其中,发送给上游节点的通告消息中携带路由边界节点接收预留消息的接口所在区域中标签交换路径(LSP)隧道经过节点的主机名(hostname)映射关系,目的地址为路径状态块中保存的通告节点地址;发送给下游节点的通告消息中携带路由边界节点接收路径消息的接口所在区域中LSP隧道经过节点的hostname映射关系,目的地址为预留状态块中保存的通告节点地址。上述方法中,所述上游节点或下游节点根据收到的主机名映射关系对本地保存的主机名映射关系进行更新,并根据本地保存的通告节点地址将收到的主机名映射关系转发给对应的节点为当接收到通告消息的节点是该通告消息的目的地址时,节点根据通告消息中携带的hostname映射关系,对本地已经保存的hostname映射关系的进行更新;同时,节点根据自身路径状态块或预留状态块中保存的通告节点地址,将收到的通告消息转发给上游节点或下游节点,转发的通告消息的内容不变。上述方法中,所述作为路由边界节点的中间节点将接收预留消息的接口所在区域的节点的主机名映射关系发送给上游节点之前,该方法还包括作为出节点的下游节点判断自身是否需要所有节点的主机名映射关系,如果需要,出节点将预留消息发送给相邻的中间节点,其中携带通告请求对象,所述通告请求对象中的通告节点地址为自身的IP地址,如果不需要,出节点将预留消息发送给相邻的中间节
点O上述方法中,所述出节点判断自身是否需要所有节点的主机名映射关系之前,该方法还包括当中间节点确定路径消息或预留消息中有通告请求对象时,保存通告请求对象中的通告节点地址,并判断自身是否需要所有节点的主机名映射关系,如果需要,中间节点用自身的IP地址替换通告请求对象中已存在的通告节点地址,将路径消息或预留消息发送给相邻的节点,如果不需要,中间节点将收到的路径消息或预留消息发送给相邻的节点;当中间节点确定路径消息或预留消息中没有通告请求对象时,判断自身是否需要所有节点的主机名映射关系,如果需要,中间节点在路径消息或预留消息中创建通告请求对象,并将其中的通告节点地址设置为自身的IP地址,将路径消息或预留消息发送给相邻的节点,如果不需要,中间节点将收到的路径消息或预留消息发送给相邻的节点。上述方法中,所述保存通告请求对象中的通告节点地址为中间节点将路径消息中的通告请求对象中的通告节点地址保存到自身的路径状态块中;或,中间节点将预留消息中的通告请求对象中的通告节点地址保存到自身的预留状态块中。上述方法中,所述中间节点判断路径消息或预留消息中是否有通告请求对象之前,该方法还包括作为入节点的上游节点判断自身是否需要所有节点的主机名映射关系,如果需要,入节点将路径消息发送给相邻的中间节点,其中携带通告请求对象,所述通告请求对象中的通告节点地址为自身的IP地址,如果不需要,入节点将路径消息发送给相邻的中间节
点O上述方法中,所述入节点判断自身是否需要所有节点的主机名映射关系为
根据是否需要在节点上动态显示整条LSP隧道的所有节点的hostname映射关系, 在LSP隧道的节点配置该节点是否需要整条LSP隧道的所有节点的hostname映射关系;根据配置的是否需要整条LSP隧道的所有节点的hostname映射关系,入节点判断自身是否需要整条LSP隧道的所有节点的hostname映射关系。本发明还提供一种显示隧道节点主机名的系统,包括作为路由边界节点的中间节点、上游节点或下游节点;其中,作为路由边界节点的中间节点,用于将接收预留消息的接口所在区域的节点的主机名映射关系发送给上游节点,将接收路径消息的接口所在区域的节点的主机名映射关系发送给下游节点;上游节点或下游节点,用于根据收到的主机名映射关系对本地保存的主机名映射关系进行更新,并根据本地保存的通告节点地址将收到的主机名映射关系转发给对应的节
点ο上述系统中,所述作为出节点的下游节点,用于判断自身是否需要所有节点的主机名映射关系,需要时,出节点将预留消息发送给相邻的中间节点,其中,预留消息携带通告请求对象, 所述通告请求对象中的通告节点地址为自身IP地址的;不需要时,出节点将预留消息发送给相邻的中间节点。上述系统中,所述作为中间节点的上游节点或作为中间节点的下游节点,用于当确定路径消息或预留消息中有通告请求对象时,保存通告请求对象中的通告节点地址,并判断自身是否需要所有节点的主机名映射关系,需要时,中间节点用自身的IP地址替换通告请求对象中已存在的通告节点地址,将路径消息或预留消息发送给相邻的节点,不需要时,中间节点将收到的路径消息或预留消息发送给相邻的节点;当确定路径消息或预留消息中没有通告请求对象时,判断自身是否需要所有节点的主机名映射关系,需要时,中间节点在路径消息或预留消息中创建通告请求对象,并将其中的通告节点地址设置为自身的IP地址,将路径消息或预留消息发送给相邻的节点,不需要时,中间节点将收到的路径消息或预留消息发送给相邻的节点。上述系统中,所述作为入节点的上游节点,用于判断自身是否需要所有节点的主机名映射关系,需要时,入节点将路径消息发送给相邻的中间节点,其中携带通告请求对象,所述通告请求对象中的通告节点地址为自身IP地址的;不需要时,入节点将路径消息发送给相邻的中间节点。本发明还提供一种入节点,用于判断自身是否需要所有节点的主机名映射关系, 需要时,入节点将路径消息发送给相邻的中间节点,其中携带通告请求对象,所述通告请求对象中的通告节点地址为自身IP地址的;不需要时,入节点将路径消息发送给相邻的中间节点。本发明还提供一种中间节点,用于将接收预留消息的接口所在区域的节点的主机名映射关系发送给上游节点,将接收路径消息的接口所在区域的节点的主机名映射关系发送给下游节点。
7
上述节点中,该中间节点还用于,当确定路径消息或预留消息中有通告请求对象时,保存通告请求对象中的通告节点地址,并判断自身是否需要所有节点的主机名映射关系,需要时,中间节点用自身的IP地址替换通告请求对象中已存在的通告节点地址,将路径消息或预留消息发送给相邻的节点,不需要时,中间节点将收到的路径消息或预留消息发送给相邻的节点;当确定路径消息或预留消息中没有通告请求对象时,判断自身是否需要所有节点的主机名映射关系,需要时,中间节点在路径消息或预留消息中创建通告请求对象,并将其中的通告节点地址设置为自身的IP地址,将路径消息或预留消息发送给相邻的节点,不需要时,中间节点将收到的路径消息或预留消息发送给相邻的节点。本发明还提供一种出节点,用于判断自身是否需要所有节点的主机名映射关系, 需要时,出节点将预留消息发送给相邻的中间节点,其中,预留消息携带通告请求对象,所述通告请求对象中的通告节点地址为自身IP地址的;不需要时,出节点将预留消息发送给相邻的中间节点。本发明提供的显示隧道节点主机名的方法、系统及节点,作为路由边界节点的中间节点将接收预留消息的接口所在区域的节点的主机名映射关系发送给上游节点,将接收路径消息的接口所在区域的节点的主机名映射关系发送给下游节点;上游节点或下游节点根据收到的主机名映射关系对本地保存的主机名映射关系进行更新,并根据本地保存的通告节点地址将收到的主机名映射关系转发给对应的节点,能够在某个LSP隧道的节点上动态的显示所有隧道节点的主机名,因此,网络管理员可以在需要LSP隧道中其他节点的 hostname映射关系的节点上,直观的看到整条LSP隧道的所有节点的主机名和与该节点对应的IP地址,更直观和更人性化的了解和管理网络隧道节点,从而掌握整个隧道的情况, 能够对业务流量的转发进行控制,从而保证用户数据的服务质量。
图1是本发明隧道入节点根据需要确定是否在路径消息中利用通告请求对象携带自身的IP地址的方法的流程示意图;图2是本发明隧道中间节点根据需要确定是否在路径消息或预留消息中利用通告请求对象携带自身的IP地址的方法的流程示意图;图3是本发明隧道出节点根据需要确定是否在预留消息中利用通告请求对象携带自身IP地址的方法的流程示意图;图4是本发明隧道节点获取其他节点主机名映射关系的方法的流程示意图;图5是本发明本发明实现显示隧道节点主机名的方法的实施例一的示意图;图6是本发明实现显示隧道节点主机名的方法的实施例一的流程示意图;图7是本发明本发明实现显示隧道节点主机名的方法的实施例二的示意图;图8是本发明实现显示隧道节点主机名的方法的实施例二的流程示意图;图9是本发明本发明实现显示隧道节点主机名的系统的结构示意图。
具体实施例方式本发明的基本思想是作为路由边界节点的中间节点将接收预留消息的接口所在区域的节点的主机名映射关系发送给上游节点,将接收路径消息的接口所在区域的节点的主机名映射关系发送给下游节点;上游节点或下游节点根据收到的主机名映射关系对本地保存的主机名映射关系进行更新,并根据本地保存的通告节点地址将收到的主机名映射关系转发给对应的节点。下面通过附图及具体实施例对本发明再做进一步的详细说明。本发明提供一种显示隧道节点主机名的方法,图1是本发明隧道入节点根据需要确定是否在路径消息中利用通告请求对象携带自身的IP地址的方法的流程示意图,如图1 所示,该方法包括以下步骤步骤101,入节点判断自身是否需要所有节点的主机名映射关系,如果需要,执行步骤102,如果不需要,执行步骤103 ;具体的,网络管理员根据是否需要在节点上动态显示整条标签交换路径(LSP, Label Switching Path)隧道的所有节点的主机名(hostname)映射关系,在LSP隧道的节点,配置该节点是否需要整条LSP隧道的所有节点的hostname映射关系,根据配置的是否需要整条LSP隧道的所有节点的hostname映射关系,入(digress)节点判断自身是否需要整条LSP隧道的所有节点的hostname映射关系,如果需要,执行步骤102,如果不需要,执行步骤103 ;其中,hostname映射关系是节点的hostname与IP地址的——对应关系,IP地址可以是路由器ID。步骤102,入节点将路径消息发送给相邻的中间节点,其中携带通告请求对象,所述通告请求对象中的通告节点地址为自身的IP地址;具体的,hgress节点发送路径(Path)消息给与该hgress节点相邻的中间节点, 该Path 消息中携带通告请求对象(Notify Request 0bject),该 NotifyRequest Object 携带通告节点地址(Notify Node Address);这里,Notify Node Address 是 hgress 节点自身的IP地址。步骤103,入节点将路径消息发送给相邻的中间节点;具体的,digress节点发送I^ath消息给与该digress节点相邻的中间节点,该 Path 消息中不携带 Notify Request Object。图2是本发明隧道中间节点根据需要确定是否在路径消息或预留消息中利用通告请求对象携带自身的IP地址的方法的流程示意图,如图2所示,该方法包括以下步骤步骤201,中间节点判断路径消息或预留消息中是否有通告请求对象,如果有,执行步骤202,如果没有,执行步骤203 ;具体的,如果中间节点是从上游节点收到I^ath消息,则判断从上游节点接收到的 Path消息中是否携带有Notify Request Object,如果有,执行步骤202,如果没有,执行步骤203 ;这里,中间节点的上游节点可以是其他中间节点,也可以是digress节点;或,如果中间节点是从下游节点收到预留(Resv)消息,则判断从下游节点接收到的Resv消息中是否携带有Notify Request 0b ject,如果有,执行步骤202,如果没有,执行步骤203;这里,中间节点的下游节点可以是其他中间节点,也可以是出(Egress)节点。步骤202,中间节点保存通告请求对象中的通告节点地址;具体的,中间节点将路径消息中的Notify Request 0bject中的Notify Node Address保存到自身的路径状态块(path state block)中;或,中间节点将预留消息中的Notify Request Object 中的 Notify Node Addressg ^ ^^ (resv state
block)中。步骤203,中间节点判断自身是否需要所有节点的主机名映射关系,如果需要,执行步骤207,如果不需要,执行步骤206 ;具体的,根据配置的是否需要整条LSP隧道的所有节点的hostname映射关系,中间节点判断自身是否需要整条LSP隧道的所有节点的hostname映射关系,如果需要,执行步骤207,如果不需要,执行步骤206。步骤204,中间节点判断自身是否需要所有节点的主机名映射关系,如果需要,执行步骤205,如果不需要,执行步骤206。步骤205,中间节点用自身的IP地址替换通告请求对象中已存在的通告节点地址,将路径消息或预留消息发送给相邻的节点;具体的,中间节点用自身的IP地址替换路径消息中Notify Request Object中已存在的Notify Node Address,将替换后的路径消息发送给相邻的下游节点,这里相邻的下游节点可以是其他中间节点,也可以是Egress节点;或,中间节点用自身的IP地址替换预留消息中Notify Request Object中已存在的Notify Node Address,将预留消息发送给相邻的上游节点,这里相邻的上游节点可以是其他中间节点,也可以是hgress节点。步骤206,中间节点将收到的路径消息或预留消息发送给相邻的节点;具体的,中间节点将从上游节点收到的I^ath消息转发给相邻的下游节点;或,中间节点将从下游节点收到的Resv消息转发给相邻的上游节点。步骤207,中间节点在路径消息或预留消息中创建通告请求对象,并将其中的通告节点地址设置为自身的IP地址,将路径消息或预留消息发送给相邻的节点;具体的,中间节点在收到的I^ath消息中创建一个Notify Request Object,并将其中的Notify Node Address设置为该中间节点自身的IP地址,将I^ath消息发送给相邻的下游节点,该I^th消息中携带有该中间节点自身的IP地址;或,中间节点在收到的Resv消息中创建一个Notify Request Object,并将其中的Notify Node Address设置为该中间节点自身的IP地址,将Resv消息发送给相邻的上游节点,该Resv消息中携带有该中间节点自身的IP地址。图3是本发明隧道出节点根据需要确定是否在预留消息中利用通告请求对象携带自身IP地址的方法的流程示意图,如图3所示,该方法包括以下步骤步骤301,出节点判断自身是否需要所有节点的主机名映射关系,如果需要,执行步骤302,如果不需要,执行步骤303 ;具体的,根据配置的是否需要整条LSP隧道的所有节点的hostname映射关系, Egress节点判断自身是否需要整条LSP隧道的所有节点的hostname映射关系,如果需要, 执行步骤302,如果不需要,执行步骤303。步骤302,出节点将预留消息发送给相邻的中间节点,其中携带通告请求对象,所述通告请求对象中的通告节点地址为自身的IP地址;具体的,Egress节点发送Resv消息给与该Egress节点相邻的中间节点,该Resv 消息中携带 Notify Request Object,该 Notify Request 0bject 的内容是 NotifyNodeAddress,这里,Notify Node Address 是 Egress 节点自身的 IP 地址。步骤303,出节点将预留消息发送给相邻的中间节点;具体的,Egress节点发送Resv消息给与该Egress节点相邻的中间节点,该Resv 消息中不携带 Notify Request Object。图4是本发明隧道节点获取其他节点主机名映射关系的方法的流程示意图,如图 4所示,该方法包括以下步骤步骤401,作为路由边界节点的中间节点将接收预留消息的接口所在区域的节点的主机名映射关系发送给上游节点,将接收路径消息的接口所在区域的节点的主机名映射关系发送给下游节点;具体的,作为路由边界节点的中间节点会依次收到digress节点发送的I^ath消息和Egress节点发送的Resv消息,当作为路由边界节点的中间节点收到Resv消息时, 同时将通告(Notity)消息发送给上游节点和下游节点;其中,发送给上游节点的Notity 消息中携带路由边界节点接收Resv消息的接口所在区域(area)中LSP隧道经过节点的 hostname映射关系,目的地址即上游节点的IP地址为path state block中保存的Notify Node Address,该Notify Node Address的内容是某个节点的IP地址;发送给下游节点的 Notity消息中携带路由边界节点接收I^ath消息的接口所在区域中LSP隧道经过节点的 hostname映射关系,目的地址即下游节点的IP地址为resv state block中保存的Notify Node Address,该Notify Node Address的内容是某个节点的IP地址;其中,作为路由边界节点的中间节点发送的接收Resv消息的接口所在区域中LSP 隧道经过节点的hostname映射关系,以及接收I^ath消息的接口所在区域中LSP隧道经过节点的hostname映射关系,是作为路由边界节点的中间节点通过路由协议获得的,属于现有技术,这里不再赘述;这里,路由边界节点是一种特殊的中间节点,是位于路由区域边界位置的中间节点。步骤402,节点根据收到的主机名映射关系对本地保存的主机名映射关系进行更新,并根据本地保存的通告节点地址将收到的主机名映射关系转发给对应的节点;具体的,当接收到Notify消息的节点是该Notify消息的目的地址时,节点根据 Notify消息中携带的hostname映射关系,对本地已经保存的hostname映射关系的进行更新,这里节点本地的hostname映射关系是保存在节点内存的映射表中;同时,节点根据自身 path state block 或 resv state block 中保存的 Notify Node Address,将收到的 Notify消息转发给上游节点或下游节点,转发的Notify消息的内容是不改变的;其中,发送给上游节点的Notify消息,是使用path state block中保存的Notify Node Address 作为目的地址,发送下游的Notify消息,是使用resv state block中保存的Notify Node Address作为目的地址;这样,需要隧道中其他节点的hostname映射关系的节点就可以得到整条LSP隧道的所有节点的hostname映射关系,网络管理员可以在需要隧道中其他节点的hostname映射关系的节点上,直观的看到整条LSP隧道的所有节点的主机名和与该节点对应的IP地址。实施例一图5是本发明本发明实现显示隧道节点主机名的方法的实施例一的示意图,如图 5所示,Ingress节点a通过发送I^ath消息发起跨区域的隧道建立请求,Egress节点g接收到I^ath消息,其中,设节点a、节点c和节点f需要整条LSP隧道的所有节点的hostname 映射关系。 图6是本发明实现显示隧道节点主机名的方法的实施例一的流程示意图,是实施例一中Ingress节点a发送Path消息,Egress节点g接收到Path消息的流程示意图,如图6所述,该方法包括以下步骤 步骤601,Ingree节点a发送I^ath消息给中间节点b,其中I^ath消息中携带Notify Request Object, ^ Notify Request Object 中的 Notify Node Address 设置为 Ingree 节点a自身的IP地址。步骤602,中间节点b收到I^ath消息后,将该消息中携带的Notify Request Object 中 Notify Node Address 保存至Ij 自身的 path state block 中,并将收到的 Path 消息转发给中间节点c,其中携带的Notify Node Address仍然是hgress节点a的IP地址。步骤603,中间节点c收到I^ath消息后,将该消息中携带的Notify Request Object中Notify Node Address保存到自身的path state block中,并用自身的IP地址替 ^ Notify Request Object 中帛*的 Notify Node Address (Ingress Ti^ a ^ IP jfttlt ), 将替换后的I^ath消息发送给中间节点d。步骤604步骤605,中间节点d和中间节点e的处理过程与中间节点b的处理过程相同,参见步骤602。步骤606,中间节点f的处理过程与中间节点c的处理过程相同,参见步骤603。步骤607,Egress节点g收到I^ath消息后,将将该消息中携带的Notify Request Object 中 Notify Node Address 保存到自身的 path state block 中,其中携带的 Notify Node Address是中间节点f的IP地址。图7是本发明本发明实现显示隧道节点主机名的方法的实施例二的示意图,如图 7所示,Egress节点g已经接收到I^ath消息,回复Resv消息给hgress节点a,且需要LSP 隧道中其他节点hostname映射关系的节点都通过Notify消息获取整条LSP隧道的所有节点的hostname映射关系;其中,设节点a、节点c和节点f需要整条LSP隧道的所有节点的 hostname映身寸关系。图8是本发明实现显示隧道节点主机名的方法的实施例二的流程示意图,是在实施例一的基础上,Egress节点g回复Resv消息给hgress节点a,Ingress节点a接收到 Resv消息,且需要LSP隧道中其他节点hostname映射关系的节点都通过Notify消息获取整条LSP隧道的所有节点的hostname映射关系的流程示意图,如图8所述,该方法包括以下步骤步骤801,Egress节点g在收到Path消息后,回复Resv消息给Ingress节点a ; 其中,该Resv消息中不携带Notify Request Object。步骤802,中间节点f接收到Resv消息后,在该Resv消息中创建Notify Request Object,将 Notify Request Object 中 Notify Node Address 设置为自身的 IP 地址,并将携带该Notify Request Object的Resv消息发送给上游节点e。步骤803,路由边界节点e接收到Resv消息后,将其中携带的Notify Request Object 中的 Notify Node Address 保存至Ij 自身的 resv state block 中,并收至Ij的 Resv 消息转发给中间节点d,其中携带的Notify Node Address仍然是中间节点f的IP地址;同时,路由边界节点e分别往上游节点和下游节点发送Notify消息;其中,往上游节点发送的Notify消息中携带区域2中的LSP隧道经过的所有节点的hostname映射关系,目的地址为自身的path state block中保存的IP地址,即为中间节点c的IP地址;往下游节点发送的Notify消息中携带区域0中LSP隧道经过的所有节点的hostname映射关系,目的地址为自身的resv state block中保存的IP地址,即为节点f的IP地址。步骤804,中间节点d接收到Resv消息后,将其中携带的Notify Request Object 中的Notify Node Address保存到自身的resv state block中,并将收到的Resv消息转发给中间节点c,其中携带的Notify Node Address仍然是中间节点f的IP地址。步骤805,路由边界节点c接收到Resv消息后,将其中携带的Notify Request Object中的Notify Node Address保存至Ij自身的resv state block中,并用自身的IP地址替换路径消息中Notify Request 0bject中已存在的Notify Node Address,将替换后的 Resv消息转发给中间节点b,其中携带的Notify Node Address是中间节点c的IP地址; 同时,路由边界节点c分别往上游节点和下游节点发送Notify消息。其中,往上游节点发送的Notify消息中携带区域0中LSP隧道经过的所有节点的hostname映射关系,目的地址为自身的path state block中保存的IP地址,即为节点 a的IP地址;往下游节点发送的Notify消息中携带区域1中LSP隧道经过的所有节点的 hostname映射关系,目的地址为自身的resv state block中保存的IP地址,即为节点f的 IP地址。步骤806,中间节点b处理过程与中间节点d的处理过程相同,参见步骤804。步骤807Jngress节点a接收到Resv消息,将其中携带的Notify Request Object 中的 Notify Node Address 保存至Ij 自身的 resv state block 中。步骤807,LSP隧道中的所有节点都会接收到Notify消息,其中节点a、节点c和节点f会对Notify消息中携带的hostname映射关系进行保存,并对本地保存的hostname 映射关系进行更新;同时,不改变Notify消息中携带的hostname映射关系,根据本地path state block或resv state block中保存的IP地址将该Notify消息继续转发;例如,节点c在接收到节点f往上游节点发送的Notify消息时,将其中携带的 hostname映射关系保存到本地,并构造Notify消息,根据path state block中保存的IP 地址,即将节点a的地址作为Notify消息的目的地址,发出Notify消息,且不对Notify消息中携带的hostname映射关系进行修改;节点b、节点d和节点e在接收到Notify消息时, 不对该Notify消息做处理,继续转发;节点a、节点c和节点f根据收到的Notify消息中的hostname映射关系,将该hostname映射关系保存到本地,对已有的hostname映射关系进行更新;这样,再结合本地已有的本区域的hostname映射关系,就得到整条LSP隧道经过的节点的Router ID和hostname的映射关系。为实现上述方法,本发明还提供一种显示隧道节点主机名的系统,图9是本发明实现显示隧道节点主机名的系统的结构示意图,如图9所示,该系统包括作为路由边界节点的中间节点91、上游节点92、下游节点93 ;其中,作为路由边界节点的中间节点91,用于将接收预留消息的接口所在区域的节点的主机名映射关系发送给上游节点92,将接收路径消息的接口所在区域的节点的主机名映射关系发送给下游节点93 ;上游节点92或下游节点93,用于根据收到的主机名映射关系对本地保存的主机名映射关系进行更新,并根据本地保存的通告节点地址将收到的主机名映射关系转发给对应的节点。所述作为出节点的下游节点92,用于判断自身是否需要所有节点的主机名映射关系,需要时,出节点将预留消息发送给相邻的中间节点,其中,预留消息携带通告请求对象, 所述通告请求对象中的通告节点地址为自身IP地址的;不需要时,出节点将预留消息发送给相邻的中间节点。所述作为中间节点的上游节点92或作为中间节点的下游节点93,用于当确定路径消息或预留消息中有通告请求对象时,保存通告请求对象中的通告节点地址,并判断自身是否需要所有节点的主机名映射关系,需要时,中间节点用自身的IP地址替换通告请求对象中已存在的通告节点地址,将路径消息或预留消息发送给相邻的节点,不需要时,中间节点将收到的路径消息或预留消息发送给相邻的节点;当确定路径消息或预留消息中没有通告请求对象时,判断自身是否需要所有节点的主机名映射关系,需要时,中间节点在路径消息或预留消息中创建通告请求对象,并将其中的通告节点地址设置为自身的IP地址,将路径消息或预留消息发送给相邻的节点,不需要时,中间节点将收到的路径消息或预留消息发送给相邻的节点。所述作为入节点的上游节点92,用于判断自身是否需要所有节点的主机名映射关系,需要时,入节点将路径消息发送给相邻的中间节点,其中携带通告请求对象,所述通告请求对象中的通告节点地址为自身IP地址的;不需要时,入节点将路径消息发送给相邻的中间节点。本发明还提供一种入节点,用于判断自身是否需要所有节点的主机名映射关系, 需要时,入节点将路径消息发送给相邻的中间节点,其中携带通告请求对象,所述通告请求对象中的通告节点地址为自身IP地址的;不需要时,入节点将路径消息发送给相邻中间节
点O本发明还提供一种中间节点,用于将接收预留消息的接口所在区域的节点的主机名映射关系发送给上游节点,将接收路径消息的接口所在区域的节点的主机名映射关系发送给下游节点。该中间节点还用于,当确定路径消息或预留消息中有通告请求对象时,保存通告请求对象中的通告节点地址,并判断自身是否需要所有节点的主机名映射关系,需要时,中间节点用自身的IP地址替换通告请求对象中已存在的通告节点地址,将路径消息或预留消息发送给相邻的节点,不需要时,中间节点将收到的路径消息或预留消息发送给相邻的节占.
I— /、、、 当确定路径消息或预留消息中没有通告请求对象时,判断自身是否需要所有节点的主机名映射关系,需要时,中间节点在路径消息或预留消息中创建通告请求对象,并将其中的通告节点地址设置为自身的IP地址,将路径消息或预留消息发送给相邻的节点,不需要时,中间节点将收到的路径消息或预留消息发送给相邻的节点。本发明还提供一种出节点,用于判断自身是否需要所有节点的主机名映射关系, 需要时,出节点将预留消息发送给相邻的中间节点,其中,预留消息携带通告请求对象,所述通告请求对象中的通告节点地址为自身IP地址的;不需要时,出节点将预留消息发送给相邻中间节点。 以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种显示隧道节点主机名的方法,其特征在于,所述隧道上的节点包括入节点、出节点、以及位于入节点和出节点之间的一个或多个中间节点,所述中间节点中含有作为路由边界节点的中间节点;该方法包括作为路由边界节点的中间节点将接收预留消息的接口所在区域的节点的主机名映射关系发送给上游节点,将接收路径消息的接口所在区域的节点的主机名映射关系发送给下游节点;上游节点或下游节点根据收到的主机名映射关系对本地保存的主机名映射关系进行更新,并根据本地保存的通告节点地址将收到的主机名映射关系转发给对应的节点。
2.根据权利要求1所述的方法,其特征在于,所述作为路由边界节点的中间节点将接收预留消息的接口所在区域的节点的主机名映射关系发送给上游节点,将接收路径消息的接口所在区域的节点的主机名映射关系发送给下游节点为当作为路由边界节点的中间节点收到预留消息时,同时将通告消息发送给上游节点和下游节点;其中,发送给上游节点的通告消息中携带路由边界节点接收预留消息的接口所在区域中标签交换路径(LSP)隧道经过节点的主机名(hostname)映射关系,目的地址为路径状态块中保存的通告节点地址;发送给下游节点的通告消息中携带路由边界节点接收路径消息的接口所在区域中LSP隧道经过节点的hostname映射关系,目的地址为预留状态块中保存的通告节点地址。
3.根据权利要求1所述的方法,其特征在于,所述上游节点或下游节点根据收到的主机名映射关系对本地保存的主机名映射关系进行更新,并根据本地保存的通告节点地址将收到的主机名映射关系转发给对应的节点为当接收到通告消息的节点是该通告消息的目的地址时,节点根据通告消息中携带的 hostname映射关系,对本地已经保存的hostname映射关系的进行更新;同时,节点根据自身路径状态块或预留状态块中保存的通告节点地址,将收到的通告消息转发给上游节点或下游节点,转发的通告消息的内容不变。
4.根据权利要求1所述的方法,其特征在于,所述作为路由边界节点的中间节点将接收预留消息的接口所在区域的节点的主机名映射关系发送给上游节点之前,该方法还包括作为出节点的下游节点判断自身是否需要所有节点的主机名映射关系,如果需要,出节点将预留消息发送给相邻的中间节点,其中携带通告请求对象,所述通告请求对象中的通告节点地址为自身的IP地址,如果不需要,出节点将预留消息发送给相邻的中间节点。
5.根据权利要求4所述的方法,其特征在于,所述出节点判断自身是否需要所有节点的主机名映射关系之前,该方法还包括当中间节点确定路径消息或预留消息中有通告请求对象时,保存通告请求对象中的通告节点地址,并判断自身是否需要所有节点的主机名映射关系,如果需要,中间节点用自身的IP地址替换通告请求对象中已存在的通告节点地址,将路径消息或预留消息发送给相邻的节点,如果不需要,中间节点将收到的路径消息或预留消息发送给相邻的节点;当中间节点确定路径消息或预留消息中没有通告请求对象时,判断自身是否需要所有节点的主机名映射关系,如果需要,中间节点在路径消息或预留消息中创建通告请求对象, 并将其中的通告节点地址设置为自身的IP地址,将路径消息或预留消息发送给相邻的节点,如果不需要,中间节点将收到的路径消息或预留消息发送给相邻的节点。
6.根据权利要求5所述的方法,其特征在于,所述保存通告请求对象中的通告节点地址为中间节点将路径消息中的通告请求对象中的通告节点地址保存到自身的路径状态块中;或,中间节点将预留消息中的通告请求对象中的通告节点地址保存到自身的预留状态块中。
7.根据权利要求1所述的方法,其特征在于,所述中间节点判断路径消息或预留消息中是否有通告请求对象之前,该方法还包括作为入节点的上游节点判断自身是否需要所有节点的主机名映射关系,如果需要,入节点将路径消息发送给相邻的中间节点,其中携带通告请求对象,所述通告请求对象中的通告节点地址为自身的IP地址,如果不需要,入节点将路径消息发送给相邻的中间节点。
8.根据权利要求7所述的方法,其特征在于,所述入节点判断自身是否需要所有节点的主机名映射关系为根据是否需要在节点上动态显示整条LSP隧道的所有节点的hostname映射关系,在 LSP隧道的节点配置该节点是否需要整条LSP隧道的所有节点的hostname映射关系;根据配置的是否需要整条LSP隧道的所有节点的hostname映射关系,入节点判断自身是否需要整条LSP隧道的所有节点的hostname映射关系。
9.一种显示隧道节点主机名的系统,其特征在于,该系统包括作为路由边界节点的中间节点、上游节点或下游节点;其中,作为路由边界节点的中间节点,用于将接收预留消息的接口所在区域的节点的主机名映射关系发送给上游节点,将接收路径消息的接口所在区域的节点的主机名映射关系发送给下游节点;上游节点或下游节点,用于根据收到的主机名映射关系对本地保存的主机名映射关系进行更新,并根据本地保存的通告节点地址将收到的主机名映射关系转发给对应的节点。
10.根据权利要求9所述的系统,其特征在于,所述作为出节点的下游节点,用于判断自身是否需要所有节点的主机名映射关系,需要时,出节点将预留消息发送给相邻的中间节点,其中,预留消息携带通告请求对象,所述通告请求对象中的通告节点地址为自身IP地址的;不需要时,出节点将预留消息发送给相邻的中间节点。
11.根据权利要求9所述的系统,其特征在于,所述作为中间节点的上游节点或作为中间节点的下游节点,用于当确定路径消息或预留消息中有通告请求对象时,保存通告请求对象中的通告节点地址,并判断自身是否需要所有节点的主机名映射关系,需要时,中间节点用自身的IP地址替换通告请求对象中已存在的通告节点地址,将路径消息或预留消息发送给相邻的节点,不需要时,中间节点将收到的路径消息或预留消息发送给相邻的节点;当确定路径消息或预留消息中没有通告请求对象时,判断自身是否需要所有节点的主机名映射关系,需要时,中间节点在路径消息或预留消息中创建通告请求对象,并将其中的通告节点地址设置为自身的IP地址,将路径消息或预留消息发送给相邻的节点,不需要时,中间节点将收到的路径消息或预留消息发送给相邻的节点。
12.根据权利要求9所述的系统,其特征在于,所述作为入节点的上游节点,用于判断自身是否需要所有节点的主机名映射关系,需要时,入节点将路径消息发送给相邻的中间节点,其中携带通告请求对象,所述通告请求对象中的通告节点地址为自身IP地址的;不需要时,入节点将路径消息发送给相邻的中间节点。
13.—种入节点,其特征在于,用于判断自身是否需要所有节点的主机名映射关系,需要时,入节点将路径消息发送给相邻的中间节点,其中携带通告请求对象,所述通告请求对象中的通告节点地址为自身IP地址的;不需要时,入节点将路径消息发送给相邻的中间节点。
14.一种中间节点,其特征在于,用于将接收预留消息的接口所在区域的节点的主机名映射关系发送给上游节点,将接收路径消息的接口所在区域的节点的主机名映射关系发送给下游节点。
15.根据权利要求14所述的中间节点,其特征在于,该中间节点还用于,当确定路径消息或预留消息中有通告请求对象时,保存通告请求对象中的通告节点地址,并判断自身是否需要所有节点的主机名映射关系,需要时,中间节点用自身的IP地址替换通告请求对象中已存在的通告节点地址,将路径消息或预留消息发送给相邻的节点,不需要时,中间节点将收到的路径消息或预留消息发送给相邻的节点;当确定路径消息或预留消息中没有通告请求对象时,判断自身是否需要所有节点的主机名映射关系,需要时,中间节点在路径消息或预留消息中创建通告请求对象,并将其中的通告节点地址设置为自身的IP地址,将路径消息或预留消息发送给相邻的节点,不需要时,中间节点将收到的路径消息或预留消息发送给相邻的节点。
16.一种出节点,其特征在于,用于判断自身是否需要所有节点的主机名映射关系,需要时,出节点将预留消息发送给相邻的中间节点,其中,预留消息携带通告请求对象,所述通告请求对象中的通告节点地址为自身IP地址的;不需要时,出节点将预留消息发送给相邻的中间节点。
全文摘要
本发明公开一种显示隧道节点主机名的方法,包括作为路由边界节点的中间节点将接收预留消息的接口所在区域的节点的主机名映射关系发送给上游节点,将接收路径消息的接口所在区域的节点的主机名映射关系发送给下游节点;上游节点或下游节点根据收到的主机名映射关系对本地保存的主机名映射关系进行更新,并根据本地保存的通告节点地址将收到的主机名映射关系转发给对应的节点;本发明还提供一种显示隧道节点主机名的系统及节点。根据本发明的技术方案,在某个节点上动态的显示所有隧道节点的主机名。
文档编号H04L12/24GK102546375SQ201010612110
公开日2012年7月4日 申请日期2010年12月29日 优先权日2010年12月29日
发明者郑直, 金利忠 申请人:中兴通讯股份有限公司