CN107948105B - 控制设备的端口状态的方法和系统 - Google Patents

控制设备的端口状态的方法和系统 Download PDF

Info

Publication number
CN107948105B
CN107948105B CN201810003445.3A CN201810003445A CN107948105B CN 107948105 B CN107948105 B CN 107948105B CN 201810003445 A CN201810003445 A CN 201810003445A CN 107948105 B CN107948105 B CN 107948105B
Authority
CN
China
Prior art keywords
port
state
opensm
service
ports
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201810003445.3A
Other languages
English (en)
Other versions
CN107948105A (zh
Inventor
于勤伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Lenovo Beijing Ltd
Original Assignee
Lenovo Beijing Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Lenovo Beijing Ltd filed Critical Lenovo Beijing Ltd
Priority to CN201810003445.3A priority Critical patent/CN107948105B/zh
Publication of CN107948105A publication Critical patent/CN107948105A/zh
Application granted granted Critical
Publication of CN107948105B publication Critical patent/CN107948105B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/25Routing or path finding in a switch fabric
    • H04L49/253Routing or path finding in a switch fabric using establishment or release of connections between ports

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Small-Scale Networks (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本公开提供了一种控制设备的端口状态的方法,所述设备能够通过端口与另一设备进行连接,所述方法包括:获取所述设备的至少一个端口的连接状态,所述连接状态包括导通状态和不导通状态;确定所述至少一个端口中是否存在处于不导通状态的至少一个第一端口;在所述至少一个端口中存在所述至少一个第一端口的情况下,确定所述至少一个端口中是否存处于导通状态的第二端口;在所述至少一个端口中存在所述第二端口的情况下,确定与所述第二端口连接的另一设备的相应端口是否处于激活状态;在与所述第二端口连接的另一设备的相应端口处于激活状态的情况下,控制所述设备的所述至少一个第一端口中的一个处于激活状态。

Description

控制设备的端口状态的方法和系统
技术领域
本公开涉及一种控制设备的端口状态的方法和系统。
背景技术
随着电子技术的快速发展,InfiniBand网络技术得到越来越多的应用。区别于以太网中通过总线相连的技术,在InfiniBand网络中,各个设备可以直接通过端口连接,有效提高数据传输效率。但是,在InfiniBand网络的各个设备端口实现物理连接后,如何控制各物理连接链路的工作状态成为亟需解决的问题。
发明内容
本公开的一个方面提供了一种控制设备的端口状态的方法,所述设备能够通过端口与另一设备进行连接,所述方法包括:获取所述设备的至少一个端口的连接状态,所述连接状态包括导通状态和不导通状态,确定所述至少一个端口中是否存在处于不导通状态的至少一个第一端口,在所述至少一个端口中存在所述至少一个第一端口的情况下,确定所述至少一个端口中是否存在处于导通状态的第二端口,在所述至少一个端口中存在所述第二端口的情况下,确定与所述第二端口连接的另一设备的相应端口是否处于激活状态,在与所述第二端口连接的另一设备的相应端口处于激活状态的情况下,控制所述设备的所述至少一个第一端口中的一个处于激活状态。
可选地,上述方法中相连接的两个端口中的至少一个端口处于激活状态时,所述相连接的两个端口的连接状态均为所述导通状态。
可选地,上述方法还包括:在所述至少一个端口中不存在所述至少一个第一端口的情况下,确定所述至少一个端口中是否存在处于激活状态的端口,在所述至少一个端口中不存在处于激活状态的端口的情况下,控制所述设备的所述至少一个端口中的一个处于激活状态。
可选地,上述方法还包括:在所述至少一个端口中不存在所述第二端口的情况下,控制所述设备的所述至少一个端口中的一个处于激活状态。
可选地,上述方法应用于InfiniBand网络设备中,所述端口处于激活状态包括所述端口绑定opensm服务。
可选地,上述方法中当相连接的两个端口均绑定opensm服务时,其中的一个端口绑定的opensm服务为主opensm服务,另一个端口绑定的opensm服务为副opensm服务,当所述主opensm服务失效时,所述另一个端口绑定的副opensm服务切换为主opensm服务。
可选地,上述设备的至少一个端口中的最多一个端口处于所述激活状态。
本公开的另一个方面提供了一种控制设备的端口状态的系统,所述设备能够通过端口与另一设备进行连接,所述系统包括:获取模块、第一确定模块、第二确定模块、第三确定模块、以及第一控制模块。获取模块获取所述设备的至少一个端口的连接状态,所述连接状态包括导通状态和不导通状态。第一确定模块确定所述至少一个端口中是否存在处于不导通状态的至少一个第一端口。第二确定模块在所述至少一个端口中存在所述至少一个第一端口的情况下,确定所述至少一个端口中是否存在处于导通状态的第二端口。第三确定模块在所述至少一个端口中存在所述第二端口的情况下,确定与所述第二端口连接的另一设备的相应端口是否处于激活状态。第一控制模块在与所述第二端口连接的另一设备的相应端口处于激活状态的情况下,控制所述设备的所述至少一个第一端口中的一个处于激活状态。
本公开的另一方面提供了一种控制设备的端口状态的系统,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如上所述的方法。
本公开的另一方面提供了一种非易失性存储介质,存储有计算机可执行指令,所述指令在被执行时用于实现如上所述的方法。
本公开的另一方面提供了一种计算机程序,所述计算机程序包括计算机可执行指令,所述指令在被执行时用于实现如上所述的方法。
附图说明
为了更完整地理解本公开及其优势,现在将参考结合附图的以下描述,其中:
图1示意性示出了根据本公开实施例的用于控制设备的端口状态的方法和系统的应用场景;
图2示意性示出了根据本公开实施例的用于控制设备的端口状态的方法的流程图;
图3示意性示出了根据本公开另一实施例的用于控制设备的端口状态的方法的流程图;
图4示意性示出了根据本公开另一实施例的用于控制设备的端口状态的方法的流程图;
图5示意性示出了根据本公开另一实施例的用于控制设备的端口状态的方法的流程图;
图6示意性示出了根据本公开实施例的用于控制设备的端口状态的系统的框图;
图7示意性示出了根据本公开另一实施例的用于控制设备的端口状态的系统的框图;
图8示意性示出了根据本公开另一实施例的用于控制设备的端口状态的系统的框图;以及
图9示意性示出了根据本公开实施例的用于控制设备的端口状态的计算机系统的方框图。
具体实施方式
以下,将参照附图来描述本公开的实施例。但是应该理解,这些描述只是示例性的,而并非要限制本公开的范围。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本公开的概念。
在此使用的术语仅仅是为了描述具体实施例,而并非意在限制本公开。在此使用的术语“包括”、“包含”等表明了所述特征、步骤、操作和/或部件的存在,但是并不排除存在或添加一个或多个其他特征、步骤、操作或部件。
在此使用的所有术语(包括技术和科学术语)具有本领域技术人员通常所理解的含义,除非另外定义。应注意,这里使用的术语应解释为具有与本说明书的上下文相一致的含义,而不应以理想化或过于刻板的方式来解释。
在使用类似于“A、B和C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B和C中至少一个的系统”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的系统等)。在使用类似于“A、B或C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B或C中至少一个的系统”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的系统等)。本领域技术人员还应理解,实质上任意表示两个或更多可选项目的转折连词和/或短语,无论是在说明书、权利要求书还是附图中,都应被理解为给出了包括这些项目之一、这些项目任一方、或两个项目的可能性。例如,短语“A或B”应当被理解为包括“A”或“B”、或“A和B”的可能性。
附图中示出了一些方框图和/或流程图。应理解,方框图和/或流程图中的一些方框或其组合可以由计算机程序指令来实现。这些计算机程序指令可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器,从而这些指令在由该处理器执行时可以创建用于实现这些方框图和/或流程图中所说明的功能/操作的装置。
因此,本公开的技术可以硬件和/或软件(包括固件、微代码等)的形式来实现。另外,本公开的技术可以采取存储有指令的计算机可读介质上的计算机程序产品的形式,该计算机程序产品可供指令执行系统使用或者结合指令执行系统使用。在本公开的上下文中,计算机可读介质可以是能够包含、存储、传送、传播或传输指令的任意介质。例如,计算机可读介质可以包括但不限于电、磁、光、电磁、红外或半导体系统、装置、器件或传播介质。计算机可读介质的具体示例包括:磁存储装置,如磁带或硬盘(HDD);光存储装置,如光盘(CD-ROM);存储器,如随机存取存储器(RAM)或闪存;和/或有线/无线通信链路。
本公开的实施例提供了一种控制设备的端口状态的方法,该设备能够通过端口与另一设备进行连接,该方法包括:获取设备的至少一个端口的连接状态,连接状态包括导通状态和不导通状态,确定至少一个端口中是否存在处于不导通状态的至少一个第一端口;在至少一个端口中存在至少一个第一端口的情况下,确定至少一个端口中是否存在处于导通状态的第二端口,在至少一个端口中存在第二端口的情况下,确定与第二端口连接的另一设备的相应端口是否处于激活状态,在与第二端口连接的另一设备的相应端口处于激活状态的情况下,控制设备的至少一个第一端口中的一个处于激活状态。
可见,在本公开实施例的技术方案中,网络中的各个设备可以获取本设备的端口连接状态,通过控制本设备端口的状态,使得网络中各个设备处于导通状态,无需业务人员了解网络中各设备连接的复杂的拓扑结构,也无需业务人员手动调节各设备端口的状态,提高了设备端口状态的调节效率,节约了人力物力。
图1示意性示出了根据本公开实施例的用于控制设备的端口状态的方法和系统的应用场景。
如图1所示,该应用场景100例如可以包括多个设备,该些设备通过端口彼此相连形成网络。多个设备例如包括设备101、设备102、设备103…设备N等等。
根据本公开实施例,一个电子设备例如可以包括一个或者多个端口,例如设备101包括端口a1,设备102例如包括端口b1、b2以及b3,设备103例如包括端口c1以及c2,设备N例如包括端口n1以及n2。
根据本公开实施例,设备101通过端口a1与设备102的端口b1实现与设备102物理连接,其中,设备101的端口a1处于激活状态(黑色端口表示端口处于激活状态),此时设备101与设备102处于网络导通状态。设备102的端口b3与设备103的端口c2实现物理连接,而且设备102的端口b3与设备103的端口c2都处于激活状态,此时设备102与设备103处于网络导通状态。
在本公开实施例中,通过端口实现连接的设备例如可以是服务器、存储设备、以及交换设备等等。
在本公开实施例中,两个设备通过端口实现物理连接,例如两个服务器通过端口连接,只要两个服务器实现连接的两个端口的至少一个端口处于激活状态,该通过端口实现物理连接的两个服务器处于网络导通状态,该两个服务器例如可以作为一个子网络。
在本公开实施例中,还可以是多个服务器通过交换设备实现多台服务器连接,例如多个服务器通过各自的端口与交换机的端口连接,该多个服务器与交换机形成一个子网络,当该多个服务器的端口和交换机相连的端口(即实现物理连接的端口)中至少一个处于激活状态,那么该多个服务器与交换机形成的子网络处于网络导通状态。
在本公开实施例中,一台设备可以包括多个端口,但一台服务器的多个端口中只有一个端口能处于激活状态。因此网络中存在多台设备连接时,需要控制网络中的设备的端口状态,实现网络中设备在实现物理连接的条件下,通过控制设备端口的激活状态实现设备之间的网络相通。
需要说明的是,本公开实施例所提供的用于控制设备的端口状态的方法和用于控制设备的端口状态的系统一般可以由包括设备101、设备102、设备103…设备N中的任意一个执行。例如,用于控制设备的端口状态的方法和系统可以由设备101执行,设备101可以获取本设备的端口连接状态,通过控制本设备端口的状态,使得本设备处于导通状态。通过每个设备各自执行用于控制设备的端口状态的方法和系统,使得网络中各个设备处于导通状态。
下面结合图1的应用场景,参考图2~图5来描述根据本公开示例性实施方式的用于控制设备的端口状态的方法。需要注意的是,上述应用场景仅是为了便于理解本发明的精神和原理而示出,本发明的实施方式在此方面不受任何限制。相反,本发明的实施方式可以应用于适用的任何场景。
图2示意性示出了根据本公开实施例的用于控制设备的端口状态的方法的流程图。
如图2所示,该方法包括操作S201~S205。
根据本公开实施例,用于控制设备的端口状态的方法例如可以应用于InfiniBand网络设备中,InfiniBand网络中的设备不同于以太网中的总线技术,在InfiniBand网络中,设备之间可以通过各自的端口直接相连,例如当设备为服务器时,InfiniBand网络中的服务器和服务器之间通过端口直接相连。InfiniBand网络技术不仅能够简化和加速服务器到服务器的连接,还能连接其他相关的系统。InfiniBand网络技术提供更简单的连接、更短的待机时间、更高的宽带和更强的互操作性,InfiniBand网络至少能够部分地保证网络中的数据能做服务器、存储解决方案、应用和终端用户之间平稳畅通地传输。
在操作S201,获取设备的至少一个端口的连接状态,连接状态包括导通状态和不导通状态。
根据本公开实施例,一台设备例如可以包括多个端口,例如设备通过一个端口可以与一台外接设备连接,即,包括多个端口的设备可以通过该多个端口实现与多个外接设备连接。
在本公开实施例中,端口的连接状态例如可以包括导通状态和不导通状态。其中,端口的导通状态例如可以是端口之间实现网络连接(网络连接例如是设备在物理连接的基础上,能够实现网络相通),例如可以是设备的一个端口与其他一个设备的一个端口相连接,例如设备包括端口1和端口2,当端口1和其他设备相连接时(相连接例如指实现网络连接),端口1处于导通状态。
在本公开实施例中,当端口不与外接设备相连接时或者当端口与外接设备实现物理连接但网络不通时,该端口处于不导通状态。例如一台设备包括端口1和端口2,其中,端口2处于网络不通的状态(例如端口2不与任何设备连接或者该端口2与其他设备实现物理连接但网络不通),此时端口2处于不导通状态。
根据本公开实施例,获取设备的至少一个端口的连接状态,即获取设备的所有端口的连接状态。例如一台设备包括端口1和端口2时,当端口1处于网络连接状态,端口2处于网络不通状态时,获取端口1和端口2的连接状态,即端口连接状态包括端口1处于导通状态,端口2处于不导通状态。
在操作S202,确定至少一个端口中是否存在处于不导通状态的至少一个第一端口。
根据本公开实施例,第一端口例如是设备的多个端口中处于不导通状态的端口中的一个或多个端口,即第一端口为处于不导通状态的端口。在获取设备的所有端口的连接状态后,确定设备所有端口中是否存在不导通的端口作为第一端口。
在本公开实施例中,例如一个设备包括三个端口,例如包括端口1、端口2和端口3,当端口1~3都处于网络连接状态时,此时端口1~3处于导通状态,此时设备的多个端口不存在处于不导通状态的端口,即,设备的多个端口不存在第一端口。
在本公开实施例中,例如一个设备包括三个端口,例如包括端口1、端口2和端口3,例如端口1处于网络连接状态,端口2和端口3处于网络不通状态,即,端口2和端口3处于不导通状态,此时确定端口2和端口3作为第一端口。
在操作S203,在至少一个端口中存在至少一个第一端口的情况下,确定至少一个端口中是否存在处于导通状态的第二端口。
在本公开实施例中,第二端口例如为设备的多个端口中处于导通状态的端口,即第二端口为处于导通状态的端口。在设备的多个端口中存在第一端口的情况下,确定设备的所有端口中是否存在导通状态的端口作为第二端口。
在本公开实施例中,例如一台设备包括三个端口,例如包括端口1、端口2和端口3,当端口1~3都处于网络不通状态时,此时端口1~3处于不导通状态,此时设备的多个端口不存在处于导通状态的端口,即,设备的多个端口不存在第二端口。
在本公开实施例中,例如一个设备包括三个端口,例如包括端口1、端口2和端口3,例如端口1处于网络连接状态,端口2和端口3处于网络不通状态时,即,端口1处于导通状态,此时确定端口1作为第二端口。
在操作S204,在至少一个端口中存在第二端口的情况下,确定与第二端口连接的另一设备的相应端口是否处于激活状态。
根据本公开实施例,端口的激活状态例如可以指设备之间能够实现网络连接端口状态。例如通过端口实现物理连接的设备处于网络不通的状态,端口激活能够实现在物理连接的条件下设备之间网络相通。
根据本公开实施例,例如在InfiniBand网络中,设备的端口激活状态例如可以是端口绑定opensm服务。例如在InfiniBand网络中,设备例如可以包括子网管理器(SubnetManager),例如每个设备包括一个子网管理器,端口的激活状态例如可以是子网管理器控制端口绑定opensm服务。
根据本公开实施例,在设备的多个端口中存在第二端口的情况下,即多个端口中存在处于导通状态的端口时,确定与该第二端口连接的另一设备相应的端口是否处于激活状态。
在本公开实施例中,例如设备a包括端口a1、端口a2、和端口a3,其中,端口a1处于导通状态,端口a2和a3处于不导通状态,即端口a1为第二端口。设备b包括端口b1和端口b2,其中,设备a的端口a1与设备b的端口b1连接(网络连接),此时,确定第二端口连接的另一设备相应的端口是否处于激活状态,例如可以是,确定与端口a1相应的端口b1是否处于激活状态,例如可以是确定端口b1是否绑定opensm服务。
在本公开实施例中,例如端口b1绑定opensm服务,即端口b1处于激活状态,例如端口b1没有绑定opensm服务时,即端口b1处于不激活状态。
在操作S205,在与第二端口连接的另一设备的相应端口处于激活状态的情况下,控制设备的至少一个第一端口中的一个处于激活状态。
在本公开实施例中,控制设备的端口处于激活状态,例如可以是控制端口绑定opensm服务。例如可以是设备中的子网管理器控制设备中多个端口中的一个端口绑定opensm服务。
根据本公开实施例,第二端口连接的另一设备的相应端口处于激活状态的情况下,控制设备的一个或多个第一端口中的一个端口处于激活状态。例如,设备a包括端口a1、端口a2、和端口a3,其中,端口a1处于导通状态,端口a2和a3处于不导通状态,即端口a1为第二端口,端口a2和端口a3为第一端口。设备b包括端口b1和端口b2,其中,设备a的端口a1与设备b的端口b1连接(网络连接),当端口b1处于激活状态时,设备a的子网管理器控制设备a中的第一端口(端口a2和端口a3)中的一个处于激活状态,例如控制端口a2绑定opensm服务,或者控制端口a3绑定opensm服务。
根据本公开实施例,设备的至少一个端口中的最多一个端口处于激活状态。
在本公开实施例中,每个设备包括多个端口,例如只有一个端口能处于激活状态,即例如只有一个端口能绑定opensm服务。例如设备包括端口1和端口2,例如可以是端口1或者端口2中的一个端口绑定opensm服务,端口1和端口2例如不能同时绑定opensm服务。
根据本公开实施例,相连接的两个端口中的至少一个端口处于激活状态时,相连接的两个端口的连接状态均为导通状态。
在本公开实施例中,相连接的两个端口中,有一个端口处于激活状态,或两个端口都处于激活状态时,该相互连接的两个端口的状态均为导通状态。例如两个相连接的端口中一个端口绑定opensm服务,或者两个端口都绑定opensm服务时,该两个端口都处于导通状态,即,通过该两个端口连接的设备处于网络连接的状态。
在本公开实施例中,例如设备a的端口a1和设备b的端口b1相连接时,当端口a1或者端口a2绑定opensm服务时,端口a1和端口b1都处于导通状态,即设备a和设备b实现网络连接;当端口a1和端口b1同时绑定opensm服务时,端口a1和端口b1都处于导通状态,即设备a和设备b实现网络连接。
根据本公开实施例,当相连接的两个端口均绑定opensm服务时,其中的一个端口绑定的opensm服务为主opensm服务,另一个端口绑定的opensm服务为副opensm服务,当主opensm服务失效时,另一个端口绑定的副opensm服务切换为主opensm服务。
根据本公开实施例,通过端口连接的多个设备例如构成一个子网络时,例如可以在该子网络的多个端口中开启opensm服务,即一个子网络中可以存在多个opensm服务,其中一个opensm服务为主opensm服务,其他opensm服务为副opensm服务。
在本公开实施例中,当相互连接的两个端口均绑定opensm服务时,例如设备a的端口a1和设备b的端口b1相互连接,且端口a1和端口b1都绑定opensm服务时,其中一个端口绑定的opensm服务为主绑定opensm服务,另一个端口绑定opensm服务为副opensm服务,例如端口a1绑定的opensm服务为主opensm服务,端口b1绑定的opensm服务为副opensm服务,当端口a1绑定的opensm服务失效时,端口b1绑定的opensm服务切换为主opensm服务。
在本公开实施例中,主opensm服务失效例如可以是设备的子网管理器将opensm服务从一个端口解绑,并将opensm服务绑定到另一端口时,从端口中解绑的opensm服务失效。例如设备a包括两个端口a1和a2,设备b包括端口b1,当端口a1与端口b1连接且端口a1和端口b2都绑定opensm服务时,当设备a的子网管理器将端口a1上绑定的opensm解绑并在端口a2上绑定opensm服务时,端口a1上绑定的opensm服务失效。
根据本公开实施例,设备的子网管理器控制设备端口的状态过程,包括给各个端口分配端口地址,在子网管理器监测并识别设备中各个端口的状态时,例如可以通过获取各个端口的端口地址,通过端口地址控制相应端口的状态。
根据本公开实施例,网络中的各个设备可以获取本设备的端口连接状态,通过控制本设备端口的状态,使得网络中各个设备处于导通状态,无需业务人员了解网络中各设备连接的复杂的拓扑结构,也无需业务人员手动调节各设备端口的状态,提高了设备端口状态的调节效率,节约了人力物力。
图3示意性示出了根据本公开另一实施例的用于控制设备的端口状态的方法的流程图。
如图3所示,该方法包括操作S201~S202以及S301~S302。其中,操作S201~S202与图2描述的方法相同或类似,在此不再赘述。
在操作S301,在至少一个端口中不存在至少一个第一端口的情况下,确定至少一个端口中是否存在处于激活状态的端口。
在本公开实施例中,在设备的多个端口中不存在第一端口(第一端口为不导通状态)的情况下,即设备的多个端口都处于导通状态。
在本公开实施例中,例如一个设备包括三个端口,例如包括端口1、端口2和端口3,当端口1~3都处于网络相连状态时,此时端口1~3都处于导通状态,此时设备的多个端口不存在处于不导通状态的端口(即不存在第一端口)。
在本公开实施例中,在设备的多个端口中不存在第一端口时,即该多个端口都处于导通状态,此时,确定该多个端口是否存在处于激活状态的端口。
在本公开实施例中,例如设备包括端口1、端口2和端口3,其中,当端口1~3中至少有一个端口绑定opensm服务时,该绑定opensm服务的端口处于激活状态,即多个端口存在处于激活状态的端口。当端口1~3中所有端口都不绑定opensm服务时,该多个端口处于非激活状态,即该多个端口不存在处于激活状态的端口。
在操作S302,在至少一个端口中不存在处于激活状态的端口的情况下,控制设备的至少一个端口中的一个处于激活状态。
根据本公开实施例,例如设备包括端口1、端口2和端口3,其中,当端口1~3中所有端口都不绑定opensm服务时,该多个端口处于非激活状态,即该多个端口不存在处于激活状态的端口时,设备的子网管理器控制端口1~3中的一个端口处于激活状态,例如控制端口1绑定opensm服务。
图4示意性示出了根据本公开另一实施例的用于控制设备的端口状态的方法的流程图。
如图4所示,该方法包括操作S201~S203以及S401。其中,操作S201~S203与图2描述的方法相同或类似,在此不再赘述。
在操作S401,在至少一个端口中不存在第二端口的情况下,控制设备的至少一个端口中的一个处于激活状态。
根据本公开实施例,当设备的多个端口不存在第二端口(第二端口为导通状态的端口)时,即设备的多个端口都处于不导通状态,此时,控制该多个不导通状态的端口中的一个端口处于激活状态。
例如,设备包括端口1、端口2和端口3,其中,当端口1~3中所有端口都处于不导通状态时,即,该多个端口都不绑定opensm服务,此时,设备的子网管理器控制端口1~3中的一个端口处于激活状态,例如控制端口1绑定opensm服务。
图5示意性示出了根据本公开另一实施例的用于控制设备的端口状态的方法的流程图。
如图5所示,该方法包括操作S501~S508。
在操作S501,获取设备的至少一个端口的连接状态,连接状态包括导通状态和不导通状态。
在操作S502,确定至少一个端口中是否存在处于不导通状态的至少一个第一端口。在存在处于不导通状态的至少一个第一端口时,执行操作S503,在不存在处于不导通状态的至少一个第一端口时,执行操作S506。
其中,在操作S503,确定至少一个端口中是否存在处于导通状态的第二端口。在至少一个端口中存在第二端口的情况下,执行操作S504。
在操作S506,确定至少一个端口中是否存在处于激活状态的端口。其中,在至少一个端口中不存在处于激活状态的端口的情况下,执行操作S507。
其中,在操作S507,控制设备的至少一个端口中的一个处于激活状态。
在操作S504,确定与第二端口连接的另一设备的相应端口是否处于激活状态。在与第二端口连接的另一设备的相应端口处于激活状态的情况下,执行操作S505。
在操作S505,控制设备的至少一个第一端口中的一个处于激活状态。
根据本公开实施例,网络中的各个设备可以获取本设备的端口连接状态,通过控制本设备端口的状态,使得网络中各个设备处于导通状态,无需业务人员了解网络中各设备连接的复杂的拓扑结构,也无需业务人员手动调节各设备端口的状态,提高了设备端口状态的调节效率,节约了人力物力。
图6示意性示出了根据本公开实施例的用于控制设备的端口状态的系统的框图。
如图6所示,用于控制设备的端口状态的系统600包括获取模块610、第一确定模块620、第二确定模块630、第三确定模块640、以及第一控制模块650。用于控制设备的端口状态的系统600可以执行上面参考图2或图5描述的方法。
具体地,获取模块610可以用于获取设备的至少一个端口的连接状态,连接状态包括导通状态和不导通状态。根据本公开实施例,获取模块610例如可以执行上文参考图2描述的操作S201,在此不再赘述。
第一确定模块620可以用于确定至少一个端口中是否存在处于不导通状态的至少一个第一端口。根据本公开实施例,第一确定模块620例如可以执行上文参考图2描述的操作S202,在此不再赘述。
第二确定模块630可以用于在至少一个端口中存在至少一个第一端口的情况下,确定至少一个端口中是否存在处于导通状态的第二端口。根据本公开实施例,第二确定模块630例如可以执行上文参考图2描述的操作S203,以及上文参考图3的操作S301,在此不再赘述。
第三确定模块640可以用于在至少一个端口中存在第二端口的情况下,确定与第二端口连接的另一设备的相应端口是否处于激活状态。根据本公开实施例,第三确定模块640例如可以执行上文参考图2描述的操作S204,在此不再赘述。
第一控制模块650在与第二端口连接的另一设备的相应端口处于激活状态的情况下,控制设备的至少一个第一端口中的一个处于激活状态。根据本公开实施例,第一控制模块650例如可以执行上文参考图2描述的操作S205,在此不再赘述。
图7示意性示出了根据本公开另一实施例的用于控制设备的端口状态的系统的框图。
如图7所示,用于控制设备的端口状态的系统600包括获取模块610、第一确定模块620、第二确定模块630、第三确定模块640、第一控制模块650、第四确定模块710、以及第二控制模块720。其中,获取模块610、第一确定模块620、第二确定模块630、第三确定模块640、以及第一控制模块650与上述参考图6描述的模块相同或类似,在此不再赘述。
第四确定模块710可以用于在至少一个端口中不存在至少一个第一端口的情况下,确定至少一个端口中是否存在处于激活状态的端口。根据本公开实施例,第四确定模块710例如可以执行上文参考图3或图5描述的操作S301,在此不再赘述。
第二控制模块720可以用于在至少一个端口中不存在处于激活状态的端口的情况下,控制设备的至少一个端口中的一个处于激活状态。根据本公开实施例,第二控制模块720例如可以执行上文参考图3或图5描述的操作S302,在此不再赘述。
图8示意性示出了根据本公开另一实施例的用于控制设备的端口状态的系统的框图。
如图8所示,用于控制设备的端口状态的系统600包括获取模块610、第一确定模块620、第二确定模块630、第三确定模块640、以及第一控制模块650、、第四确定模块710、第二控制模块720、以及第三控制模块810。其中,获取模块610、第一确定模块620、以及第二确定模块630与上述参考图6描述的模块相同或类似,在此不再赘述。第四确定模块710、以及第二控制模块720与上述参考图7描述的模块相同或类似,在此不再赘述。
第三控制模块810可以用于在至少一个端口中不存在第二端口的情况下,控制设备的至少一个端口中的一个处于激活状态。根据本公开实施例,第三控制模块810例如可以执行上文参考图3或图5描述的操作S401,在此不再赘述。
可以理解的是,获取模块610、第一确定模块620、第二确定模块630、第三确定模块640、第四确定模块710、第一控制模块650、第二控制模块720、以及第三控制模块810可以合并在一个模块中实现,或者其中的任意一个模块可以被拆分成多个模块。或者,这些模块中的一个或多个模块的至少部分功能可以与其他模块的至少部分功能相结合,并在一个模块中实现。根据本发明的实施例,获取模块610、第一确定模块620、第二确定模块630、第三确定模块640、第四确定模块710、第一控制模块650、第二控制模块720、以及第三控制模块810中的至少一个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、片上系统、基板上的系统、封装上的系统、专用集成电路(ASIC),或可以以对电路进行集成或封装的任何其他的合理方式等硬件或固件来实现,或以软件、硬件以及固件三种实现方式的适当组合来实现。或者,获取模块610、第一确定模块620、第二确定模块630、第三确定模块640、第四确定模块710、第一控制模块650、第二控制模块720、以及第三控制模块810中的至少一个可以至少被部分地实现为计算机程序模块,当该程序被计算机运行时,可以执行相应模块的功能。
图9示意性示出了根据本公开实施例的用于控制设备的端口状态的计算机系统的方框图。
如图9所示,实现用于控制设备的端口状态的计算机系统900包括处理器901、计算机可读存储介质902。该系统900可以执行上面参考图2~图5描述的方法。
具体地,处理器901例如可以包括通用微处理器、指令集处理器和/或相关芯片组和/或专用微处理器(例如,专用集成电路(ASIC)),等等。处理器901还可以包括用于缓存用途的板载存储器。处理器901可以是用于执行参考图2~图5描述的根据本公开实施例的方法流程的不同动作的单一处理单元或者是多个处理单元。
计算机可读存储介质902,例如可以是能够包含、存储、传送、传播或传输指令的任意介质。例如,可读存储介质可以包括但不限于电、磁、光、电磁、红外或半导体系统、装置、器件或传播介质。可读存储介质的具体示例包括:磁存储装置,如磁带或硬盘(HDD);光存储装置,如光盘(CD-ROM);存储器,如随机存取存储器(RAM)或闪存;和/或有线/无线通信链路。
计算机可读存储介质902可以包括计算机程序903,该计算机程序903可以包括代码/计算机可执行指令,其在由处理器901执行时使得处理器901执行例如上面结合图2~图5所描述的方法流程及其任何变形。
计算机程序903可被配置为具有例如包括计算机程序模块的计算机程序代码。例如,在示例实施例中,计算机程序903中的代码可以包括一个或多个程序模块,例如包括903A、模块903B、……。应当注意,模块的划分方式和个数并不是固定的,本领域技术人员可以根据实际情况使用合适的程序模块或程序模块组合,当这些程序模块组合被处理器901执行时,使得处理器901可以执行例如上面结合图2~图5所描述的方法流程及其任何变形。
根据本发明的实施例,获取模块610、第一确定模块620、第二确定模块630、第三确定模块640、第四确定模块710、第一控制模块650、第二控制模块720、以及第三控制模块810中的至少一个可以实现为参考图9描述的计算机程序模块,其在被处理器901执行时,可以实现上面描述的相应操作。本领域技术人员可以理解,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合或/或结合,即使这样的组合或结合没有明确记载于本公开中。特别地,在不脱离本公开精神和教导的情况下,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合。所有这些组合和/或结合均落入本公开的范围。
尽管已经参照本公开的特定示例性实施例示出并描述了本公开,但是本领域技术人员应该理解,在不背离所附权利要求及其等同物限定的本公开的精神和范围的情况下,可以对本公开进行形式和细节上的多种改变。因此,本公开的范围不应该限于上述实施例,而是应该不仅由所附权利要求来进行确定,还由所附权利要求的等同物来进行限定。

