链路资源分配方法、装置、目标交换机及介质与流程

    专利查询2025-04-24  24


    本发明涉及计算机,具体涉及链路资源分配方法、装置、目标交换机及介质。


    背景技术:

    1、随着大数据、人工智能、ai等计算的发展,对目标交换机的可靠性、可用性和可维护性要求越来越高,在目标交换机领域pcie作为串行通信接口标准被广泛应用于目标交换机互联,发挥了越来越重要的作用。在目标交换机领域需要pcie设备高可靠性持续不间断的运行,但即使再高可用性的目标交换机也有可能出现故障的时候,一旦出现故障通常不可能像普通pc设备关闭电源进行长时间的维护;因此通常采用pcie热插拔机制来实现不关闭目标交换机系统电源的情况下更换pcie设备,使目标交换机系统尽可能的维持在“高可用性”状态。

    2、在热插入的应用场景中,在进行pcie链路资源分配时,需要为预留槽位预留出链路资源,方便后续在预留槽位插入新的设备,而且该预留出的链路资源不能影响已经分配链路资源的设备的正常运行,即链路资源不冲突。因此,通常都会预留出较多的链路资源供后续插入的新设备使用。不过,这种情况可能会出现新插入设备使用的链路资源小于预留的链路资源的情况,造成链路资源过剩以及链路资源碎片化等问题。而且这些碎片无法在不关机的情况下进行回收,造成资源浪费。在某些特殊情况下,还可能出现预留的链路资源小于新设备需占用的链路资源,导致该预留槽位即使插入新设备也不能保证新设备可以正常使用的情况发生。


    技术实现思路

    1、有鉴于此,本发明提供了一种链路资源分配方法、装置、目标交换机及介质,以解决链路资源预留不合理,使得新插入设备无法正常使用,或者预留的链路资源过剩,链路资源碎片化等的问题。

    2、第一方面,本发明提供了一种链路资源分配预留方法,该方法包括:

    3、对目标交换机下的已连接设备和预留槽位在cpu管理的链路资源进行枚举以及虚拟链路分配,生成第一链路集,以及生成第一拓扑结构图,第一拓扑结构图为根据预配置的将预留槽位配置在末端的原则生成的拓扑结构图;

    4、将第一拓扑结构图发送至主机,用以主机根据第一拓扑结构图,对目标交换机下的已连接设备和预留槽位进行枚举以及物理链路分配,生成第二链路集,其中,第二链路集中的链路资源分配方式采用连续分配方式;

    5、接收主机反馈的第二链路集后,建立第一链路集中的链路资源和第二链路集的链路资源的映射关系。

    6、本发明提供的一种链路资源分配方法,具有如下优点:

    7、上述方法中,主机可以根据第一拓扑结构图,对目标交换机下已连接设备进行枚举以及物理链路分配,生成第二链路集。这里的第二链路中的链路资源是采用连续分配的方式为已连接设备进行资源分配后生成的。也即是说,在主机侧对物理链路资源进行分配的时候,始终优先对已连接的设备进行资源分配,而余下资源,将全部留给预留槽位。后续预留槽位可以按需申请预留资源。不存在资源预留过剩的情况。而且,这个过程中,已分配资源都是按需分配,可以克服在预留链路资源过程中因为链路资源预留过剩造成空洞,以及资源碎片化的等问题,同样可以克服预留资源不足造成新的设备不可以使用等问题,这些问题都将不再发生。而且,为了适应链路分配的原始原则,本技术文件中是在虚拟链路中对目标交换机下的已连接设备和预留槽位在cpu管理的链路资源进行枚举以及虚拟链路分配,因为cpu管理的链路资源属于虚拟资源,其中除自身必须的资源外,其他资源都可以作为预留资源,因此可以在虚拟资源中为预留卡槽预留足够多的虚拟资源作为预留资源。以防止新设备插入不可用的情况发生。因为第一链路集才是根据目标交换机下的已连接设备和预留槽位等实际的位置分布和连接关系建立的链路,而第二链路集则是主机根据经过调整后的第一拓扑结构图生成的链路,为了保证主机能够正确读写数据,所以还需要建立第一链路集中的链路资源和第二链路集中链路资源之间的映射关系,以便后续可以根据映射关系完成实际链路资源的转换,并顺利完成数据读写操作。提高系统的可靠性、稳定性、可扩展性和灵活性。

    8、在一种可选的实施方式中,对目标交换机下的已连接设备和预留槽位在cpu管理的链路资源进行枚举以及虚拟链路分配,生成第一链路集,以及生成第一拓扑结构图,包括:

    9、对目标交换机下的已连接设备和预留槽位进行枚举,生成第二拓扑结构图;

    10、根据第二拓扑结构图,在cpu管理的链路资源中为目标交换机下的已连接设备和预留槽位进行虚拟链路分配,生成第一链路集;

    11、并在第一链路集中按照第二拓扑结构图中已连接设备的分布位置和预留槽位的分布位置,以及已连接设备和预留槽位中待连接设备之间的连接关系,为预留槽位中待连接设备预留虚拟链路资源;

    12、其中,虚拟链路资源大于主机在物理空间域中为待连接设备预分配的物理链路资源;

    13、基于预配置的将预留槽位配置在末端的原则对第二拓扑结构图中的已连接设备和预留槽位的分布位置以及连接关系进行重构,生成第一拓扑结构图。

    14、具体的,对目标交换机下的已连接设备和预留槽位进行枚举,生成第二拓扑结构图,可以更好地了解目标交换机中已连接设备和预留槽位之间的位置分布和连接关系。而根据第二拓扑结构图生成第一链路集,可以有效地避免链路资源冲突和干扰,提高链路的可靠性和稳定性。在第一链路集中按照第二拓扑结构图中已连接设备的分布位置、预留槽位的分布位置,以及已连接设备和预留槽位中待连接设备之间的连接关系,为预留槽位中待连接设备预留虚拟链路资源,是为了保证后续待插入设备插入时可以正常使用。而且,因为cpu管理的链路资源属于虚拟资源,其中除自身必须的资源外,其他资源都可以作为预留资源,因此可以在虚拟资源中为预留卡槽预留足够多的虚拟资源作为预留资源。所以,虚拟链路资源大于主机在物理空间域中为待连接设备预分配的物理链路资源;而最后,基于预配置的将预留槽位配置在末端的原则对第二拓扑结构图中的已连接设备和预留槽位的分布位置以及连接关系进行重构,生成第一拓扑结构图,则是为了方便主机可以根据连续分配方式对第二链路集中的链路资源进行分配,防止存在资源空洞、碎片化,以及预留资源不足等情况发生。上述方式,可以提高系统的可靠性、稳定性、可扩展性和灵活性。

    15、在一种可选的实施方式中,对目标交换机下的已连接设备和预留槽位进行枚举,生成第二拓扑结构图,具体包括:

    16、采用深度优先的方式进行枚举,获取目标交换机下的已连接设备的位置分布和预留槽位的位置分布,以及各已连接设备和各预留槽位之间的连接关系;

    17、基于目标交换机下的已连接设备的位置分布和预留槽位的位置分布,以及各已连接设备和各预留槽位之间的连接关系,生成第二拓扑结构。

    18、具体的,采用深度优先的方式进行枚举可以更全面地遍历链路空间,确保获取到所有已连接设备和预留槽位的信息。避免遗漏某些设备或连接关系,提高了枚举的准确性和完整性。通过枚举获取已连接设备和预留槽位的具体位置分布,以及确定各已连接设备和各预留槽位之间的连接关系。最终基于获取到的设备位置分布和连接关系,生成第二拓扑结构。可以更加清楚的、可视化的了解目标交换机下已连接设备和预留槽位等的分布。为后续操作例如资源预留、链路配置提供有力支持,方便后续提高资源利用效率,提升整个系统的性能和可靠性。

    19、在一种可选的实施方式中,方法还包括:

    20、当检测到预留槽位中插入新的设备时,提取新的设备在第二拓扑结构图中的实际位置,以及获取新的设备待获取的物理链路资源;

    21、根据新的设备在第二拓扑结构图中的实际位置,确定新的设备在第一拓扑结构图中的虚拟位置;

    22、根据虚拟位置和新的设备待获取的物理链路资源,向主机发送资源分配请求,用以主机从预留的物理链路资源中为新的设备分配物理链路资源。

    23、具体的,当检测到新设备插入时,根据第二拓扑结构图,及时识别新设备的实际位置,并确定新设备需求的物理链路资源。同时,因为第一拓扑结构图是第二拓扑结构图经过调整后生成的拓扑结构图,因此,可以根据新设备的实际位置,从第二拓扑结构图中匹配新的设备在第二拓扑结构图中的虚拟位置。然后,根据虚拟位置和资源需求,向主机发送资源分配请求,以获取物理链路资源。该方式可以更加高效地利用有限的物理链路资源。目标交换机是直接从预留资源中合理的按需分配新设备所需的链路资源,不存在资源浪费的情况,也不存在资源分配不足的情况。根据不同设备的需求和拓扑结构进行灵活的资源分配,以此适应不同类型和数量的设备插入,提高了系统的适应性和灵活性。在一种可选的实施方式中,当第一链路集中的链路资源包括cpu管理的链路资源中的虚拟地址空间时,第二链路集中的链路资源包括主机分配的物理地址空间;

    24、和/或,当第一链路集中的链路资源包括cpu管理的链路资源中的虚拟通信总线时,第二链路集中的链路资源包括主机分配的实际通信总线。

    25、在一种可选的实施方式中,虚拟地址空间为cpu管理的64位地址区间;物理地址空间为pcie地址区间。

    26、在一种可选的实施方式中,方法还包括:

    27、当接收到主机发送的传输层报文时,从传输层报文中解析接收传输层报文的目标设备;

    28、根据目标设备,匹配与目标设备对应的目标端口;

    29、基于目标端口,从第一链路集中匹配与目标端口对应的虚拟链路资源;

    30、根据第一链路集中的链路资源和第二链路集的链路资源之间的映射关系,查询第二链路集中与虚拟链路资源对应的物理链路资源;

    31、将传输层报文通过物理链路资源发送至目标端口,用以传输至目标设备。

    32、具体的,该方法步骤属于前述方法的应用过程。当接收到主机发送的传输层(transaction layer packet,简称tlp)报文时,可以从tlp报文中解析接收该报文的目标设备。然后,基于目标设备匹配与目标设备对应的目标端口。并基于目标端口,从第一链路集中匹配与目标端口对应的虚拟链路资源。并根据第一链路集中虚拟链路资源和第二链路集中的物理链路资源之间的映射关系匹配到实际的物理链路资源,也即是实现链路资源的转换,最终通过实际的物理链路资源将报文传输至目标设备。利用第一链路集中的虚拟链路资源和第二链路集中的物理链路资源的映射关系,能够实现更有效的链路资源利用。目标交换机可以根据实际需求和资源情况,合理分配物理链路资源,确保资源的充分利用和最佳性能。而且,由于虚拟链路资源和物理链路资源之间的映射关系可以动态调整,目标交换机具有更高的灵活性。新的设备加入或设备配置变更时,可以灵活地重新映射链路资源,适应系统的变化。通过基于链路资源的映射关系进行报文传输,可以确保报文在可靠的物理链路资源上传输,提高了系统的可靠性和稳定性。而且,该方法可以支持不断扩展和增加新的设备和链路资源。通过建立合适的映射关系和分配机制,系统能够轻松应对不断增长的需求,具有良好的可扩展性。

    33、第二方面,本发明提供了一种链路资源分配装置,该装置包括:

    34、处理模块,用于对目标交换机下的已连接设备和预留槽位在cpu管理的链路资源进行枚举以及虚拟链路分配,生成第一链路集,以及生成第一拓扑结构图,第一拓扑结构图为根据预配置的将预留槽位配置在末端的原则生成的拓扑结构图;

    35、发送模块,用于将第一拓扑结构图发送至主机,用以主机根据第一拓扑结构图,对目标交换机下的已连接设备和预留槽位进行枚举以及物理链路分配,生成第二链路集,其中,第二链路集中的链路资源分配方式采用连续分配方式;

    36、映射关系建立模块,用于接收主机反馈的第二链路集后,建立第一链路集中的链路资源和第二链路集的链路资源的映射关系。

    37、本发明提供的一种链路资源分配装置,具有如下优点:

    38、主机可以根据第一拓扑结构图,对目标交换机下已连接设备进行枚举以及物理链路分配,生成第二链路集。这里的第二链路中的链路资源是采用连续分配的方式为已连接设备进行资源分配后生成的。也即是说,在主机侧对物理链路资源进行分配的时候,始终优先对已连接的设备进行资源分配,而余下资源,将全部留给预留槽位。后续预留槽位可以按需申请预留资源。不存在资源预留过剩的情况。而且,这个过程中,已分配资源都是按需分配,可以克服在预留链路资源过程中因为链路资源预留过剩造成空洞,以及资源碎片化的等问题,同样可以克服预留资源不足造成新的设备不可以使用等问题,这些问题都将不再发生。而且,为了适应链路分配的原始原则,本技术文件中是在虚拟链路中对目标交换机下的已连接设备和预留槽位在cpu管理的链路资源进行枚举以及虚拟链路分配,因为cpu管理的链路资源属于虚拟资源,其中除自身必须的资源外,其他资源都可以作为预留资源,因此可以在虚拟资源中为预留卡槽预留足够多的虚拟资源作为预留资源。以防止新设备插入不可用的情况发生。因为第一链路集才是根据目标交换机下的已连接设备和预留槽位等实际的位置分布和连接关系建立的链路,而第二链路集则是主机根据经过调整后的第一拓扑结构图生成的链路,为了保证主机能够正确读写数据,所以还需要建立第一链路集中的链路资源和第二链路集中链路资源之间的映射关系,以便后续可以根据映射关系完成实际链路资源的转换,并顺利完成数据读写操作。提高系统的可靠性、稳定性、可扩展性和灵活性。

    39、第三方面,本发明提供了一种目标交换机,包括:存储器和处理器,存储器和处理器之间互相通信连接,存储器中存储有计算机指令,处理器通过执行计算机指令,从而执行上述第一方面或其对应的任一实施方式的链路资源分配方法。

    40、第四方面,本发明提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机指令,计算机指令用于使计算机执行上述第一方面或其对应的任一实施方式的链路资源分配方法。

    41、第五方面,本发明提供了一种计算机程序产品,包括计算机指令,计算机指令用于使计算机执行上述第一方面或其对应的任一实施方式的链路资源分配方法。


    技术特征:

    1.一种链路资源分配方法,其特征在于,所述方法包括:

    2.根据权利要求1所述的方法,其特征在于,所述对目标交换机下的已连接设备和预留槽位在cpu管理的链路资源进行枚举以及虚拟链路分配,生成第一链路集,以及生成第一拓扑结构图,包括:

    3.根据权利要求2所述的方法,其特征在于,所述对所述目标交换机下的所述已连接设备和所述预留槽位进行枚举,生成第二拓扑结构图,具体包括:

    4.根据权利要求2或3所述的方法,其特征在于,所述方法还包括:

    5.根据权利要求2所述的方法,其特征在于,当所述第一链路集中的链路资源包括所述cpu管理的链路资源中的虚拟地址空间时,所述第二链路集中的链路资源包括所述主机分配的物理地址空间;

    6.根据权利要求5所述的方法,其特征在于,所述虚拟地址空间为所述cpu管理的64位地址区间;所述物理地址空间为pcie地址区间。

    7.根据权利要求1-3或5-6任一项所述的方法,其特征在于,所述方法还包括:

    8.一种链路资源分配装置,其特征在于,所述装置包括:

    9.一种目标交换机,其特征在于,包括:

    10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机指令,所述计算机指令用于使计算机执行权利要求1-7中任一项所述的链路资源分配方法。


    技术总结
    本发明涉及计算机技术领域,公开了链路资源分配方法、装置、目标交换机及介质,该方法包括:对目标交换机下的已连接设备和预留槽位在CPU管理的链路资源进行枚举以及虚拟链路分配,生成第一链路集,以及生成第一拓扑结构图;将第一拓扑结构图发送至主机,用以主机根据第一拓扑结构图,对目标交换机下的已连接设备和预留槽位进行枚举以及物理链路分配,生成第二链路集;接收主机反馈的第二链路集后,建立第一链路集中的链路资源和第二链路集的链路资源的映射关系。已分配资源按需分配,可以克服在预留链路资源过程中因为链路资源预留过剩造成空洞,以及资源碎片化,同样可以克服预留资源不足造成新的设备不可以使用等问题。

    技术研发人员:杨作林,张磊,李树青,袁涛
    受保护的技术使用者:山东云海国创云计算装备产业创新中心有限公司
    技术研发日:
    技术公布日:2024/11/26
    转载请注明原文地址:https://tc.8miu.com/read-27872.html

    最新回复(0)