端口映射方法、装置及设备与流程

文档序号:20038555发布日期:2020-02-28 11:37阅读:284来源:国知局
本申请实施例涉及通信技术,尤其涉及一种端口映射方法、装置及设备。
背景技术
::数据中心(datacenter,dc)是一个有多个设备组成的全球协作的特定设备网络,用来在互联网(internet)网络基础设施上传递、加速、展示、计算、存储数据信息。目前,数据中心中部署的设备主要有交换设备、服务器、防火墙等,而每种设备又可以根据业务需求再进一步细化分类,例如,服务器又可以细分为:机架服务器、刀片服务器、高密服务器等。以机架服务器为例,机架服务器又可以细分为不同型号等。目前,一个数据中心的建设需要经历规划设计、硬件安装、软件安装、进入运维等环节。以数据中心的服务器为例,在规划设计时,通常会对服务器上外观可见的端口(简称:服务器端口)按一定顺序标记槽位号,并记录在服务器的规划设计资料中。在实施硬件安装时,安装人员可以提前打印好记录有服务器端口信息(例如槽位号),以及,与该服务器端口连接的对端设备的设备端口的信息(例如槽位号)的网线标签,布设网线时贴于连接的网线两端上。这样,在该服务器上机架后,安装人员可以按照网线标签,把网线插到该服务器的服务器端口以及对端设备的端口,以建立两个设备的连接。在进入运维后,数据中心的监控设备通过监控软件可以采集服务器的服务器端口信息,该端口信息包括服务端口的端口号。然而,对于同一个服务器端口来说,数据中心的监控软件采集到的标记该服务器端口的端口号,与,前期规划设计时标记该服务器端口的槽位号可能不同,导致服务器管理效率较低。技术实现要素:本申请实施例提供一种端口映射方法、装置及设备,用于解决现有的因监控软件采集到的服务器端口的端口号与规划设计的服务器端口的槽位号不同,导致管理效率较低的技术问题。第一方面,本申请实施例提供一种端口映射方法,该方法的执行主体可以应用于管理设备、也可以应用于管理设备中的芯片。下面以管理设备为例,管理设备可以对交换设备进行链路发现,获取所述交换设备的第一链路信息。其中,所述交换设备通过所述交换设备的至少一个交换设备端口和至少一个服务器的至少一个服务器端口连接至所述至少一个服务器,所述至少一个交换设备端口具有至少一个第一端口号和至少一个第一槽位号,不同交换设备端口的第一端口号不同,不同交换设备端口的第一槽位号不同,所述至少一个服务器端口具有至少一个第二端口号和第二槽位号,不同服务器端口的第二端口号不同,不同服务器端口的第二槽位号不同,所述第一链路信息包括所述至少一个交换设备端口和所述至少一个服务器端口的第一连接关系。然后,管理设备可以确定每个交换设备端口的第一端口号与第一槽位号的对应关系,从而可以根据所述对应关系和所述第一链路信息,确定每个服务器端口的第二端口号与第二槽位号的映射关系。上述方法中,在数据中心进行硬件安装时,会使用网线将交换设备的交换设备端口与服务器的服务器端口连接,以实现交换设备与服务器之间的连接。也就是说,交换设备端口的槽位号与服务器的服务器端口的槽位号是一一对应的。因此,交换设备端口的槽位号对应的服务器端口的槽位号,与该交换设备端口的端口号对应的服务器端口的端口号,所表征的是同一个服务器端口。基于上述特征,管理设备在对数据中心的交换设备进行链路发现,获取包括该交换设备的交换设备端口与服务器的服务器端口之间连接关系的第一链路信息之后,管理设备可以基于包括该交换设备的交换设备端口与服务器的服务器端口之间连接关系的第一链路信息,以及,交换设备的交换设备端口的第一端口号对应的第一槽位号,确定出每个服务器端口的第二端口号与第二槽位号的映射关系。通过上述映射关系,可以将数据中心的监控软件采集到的标记该服务器端口的端口号,与,前期规划设计时标记该服务器端口的槽位号建立起映射关系,便于对服务器进行管理,提高了服务器的管理效率。作为一种可能的实现方式,若每个第一端口号与对应的第一槽位号具有公共字段,则管理设备可以采用如下方式确定每个交换设备端口的第一端口号与第一槽位号的对应关系:先获取与每个交换设备端口的第一端口号具有公共字段的第一槽位号,然后根据获取的第一槽位号确定每个交换设备端口的第一端口号与第一槽位号的对应关系。通过该公共字段,可以自动且准确地识别出一个交换设备端口的第一端口号对应的第一槽位号,从而可以基于该交换设备端口的第一端口号对应的第一槽位号,准确的确定出每个服务器端口的第二端口号与第二槽位号的映射关系。作为一种可能的实现方式,所述第一连接关系由所述至少一个交换设备端口的第一端口号以及所述至少一个服务器端口的第二端口号记录。则所述管理设备根据所述对应关系和所述第一链路信息,确定每个服务器端口的第二端口号与第二槽位号的映射关系之前,还可以获取第二链路信息。其中,所述第二链路信息包括所述至少一个交换设备端口和所述至少一个服务器端口的第二连接关系,且所述第二连接关系由所述至少一个交换设备端口的第一槽位号以及所述至少一个服务器端口的第二槽位号记录。则在该实现方式下,管理设备可以根据所述对应关系、所述第一链路信息和所述第二链路信息,确定每个服务器端口的第二端口号与第二槽位号的映射关系。通过该方法,可以使管理设备可以基于第一链路信息中由交换设备端口的第一端口号以及服务器端口的第二端口号记录的第一连接关系,以及,交换设备的交换设备端口的第一端口号对应的第一槽位号,以及,第二链路信息中由所述至少一个交换设备端口的第一槽位号以及所述至少一个服务器端口的第二槽位号记录的第二连接关系,准确的确定出每个服务器端口的第二端口号与第二槽位号的映射关系。作为一种可能的实现方式,所述方法还包括:在第一服务器端口发生故障时,根据所述第一服务器端口的第二端口号与第二槽位号的映射关系,获取所述第一服务器端口对应的第二槽位号,所述第一服务器端口属于所述至少一个服务器端口,并上报包括所述第一服务器端口对应的第二槽位号的故障信息。其中,所述第一服务器属于所述至少一个服务器。通过上报包括所述第一服务器端口对应的第二槽位号的故障信息,当需要人工去现场处理该故障时,维护人员可以基于该包括所述第一服务器端口对应的第二槽位号的故障信息,可以通过硬件安装时布设在网线上的标签上记录的第二槽位号,准确且快速找到该服务器端口,提高了故障处理效率。作为一种可能的实现方式,所述服务器端口的第二端口号为所述服务器端口的媒体访问控制mac地址。第二方面,本申请实施例提供一种端口映射装置,所述装置包括:获取模块和确定模块。可选的,该装置还可以包括发送模块。获取模块,用于对交换设备进行链路发现,获取所述交换设备的第一链路信息。其中,所述交换设备通过所述交换设备的至少一个交换设备端口和至少一个服务器的至少一个服务器端口连接至所述至少一个服务器,所述至少一个交换设备端口具有至少一个第一端口号和至少一个第一槽位号,不同交换设备端口的第一端口号不同,不同交换设备端口的第一槽位号不同,所述至少一个服务器端口具有至少一个第二端口号和第二槽位号,不同服务器端口的第二端口号不同,不同服务器端口的第二槽位号不同,所述第一链路信息包括所述至少一个交换设备端口和所述至少一个服务器端口的第一连接关系。确定模块,用于确定每个交换设备端口的第一端口号与第一槽位号的对应关系,并根据所述对应关系和所述第一链路信息,确定每个服务器端口的第二端口号与第二槽位号的映射关系。作为一种可能的实现方式,每个第一端口号与对应的第一槽位号具有公共字段。所述确定模块,具体用于获取与每个交换设备端口的第一端口号具有公共字段的第一槽位号,并根据获取的第一槽位号确定每个交换设备端口的第一端口号与第一槽位号的对应关系。作为一种可能的实现方式,所述第一连接关系由所述至少一个交换设备端口的第一端口号以及所述至少一个服务器端口的第二端口号记录。所述获取模块,还用于在所述确定模块根据所述对应关系和所述第一链路信息,确定每个服务器端口的第二端口号与第二槽位号的映射关系之前,获取第二链路信息,所述第二链路信息包括所述至少一个交换设备端口和所述至少一个服务器端口的第二连接关系,且所述第二连接关系由所述至少一个交换设备端口的第一槽位号以及所述至少一个服务器端口的第二槽位号记录。所述确定模块,具体用于根据所述对应关系、所述第一链路信息和所述第二链路信息,确定每个服务器端口的第二端口号与第二槽位号的映射关系。作为一种可能的实现方式,所述获取模块,还用于在第一服务器端口发生故障时,根据所述第一服务器端口的第二端口号与第二槽位号的映射关系,获取所述第一服务器端口对应的第二槽位号,所述第一服务器端口属于所述至少一个服务器端口。所述发送模块,用于上报包括所述第一服务器端口对应的第二槽位号的故障信息。作为一种可能的实现方式,所述服务器端口的第二端口号为所述服务器端口的媒体访问控制mac地址。上述第二方面和第二方面的各可能的实施方式所提供的端口映射装置,其有益效果可以参见上述第一方面和第一方面的各可能的实施方式所带来的有益效果,在此不加赘述。第三方面,本申请实施例提供一种计算设备,所述计算设备包括:处理器、存储器。其中,存储器用于存储计算机可执行程序代码,程序代码包括指令;当处理器执行指令时,指令使所述计算设备执行如第一方面至第一面任一可能的实施方式所提供的方法。第四方面,本申请实施例提供一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述第一方面至第一方面各种可能的实施方式中的方法。第五方面,本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述第一方面至第一方面的各种可能的实施方式中的方法。第六方面,本申请实施例提供了一种芯片,所述芯片与存储器相连,用于读取并执行所述存储器中存储的软件程序,以实现第一方面中任意一种可能的实施方式提供的方法。第七方面,本申请实施例提供了一种芯片,所述芯片包含处理器和存储器,所述处理器用于读取所述存储器中存储的软件程序,以实现第一方面的任意一种可能的实施方式提供的方法。本申请实施例提供的端口映射方法、装置及设备,在数据中心进行硬件安装时,会使用网线将交换设备的交换设备端口与服务器的服务器端口连接,以实现交换设备与服务器之间的连接。也就是说,交换设备端口的槽位号与服务器的服务器端口的槽位号是一一对应的。因此,交换设备端口的槽位号对应的服务器端口的槽位号,与该交换设备端口的端口号对应的服务器端口的端口号,所表征的是同一个服务器端口。基于上述特征,管理设备在对数据中心的交换设备进行链路发现,获取包括该交换设备的交换设备端口与服务器的服务器端口之间连接关系的第一链路信息之后,管理设备可以基于包括该交换设备的交换设备端口与服务器的服务器端口之间连接关系的第一链路信息,以及,交换设备的交换设备端口的第一端口号对应的第一槽位号,确定出每个服务器端口的第二端口号与第二槽位号的映射关系。通过上述映射关系,可以将数据中心的监控软件采集到的标记该服务器端口的端口号,与,前期规划设计时标记该服务器端口的槽位号建立起映射关系,便于对服务器进行管理,提高了服务器的管理效率。附图说明图1是一种服务器的槽位号的示意图;图2为本申请实施例涉及的应用场景示意图;图3为本申请提供的一种端口映射方法的流程示意图;图4为本申请实施例提供的一种端口映射的示意图;图5为本申请实施例提供的一种端口映射装置的结构示意图;图6为本申请实施例提供的一种计算设备的结构示意图。具体实施方式图1是一种服务器的槽位号的示意图。如图1所示,在规划设计时,通常会对服务器上外观可见的服务器端口按一定顺序标记槽位(slot)号,例如扩展板的槽位号[slot4],并记录在服务器的规划设计资料中。这里所说的服务器端口是指服务器与其他设备连接的端口,在一些实施例中,服务器端口也可以称为服务器网口。槽位号为规划设计时为该服务器端口分配的标识,用于表征该服务器端口处于服务器第几个插槽的第几个子卡。在实施硬件安装时,安装人员可以提前打印好记录有服务器端口信息(例如槽位号),以及,与该服务器端口连接的对端设备的设备端口的信息(例如槽位号)的网线标签,布设网线时贴于连接的网线两端上。这样,在该服务器上机架后,安装人员可以按照网线标签,把网线插到该服务器的服务器端口以及对端设备的端口,以建立两个设备的连接。在进入运维后,数据中心的监控软件可以采集服务器的服务器端口信息,该端口信息包括服务端口的端口号。在进入运维后,数据中心的管理设备通过监控软件(简称:监控软件)可以采集数据中心的设备的端口信息。仍然以服务器为例,管理设备通过监控软件采集到的服务器端口信息可以如下所示:服务器端口其中,moid表示监控软件分配给该服务器端口的编号,portid表示监控软件采集到的服务器端口的端口号,portname表示监控软件采集到的服务器端口的名称,porttype表示监控软件采集到的服务器端口的类型,connectstatus表示监控软件采集到的服务器端口的连接状态,mac表示监控软件采集到的服务器端口的媒体访问控制地址(mediaaccesscontroladdress,mac)地址,ipv4address表示监控软件采集到的服务器端口的ip地址,dn表示监控软件采集到的服务器端口所属的服务器。应理解,上述监控软件采集到的服务器端口的端口号可以是服务器自带的,或者是监控软件在采集时分配给该服务器端口的。即,端口号是监控软件采集获取到的该服务器端口的标识。对于同一个服务器端口来说,数据中心的监控软件采集到的标记该服务器端口的端口号,与,前期规划设计时标记该服务器端口的槽位号可能不同,导致服务器管理效率较低。例如,当数据中心的监控软件监控到一个网线经常闪断,经过判断确认是网线与服务器端口连接的接头松动,需要人工处理。此时,数据中心的监控软件向维护人员上报包括采集到的服务器端口的端口号的故障信息后,维护人员基于该采集到的服务器端口的端口号可能无法找到该服务器端口,导致故障处理效率较低。虽然数据中心的监控软件采集到的服务器端口的mac地址能够唯一标记该服务器端口,但是由于mac地址较长,在前期规划设计和硬件安装时使用不便,易出现错误。因此,无法使用该mac地址来取代前述所说的槽位号来标识该服务器端口。根据外设部件互连标准(peripheralcomponentinterconnect,pci)规范,每个pci设备都由一个pci号来标识,该pci号由“domain(4位):bus(2位):slot(2位):function(不限)”组成。其中,domain表示该pci设备所在的主板,bus表示该pci设备的总线号,slot表示该pci设备的设备号,function表示该pci设备的功能号。一般情况下,domain只有一个,可以不写出来,因此,pci设备的pci号还可以表示为(b/d/f):“bus:device:function”。示例性的,pci设备的pci号为00:03.2。其中,00为该pci设备的总线号,03为该pci设备的设备号,2为该pci设备的功能号。大部分服务器端口对应的槽位上用的是pci网卡,即,服务器端口对应的插槽上是一个pci设备。由于pci设备可以通过pci号来标识,因此,服务器端口的槽位号和pci号是一一对应的。服务器的产品资料描述有服务器端口的槽位号和pci号的对应关系。示例性的,假定服务器包括两个中央处理器(centralprocessingunit,cpu),分别为cpu1和cpu2。其中,位于cpu1下的槽位有slot1、slot2、slot3,位于cpu2下的槽位有slot4、slot5、slot6、slot7和slot8。通过服务器的产品资料可得到的如下述表1所示的描述信息:表1应理解,上述所说的服务器端口对应的pci号是指,该服务器端口的槽位号对应的槽位上安装的pci网卡的pci号。服务器上安装有操作系统。因此,管理设备可以使用监控软件通过操作系统的相关命令查询到服务器端口的信息,以及,该服务器端口对应的pci号。以服务器上安装的操作系统为linux操作系统为例,可以使用命令“ifconfig–a”查询到服务器上的服务器端口的名称、mac地址等信息。然后,在指定服务器端口名称的情况下,以指定第一个服务器端口为例,可以使用命令“ethtool-ieth0”(其中,eth0示意查第一个端口)查询该服务器端口对应的槽位上的pci网卡的详情(包括pci号)。最后,可以根据命令“lspci-tv”查询服务器的pci号的详情。该pci号结构可以表征服务器所包括的cpu的pci号,以及,从属该cpu下的服务器端口对应的pci号。这样,管理设备可以基于通过监控软件查询到的这些信息,以及,产品资料中描述的服务器端口的槽位号和pci号的对应关系,推算得到采集的服务器端口的端口号对应的槽位号。例如,管理设备能够基于采集的服务器端口的mac地址,找到该服务器端口的名称,从而可以通过该服务器端口的名称可以找到该服务器端口对应的pci号,进而通过该pci号找到该服务器端口的槽位号。总而言之,管理设备基于服务器端口的槽位号和pci号的对应关系,可以获取采集的服务器端口的端口号对应的槽位号,保证了服务器管理效率。不同服务器的设计是不一样的,即,不同服务器的服务器端口的槽位号与pci号的对应关系不同。因此,在通过上述方式获取服务器端口的端口号对应的槽位号时,需要在开发数据中心的监控软件时,将不同型号服务器的服务器端口的“槽位号和设备pci号”的对应关系表写入监控软件中,该对应关系表例如可以如下述表2所示:表2槽位号pci号10000:00:02.220000:00:03.2…………n0000:00:04.1因此,在通过上述方式获取服务器端口的端口号对应的槽位号存在如下两个问题:1)开发数据中心的监控软件的开发人员需要整理不同服务器的服务器端口的“槽位号和设备pci号”对应关系表,并写入监控软件中。当推出新的服务器时,开发人员还需要采用发布新版的监控软件,或者,发布补丁的方式,将新的服务器的服务器端口的“槽位号和设备pci号”对应关系表更新至监控软件中,导致上述方法实现步骤繁琐,导致服务器管理效率较低。2)若数据中心的规划设计人员和监控软件开发人员对产品资料理解不一致,会导致规划设计人员前期规划设计的槽位号,与监控软件开发人员写入到监控软件中的槽位号实际对应的不是同一个服务器端口,导致采用上述方式得到的服务器端口的端口号对应的槽位号不准确,导致服务器管理效率较低。考虑上述服务器管理效率较低的问题,本申请实施例提供了一种端口映射方法,可以解决因监控软件采集的标记服务器端口的端口号与规划设计时标记该服务器端口的槽位号不同,导致管理效率较低的问题。应理解,本申请实施例提供的方法包括但不限于上述获取服务器的端口号与槽位号的映射关系,还可以适用于获取数据中心的其他设备的端口号与槽位号的映射关系。本申请实施例以服务器为例进行说明。为了便于理解,下面先对本申请实施例涉及的应用场景进行说明。图2为本申请实施例涉及的应用场景示意图。如图2所示,该场景可以包括:管理设备、位于数据中心的至少一个交换设备、通过交换设备的交换设备端口和服务器的服务器端口与交换设备连接的服务器。应理解,图2是以一个交换设备连接多个服务器为例的示意图,但本申请实施例对数据中心的服务器和交换设备的数量,以及,一个交换设备连接的服务器的数量均不进行限定。本申请实施例所涉及的管理设备,可以为任一具有处理、通信功能的电子设备,例如终端设备、服务器等。终端设备,又称之为用户设备(userequipment,ue)、移动台(mobilestation,ms)、移动终端(mobileterminal,mt)等,是一种向用户提供语音/数据连通性的设备,例如,具有无线连接功能的手持式设备等。目前,一些终端设备的举例为:手机(mobilephone)、平板电脑、笔记本电脑、掌上电脑等。本申请实施例涉及的交换设备,可以是数据中心中用于电(光)信号转发的网络设备,例如交换机。一个交换设备可以包括多个端口(简称:交换设备端口)。每个交换设备端口具有一个端口号和一个槽位号。其中,槽位号为规划设计时为交换设备分配的,端口号为进入运维后通过监控软件采集到的。不同交换设备端口的端口号不同,不同交换设备端口的槽位号不同。为了便于区分,在本申请实施例中,将交换设备端口的端口号称为第一端口号,将交换设备端口的槽位号称为第一槽位号,将服务器端口的端口号称为第二端口号,将服务器端口的槽位号称为第二槽位号。基于上述图2所描述的应用场景,下面结合具体地实施例对本申请的技术方案进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或者相似的概念或者过程可能在某些实施例不再赘述。图3为本申请提供的一种端口映射方法的流程示意图。本实施例涉及的是管理设备确定服务器端口的第二端口号与第二槽位号的映射关系的过程。如图3所示,该方法包括:s101、对交换设备进行链路发现,获取交换设备的第一链路信息,其中,交换设备通过交换设备的至少一个交换设备端口和至少一个服务器的至少一个服务器端口连接至至少一个服务器,至少一个交换设备端口具有至少一个第一端口号和至少一个第一槽位号,不同交换设备端口的第一端口号不同,不同交换设备端口的第一槽位号不同,至少一个服务器端口具有至少一个第二端口号和第二槽位号,不同服务器端口的第二端口号不同,不同服务器端口的第二槽位号不同,第一链路信息包括至少一个交换设备端口和至少一个服务器端口的第一连接关系。s102、确定每个交换设备端口的第一端口号与第一槽位号的对应关系。s103、根据对应关系和第一链路信息,确定每个服务器端口的第二端口号与第二槽位号的映射关系。应理解,本申请实施例中所涉及的端口号均为监控软件采集获取到的该服务器端口的标识,本申请实施例中所涉及的槽位号均为规划设计时为端口分配的标识。在数据中心进行硬件安装时,会使用网线将交换设备的交换设备端口与服务器的服务器端口连接,以实现交换设备与服务器之间的连接。也就是说,交换设备端口的槽位号与服务器的服务器端口的槽位号是一一对应的。因此,交换设备端口的槽位号对应的服务器端口的槽位号,与该交换设备端口的端口号对应的服务器端口的端口号,所表征的是同一个服务器端口。基于上述特征,在本申请实施例中,管理设备在对数据中心的交换设备进行链路发现,获取包括该交换设备的交换设备端口与服务器的服务器端口之间连接关系的第一链路信息之后,管理设备可以基于包括该交换设备的交换设备端口与服务器的服务器端口之间连接关系的第一链路信息,以及,交换设备的交换设备端口的第一端口号对应的第一槽位号,确定出每个服务器端口的第二端口号与第二槽位号的映射关系。通过上述映射关系,可以将监控软件采集到的标记该服务器端口的端口号,与,前期规划设计时标记该服务器端口的槽位号建立起映射关系,便于对服务器进行管理,提高了服务器的管理效率。以数据中心的一个服务器的服务器端口为例,假定该服务器端口为第一服务器端口。则管理设备在采用上述方式,获取数据中心中的服务器的服务器端口的端口号与槽位号的映射关系后,可以在第一服务器端口发生故障时,根据第一服务器端口的第二端口号与第二槽位号的映射关系,获取第一服务器端口对应的第二槽位号,上报包括所述第一服务器端口对应的第二槽位号的故障信息。当需要人工去现场处理该故障时,维护人员基于该包括所述第一服务器端口对应的第二槽位号的故障信息,可以通过硬件安装时布设在网线上的标签上记录的第二槽位号,准确且快速找到该服务器端口,提高了故障处理效率。另外,本申请实施例获取服务器端口的端口号对应的槽位号的方法可以适用于任一类型和型号的服务器,无需对监控软件进行改动,也无需开发监控软件的开发人员整理不同服务器的服务器端口的“槽位号和设备pci号”对应关系表,从而可以避免规划设计人员前期规划设计的槽位号,与监控软件开发人员写入到监控软件中的槽位号实际对应的不是同一个服务器端口的风险,简化了监控软件的开发步骤,提高了监控软件的开发效率。下面对管理设备确定服务器端口的第二端口号与第二槽位号的映射关系的过程进行示例说明:管理设备可以对数据中心的交换设备进行链路发现,以及,对交换设备的交换设备端口、服务器的服务器端口进行采集。例如,管理设备可以通过监控软件实现该功能。示例性的,管理设备通过监控软件基于链路层发现协议(linklayerdiscoveryprotocol,lldp)对交换设备进行链路发现。以与交换设备连接的一个服务器为例,该服务器通过自己的服务器端口与交换设备的一个交换设备端口与交换设备连接。则管理设备通过监控软件所采集的交换设备的该交换设备端口的信息例如可以如下所示:交换设备端口其中,portdn表示监控软件采集到的该交换设备端口的端口号,ifindex表示监控软件采集到的该交换设备端口的索引号。管理设备通过监控软件所采集的该服务器的服务器端口的信息例如可以如下所示:服务器端口其中,portid表示监控软件采集到的服务器端口的端口号,mac表示监控软件采集到的服务器端口的mac地址。管理设备通过监控软件对交换设备进行链路发现,所发现的交换设备与该服务器之间的链路信息例如可以如下所示:链路:其中,anedn表示源网元dn,znedn表示宿网元dn,aneportid表示源网元的端口号,zneportid表示宿网元的端口号。在本示例中,源网元为服务器端口,宿网元为交换设备端口,服务器端口的第二端口号为mac地址。即,aneportid为服务器端口的第二端口号,zneportid为交换设备端口的第一端口号。通过上述所描述的方式,管理设备可以通过链路发现,发现数据中心中的交换设备的至少一个交换设备端口与至少一个服务器的服务器端口之间的链路信息。然后,管理设备可以从中提取相关信息,得到该交换设备中通过至少一个交换设备端口和至少一个服务器的至少一个服务器端口连接至至少一个服务器的第一链路信息。第一链路信息包括至少一个交换设备端口和至少一个服务器端口的第一连接关系。如上述链路信息所示,第一连接关系可以由交换设备端口的第一端口号以及服务器端口的第二端口号记录。图4为本申请实施例提供的一种端口映射的示意图。如图4所示,该第一连接关系例如可以为图4所示的sys_discoverylink。在该sys_discoverylink中源端口id即为服务器端口的第二端口号,宿端口id包括交换设备端口的第一端口号。应理解,图4所示的sys_discoverylink仅是一种示意,该第一连接关系可以包括比图4所示的sys_discoverylink更多的信息,本申请实施例对此不进行限定。管理设备也可以从采集的交换设备端口的信息中提取相关信息,得到一个便于维护的交换设备端口信息表,该交换设备端口信息表可以包括数据中心中所有交换设备的交换设备端口的信息,也可以仅包括一个交换设备的所有交换设备端口的信息。以该交换设备端口信息表中一个交换设备端口信息为例,则该交换设备端口信息例如可以为图4所示的交换机端口属性table。在该table中,接口索引即为交换设备端口的第一端口号。应理解,图4所示的交换机端口属性table仅是一种示意,该交换设备端口信息可以包括比图4所示的交换机端口属性table更多的信息,本申请实施例对此不进行限定。相应地,管理设备也可以从采集的服务器端口的信息中提取相关信息,得到一个便于维护的服务器端口信息表,该服务器端口信息表可以包括数据中心中所有服务器的服务器端口的信息,也可以仅包括一个服务器的所有服务器端口的信息。以该服务器端口信息表中一个服务器端口信息为例,该服务器端口信息例如可以为图4所示的服务器网口属性table。在该table中,mac即为服务器端口的第二端口号。应理解,图4所示的服务器网口属性table仅是一种示意,该服务器端口信息可以包括比图4所示的服务器网口属性table更多的信息,本申请实施例对此不进行限定。相应地,在本申请实施例中,管理设备还可以获取第二链路信息,该第二链路信息包括至少一个交换设备端口和至少一个服务器端口的第二连接关系,且第二连接关系由至少一个交换设备端口的第一槽位号以及至少一个服务器端口的第二槽位号记录。如前述所说,本申请实施例涉及的槽位号为规划设计时分配的。因此,通过槽位号记录的连接关系的第二链路信息也可以称为规划设计的链路信息。可选的,上述第二链路信息可以是基于低级别详细设计(low-leveldesign,lld)设计连线表得到的,还可以是基于规划设计的链路信息,人工手动填写或使用工具输出的表格(例如excel表)中得到的。示例性的,假定lld设计连线表如下述表3所示:表3其中,表3中的源设备为服务器,宿设备为交换设备。槽位号a即为服务器的服务器端口的槽位号,槽位号b即为交换设备的交换设备端口的槽位号。基于该lld设计连接表所得到的第二链路信息中的一个第二连接关系可以如图4所示的sys_designlink。在sys_designlink中源端口即为服务器端口的第二槽位号,宿端口即为交换设备的第一槽位号。应理解,图4所示的sys_designlink仅是一种示意,该第二连接关系可以包括比图4所示的sys_designlink更多的信息,本申请实施例对此不进行限定。根据交换设备端口规范,一个交换设备端口的第一端口号与第一槽位号具有公共字段,两者所具有的公共字段可以相同。因此,通过该公共字段,可以识别出一个交换设备端口的第一端口号对应的第一槽位号。即,公共字段相同的第一端口号与第一槽位号表示的是同一个交换设备端口。以交换机为例,交换机端口的端口号与槽位号均包括表征该交换机端口位置的公共字段,该公共字段例如可以为e1/0/8。其中,e1表示该端口为e1接口,用于2m专线,0表示该端口所在的模块插在交换机插槽“0”上,8表示该端口位于所在模块第9个口序上(应理解,口序是从0开始计数的)。因此,管理设备在得到数据中心的交换设备的第一链路信息和第二链路信息之后,可以采用如下方式确定交换设备的每个交换设备端口的第一端口号与第一槽位号的对应关系:管理设备可以获取与每个交换设备端口的第一端口号具有公共字段的第一槽位号。然后,管理设备根据获取的第一槽位号确定每个交换设备端口的第一端口号与第一槽位号的对应关系。以图4所示的示例为例,管理设备可以将采集的交换设备端口的端口号(即第一端口号)的公共字段1/0/14,与,第二链路信息中每个第二连接关系中的宿端口(即第一槽位号)的公共字段进行匹配,获取与第一端口号具有相同公共字段1/0/14的第一槽位号,并建立两者的对应关系。通过该方式,可以获知每个交换设备端口的第一端口号与第一槽位号的对应关系。可选的,管理设备在得到交换设备端口的第一端口号与第一槽位号的对应关系后,可以将包括该第一槽位号的第二连接关系sys_designlink中的部分信息添加至交换设备端口信息表的该交换设备端口信息中。例如,sys_designlink中记录的交换设备端口的第一槽位号(宿端口)、交换设备端口所属的交换设备的名称(即sys_designlink中的宿设备)等。通过这种方式,可以完善该交换设备端口信息,便于对交换设备的管理,提高了交换设备的管理效率。管理设备在得到交换设备的每个交换设备端口的第一端口号与第一槽位号的对应关系之后,可以根据每个交换设备端口的第一端口号与第一槽位号的对应关系、第一链路信息和第二链路信息,确定每个服务器端口的第二端口号与第二槽位号的映射关系。以一个交换设备端口为为例,管理设备可以使用该交换设备端口的第一端口号中的dn和端口id,与第一链路信息中记录的所有端口号进行匹配。当第一链路信息中的某一第一连接关系包括该第一端口号中的dn和第一端口号时,说明匹配成功。此时,可以将交换设备端口的第一端口号与该第一连接关系对应起来。以图4所示的示例为例,则管理设备基于该交换机端口属性table中的dn“34603237”,第一端口号“12”,将交换设备端口的第一端口号与该第一连接关系(即sys_discoverylink)对应起来。可选的,在一些实施例中,可以将该第一连接关系的链路标识(例如链路id,比如图4中所示的发现链路id“mmm”)添加至交换设备端口信息表中。通过这种方式,可以完善交换设备端口信息表,便于对交换设备的管理,提高了交换设备的管理效率。管理设备在将交换设备端口的第一端口号与该第一连接关系对应起来之后,即可基于获知交换设备端口的第一端口号与第一槽位号的对应关系,以及,该交换设备端口的第一端口号对应的第一连接关系,得出与该交换设备端口的第一槽位号与该第一连接关系对应,进而可以得出包括该第一槽位号的第二连接关系与第一连接关系对应。可选的,在得出与第二连接关系对应的第一连接关系后,管理设备可以在该第一连接关系中添加第二连接关系的链路标识(例如链路id,比如图4中所示的lld链路id“xxx”),和/或,在第二连接关系中添加第一连接关系的链路标识(例如链路id,比如图4中所示的发现链路id“mmm”)。通过这种方式,可以使两个连接关系关联,便于信息的查找,提高了管理效率。应理解,对于识别第一连接关系对应的第二连接关系的方式,包括但不限于上述方式,只要是基于交换设备端口的第一槽位号和第一端口号,识别出第一连接关系对应的第二连接关系的方式均可,对此不再赘述。在得到第一连接关系对应的第二连接关系后,管理设备可以先使用服务器端口的第二端口号(即mac地址),将第一链路表中的第一连接关系与服务器端口信息对应。然后,管理设备可以从与该第一连接关系对应的第二连接关系中获取该服务器端口的第二槽位号。最后,管理设备可以将该第二槽位号与第二端口号建立映射关系。可选的,管理设备可以将该映射关系添加至包括第二端口号的服务器端口信息中。通过这种方式,可以完善该服务器端口信息,便于对服务器的管理,提高了服务器的管理效率。本申请实施例提供的端口映射方法、装置及设备,管理设备在对数据中心的交换设备进行链路发现,获取包括该交换设备的交换设备端口与服务器的服务器端口之间连接关系的第一链路信息之后,管理设备可以基于一个交换设备端口的第一端口号与第一槽位号具有公共字段的特点,识别出交换设备的交换设备端口的第一端口号对应的第一槽位号。从而,管理设备可以基于包括该交换设备的交换设备端口与服务器的服务器端口之间连接关系的第一链路信息,以及,交换设备的交换设备端口的第一端口号对应的第一槽位号,准确的确定出每个服务器端口的第二端口号与第二槽位号的映射关系。通过上述映射关系,可以将数据中心的监控软件采集到的标记该服务器端口的端口号,与,前期规划设计时标记该服务器端口的槽位号建立起映射关系,便于对服务器进行管理,提高了服务器的管理效率。应理解,本申请实施例提供的方法,包括但不限于使用交换设备的交换设备端口的槽位号与端口号的对应关系,获取服务器的服务器端口的槽位号与端口号的映射关系,也可以使用其他标准化端口号和槽位号的设备,识别与该设备连接的其他设备的端口的槽位号与端口号的映射关系,对此不再赘述。另外,上述方法实施例均以管理设备为执行主体为例进行了说明。应理解,管理设备可以通过运行其他的软件实现上述方法。例如,管理设备可以通过监控软件实现链路发现和采集端口的信息,管理设备可以通过运维管理系统,基于上述发现的链路、采集的端口信息,以及,第二链路信息,获取服务器端口的端口号与槽位号的映射关系。应理解,这里所说的运维管理系统,可以包括各资源对象数据的数据库(例如配置管理数据库(configurationmanagementdatabase,cmdb)),可以综合管理对象数据信息,用于支持自动化运维。在本申请实施例中,当管理设备借助运维管理系统实现上述方法时,运维管理系统的数据库(例如cmdb)中存储有从监控软件中获取监控软件发现的链路和采集的端口信息,以及,从lld设计输出或人工填写或工具输出的表格中得到第二链路信息。这样,管理设备可以通过运行该运维管理系统,基于数据库中的数据,得到数据中心的服务器端口的端口号与槽位号的映射关系。以cmdb为例,cmdb可以通过监控软件(如esight)的北向接口获取监控软件发现的链路和采集的端口信息。图5为本申请实施例提供的一种端口映射装置的结构示意图。如图5所示,该端口映射装置可以是前述实施例所说的管理设备,还可以是该管理设备中的芯片。该端口映射装置可以包括:获取模块11和确定模块12。可选的,该装置还可以包括发送模块13。获取模块11,用于对交换设备进行链路发现,获取所述交换设备的第一链路信息。其中,所述交换设备通过所述交换设备的至少一个交换设备端口和至少一个服务器的至少一个服务器端口连接至所述至少一个服务器,所述至少一个交换设备端口具有至少一个第一端口号和至少一个第一槽位号,不同交换设备端口的第一端口号不同,不同交换设备端口的第一槽位号不同,所述至少一个服务器端口具有至少一个第二端口号和第二槽位号,不同服务器端口的第二端口号不同,不同服务器端口的第二槽位号不同,所述第一链路信息包括所述至少一个交换设备端口和所述至少一个服务器端口的第一连接关系。确定模块12,用于确定每个交换设备端口的第一端口号与第一槽位号的对应关系,并根据所述对应关系和所述第一链路信息,确定每个服务器端口的第二端口号与第二槽位号的映射关系。作为一种可能的实现方式,每个第一端口号与对应的第一槽位号具有公共字段。所述确定模块12,具体用于获取与每个交换设备端口的第一端口号具有公共字段的第一槽位号,并根据获取的第一槽位号确定每个交换设备端口的第一端口号与第一槽位号的对应关系。作为一种可能的实现方式,所述第一连接关系由所述至少一个交换设备端口的第一端口号以及所述至少一个服务器端口的第二端口号记录。所述获取模块11,还用于在所述确定模块12根据所述对应关系和所述第一链路信息,确定每个服务器端口的第二端口号与第二槽位号的映射关系之前,获取第二链路信息,所述第二链路信息包括所述至少一个交换设备端口和所述至少一个服务器端口的第二连接关系,且所述第二连接关系由所述至少一个交换设备端口的第一槽位号以及所述至少一个服务器端口的第二槽位号记录。所述确定模块12,具体用于根据所述对应关系、所述第一链路信息和所述第二链路信息,确定每个服务器端口的第二端口号与第二槽位号的映射关系。作为一种可能的实现方式,所述获取模块11,还用于在第一服务器端口发生故障时,根据所述第一服务器端口的第二端口号与第二槽位号的映射关系,获取所述第一服务器端口对应的第二槽位号,所述第一服务器端口属于所述至少一个服务器端口。所述发送模块13,用于上报包括所述第一服务器端口对应的第二槽位号的故障信息。作为一种可能的实现方式,所述服务器端口的第二端口号为所述服务器端口的媒体访问控制mac地址。本申请实施例提供的端口映射装置,可以执行上述方法实施例中管理设备的动作,其实现原理和技术效果类似,在此不再赘述。需要说明的是,应理解以上发送模块实际实现时可以为发送器,而获取模块、确定模块可以以软件通过处理元件调用的形式实现;也可以以硬件的形式实现。例如,确定模块可以为单独设立的处理元件,也可以集成在上述装置的某一个芯片中实现,此外,也可以以程序代码的形式存储于上述装置的存储器中,由上述装置的某一个处理元件调用并执行以上确定模块的功能。此外这些模块全部或部分可以集成在一起,也可以独立实现。这里所述的处理元件可以是一种集成电路,具有信号的处理能力。在实现过程中,上述方法的各步骤或以上各个模块可以通过处理器元件中的硬件的集成逻辑电路或者软件形式的指令完成。例如,以上这些模块可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个专用集成电路(applicationspecificintegratedcircuit,asic),或,一个或多个微处理器(digitalsignalprocessor,dsp),或,一个或者多个现场可编程门阵列(fieldprogrammablegatearray,fpga)等。再如,当以上某个模块通过处理元件调度程序代码的形式实现时,该处理元件可以是通用处理器,例如中央处理器(centralprocessingunit,cpu)或其它可以调用程序代码的处理器。再如,这些模块可以集成在一起,以片上系统(system-on-a-chip,soc)的形式实现。图6为本申请实施例提供的一种计算设备的结构示意图。该计算设备用于实现如图5中所示的端口映射装置,以实现前述实施例中的端口映射方法。此外,如图5中所示的端口映射装置也可以有多个该计算设备组成的集群实现。如图6所示,该计算设备可以包括:处理器21(例如cpu)、存储器22;存储器22可能包含高速随机存取存储器(random-accessmemory,ram),也可能还包括非易失性存储器(non-volatilememory,nvm),例如至少一个磁盘存储器,存储器22中可以存储各种指令,以用于完成各种处理功能以及实现本申请的方法步骤。可选的,本申请涉及的计算设备还可以包括:电源23、通信总线24以及通信端口25。通信总线24用于实现元件之间的通信连接。上述通信端口25用于实现计算设备与其他外设之间进行连接通信。在本申请实施例中,上述存储器22用于存储计算机可执行程序代码,程序代码包括指令;当处理器21执行指令时,指令使计算设备的处理器21执行上述方法实施例中管理设备的动作,其实现原理和技术效果类似,在此不再赘述。在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本申请实施例的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如固态硬盘solidstatedisk(ssd))等。当前第1页1 2 3 当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1