Claims (10)

1.一种控制设备的端口状态的方法,所述设备能够通过端口与另一设备进行连接,所述方法包括:
获取所述设备的至少一个端口的连接状态,所述连接状态包括导通状态和不导通状态;
确定所述至少一个端口中是否存在处于不导通状态的至少一个第一端口;
在所述至少一个端口中存在所述至少一个第一端口的情况下,确定所述至少一个端口中是否存在处于导通状态的第二端口;
在所述至少一个端口中存在所述第二端口的情况下,确定与所述第二端口连接的另一设备的相应端口是否处于激活状态;
在与所述第二端口连接的另一设备的相应端口处于激活状态的情况下,控制所述设备的所述至少一个第一端口中的一个处于激活状态。
2.根据权利要求1所述的方法,其中,相连接的两个端口中的至少一个端口处于激活状态时,所述相连接的两个端口的连接状态均为所述导通状态。
3.根据权利要求1所述的方法,还包括:
在所述至少一个端口中不存在所述至少一个第一端口的情况下,确定所述至少一个端口中是否存在处于激活状态的端口;
在所述至少一个端口中不存在处于激活状态的端口的情况下,控制所述设备的所述至少一个端口中的一个处于激活状态。
4.根据权利要求1所述的方法,还包括:
在所述至少一个端口中不存在所述第二端口的情况下,控制所述设备的所述至少一个端口中的一个处于激活状态。
5.根据权利要求1所述的方法,其中:
所述方法应用于InfiniBand网络设备中;
所述端口处于激活状态包括所述端口绑定opensm服务。
6.根据权利要求5所述的方法,其中,当相连接的两个端口均绑定opensm服务时,其中的一个端口绑定的opensm服务为主opensm服务,另一个端口绑定的opensm服务为副opensm服务,当所述主opensm服务失效时,所述另一个端口绑定的副opensm服务切换为主opensm服务。
7.根据权利要求1所述的方法,其中,所述设备的至少一个端口中的最多一个端口处于所述激活状态。
8.一种控制设备的端口状态的系统,所述设备能够通过端口与另一设备进行连接,所述系统包括:
获取模块,获取所述设备的至少一个端口的连接状态,所述连接状态包括导通状态和不导通状态;
第一确定模块,确定所述至少一个端口中是否存在处于不导通状态的至少一个第一端口;
第二确定模块,在所述至少一个端口中存在所述至少一个第一端口的情况下,确定所述至少一个端口中是否存在处于导通状态的第二端口;
第三确定模块,在所述至少一个端口中存在所述第二端口的情况下,确定与所述第二端口连接的另一设备的相应端口是否处于激活状态;
第一控制模块,在与所述第二端口连接的另一设备的相应端口处于激活状态的情况下,控制所述设备的所述至少一个第一端口中的一个处于激活状态。
9.一种控制设备的端口状态的系统,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现根据权利要求1~7中任一项所述的方法。
10.一种计算机可读介质,其上存储有可执行指令,所述指令被处理器执行时使处理器实现根据权利要求1~7中任一项所述的方法。
CN201810003445.3A 2018-01-02 2018-01-02 控制设备的端口状态的方法和系统 Active CN107948105B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810003445.3A CN107948105B (zh) 2018-01-02 2018-01-02 控制设备的端口状态的方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810003445.3A CN107948105B (zh) 2018-01-02 2018-01-02 控制设备的端口状态的方法和系统

