【技术实现步骤摘要】
【国外来华专利技术】面向连接的网络中的路径分集
本公开涉及面向连接的网络中的路径分集技术。
技术介绍
“面向连接的”网络或基于路径的网络由网络通信协议定义,该网络通信协议定义源节点和目的地节点之间的路径。面向连接的网络通信协议的示例包括X.25、帧中继、ATM、MPLS等等。典型地,分组头包含字段(在本公开中被称为“HopID”),其连同输入端口号一起来定义路径。沿着路径的交换机包含将输入端口HopID元组(P1,H1)映射到输出端口HopID元组(P2,H2)的转发表。当具有HopIDH1的分组到达输入端口P1时,交换机在转发表中查找(P1,H1)元组,并且发现它被映射到(P2,H2)元组。交换机在分组的HopID字段中使用H2替换H1,并且接着将该分组转发到输出端口P2。在常规的面向连接的网络中,为了实现源和目的地之间的任何路径分集,必须在源和目的地之间提前建立多个路径。然而,每一个路径要求源、目的地和每一个中间节点处的状态(存储器空间和伴随的系统开销)以及多个HopID的目的地。相比而言,在“无连接”网络或基于目的地的网络中,表由(目的地地址、输出端口)条目组成。无连接网络通信协议的示例包括IP、以太网等等。在某些拓扑中,存在到目的地的几个潜在的下一跳。在这种情况下,表包括(目的地地址,{输出端口})条目,其中{}表示每目的地地址多个输出端口。如果每一个交换机包含k个可能的输出端口,并且存在到目的地节点的h个跳,则在无连接网络中能够实现源和目的地之间的h^k个路径,同时仅使中间交换机的状态乘以k。然而,在常规的面向连接的网络中,这样的路径分集将要求在源和目的地之间建立h ...
【技术保护点】
一种网络设备,包括:输入端口,配置为链接到第一设备以便从所述第一设备接收分组,其中,所接收的分组具有编码在其中的第一标签,所述第一标签的值对于位于所述网络设备和所述第一设备之间的链路是特有的;所述输入端口具有输入端口标识符,所述输入端口标识符和所述第一标签形成输入元组;多个输出端口,配置为链接到多个第二设备中的相应第二设备,每一个输出端口具有相应的输出端口标识符;转发表,包括至少一个输入元组和相对应的输出元组集合;其中,每一个输出元组包括输出端口标识符和第二标签,所述第二标签的值对于位于所述网络设备和所述多个第二设备中的相应一个第二设备之间的链路是特有的;以及路由电路,配置为对所接收的分组的输入元组与所述转发表的至少一个输入元组进行比较,识别所述相对应的输出元组集合,并且从所述相对应的输出元组集合当中选择一个输出元组;所述路由电路还配置为使用所述第二标签替换所接收的分组的所述第一标签并且将所述分组发送到由所选择的输出元组中的所述输出端口标识符指定的输出端口。
【技术特征摘要】
【国外来华专利技术】1.一种网络设备,包括:输入端口,配置为链接到第一设备以便从所述第一设备接收分组,其中,所接收的分组具有编码在其中的第一标签,所述第一标签的值对于位于所述网络设备和所述第一设备之间的链路是特有的;所述输入端口具有输入端口标识符,所述输入端口标识符和所述第一标签形成输入元组;多个输出端口,配置为链接到多个第二设备中的相应第二设备,每一个输出端口具有相应的输出端口标识符;转发表,包括至少一个输入元组和相对应的输出元组集合;其中,每一个输出元组包括输出端口标识符和第二标签,所述第二标签的值对于位于所述网络设备和所述多个第二设备中的相应一个第二设备之间的链路是特有的;以及路由电路,配置为对所接收的分组的输入元组与所述转发表的至少一个输入元组进行比较,识别所述相对应的输出元组集合,并且从所述相对应的输出元组集合当中选择一个输出元组;所述路由电路还配置为使用所述第二标签替换所接收的分组的所述第一标签并且将所述分组发送到由所选择的输出元组中的所述输出端口标识符指定的输出端口,其中,所述路由电路进一步配置为针对包括所述分组的给定的分组流,确定与所述相对应的输出元组集合相关联的至少一个规则,所述至少一个规则用于限制从所述相对应的输出元组集合中对所述输出元组的选择。2.如权利要求1所述的网络设备,其中,所述路由电路进一步配置为使用从服从X.25协议、异步传输(ATM)协议、多协议标签交换(MPLS)协议或帧中继协议的通信协议中选择的面向连接的通信协议来与至少所述第一设备和所述多个第二设备进行通信。3.如权利要求1所述的网络设备,其中,所述路由电路进一步配置为确定所述分组是否是当前分组流的一部分,并且如果是所述当前分组流的一部分,则将所述输出元组的选择限制到将分组排序保留在所述流内。4.如权利要求1所述的网络设备,其中,所述路由电路进一步配置为确定所述分组是否是当前帧的一部分;并且所述路由电路进一步配置为确定与所述网络设备进行通信的端点节点是否支持无序帧。5.如权利要求4所述的网络设备,其中,如果所述分组是当前帧的一部分,则所选择的输出元组是用于所述当前帧中的至少一个其它分组的输出元组。6.如权利要求1所述的网络设备,其中,所述转发表包括输入元组的列表、针对至少一个输入元组的相对应的输出元组集合的列表、以及与至少一个输出元组集合相关联的至少一个规则。7.如权利要求1所述的网络设备,其中,所述转发表包括:第一表,包括输入元组的列表、相对应的输出元组索引的列表、以及与至少一个输出元组集合相关联的至少一个规则指针,其中,每一个输出元组索引被分配给一个输出元组集合;以及第二表,包括相对应的输出元组的列表,以及与每一个索引相关联的相对应的输出元组的列表;其中,所述第一表中的索引的多个实例指向在所述第二表中的相同的输出元组集合。8.如权利要求1所述的网络设备,其中,所述至少一个规则基于在所述相对应的输出元组集合中定义的多个可能的输出端口间的负载均衡来指定输出端口选择。9.一种用于分组通信的方法,包括:在网络设备的输入端口上从链接到所述网络设备的第一设备接收分组;确定与所述分组相关联的输入元组,所述输入元组定义输入端口标识符和第一标签,所述第一标签的值对于位于所述网络设备和所述第一设备之间的链路是特有的;将所述输入元组与转发表进行比较,所述转发表包括所述输入元组和相对应的输出元组集合,其中,每一个输出元组包括输出端口标识符和第二标签,所述第二标签的值对于位于所述网络设备和链接到相应输出端口的多个第二设备中的相应一个第二设备之间的链路是特有的;选择所述相对应的输出元组集合中的输出元组之一,包括针对包括所述分组的给定的分组流,确定与所述相对应的输出元组集合相关联的至少一个规则,所述至少一个规则用于限制从所述相对应的输出元组集合中对所述输出元组的选择;使用来自所选择的输出元组的所述第二标签替换所接收的分组的所述第一标签;以及将所述分组发送到由所选择的输出元组中的所述输出端口标识符指定的输出端口。10.如权利要求9所述的方法,其中,与至少所述第一设备和所述多个第二设备的通信是使用从服从X.25协议、异步传输(ATM)协议、多协议标签交换(MPLS)协议或帧中继协议的通信协议中选择的面向连接的通信协议来进行的。11.如权利要求9所述的方法,进一步包括:确定所述分组是否是当前分组流的一部分,并且如果是所述当前分组流的一部分,则将所述输出元组的选择限制到将分组排序保留在所述流内。12.如权利要求9所述的方法,进一步包括:确定所述分组是否是当前帧的一部分;以及确定端点节点是否支持无序帧,其中,所述端点节点与所述网络设备进行通信。13.如权利要求12所述的方法,其中,如果所述分组是当前帧的一部分,则所选择的输出元组是用于所述当前帧中的至少一个其它分组的输出元组。14.如权利要求9所述的方法,其中,所述转发表包括输入元组的列表、针对至少一个输入元组的相对应的输出元组集合的列表、以及与至少一个输出元组集合相关联的至少一个规则。1...
【专利技术属性】
技术研发人员:R·珀尔曼,R·胡加哈利,
申请(专利权)人:英特尔公司,
类型:发明
国别省市:美国;US
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。