用于高性能、低功率数据中心互连结构的系统和方法_3

文档序号:9600796阅读:来源:国知局
MAC查找CAM逻辑失败的 情况下给予我们一些风险减轻。针对编码节点地址思想提供用例。
[0040] 3.任意MAC地址别名-取CAM中的行。作为示例,512行CAM可以保持256个节 点(本地节点地址)+每个节点1个MAC地址别名。
[0041] 由于仅在路由报头创建期间访问查找CAM,所以如果结构内的MAC地址用作分组 内的源或者目的地MAC地址,则管理处理器实际上仅需填充行。换而言之,如果两个节点将 从不相互通话,则无需创建映射行。但是通常管理处理器不会具有该知识,因此期望在所有 节点中创建用于所有节点的映射。也注意即使未在查找CAM中创建条目,实际上仍将通过 将分组通过外部路由器路由除以太网网关、回到结构、去往目的地阶段来使路由成功。
[0042] 表7定义如何针对除了目的地节点和端口之外的所有字段设置路由报头内的字 段。
[0043]表 7
[0044] 表8定义如何设置用于结构内的地址的目的地节点和端口。
[0045] ^8
ο.
[0046] 表9定义如何设置用于结构以外的地址的目的地节点和端口。
[0047] ^9
Ο:
[0048] 此外,这里公开的系统和方法的管理处理器软件架构依赖于管理处理器节点相互 "信任"的能力。关于管理处理器到管理处理器通信的这一更严格安全性以及跨越结构的在 私有管理LAN上的更佳安全性是希望的。可以通过针对需要多个"硬"安全域的环境简单 地定义客户简单地不混合结构内的安全域来减轻这一结构问题。在这样的情况下,可以有 可能将14节点的板连接到机架顶交换机,从而允许客户具有每个14节点板的VLAN粒度控 制。
[0049] 已经描述的多域结构架构通过跨越结构创建安全"隧道"和域来解决VLAN支持的 缺乏,并且它可以在1:1基础上与VLAN保护的路由器端口互操作。
[0050] 这里公开的系统和方法中的用于域管理的方式如下:支持结构内的多个域ID。允 许向域ID个别分配(并且如果未设置则用域0标注)节点内的每个MAC(管理处理器、 MAC0、MAC1、网关)。允许节点内的每个MAC具有指示对管理域的访问的位。与MAC关联的 域ID仅可以由管理处理器分配并且不可以由A9变更。对于MAC(内部和外部两者)生成 的帧,路由帧处理器将用与该MAC关联的域ID和管理域状态标注路由帧。域将提供隧道或 者VLAN的效果,其中它们将分组(单播和多播)保持于该域内,从而允许该域以外的MAC 不能够嗅探或者欺骗那些分组。此外,这一方式将运用五位域ID。它将添加用于控制域处 理的选项(如例如具有每MAC的布尔值的交换机,该布尔值定义分组是否与非定义(即零) 域ID-起递送,或者具有每MAC的布尔值的交换机,该布尔值定义分组是否与已定义(非 零)、但是非匹配域ID-起递送。交换机中的又一选项可以关断每MAC的编码节点MAC地 址(消除另一潜在攻击矢量样式)。
[0051] 为了保持管理处理器到管理处理器通信安全,可以标记所有管理处理器MAC上的 管理域位。一般而言,管理处理器应当在域1上(按照惯例)路由。这样的技术允许所有 管理处理器隧穿管理域上的分组,使得其他VLAN或者域上的任何其他设备(在结构以内或 者以外)不能检查或者欺骗它们。另外,为了提供安全管理LAN,可以分配具有设置的管理 域位的网关MAC,从而保持管理分组对于于管理处理器域而言是私有的。此外,交换机结构 可以通过关联每个网关MAC与单独域来支持它本身内的"多租户(tenant)"。例如每个网 关MAC可以连接到外部路由器上的个别端口,从而允许该端口可选地与VLAN关联。在分组 进入网关时,用域ID标注它们,从而保持该业务对于跨越结构的与该域关联的MAC而言私 有。
[0052] 交换机支持多个寄存器(akaCSR、akaMMR)以允许软件或者固件控制交换机。这 些寄存器的实际布局将由实施限定。表10中列举的字段为软件读/写。所有这些寄存器 需要具有一种用于保护它们不被A9写入的机制(可以是安全模式或者在管理处理器私有 总线上)。
[0053] 表10


ο
[0054] 表11中所示寄存器包含于交换机实施中,但是无需软件可访问。
[0055] 表 11
'G
[0056] 注意软件应当能够关于活跃分组路由自动更新路由表(unicastRoute)和 macAddrLookupCAM。一个实施将是在更新操作期间拖延对这些表的路由访问。
[0057]广播/多播路由 图6示出了根据这里公开的系统和方法的一个方面的示例性广播机制100。在节点N101001与N21 1002之间的链接如虚线1003所示向下。在多播分组的路由报头生成期间, 源节点将用于该源节点的递增的广播ID置于路由帧(rframe.bcastID)中。当节点接收多 播路由帧(即rframe.rfType==多播| |rframe.rfType==邻居多播)时,它检查以查看 它是否已经看见这一广播分组。通过访问具有如下标签的bcastIDseenCAM来完成检查, 该标签形成有广播源节点和广播ID。如果已经看见它(即CAM命中),则不执行动作。如 果以前尚未看见广播帧,贝U它将它广播到适当内部端口和外部网关(intPortBroadcastVec 寄存器)并且经过除了它参与的链接之外的所有向外XAUI链接重新广播它。注意如果设 置broadcastLateral寄存器则它仅经过横向广播。不必广播多数拓扑上的横向,并且这样 做可以来通过禁用它来减少重复的广播分组数量。它然后按照FIFO顺序向bcastIDSeen CAM添加这一广播标签。在图7中,N04 1004向所有邻居(即Nil1105)发起广播。Nil尚 未看见分组,因而它向所有非传入邻居(在这一示例中为N21 1002、N20 1006、N03、1007和 N05 1008)广播并且内部接受分组。节点N03和N05尚未看见分组,因而它们内部接受广播 并且完成。N21尚未看见分组,因而它向所有活跃非传入链接(例如N10、N12 1009)广播分 组并且内部接受分组。N20向所有活跃非传入链接(即N12)广播分组并且内部接受分组。 N10 向N00 1010、N01 1011 和N02 1012 向下广播。N12 向N06 1013、N07 1014、N08 1015 并且向N21和N20之一(它未从其获得广播分组的一个)重新广播。注意N20和N21之一 以及N12看见分组两次。它们仅作用于它们的第一实例,它二次命中广播CAM视为重复,并 且忽略分组。
[0058] 单播路由 到其他节点的单播路由 单播路由(如图7中所示)负责将非多播(即单播)分组向下一节点路由。这通过利 用软件计算的unicastRoute□下一节点路由表来完成,该路由表提供用于到达目的地节 点的可用链接的矢量。
[0059] 条件 rframe.rfType==Unicast(单播) 路由 有与绕过故障有关的大量复杂性。将单独讨论无故障路由和绕过故障。
[0060] 传统上,在树形路由中,分组将向上路由直至到达(源、目的地)的共同父亲。这 一向上路由可以是确定性的、遗忘的(oblivious)或者自适应的。分组然后使用确定性路 由向目的地向下路由。
[0061] 作为示例,图7图示了从节点N00 1010到N08 1015的分组路由。分组在向上阶 段中经过节点N10 1001向共同祖先(N21))路由,并且然后在下降阶段中向目的地路由。
[0062] 注意在节点N10处的向上阶段期间有两个候选链接(N10,N21)和(N10,N20)。可 以确定性地选择第一候选链接,或者自适应算法可以动态选择任一链接。但是一旦节点到 达共同祖先并且向下转向,就没有用于节点到达目的地的冗余路径(一般而言)。
[0063] 在不存在故障时的单播路由 每个链接在这一unicastRoute表内加注有2位链接权重,其中软件可以表达经由这一 链接到目的地节点的相对成本/距离。按照惯例,链接权重应当表示: ? 〇 =无路由 ? 3 =直接下一跳连接 ?1和2 =软件计算的相对成本。作为示例,如果有跨越3个链接(这些链接具有2个 跳跃、3个跳跃和6个跳跃的成本)的路由,则可以向前两个链接分配权重=2并且可以向 6个跳跃的路径分配权重=1。
[0064] 用于无故障单播路由的算法: ?从单播路由表获得链接权重矢量 〇linkffeightVector=unicastRoute[rframe.dstNode] ?去除它参与的链接以去除将它发送回的可能性 ?去除未向上的任何链接 ?在这一点具有如下链接的候选列表,这些链接具有关联链接权重。 ?从最高优先级(3)经过1向下开始经过链接权重迭代。收集在这一优先级的链接的 候选列表,从而一旦候选列表具有至少一个链接就停止。结果是在最高优先级的链接的候 选列表。作为示例,如果有处于权重=2的2个链接和处于权重=1的2个链接,则优先级 化的候选列表将包含处于权重=2的两个链接。 ?检查自适应寄存器以确定是进行自适应还是确定性路由。 〇adaptive(自适应)==0指示将使用确定性路由,因而从优先级化的候选列表选择 第一链接。 〇adaptive== 1指示将使用自适应路由。交换机实施将选择一种用于从优先级 化
当前第3页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1