Publications (2)

Publication Number Publication Date
CN107948105A CN107948105A (zh) 2018-04-20
CN107948105B true CN107948105B (zh) 2020-08-25

Family

ID=61937342

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810003445.3A Active CN107948105B (zh) 2018-01-02 2018-01-02 控制设备的端口状态的方法和系统

Country Status (1)

Country Link
CN (1) CN107948105B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113986985B (zh) * 2021-12-24 2022-03-11 深圳市聚能优电科技有限公司 能源管理的io读取方法、系统、设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1492643A (zh) * 2002-10-21 2004-04-28 华为技术有限公司 一种实现在光网络中传输InfiniBand数据的设备及方法
CN1764096A (zh) * 2005-10-26 2006-04-26 中山大学 一种上下波长信道可调的光分插复用器
CN101026486A (zh) * 2006-02-22 2007-08-29 华为技术有限公司 一种网管系统及其实现网管的方法
CN101258719A (zh) * 2005-07-17 2008-09-03 黑曜石研究有限公司 延长InfiniBand网络的实时到达的方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100500515B1 (ko) * 2003-06-30 2005-07-14 삼성전자주식회사 패킷 플로 제어 장치 및 방법
WO2011004718A1 (ja) * 2009-07-08 2011-01-13 アライドテレシスホールディングス株式会社 ネットワーク集線装置及びその制御方法
CN102137009B (zh) * 2011-01-31 2015-01-07 华为技术有限公司 网络中的二层业务处理方法和系统以及设备
CN102932183B (zh) * 2012-11-06 2015-03-18 杭州华三通信技术有限公司 双上行链路故障处理方法及设备

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1492643A (zh) * 2002-10-21 2004-04-28 华为技术有限公司 一种实现在光网络中传输InfiniBand数据的设备及方法
CN101258719A (zh) * 2005-07-17 2008-09-03 黑曜石研究有限公司 延长InfiniBand网络的实时到达的方法
CN1764096A (zh) * 2005-10-26 2006-04-26 中山大学 一种上下波长信道可调的光分插复用器
CN101026486A (zh) * 2006-02-22 2007-08-29 华为技术有限公司 一种网管系统及其实现网管的方法

