CN1744546A - 高级切换对等协议 - Google Patents

高级切换对等协议 Download PDF

Info

Publication number
CN1744546A
CN1744546A CNA2005100913218A CN200510091321A CN1744546A CN 1744546 A CN1744546 A CN 1744546A CN A2005100913218 A CNA2005100913218 A CN A2005100913218A CN 200510091321 A CN200510091321 A CN 200510091321A CN 1744546 A CN1744546 A CN 1744546A
Authority
CN
China
Prior art keywords
end points
target endpoint
equity
attribute
connection
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.)
Granted
Application number
CNA2005100913218A
Other languages
English (en)
Other versions
CN100413274C (zh
Inventor
V·V·格诺夫克
W·麦奎恩
M·鲁霍拉米尼
B·Z·李
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.)
Intel Corp
Original Assignee
Intel Corp
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 Intel Corp filed Critical Intel Corp
Publication of CN1744546A publication Critical patent/CN1744546A/zh
Application granted granted Critical
Publication of CN100413274C publication Critical patent/CN100413274C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/28Routing or path finding of packets in data switching networks using route fault recovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0805Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
    • H04L43/0811Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking connectivity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/34Source routing
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/55Prevention, detection or correction of errors
    • H04L49/552Prevention, detection or correction of errors by ensuring the integrity of packets received through redundant connections
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/60Software-defined switches
    • H04L49/602Multilayer or multiprotocol switching, e.g. IP switching

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Environmental & Geological Engineering (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer And Data Communications (AREA)
  • Multi Processors (AREA)

Abstract

一种用于建立并管理在经由基于串行的互连结构耦合的端点之间的对等连接的对等连接协议。请求端点向结构管理器产生并发送一查询,请求其属性与所述查询中指定的属性相匹配的至少一个目标端点的连接信息。所述结构管理器返回包含连接信息的查询应答,以便把所述请求端点连接到一个或者多个属性匹配的目标端点。在多个目标端点的情况下,选择一个目标端点进行连接。然后所述请求和目标端点通过在它们本身之间直接传递连接信息和参数来协商并建立连接。当建立所述连接时,所述结构管理器获知新的连接并且更新它的连接列表。由在与基于串行的互连结构耦合的各个装置上运行的软件组件使该方法变得易于进行。

Description

高级切换对等协议
技术领域
本发明的领域总体上涉及基于计算机和处理器的系统,并且更具体但不排他地涉及用于由基于串行的互连结构来使管理对等(peer-to-peer)通信链路便于进行的技术。
背景技术
通信工业面临两种明显趋势:计算技术的较大集中和改变值链,所述改变值链刺激模块化平台的开发和应用以便部署-复杂、收敛的解决办法。除此趋势之外的是实现了互连级的硅工业不再按照计算机和通信划分,就像历史上曾有的那样。此外,硅工业的当前情况更接近于像组件制造商的主体,所述组件制造商注意平衡总体的工业投资以便降低成本并且顺应市场趋势。组合起来,这些影响了在下一代通信系统内互连技术的选择。
纵观历史,计算围绕单板级互连发展(例如,当前实际上的互连是外围组件互连(peripheral component interconnect PCI)),而通信设备原先包括许多板级和系统级互连,一些是专有的,而其它的是基于诸如PCI之类的标准的。由于这两个要求集于一点,所以许多互连技术在互用性、编码和物理设计上更为复杂,所有这些都提高了成本。使用较少的共用的互连将简化集中过程并且有益于基础结构设备的开发者。
另外,如今增长的网络通信量、固定的收入和减少的资金,以及操作消耗的无线电通信工业困境导致开发用于构建通信解决方案的模块化方法。模块化允许根据通过共用的互连来连接的系统级和板级构建块,来集成复杂的系统。由于用于构建复杂系统的成本和投入市场的时间,所以模块化模型对许多供应商来说都是吸引入的。例如,高级电信计算机体系结构(AdvancedTCA或ATCA)(PICMG 3x)规定了计算和通信元件的模块化平台以放置在单个机箱中。
在多个平台当中可以重新使用的工业标准互连是集中和模块化系统设计方法的关键。共用的芯片到芯片的互连能够使更大的设计跨越板来重新使用,并且改进计算和通信功能之间的互用性。共用的系统结构通过使模块化系统中的各个线路卡之间的切换接口标准化来实现板级模块化。更少的、共用的互连还降低了软件和硬件的复杂性,并且简化了系统设计。另外,简化以及重新使用降低了模数化组件中的成本和开发时间。
作为最初规定,PCI标准(例如,PCI 1.0)定义了同时解决扩展、标准化和管理问题的互连结构。原始方案使用总线层次,“桥”用于执行总线层次之间的接口操作。按照PCI-X标准来扩充原始的PCI标准,所述PCI-X标准目的在于使用更高的总线速度来实施PCI。
计算和通信工业的集中趋势连同重构基于总线的互连结构的固有限制一起导致最近浮现串行互连技术。串行互连降低了引脚数目,简化了板布局并且提供了速度、可扩展性、可靠性和灵活性,这些都是不能由并行总线实现的,诸如PCI和PCI-X所使用的总线。这些互连技术的当前版本依赖于高速串行(high-speed serial HSS)技术,所述技术随着硅速度的增加而推进。这些新的技术从用于核心网络路由器和交换机的专有互连到标准化的串行技术,都适用于计算、嵌入式应用和通信。
一种这样的标准化串行技术是PCI快速(Express)体系结构。把PCI快速体系结构作为用于计算的下一代芯片到芯片互连的目标。所述PCI快速体系结构是由公司联盟来开发的,并且由PCI SIG(special interest group特殊兴趣组)来管理。除提供基于串行的互连之外,PCI快速体系结构支持早期基于PCI和PCI-X总线的体系结构中定义的功能。结果,PCI和PCI-X兼容的驱动器和软件同样与PCI快速装置兼容。从而,当过渡到新的PCI快速体系结构时,过去几十年对于PCI软件的巨大投资不会损失。
虽然PCI快速的“PCI继承”方面有显著的益处,但是它还产生某些局限性,这是由于继续支持“传统(legacy)”装置的原因,所述“传统”装置使用在20世纪80年代早期开发的个人计算机(PC)体系结构概念。为了克服这些以及其它局限性,最近引入了称作高级切换(advanced switching AS)的新技术。AS通过定义可兼容扩展提高了PCI快速的能力,所述可兼容扩展包括解决传统单片处理体系结构中缺陷的扩展。AS还包括进军通信市场的固有特征,包括数据平面功能、灵活协议封装等。
发明内容
在本发明的一个方面,提供了一种用于在耦合到基于串行的互连结构的端点之间建立对等连接的方法,包括:把一查询从一请求端点发送到一结构管理器,请求其属性与所述查询中指定的属性相匹配的至少一个目标端点的连接信息;把包含连接信息的查询应答从所述结构管理器返回到所述请求端点,以便把所述请求端点连接到一属性与所述查询中指定的属性相匹配的目标端点;并且协商所述请求端点和所述目标端点之间的对等连接以便建立所述对等连接。
在本发明的另一个方面,提供了一种制造物品,包括:用于提供指令的计算机可读介质,如果执行所述指令那么执行的操作包括,产生目标匹配查询,用于定义由目标端点提供的一组属性,请求端点希望经由基于串行的互连结构连接到所述目标端点,其中所述请求和目标端点与所述基于串行的互连结构耦合;把目标匹配查询从请求端点发送到结构管理器,请求属性与所述查询中指定的属性相匹配的至少一个目标端点的连接信息;把包含连接信息的查询应答从结构管理器返回到请求端点,以便把所述请求端点连接到一属性与所述查询中指定的属性相匹配的目标端点;并且协商所述请求端点和目标端点之间的对等连接以便建立所述对等连接。
在本发明的再一个方面,提供了一种线路卡设备,包括:网络处理器(NPU);存储器,与所述NPU耦合;高级切换(AS)开关元件,与所述NPU通信中加以链接,该AS开关元件耦合到一连接器,该连接器被配置程成经由AS链路把所述设备连接到AS结构;中央处理单元(CPU);存储器,与所述CPU耦合;和存储装置,其中存储有指令,如果由CPU执行所述指令那么所执行的操作包括,经由AS链路把一查询发送到结构管理器,请求属性与所述查询中指定的属性相匹配的至少一个目标端点的连接信息;从结构管理器接收包含连接信息的查询应答,以便把请求端点连接到一属性与所述查询中指定的属性相匹配的目标端点;并且与所述目标端点协商对等连接以便建立与所述目标端点之间的对等连接。
在本发明的又一个方面,提供了一种系统,包括:机箱,包括底板;第一端点装置,与所述底板耦合;第二端点装置,与所述底板耦合;至少一个切换装置,与所述底板耦合,所述至少一个切换装置包括基于串行的互连结构;和结构管理装置,可操作来耦合以便控制所述基于串行的互连结构的切换操作;其中第一和第二端点装置中的每一个和结构管理主机装置在其上存储有端点软件组件,并且所述结构管理装置还存储结构管理软件组件,并且由第一和第二端点装置和所述结构管理装置对所述端点软件组件的执行以及由所述结构管理装置对所述结构管理器软件组件的执行使得所述第一和第二端点装置之间的对等连接能够通过执行以下操作来建立,所述操作包括,把一查询从第一端点装置发送到所述结构管理装置,请求其属性与所述查询中指定的属性相匹配的至少一个目标端点装置的连接信息;把包含连接信息的查询应答从结构管理装置返回到第一端点装置,以便把所述第一端点装置连接到一属性与所述查询中指定的属性相匹配的目标端点装置,所述目标端点装置包括第二端点装置;并且协商第一端点装置和第二端点装置之间的对等连接以便建立所述对等连接。
附图说明
结合附图参考下列详细说明来阅读,本发明的上述方面和许多伴随优点将变得更容易理解,其中除非另作说明,否则遍及各个附图相同的附图标记指的是相同的部分:
图1是PCI快速和高级切换(AS)标准中的主要层所举例说明的分层结构的框图;
图2是示出对应于通信实施方式的示例性AS使用模型的示意性框图;
图3是依照本发明一个实施例举例说明分布式软件体系结构中软件组件的框图;
图4是详细举例说明对应于图3的主要结构管理(primary fabric managementPFM)组件的软件子组件和接口的框图;
图5是详细举例说明对应于图3的端点(endpoint EP)组件的软件子组件和接口的框图;
图6是详细举例说明对应于图3的次要结构管理(secondary fabricmanagement SPM)组件的软件子组件和接口的框图;
图7是详细举例说明对应于图3的AS驱动器组件的软件子组件和接口的框图;
图8是举例说明示例性的实施体系结构的示意图,所述体系结构包括PFM系统、SFM系统和两个EP系统,它们都在包括与AS结构耦合的AS装置的各自平台上运行;
图9是依照本发明的一个实施例举例说明被执行来用于在请求端点和目标端点之间建立对等连接的操作的流程图;
图10是依照图9的对等连接建立过程而详细举例说明在请求端点、结构管理器和目标端点之间传送的消息的消息流程图;
图11是举例说明用于存储属性信息的模式的示意图,根据所述属性信息可以指定PCI快速装置的特性和能力;
图12是举例说明依照本发明一个实施例被执行来用于关闭对等连接的操作的流程图;
图13a是示例性的板片式服务器机箱的前等距视图,在所述机箱中安装了多个服务器板片;
图13b是图13a的板片式服务器机箱的后等距视图;
图14a是示例性的ATCA机箱的前等距视图;
图14b是示例性的ATCA板的等距视图;和
图15是示例性的AS通信群体(ecosystem)的示意图。
具体实施方式
这里描述了用于在基于串行的互连结构环境(诸如高级切换(AdvancedSwitching AS)环境)中管理对等通信的方法和设备的实施例。在下面的描述中,阐明了许多具体细节以便对本发明提供更彻底的了解。然而,相关领域的技术人员将认识到:可以在没有一个或多个具体细节的情况下,或者采用其它方法、组件材料等来实施本发明。在其它例子中,没有示出或详细描述众所周知的结构、材料或操作以免模糊本发明。
参考整个说明书,“一个实施例”或“一实施例”指的是包含在本发明至少一个实施例中的关于所述实施例所描述的特定特点、结构或特征。因此,遍及此说明书,在不同位置出现的短语“在一个实施例中”或“在实施例中”未必都指的是相同的实施例。此外,可以在一个或多个实施例中以任何适当的方式来组合特定的特征、结构或特性。
如图1所示,PCI快速和AS都是多层协议。每个技术由物理层100、数据链路层102和事务层组成,其中物理和数据链路层共用该事务层。事务层包括PCI快速事务层104和AS事务层106。
PCI快速的基本目标是提供容易的迁移策略,用于从传统的PCI技术扩展到新的基于串行的链路技术。PCI快速通过完全与现有的PCI硬件和软件体系结构兼容来实现此目的。由此,PCI快速也继承了基于全局存储器地址和树状拓扑体系结构的局限性。这限制了在各种拓扑中的多个主机之间的对等通信中、有效利用PCI快速的能力,所述拓扑诸如星形、双星形和网格。典型情况下,这些拓扑用于板片(blade)服务器、群集、存储阵列以及电信路由器和交换机。
PCI快速体系结构是基于单主机处理器或根复合体(root complex)的,所述根复合体控制整个系统的全局存储器地址空间。当上电和列举过程时,根复合体通过遍历分级树拓扑来询问整个系统,并且定位在系统中连接的所有端点装置。在全局存储器中为每个端点装置分配空间以便使主机处理器与所述端点装置通信。
为了便于改进的对等通信进行,PCI快速把PCI固有的透明桥概念扩展为不透明桥。典型情况下,此技术用于其中存在一个或多个子处理系统或智能端点的应用,所述端点要求属于自己的隔离的存储空间。在不透明桥中,在每个本地处理器看来,逻辑上把桥的两端视为端点。在每个处理器列举过程期间,独立地把同样大小的镜像存储空间分配在桥的每一端上。不透明桥被编程以便沿两个处理器的存储器映像之间的每个方向提供地址转换功能。
PCI快速和不透明桥的使用都没有提供高度利用对等通信所要求的足够的拥塞管理。在其中许多高度利用的主机处理器独立并同时地压入和弹出数据的对等环境中,需要更高级别的拥塞管理以便控制互连处理器之间的行为和通信。不透明桥还要求大量的软件供应以及重新配置,以便在高可用性的系统中实现故障转移机制。这导致了额外的设计复杂性、资源利用和响应时间,而这些对某些应用来说可能是无法容忍的。
鉴于上述缺陷,高级切换体系结构被设计成用于在没有附加桥或介质访问控制的情况下,为多主机对等通信提供本地互连解决方案。AS使用基于分组的事务层协议,所述事务层协议在PCI快速物理和数据链路层(例如,图1中的物理层100和数据链路层102)上操作。高级切换提供了增强的特征,诸如高级分组路由选择、拥塞管理、多点传送通信支持以及结构冗余和故障转移机制,以便支持高性能、高度利用并且高可用性的系统环境。
在图2中示出了示例性的高级切换使用模型。此特定使用模型目的在于远程通信应用;然而,AS可以适用于许多类型的通信和计算机环境。所述使用模型包括介质访问元件200和202,这些元件均与AS结构元件204和206交叉连接。每个AS结构元件204和206又与CPU(中央处理单元)子系统208和210以及网络处理器单元(network processor unit NPU)212和214交叉连接。
如上所述,AS是介质和切换结构相互不可知的,这意味着不管基础介质和切换结构的实施方式如何,所述AS协议功能都是相同的。此外,AS可以经由协议封装来支持基础通信协议。例如,AS包括内部协议接口,可以使用所述内部协议接口来为各种协议提供隧道,诸如以太网、纤维信道和无限带(Infiniband)。
为了充分地利用AS的特征,要求软件配置并管理由AS组件构成的结构。依照本发明的一个实施例,这里公开了经由分布式组件集来实现的AS软件体系结构。每个组件专用于执行任务或相关任务集。此模块方案允许只在要求确定的功能时,软件组件才被调用。
如图3所示,在一个实施例中,所述体系结构包括四个主要组件。这包括主要结构管理器(Primary Fabric Manager,PFM)组件300、端点(EP)组件302、次要结构管理器(Secondary Fabric Manager,PFM)组件304和AS驱动器组件306。
根据特定的物理基础结构,将要在各个系统装置上执行上述组件的各个成员。在图3中示出的示例性配置包括三种类型的这种装置:PFM装置308、SFM装置310和EP装置312。如下所进一步详述的那样,在某些配置下,单个装置可以充当PFM或SFM装置和EP装置这二者。
在图4中示出了依照一个实施例在PFM组件300之间的子组件和接口的细节。子组件包括结构发现/配置子组件400、单点传送子组件402、多点传送子组件404、高可用性(high availability HA)子组件406、事件管理子组件408、第三方销售商(third-party vendor TPV)安全接口410、本地资源管理子组件412、硬件(hardware HW)接口414、大容量存储设备接口416和用户接口418。
所述结构发现/配置子组件400负责当现有的PFM失败时、由初始PFM或新的PFM所进行的对结构的发现和配置。另外,当装置是从系统热添加/拔除的,此子组件执行所述结构的重新发现,并且如果需要的话,配置该新的装置。
单点传送子组件402实现由软件设计定义的单点传送协议。它负责与管理所述结构中的EP之间的点对点(point-to-point PtP)通信相关的任务。
多点传送子组件404实现由软件设计定义的多点传送协议。它负责与管理所述结构中的EP之间的多点传送通信相关的任务。
高可用性子组件406实现由软件设计定义的HA协议。它负责建立在所述结构中的次要结构管理器,并且使结构数据和与装置/链路故障和/或热插/拔的装置相关的任务同步。
事件管理子组件408管理从所述结构接收的事件。总体上,所述事件可以是指示性的或者它们可以表明错误状态。
TPV安全接口410通过AS驱动器组件306在第三方销售商软件之间提供了接口。此接口提供对在所述结构中的销售商具体装置及其专有寄存器的访问。然而,为了提供安全性并且为了只允许授权软件访问装置,AS驱动器组件中的TPV子组件对接到PFM中的TPV接口并且对接到TPV软件,以便在这二者之间来路由分组。PFM只许可有效请求来访问所述结构。
本地资源管理子组件412提供了到存在于PFM主机装置上的本地资源(诸如存储器)的接口。
HW接口414提供了到AS驱动器组件306的接口。经由此接口向所述结构发送分组或从所述结构接收分组。
大容量存储设备接口416子组件提供了与可以存在于所述装置的大容量存储装置(诸如磁盘驱动器)的接口。
用户接口418子组件提供了用户接口以便显示结构相关信息,诸如结构拓扑和当前PtP连接。另外,可以经由此接口启动所述结构中EP之间的连接。
EP组件302由EP装置执行的任务组成。图5示出了组成EP组件的子组件和所述子组件之间接口的一个实施例。所述子组件包括单点传送子组件500、多点传送子组件502、简单加载/存储(simple load/store SLS)子组件504、本地资源管理子组件506、硬件接口子组件508和大容量存储器接口子组件510。
单点传送子组件500实现由软件设计定义的单点传送协议。它负责涉及建立并管理所述结构中的在此装置及其它EP之间的点对点(PtP)通信的任务。这是PFM单点传送子组件402的EP匹配组件。
多点传送子组件502实现由软件设计定义的多点传送协议。它负责涉及建立并管理所述结构中的多点传送子组件的主机装置及其它EP之间的多点传送通信的任务。这是PFM多点传送子组件404的EP匹配组件。
所述简单的加载/存储(SLS)子组件504负责管理在所述结构中的主机装置及其它EP之间的所有SLS连接。它创建了SLS连接并且指示AS驱动器中的SLS副本(counterpart)来配置并存储SLS应用的连接。
本地资源管理子组件506提供了到存在于作为EP组件302主机的装置上的本地资源(诸如存储器)的接口。
HW接口508提供了到AS驱动器组件306的实例的接口。正是经由此接口来向所述结构发送分组或从所述结构接收分组。
大容量存储器接口510子组件提供了到存在于作为EP组件主机的装置的大容量存储装置(诸如硬盘驱动器)的接口。
SFM组件304由次要结构管理器所执行的任务组成。图6示出了组成SFM组件的子组件和所述子组件之间的接口。这些包括高可用性(HA)子组件600、硬件接口602和大容量存储器接口604。
高可用性子组件600实现由软件设计定义的HA协议。它负责在所述结构中建立与PFM的连接,使结构数据与其同步并且监视所述PFM。另外,如果它确定失败的话,那么它还负责故障转移到PFM组件。这是PFM的HA子组件300的匹配组件。
HW接口602提供了到AS驱动器组件306的实例的接口。正是经由此接口来向所述结构发送分组或从所述结构接收分组。
大容量存储器接口604子组件提供了到存在于作为EP组件主机的装置上的大容量存储器(诸如硬盘)的接口。
AS驱动器组件306由用于初始化硬件以便向所述结构发送分组或从所述结构接收分组的任务组成,并且所述AS驱动器组件306提供到其它组件的接口。图7示出了组成此组件的子组件和在这些子组件之间的接口。
所述子组件包括硬件接口寄存器700、AS硬件驱动器702和SLS子组件704。硬件接口寄存器包括PFM组件接口706和EP组件接口708、SFM组件接口710、TPV接口712和SLS应用接口714。AS硬件驱动器702包括配置子组件716和中断服务例程718。
硬件接口寄存器700提供了到用户级应用程序的接口。经由这些接口,就使得上述应用能够向所述结构发送分组或从所述结构接收分组。每个应用向此子组件登记所发送/接收的分组类型。
TPV接口712子组件提供了到第三方销售商软件的接口以及到PFM组件300中的TPV副本的接口。将要用PFM来验证从第三方软件到达驱动器以访问所述结构中某些的装置的请求,以便确定是否许可所述请求。此子组件提供了接口以便在TPV软件和PFM之间来路由分组。然后PFM针对TPV软件是否允许分组到所述结构以及如果存在TPV软件的话、哪个TPV软件是来自所述结构的分组的接收方提供安全性。
AS硬件驱动器702子组件负责硬件装置的初始配置。另外,它向所述装置提供了中断服务例程718。
SLS子组件704是EP组件302中的SLS子组件504的副本。当EP中的SLS子组件504创建连接时,从EP组件命令所述SLS子组件704去配置SLS连接。另外,它维护连接信息以便请求SLS连接的应用可以直接与它对接以便发送/接收SLS分组。
总体上,可以使用一个或多个常规的体系结构来实现这里所论述的各个软件组件。例如,组件或子组件可以包括在操作系统(OS)上运行的应用、在有或没有操作系统的情况下运行的嵌入式应用、操作系统内核中的组件、操作系统驱动器、基于固件的组件等。
图8示出了示例性的软件体系结构,其中把一些软件组件具体化为在操作系统的用户空间中运行的应用,而把其它组件具体化为OS内核空间的组件。使用软件组件来作为PFM系统800、SFM系统802和EP系统804A和804B的主机。在所举例说明的实施例中,由各自平台806A、806B、806C和806D所提供的一个或多个处理器运行每个软件系统。这里使用的术语“平台”是指适于运行PFM、SFM或EP系统的任何类型的计算装置。从而,平台包括但不局限于:服务器板片、电信线路卡和ATCA板。
虽然示出了在各自平台上运行的各个软件系统,然而应当理解这仅仅是示例性的。在其它配置中,可以由相同的平台来作为多个软件系统的主机。例如,单个平台既可以作为PFM系统也可以作为EP系统来运行。类似地,单个平台既可以作为SFM系统也可以作为EP系统来运行。为了可靠性的原因,典型情况下,将由独立的平台作为PFM系统和SPM系统的主机。
在与其它平台通信的过程中,经由AS结构808来链接每个平台806A-D。AS结构使在与物理AS结构组件耦合的装置之间的串行互连便于进行。总体上,AS结构组件可以包括专用AS切换装置、具有内置AS切换功能的有源底板,或这两者的组合。
PPM系统800包括用于使主要结构管理操作便于进行的一组软件组件。这些组件包括一个或多个SLS应用810、EP组件302、PFM组件300和AS驱动器组件306。SLS应用、EP组件和PFM组件包括在操作系统的用户空间中运行的应用,所述操作系统由平台806A作其主机。同时,AS驱动器组件包括位于OS内核空间的OS驱动器。
采用与PFM系统800中的那些软件组件类似的方式来配置SFM系统802的软件组件。所述用户空间组件包括一个或多个SLS应用810、EP组件302和SFM组件304。AS驱动器组件位于操作系统的内核空间,所述操作系统由平台806B作其主机。
利用类似的配置来描述每个EP系统804A和804B。在每个EP系统中,用户空间组件包括一个或多个SLS应用810和EP组件302。就像使用PFM和SFM系统一样,AS驱动器组件306位于在一平台上运行的操作系统的内核空间,所述平台作为EP系统的主机(例如,平台806C和806D)。
总体上,可以使用三个模型之一来执行AS结构管理,它们中的每个都有自己的优点和缺点。在集中式结构管理模型下,在所述结构中存在运行AS结构的中央FM权限。FM具有所述结构的全视图,知道所述结构中的所有动作,并且负责结构相关的所有任务。在分散式结构管理模型下,没有中央FM权限,并且不把结构相关信息保持在中央位置中。EP在不受FM干预的情况下执行它们自己的发现,建立它们自己的连接以及执行其它任务。此模型支持多个FM。在混合结构管理模型下,存在某些以集中方式完成的结构相关任务,而其它任务以分散方式完成。例如,FM执行诸如装置发现之类的任务,而EP独自完成诸如建立它们自己的连接之类的其它任务。
在一个实施例中,使用混合结构管理模型来管理单点传送对等连接。在此方法下,由FM收集并保持结构拓扑以及关于装置的信息。装置查询FM以获知匹配(集中式的),但是它们使用由FM提供的数据在没有涉及到FM的情况下协商并建立它们自己的PtP连接(分散式的)。此设计在例如像对路径故障转移之类的HA特征的支持方面考虑了有力的宽的结构控制,同时把创建连接的任务留给对等体(peer),由此就使得工作呈分布式。
由FM执行的主要功能是结构发现(fabric discovery FD)。FD是结构管理套件的关键软件组件之一。在FD期间,FM记录连接哪些装置,收集关于结构中每个装置的信息,构造所述结构的映像,并且在所述装置的配置空间中配置适当的能力和/或表。对于FM可以怎样收集关于所有装置的信息还有几种方法。在一个实施例中,使用了完全分布式机制,其中FM可以同时收集来自一个以上装置的信息。
在一种实施方式中,发现以三个阶段来发生——列举、读取装置的配置空间(能力和表)以及配置装置(写入能力和表)。在列举阶段期间,PM执行三个任务,所述任务包括经由通向该装置的所有路径访问每个装置,收集所发现的每个装置的确定的能力偏移,并且如果(制造商、固件等)还没有初始化序列号,那么就初始化每个装置的序列号。
在接通电源之后,由主要结构管理器来运行完全发现和配置算法。另外,主要和次要结构管理器可以在结构运行期间执行发现和配置操作,诸如响应于检测到热安装/拔除事件时而进行上述操作。在故障事件中,由SFM执行先前由PFM执行的FM操作,所述SFM把自身重新配置为系统的新的PPM。
由AS易化的最有价值的功能之一是对等通信,也称为单点传送通信或单点传送链路。在一个实施例中,使用由PM组件和EP组件易化的单点传送协议来管理单点传送操作。FM组件(例如,PFM单点传送子组件402)在PFM装置上运行,而EP组件(例如,EP单点传送子组件500)在每个EP装置上运行。
为了在EP装置之间执行对等通信,必须首先建立单点传送链路。在图9中示出了用于依照一个实施例建立单点传送链路的操作,而图10举例说明了对应于图9的流程图的一组消息,所述消息在请求者EP 100、结构管理器1002和目标EP 1004之间传送以便执行单点传送链路建立任务。
所述建立过程开始于块900,其中请求端点向结构管理器发送查询,用于请求关于匹配于所述请求中标识的特定属性的目标端点的连接信息。在图10中把此消息描述为查询请求1006,把所述查询请求1006从请求EP 1000发送到结构管理器1002。在图8的实施配置环境中,此消息可以来源于平台806C和806D之一,并且可以被从始发端点主机平台传送到作为结构管理器的主机的平台(例如,平台806A)。在一个实施例中,查询请求1006包括NumDevs参数、属性参数集和请求标识符(ReqID)。
在上述发现和配置操作期间,结构管理器收集关于安装在由FM管理的系统中的每个装置的信息。由PCI(和PCI快速)体系结构提供的公知技术使此便于进行。每个PCI快速装置存储关于其各个装置属性的信息,包括由所述装置支持的能力和/或服务。属性信息用于识别可由PCI快速装置访问的功能,诸如大容量存储器或通信能力(经由相应的协议接口)之类的。部分地使用属性参数集(例如列表中的一个或多个属性参数)来指定请求EP想要访问什么能力。
在一个实施例中,如图11所示,把属性信息存储在表结构1100中。所述表结构1100对应于AS装置配置空间的较低的256位。它包括装置ID 1102、销售商ID 1104、分类代码1106、修正ID 1108、子系统ID 1110、子系统销售商ID 1112、能力指针1114和各个保留字段。
装置ID 1102包括由装置制造商所分配的16位值。销售商ID 1104是由PCI-SIG为制造PCI快速应允装置的每个销售商所分配的16位值。分类代码1106是用于指示装置类别的24位值,由PCI-SIG所定义。子系统ID 1110和子系统销售商ID 1112类似于装置ID 1102和销售商ID 1104,除了它们适用于包括PCI应允子系统的装置之外。
能力指针1114是由装置销售商指定的8位字段,用于表明第一PCI 2.3能力记录的位置。对于AS装置,此字段包含在40h和0F8h之间的值。能力记录之一把该装置识为AS装置。总体上,使用能力记录来提供识别由装置所提供的服务或能力的信息。把详细的能力信息存储在独立的配置空间(未示出)中。
如果确定一个或多个装置匹配所请求的属性,那么NumDevs参数表明FM应当向其返回连接信息的装置的数目。如果把所述值设置为1,那么将要返回对应于所发现的第一匹配的连接信息。如果把所述值设置为0,那么将要返回所发现的每个装置的连接信息。
每当端点向FM发出请求时,它把ID与该请求相关联,如ReqID参数所定义的那样。当FM应答所述请求时,它返回相同的ReqID。当从FM返回应答时,把应答中的ID与由EP所保持的请求表中的ID相匹配。
当接收查询请求时,FM搜索它的配置信息以便确定与该结构耦合的任何装置是否具有与包含在所述请求中的信息相匹配的属性。在一个实施例中,FM为每个请求维护一个表。当识别具有匹配属性的装置时,把MatchInfo条目添加到所述表。MatchInfo条目包含相应的目标EP的连接信息,包括“tumpool”和“tumpointer”(tumptr)值。
AS提供了称作“转池(tum pools)”的基于源的路由机制,以便能够在各种系统拓扑中进行灵活的数据路由。转池包含路由选择信息,所述路由选择信息涉及系统拓扑并且由源提供。因此,当分组穿过系统中的多个交换机时,不必在每一跳经由基于目的地的查找来解析分组的目的地。这在数据传送期间降低了复杂性并且使等待时间最小化。
响应于查询请求1006,结构管理器经由查询应答1008在块902中应答,所述查询应答1008表明没有发现匹配,或者没有任何匹配包括与所指定的属性匹配的一个或所有目标EP的连接信息(取决于查询请求1006中的NumDevs参数)。通过查询应答1008中的NumDevs参数来识别匹配目标的数目。存在匹配的一个或多个目标EP的连接信息包含在DevsTable参数中。
当接收查询应答1008时,请求EP提取所述连接信息,并且当在查询应答中返回一个以上目标EP的连接信息时选择目标EP。如果返回没有发现匹配,那么没有满足请求EP要求的目标并且连接过程中止。在块904中,然后,请求EP直接向目标EP发送连接请求1010。所述连接请求包括请求者的属性以及连接属性。
当收到连接请求1010时,所述目标EP从所述请求中提取属性和连接数据。然后所述目标确定它是否可以和/或愿意接受该连接。例如,如果该请求指定了不支持的分组大小,那么应该拒绝连接。还可以由于其它原因拒绝连接,例如出于通信策略等考虑因素而加以拒绝。如果拒绝该连接,那么目标EP返回连接请求应答1012,其包括表明出错的信息。如果接受该连接,那么连接请求应答1012包括连接标识符。在图9中的块906示出了这些操作。
在一个实施例中,连接请求应答1012包括管道索引或会话ID、序列号和目标EP标识符。如果该请求者将是写入器(例如,发送要由目标EP处理的数据),那么把管道索引包括在连接请求应答1012中。所述管道索引充当所述连接的连接标识符。如果所述请求将是读取器(例如,它希望接收经由目标EP访问的数据),那么把会话ID包括在连接请求应答1012中。在一个实施例中,目标EP的标识符是IEEE EUI-64为全局标识符所定义的扩展唯一标识符(extended unique identifier EUI)(如图10中的T_EUI所示)。EUI是由IEEE所发布的64位全局标识符,并且用来唯一地识别一装置。使用目标的EUI来通知FM关于连接的状态(打开/关闭)。在一个实施例中,连接请求应答1012还包括序列号(SeqNum),以便提供一个数目,当请求EP发送其第一分组时将以此数目开始。
当请求EP接收连接请求应答1012时,在块908中它用连接确认1014应答。连接确认包括请求EP的全局标识符(R_EUI),所述全局标识符被用来通知FM关于连接的状态(打开/关闭)。如果请求EP将是读取器,那么该连接确认包括先前在连接请求应答1012中发送的管道索引。如果该请求EP将是写入器,那么在连接确认中返回包括在连接请求应答1012内的会话ID。所述连接确认还可以包括被加1的序列号(与SeqNum相同),其用来证实当请求EP发送其第一分组时将以此开始的序列号。
响应于连接确认1014,在块910中,目标EP向请求EP返回连接证实1016。如果请求EP将是写入器,那么该连接证实包括管道索引和管道偏移(例如,该请求者可以开始读取/写入的地方)。还可以为安全性目的提供管道访问密钥。如果该请求EP将是读取器,那么在连接证实1016中返回包括在连接请求应答1012内的会话ID。
在此,向FM发送信息以便通知FM将要建立在请求EP和目标EP之间的新的对等连接。在图9和10的实施例中,通过把添加连接消息1018从目标EP发送到FM来向所述FM通知关于该连接,如在块912中所描述的那样。在可选方案,可以把添加连接消息从请求EP发送到FM。添加连接消息包括每个请求和目标EP的EUI,以及所述请求EP的管道索引或会话ID(视情况而定)和目标EP的管道索引或会话ID(视情况而定)。
FM保持在其结构中所建立的每个对等连接的记录。当FM接收添加连接通知时,所述FM在其连接表中创建新的条目。当所述FM接收删除连接请求或确定一个或两个对等体不再是结构成员时,删除此条目。在一个实施例中,连接表是作为链接表实现的动态数据结构。
在正在进行的操作期间,给定系统的路由拓扑可能改变。例如,使用热安装可以向系统添加新的卡或板,或者可以拔除现有的卡或板。作为响应,FM可以确定在对等连接参与者之间存在最佳路径。作为响应,FM通知新路径的双方参与者:提供对等体的EUI和新的turnpool和turnpointer以到达对等体,如由路径更新消息1020和图9中的块914所描述的那样。
将要/应当关闭连接的情况有多种。例如,在完成数据事务之后,请求EP可能希望关闭所述连接。在有效使用之间保持连接打开的情况也会存在。还可以响应于所检测的条件来关闭连接。在一个实施例中,当任一端点想要停止对等会话时或当FM确定对等体之一不再能够参与所述连接时,使用相同的格式。
在图12中示出了举例说明在端点启动的连接关闭过程期间执行的操作。所述过程在块1200开始,其中请求EP向目标EP发送所述连接已不再存在的通知。该请求EP还向FM发送在请求EP和目标EP之间的连接已不再有效的通知。在一个实施例中,通知包括每个对等体的管道索引/会话ID和EUI。然后在块1204中,FM更新它的连接列表以便反映删除的连接。
总体上,可以在模块化系统中实现这里所公开的连接管理技术,所述模块化系统使用基于串行的互连结构,诸如PCI快速组件。例如,可以在诸如ATCA系统之类的模块化通信系统和板片式服务器系统中使用PCI快速组件。
在图13a和13b中示出了典型的板片式服务器系统和组件。在典型的配置中,使用安装在机架上的机箱1300来向多个服务器板片(即,板片)1302提供功率和通信功能,每个板片占据相应的槽。(应当注意,不必占据机箱中的所有槽。)随后,可以把一个或多个机箱1300安装在板片式服务器机架(未示出)中。当经由一个或多个配合连接器安装时,把每个板片与接口平面1304(即,底板或中平面)耦合。典型地,接口平面将包括多个各自的配合连接器,用于向所述板片提供功率和通信信号。在当前实施下,许多接口平面提供了“热交换”功能——即在不把整个机箱拆下的情况下、通过适当的功率和数据信号缓冲可以即时添加或拔除(“热交换”)板片。
在图13a和13b中示出了典型的中平面接口平面配置。把接口平面1304的后方与一个或多个电源1306耦合。时常,电源是冗余的并且是可热交换的,与适当的电源平面和调节电路耦合,以便在发生电源故障的情况下,能够继续运行。使用多个冷却风扇1308来抽取通过机箱的空气以便冷却服务器板片。
所举例说明的板片式服务器还包括一个或多个开关结构卡1310,每个卡与接口平面1304耦合,还包括与接口平面的后方或前方耦合的管理开关卡112。总体上,使用开关结构卡来执行用于基于串行的互连结构的切换操作。管理开关卡提供了管理接口,用于管理单个板片的操作。管理卡还可以作为控制卡片起作用,所述控制卡片作为FM的主机。
在图14a和14b中示出了示例性的ATCA机箱1400和ATCA板1402。ATCA机箱有点类似于板片式服务器机箱,并且包括连接平面(未示出),经由所述连接平面、通过把板插入各自的机箱槽中可以耦合一个或多个ATCA板1402。连接平面(也叫做底板)支持在PCI快速装置之间的数据路由。在一个实施例中,保留两个槽用于切换各个板。总体上,ATCA规范支持各种类型的结构拓扑,诸如星形、双星形和网格。
图14b示出了示例性的ATCA板1402。所述ATCA板包括主板1404,所述主板1404包括各个组件耦合到的印刷电路板(printed circuit board PCB)。所述组件包括处理器1406和1408、存储器控制器集线器1410、多个存储装置1412(例如,单列直插内存模块(single inline memory module SIMM))和各种其它集成电路(IC),如描述为IC 1414、1416、1418和1420。总体上,处理器1406和1408说明各种类型的处理单元,包括但不局限于CPU、NPU、微控制器和协处理器。
把各个连接器与主板1404耦合以便用于功率分配和输入/输出(I/O)功能。所述连接器包括底板数据连接器1422、被配置为与底板耦合的功率输入连接器1424和1426和通用串行总线(universal serial bus USB)连接器1428和1430以及安装到前面板1434的网络连接器1432。
根据特定的板配置,ATCA板可以包括附加组件。由磁盘驱动器1436和子板1438来举例说明这种附加组件。ATCA板还可以提供夹层的扩展槽。
如上所述,对于计算和通信群体,可以使用AS结构。在图15中示出了示例性的通信实施方式。在此实施方式中使用的示例性板包括一对线路卡1500A和1500B、一对开关卡1502A和1502B和控制卡1504。开关卡1502A和1502B表示AS结构1503。每个线路卡1500A和1500B均包括帧调节器、介质访问信道(media access channel MAC)组件和物理层(physical layer HY)组件,为方便起见将上述组件共同描述为组件1506。所述线路卡还包括与存储器1510和本地线路卡AS开关元件1512耦合的CPU 1508,还包括与存储器1516和AS开关元件1512耦合的NPU 1514。在一个实施例中,组件1506、CPU 1508和NPU 1514经由各自的AS链路1518、1520和1522与AS开关元件1512耦合。
使用开关卡1502A和1502B来支持AS开关结构功能。由AS开关元件1524使这变得易于进行。控制卡1504通过控制开关卡1502A和1502B的切换操作来管理AS开关结构,并且包括CPU子系统1526和存储器1528。在一个实施例中,由开关卡1502A或1502B之一来执行被描述为由控制卡1504执行的功能。总体上,CPU子系统1526和存储器1528说明用于运行结构管理器软件组件的结构管理器主机电路。
经由各自的AS链路1530A和1530B把线路卡1500A和1500B中的每个连接到AS结构1503。类似地,经由AS链路1532把控制卡1504连接到AS结构1503。
每个线路卡1500A和1500B均作为端点装置312起作用。从而,把EP装置的软件组件载入存储器1510并且在CPU 1508上执行(结合在CPU 1508上运行的操作系统),所述软件组件包括EP组件302和AS驱动器组件306的实例。可以使用持久性存储装置把EP装置软件组件存储在给定线路卡上,所述持久性存储装置诸如但不局限于磁盘驱动器、只读存储器或非易失性存储器(例如,闪速装置),把上述存储装置一起描述为存储设备1534。选择性地,一个或多个软件组件可以包括经由网络载入存储器1510的载波。
使用控制卡1504(如果用于管理AS结构)或开关卡1502A或1504B之一(如果包括为控制卡1504所描述的等效功能)来作为PFM装置308起作用。从而把PFM装置的软件组件载入存储器1528,所述PFM装置的软件组件包括EP组件302、PFM组件300和AS驱动器306的实例。采用类似于线路卡的方式,在一个实施例中,把PPM装置的软件组件存储在被描述为存储器1536的持久性存储装置中。在另一实施例中,经由网络把一个或多个PFM装置软件组件载入存储器1528。
此外,被执行来进行端点、PFM和SFM操作的数据和代码(例如;指令)包括:在某种形式的处理核心(诸如CPU)上执行的、或在计算机可读介质上或在计算机可读介质内执行或实现的软件元件。计算机可读介质包括用于以机器(例如,计算机)可读形式来存储或发送信息的任何机制。例如,计算机可读介质可以包括诸如只读存储器(ROM);随机访问存储器(RAM);磁盘存储介质;光存储介质和闪速存储装置等。另外,计算机可读介质可以包括传播的信号,诸如电学、光学、声学或其它形式传播的信号(例如,载波、红外信号、数字信号等)。
本发明所举例说明的实施例的上述描述,包括在摘要中所描述的内容,目的并在于把本发明穷举或限制为所公开的形式。虽然,为了说明性的目的描述了本发明的具体实施例和例子,然而正如相关技术领域内技术人员能够认识到的那样,在本发明的范围内可以进行各种等效的修改。
按照上述详细说明可以对本发明进行这些修改。不应该把用于下列权利要求的术语解释为把本发明限制在说明书和附图中所公开的具体实施例。更确切的说,完全由下列权利要求来确定本发明的范围,依照所建立的权利要求解释规则来解释本发明的范围。

Claims (30)

1.一种用于在耦合到基于串行的互连结构的端点之间建立对等连接的方法,包括:
把一查询从一请求端点发送到一结构管理器,请求其属性与所述查询中指定的属性相匹配的至少一个目标端点的连接信息;
把包含连接信息的查询应答从所述结构管理器返回到所述请求端点,以便把所述请求端点连接到一属性与所述查询中指定的属性相匹配的目标端点;并且
协商所述请求端点和所述目标端点之间的对等连接以便建立所述对等连接。
2.如权利要求1所述的方法,还包括:
把一查询从一请求端点发送到一结构管理器,请求其属性与所述查询中指定的属性相匹配的任何目标端点的连接信息;
把包含连接信息的查询应答从所述结构管理器返回到所述请求端点,以便把所述请求端点连接到属性与所述查询中指定的属性相匹配的至少两个目标端点;并且
从所述至少两个目标端点中选择一目标端点以便与之协商对等连接。
3.如权利要求1所述的方法,其中所述基于串行的互连结构包括高级切换(AS)结构,并且每个请求端点和目标端点均包括AS应允装置。
4.如权利要求1所述的方法,还包括:
通知所述结构管理器已经建立了一新的对等连接;并且
更新由所述结构管理器维护的对等连接列表,以便包括所述新的对等连接。
5.如权利要求1所述的方法,还包括:
关闭所述对等连接;并且
向所述结构管理器发送已经关闭所述连接的通知;并且
更新由所述结构管理器维护的对等连接列表,以便删除已经关闭的对等连接。
6.如权利要求5所述的方法,其中关闭所述对等连接包括:
把所述连接已不存在的通知从启动关闭对等连接的端点对等体发送到另一端点对等体。
7.如权利要求1所述的方法,其中所述基于串行的互连结构包括第一组PCI快速装置,所述第一组PCI快速装置包括至少一个PCI快速装置,并且其中所述请求端点和目标端点中的至少一个包括未包含在所述第一组PCI快速装置内的PCI快速装置。
8.如权利要求1所述的方法,其中协商所述对等连接包括:
把连接请求从所述请求端点发送到所述目标端点;并且
通过把连接接受消息从所述目标端点发送到所述请求端点来响应所述连接请求。
9.如权利要求8所述的方法,其中协商所述对等连接还包括:
把连接建立确认消息从所述请求端点发送到所述目标端点;并且
把连接证实消息从所述目标端点返回到所述请求端点。
10.如权利要求8所述的方法,还包括:
在所述请求端点和所述目标端点之间交换会话标识(ID)信息以便协定该对等连接的会话ID。
11.如权利要求8所述的方法,还包括:
在所述请求端点和所述目标端点之间交换管道索引信息,所述管道索引信息指定用于所述对等连接的连接标识符。
12.如权利要求11所述的方法,还包括:
把管道密钥从所述请求端点和目标端点之一发送到另一端点,所述管道密钥将用于安全性目的。
13.如权利要求1所述的方法,还包括:
检测所述基于串行的互连结构拓扑的变化;
确定在所述请求端点和所述目标端点之间的路由要被重新路由;并且
向所述请求端点提供路由信息以便重新路由在所述请求端点和所述目标端点之间的路由。
14.如权利要求1所述的方法,还包括:
检测做为所述请求端点和所述目标端点之一的主机的装置不再能与所述基于串行的互连结构通信;并且作为响应,
关闭所述对等连接。
15.一种制造物品,包括:
用于提供指令的计算机可读介质,如果执行所述指令那么执行的操作包括,
产生目标匹配查询,用于定义由目标端点提供的一组属性,请求端点希望经由基于串行的互连结构连接到所述目标端点,其中所述请求和目标端点与所述基于串行的互连结构耦合;
把目标匹配查询从请求端点发送到结构管理器,请求属性与所述查询中指定的属性相匹配的至少一个目标端点的连接信息;
把包含连接信息的查询应答从结构管理器返回到请求端点,以便把所述请求端点连接到一属性与所述查询中指定的属性相匹配的目标端点;并且
协商所述请求端点和目标端点之间的对等连接以便建立所述对等连接。
16.如权利要求15所述的制造物品,其中所述基于串行的互连结构包括高级切换(AS)结构,并且每个请求端点和目标端点均包括AS应允装置。
17.如权利要求15所述的制造物品,其中指令的执行还进行如下操作,包括:
通知所述结构管理器已经建立了一新的对等连接;并且
更新由所述结构管理器维护的对等连接列表,以便包括所述新的对等连接。
18.如权利要求15所述的制造物品,其中协商所述对等连接包括:
把连接请求从所述请求端点发送到所述目标端点;并且,作为响应,
把连接接受消息从所述目标端点返回到所述请求端点。
19.如权利要求18所述的制造物品,其中协商所述对等连接还包括:
把连接建立确认消息从所述请求端点发送到所述目标端点;并且
把连接证实消息从所述目标端点返回到所述请求端点。
20.如权利要求15所述的制造物品,其中把所述指令具体化为一组软件组件,包括:
端点组件,要在对应于每个请求端点和目标端点的各自装置上执行;和
结构管理器组件,要在选择来执行所述基于串行的互连结构的管理的装置上执行。
21.如权利要求20所述的制造物品,其中每个端点组件和结构管理器组件均包括多个子组件,一部分子组件要在每个各自装置上运行的操作系统的用户空间中执行,而一部分子组件要在所述操作系统的内核空间中执行。
22.如权利要求15所述的制造物品,其中指令的执行进行进一步操作包括:
检测所述基于串行的互连结构拓扑的变化;
确定在所述请求端点和所述目标端点之间的路由要重新路由;并且
向所述请求端点提供路由信息以便重新路由在所述请求端点和所述目标端点之间的路由。
23.一种线路卡设备,包括:
网络处理器(NPU);
存储器,与所述NPU耦合;
高级切换(AS)开关元件,与所述NPU通信中加以链接,该AS开关元件耦合到一连接器,该连接器被配置程成经由AS链路把所述设备连接到AS结构;
中央处理单元(CPU);
存储器,与所述CPU耦合;和
存储装置,其中存储有指令,如果由CPU执行所述指令那么所执行的操作包括,
经由AS链路把一查询发送到结构管理器,请求属性与所述查询中指定的属性相匹配的至少一个目标端点的连接信息;
从结构管理器接收包含连接信息的查询应答,以便把请求端点连接到一属性与所述查询中指定的属性相匹配的目标端点;并且
与所述目标端点协商对等连接以便建立与所述目标端点之间的对等连接。
24.如权利要求23所述的线路卡设备,其中所述线路卡包括服务器板片;
25.如权利要求23所述的线路卡设备,其中所述线路卡包括高级电信计算机体系结构(ATCA)板。
26.一种系统,包括:
机箱,包括底板;
第一端点装置,与所述底板耦合;
第二端点装置,与所述底板耦合;
至少一个切换装置,与所述底板耦合,所述至少一个切换装置包括基于串行的互连结构;和
结构管理装置,可操作来耦合以便控制所述基于串行的互连结构的切换操作;
其中第一和第二端点装置中的每一个和结构管理主机装置在其上存储有端点软件组件,并且所述结构管理装置还存储结构管理软件组件,并且由第一和第二端点装置和所述结构管理装置对所述端点软件组件的执行以及由所述结构管理装置对所述结构管理器软件组件的执行使得所述第一和第二端点装置之间的对等连接能够通过执行以下操作来建立,所述操作包括,
把一查询从第一端点装置发送到所述结构管理装置,请求其属性与所述查询中指定的属性相匹配的至少一个目标端点装置的连接信息;
把包含连接信息的查询应答从结构管理装置返回到第一端点装置,以便把所述第一端点装置连接到一属性与所述查询中指定的属性相匹配的目标端点装置,所述目标端点装置包括第二端点装置;并且
协商第一端点装置和第二端点装置之间的对等连接以便建立所述对等连接。
27.如权利要求26所述的系统,其中所述机箱包括高级电信计算机体系结构(ATCA)机箱,并且第一和第二端点装置中的每一个和所述至少一个切换装置均包括ATCA板。
28.如权利要求26所述的系统,其中所述机箱包括板片式服务器机箱,并且第一和第二端点装置中的每一个和所述至少一个切换装置均包括服务器板片。
29.如权利要求26所述的系统,其中所述结构管理装置包括与基于串行的互连结构耦合的控制卡。
30.如权利要求26所述的系统,其中所述结构管理装置包括所述至少一个切换装置之一。
CNB2005100913218A 2004-06-30 2005-06-30 高级切换对等协议 Expired - Fee Related CN100413274C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/882,902 US20060004837A1 (en) 2004-06-30 2004-06-30 Advanced switching peer-to-peer protocol
US10/882902 2004-06-30

Publications (2)

Publication Number Publication Date
CN1744546A true CN1744546A (zh) 2006-03-08
CN100413274C CN100413274C (zh) 2008-08-20

Family

ID=35262039

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2005100913218A Expired - Fee Related CN100413274C (zh) 2004-06-30 2005-06-30 高级切换对等协议

Country Status (5)

Country Link
US (1) US20060004837A1 (zh)
EP (1) EP1790134A1 (zh)
KR (1) KR100871922B1 (zh)
CN (1) CN100413274C (zh)
WO (1) WO2006004780A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101110768B (zh) * 2007-06-20 2010-10-06 杭州华三通信技术有限公司 数据通信方法、系统、主控卡及线卡
CN105743960A (zh) * 2015-07-20 2016-07-06 浪潮(北京)电子信息产业有限公司 会话连接的管理方法和装置
CN107800639A (zh) * 2016-09-06 2018-03-13 华为技术有限公司 交换装置、交换装置组、数据传输方法和计算机系统

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7447233B2 (en) * 2004-09-29 2008-11-04 Intel Corporation Packet aggregation protocol for advanced switching
US7343434B2 (en) * 2005-03-31 2008-03-11 Intel Corporation Buffer management within SLS (simple load store) apertures for inter-endpoint communication in advanced switching fabric
US7496797B2 (en) * 2005-03-31 2009-02-24 Intel Corporation Advanced switching lost packet and event detection and handling
US7526570B2 (en) * 2005-03-31 2009-04-28 Intel Corporation Advanced switching optimal unicast and multicast communication paths based on SLS transport protocol
US7492710B2 (en) * 2005-03-31 2009-02-17 Intel Corporation Packet flow control
US7698484B2 (en) * 2005-09-21 2010-04-13 Ricoh Co., Ltd. Information processor configured to detect available space in a storage in another information processor
US8189603B2 (en) * 2005-10-04 2012-05-29 Mammen Thomas PCI express to PCI express based low latency interconnect scheme for clustering systems
US8763113B2 (en) 2005-11-28 2014-06-24 Threatmetrix Pty Ltd Method and system for processing a stream of information from a computer network using node based reputation characteristics
US8141148B2 (en) 2005-11-28 2012-03-20 Threatmetrix Pty Ltd Method and system for tracking machines on a network using fuzzy GUID technology
US20070239869A1 (en) * 2006-03-28 2007-10-11 Microsoft Corporation User interface for user presence aggregated across multiple endpoints
US7945612B2 (en) * 2006-03-28 2011-05-17 Microsoft Corporation Aggregating user presence across multiple endpoints
US7631133B2 (en) * 2006-03-31 2009-12-08 Intel Corporation Backplane interconnection system and method
US9241038B2 (en) * 2006-05-23 2016-01-19 Microsoft Technology Licensing, Llc User presence aggregation at a server
US8800008B2 (en) 2006-06-01 2014-08-05 Intellectual Ventures Ii Llc Data access control systems and methods
US9444839B1 (en) * 2006-10-17 2016-09-13 Threatmetrix Pty Ltd Method and system for uniquely identifying a user computer in real time for security violations using a plurality of processing parameters and servers
WO2011043769A1 (en) * 2009-10-07 2011-04-14 Hewlett-Packard Development Company, L.P. Notification protocol based endpoint caching of host memory
US8321617B1 (en) * 2011-05-18 2012-11-27 Hitachi, Ltd. Method and apparatus of server I/O migration management
US8954481B2 (en) * 2012-05-09 2015-02-10 International Business Machines Corporation Managing the product of temporary groups in a community
WO2014063365A1 (zh) 2012-10-26 2014-05-01 华为技术有限公司 基于pcie交换的服务器系统及其倒换方法和设备
JP6155500B2 (ja) * 2014-02-12 2017-07-05 APRESIA Systems株式会社 中継装置
US10476545B2 (en) * 2015-09-25 2019-11-12 Intel Corporation Communication between integrated circuit packages using a millimeter-wave wireless radio fabric
CN109299534B (zh) * 2018-09-20 2023-07-25 深圳市一博科技股份有限公司 一种印刷电路板的建模方法及装置
US10880371B2 (en) 2019-03-05 2020-12-29 International Business Machines Corporation Connecting an initiator and a target based on the target including an identity key value pair and a target characteristic key value pair

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6687240B1 (en) * 1999-08-19 2004-02-03 International Business Machines Corporation Transaction routing system
WO2002032051A2 (en) * 2000-10-12 2002-04-18 Signafor, Inc. Advanced switching mechanism for providing high-speed communications with high quality of service
CN1300721C (zh) * 2002-03-21 2007-02-14 重庆大学 一种对等网络体系结构实现方法
US7051102B2 (en) * 2002-04-29 2006-05-23 Microsoft Corporation Peer-to-peer name resolution protocol (PNRP) security infrastructure and method
US20040054781A1 (en) * 2002-07-30 2004-03-18 Heng-Chien Chen Method for establishing point to point or point to multiple points internet connection(s)
JP3973548B2 (ja) * 2002-12-10 2007-09-12 株式会社ソニー・コンピュータエンタテインメント ネットワークシステム、ネットワーク接続確立方法、ネットワーク端末、コンピュータプログラム、およびプログラムを格納した記録媒体
CN1506866A (zh) * 2002-12-12 2004-06-23 上海科星自动化技术有限公司 适用于办公室的对等网络
US7447208B2 (en) * 2003-08-04 2008-11-04 Intel Corporation Configuration access mechanism for packet switching architecture
US7259961B2 (en) * 2004-06-24 2007-08-21 Intel Corporation Reconfigurable airflow director for modular blade chassis

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101110768B (zh) * 2007-06-20 2010-10-06 杭州华三通信技术有限公司 数据通信方法、系统、主控卡及线卡
CN105743960A (zh) * 2015-07-20 2016-07-06 浪潮(北京)电子信息产业有限公司 会话连接的管理方法和装置
CN105743960B (zh) * 2015-07-20 2019-09-06 浪潮(北京)电子信息产业有限公司 会话连接的管理方法和装置
CN107800639A (zh) * 2016-09-06 2018-03-13 华为技术有限公司 交换装置、交换装置组、数据传输方法和计算机系统
US10594607B2 (en) 2016-09-06 2020-03-17 Huawei Technologies Co., Ltd. Switching apparatus, switching apparatus group, data transmission method, and computer system
CN107800639B (zh) * 2016-09-06 2020-04-14 华为技术有限公司 交换装置、交换装置组、数据传输方法和计算机系统

Also Published As

Publication number Publication date
WO2006004780A1 (en) 2006-01-12
KR20070034537A (ko) 2007-03-28
CN100413274C (zh) 2008-08-20
KR100871922B1 (ko) 2008-12-05
EP1790134A1 (en) 2007-05-30
US20060004837A1 (en) 2006-01-05

Similar Documents

Publication Publication Date Title
CN1744546A (zh) 高级切换对等协议
TWI357561B (en) Method, system and computer program product for vi
US10042804B2 (en) Multiple protocol engine transaction processing
CN1224905C (zh) 在群集计算机系统中的执行资源动作的方法
CN1300685C (zh) 模块化服务器系统、存储叶片和对服务器进行供应的方法
US7907604B2 (en) Creation and management of routing table for PCI bus address based routing with integrated DID
CN101221552B (zh) 隔离i/o适配器单元的系统和方法
US7721021B2 (en) SAS zone group permission table version identifiers
CN101669082B (zh) 集群化多个独立的高速pci层次结构的装置和方法
DE112011102415B4 (de) Registerzugriff in einer verteilten virtuellen Brückenumgebung
CN102124449B (zh) 用于低开销数据传输的方法和系统
US7389367B2 (en) Method of managing I/O interface modules in a computer system
CN109240832B (zh) 一种硬件重构系统及方法
CN1968170A (zh) 管理数据路由的方法及系统
CN1604057A (zh) 硬件实施通道适配器资源的逻辑分区的方法和系统
CN104303174A (zh) 通过处理器间互连来隧道传输平台管理消息
CN104426814A (zh) Numa节点外围交换机
CN1617526A (zh) 在物理端口上模拟多个逻辑端口的方法和装置
CN1659539A (zh) 一种具有虚拟服务模块的网络系统
JP2010140471A (ja) 冗長構成を生成するための周辺機器相互接続入出力仮想化デバイスの使用
CN101030190A (zh) 用于为逻辑分区产生唯一标识符的方法和装置
CN110069111B (zh) 一种ai计算服务器
US11138146B2 (en) Hyperscale architecture
US7350014B2 (en) Connecting peer endpoints
KR20090084888A (ko) 대용량 병렬 컴퓨터 시스템의 연산 노드의 패스트 백업

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20080820

Termination date: 20120630