Also Published As

Publication number Publication date
CN107948105A (zh) 2018-04-20

Similar Documents

Publication Publication Date Title
US10904137B2 (en) Loop avoidance for event-driven virtual link aggregation
US9019978B2 (en) Port mirroring at a network interface device
US9628326B2 (en) Managing network connection of a network node
US8743894B2 (en) Bridge port between hardware LAN and virtual switch
EP3482298B1 (en) Multicast apparatuses and methods for distributing data to multiple receivers in high-performance computing and cloud-based networks
US20140056152A1 (en) Port mirroring in distributed switching systems
US9692846B2 (en) System, device and method for providing push service using feedback message
US20170163478A1 (en) Method,electronic device and system for updating client configuration in key-value pair database
US9537798B1 (en) Ethernet link aggregation with shared physical ports
JP2019504557A (ja) ネットワーキング技術
US9007962B2 (en) Deadlock-free routing using edge-disjoint sub-networks
CN110177128B (zh) 数据传输系统及其建立vpn连接的方法、终端、vpn代理
US20130091264A1 (en) Dynamic session migration between network security gateways
US9871735B2 (en) Packet I/O support for a logical switch router architecture
CN113411363A (zh) 一种镜像文件的上传方法、相关设备及计算机存储介质
CN107948105B (zh) 控制设备的端口状态的方法和系统
US10291553B2 (en) Logical switch architecture for network virtualization
CN113765801B (zh) 应用于数据中心的报文处理方法和装置、电子设备和介质
EP3896931B1 (en) Spark shuffle-based remote direct memory access system and method
US9332071B2 (en) Data stage-in for network nodes
US8423827B2 (en) Topology based correlation of threshold crossing alarms
CN111092828A (zh) 网络操作方法、装置、设备和存储介质
CN114338477A (zh) 一种通信链路监控方法、装置、设备及存储介质
US10574519B2 (en) Detection and configuration of a logical channel
CN113132504A (zh) 网络地址转换设备的识别方法、装置和计算机设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant