CN105917617A - 针对校园网中的线路速率性能的单跳叠加架构 - Google Patents
针对校园网中的线路速率性能的单跳叠加架构 Download PDFInfo
- Publication number
- CN105917617A CN105917617A CN201580004658.2A CN201580004658A CN105917617A CN 105917617 A CN105917617 A CN 105917617A CN 201580004658 A CN201580004658 A CN 201580004658A CN 105917617 A CN105917617 A CN 105917617A
- Authority
- CN
- China
- Prior art keywords
- superposition
- switch
- head
- packet
- peer
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4633—Interconnection of networks using encapsulation techniques, e.g. tunneling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4641—Virtual LANs, VLANs, e.g. virtual private networks [VPN]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/64—Routing or path finding of packets in data switching networks using an overlay routing layer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/66—Layer 2 routing, e.g. in Ethernet based MAN's
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
用于检测距离单物理跳的叠加端点并且采用简化的叠加头部而不是常规头部来与被识别的端点进行通信的方法和系统被提供。简化的叠加头部可以载送叠加协议相关的转发和对等体信息,并且可以被设计为在本地载送重要的转发信息,这避免封装和解封装操作的与叠加查找相关的开销。简化的叠加头部可以在与处理内部帧相同的转发管道传递中被处理,并且可以跨不同的转发引擎工作。当检测到单跳链路/保活故障时,备用叠加(原始叠加头部)可以被用于转发。
Description
交叉引用
本申请在2015年1月14日作为PCT国际专利申请被递交,并且要求申请日为2014年1月15日的美国临时专利申请No.14/155,493的优先权,其所有主题通过引用合并于此。
技术领域
本公开通常涉及叠加(overlay)架构,具体地,涉及校园网中的线路速率性能的改善。
背景技术
下一代交换架构中普遍采用叠加来解决涉及跨IP核心的层2(“L2”)扩展、L2多路径、L2拓扑收敛、以及无缝移动的问题。使用叠加(特别是在基于IP的叠加的情况下)的一个缺点是会导致过多的网络带宽用量(由于额外的头部)以及硬件交换性能的退化。
例如,针对在基于IP的叠加(例如,定位器/ID分离协议(“LISP”)或其它虚拟LAN(vLAN)环境)中所用的互联网混合(Internet Mix)(“IMIX”)规格的分组,头部大约可以超出20%。硬件性能退化可能是由于用于叠加的封装和解封装处理的、通过转发管道的额外传递(pass)。
在解封装方面,针对IP叠加,在外部头部上执行IP资源查找的管道资源要求通过大多数转发管道的一个转发传递,以保证IP分组头部的完整性并且确定外部头部解封装的标准。在封装方面,可能需要一个传递来添加封装头部。然后可能需要第二传递来基于外部封装头部桥接(路由)帧。
当单个节点处的相同帧涉及多个叠加协议时,封装和解封装开销都被增加。例如,进入的层3(“L3”)LISP帧可以首先经历解封装操作,并且随后经历L3和L2转发查找。然后L3 LISP帧可以在输出的虚拟vLAN中被封装到L2 LISP中。
存在利用某些网络拓扑来减少此类情形中的开销水平的需求。
附图说明
本公开的许多方面可以通过参考以下附图被更好的理解。附图中的组件不一定是等比例的,而是侧重于清晰地示出本公开的原理。
图1示出简化的叠加头部的实施例。
图2示出采用本文所述的实施例的示例性网络情形。
图3示出与交换机210的实施例相关联的MAC表。
图4示出与交换机220的实施例相关联的MAC表。
图5示出与交换机230的实施例相关联的MAC表。
图6示出与交换机210的实施例相关联的被更新的MAC表。
图7示出与交换机220的实施例相关联的被更新的MAC表。
图8示出在交换机210和交换机220之间的链路故障后与交换机210相关联的被相应更新的MAC表。
图9是示出转发规则的实现方式的实施例的流程图。
图10是示出本公开的某些实施例的流程图。
图11是示出本公开的某些实施例的流程图。
图12是可操作本公开的实施例的网络设备的系统图示。
具体实施方式
用于检测距离单物理跳的叠加端点并且采用简化的叠加头部而不是常规头部来与被识别的端点进行通信的方法和系统被提供。简化的叠加头部可以载送叠加协议相关的转发和对等信息,并且可以被设计为在本地载送重要的转发信息,这避免封装和解封装操作的与叠加查找相关的开销。简化的叠加头部可以在与处理内部帧相同的转发管道传递中被处理,并且可以跨不同的转发引擎工作。当检测到单跳链路/保活(keepalive)故障时,备用叠加(例如,原始叠加头部)可以被用于转发。
在许多校园网部署中,大多数流量可以被称为南北流量(例如,进入数据中心和从数据中心出去)。由于此类校园拓扑的特性,用于这种南北流量的叠加大多数是单物理跳。本公开的实施例通过使用简化的单跳叠加头部来利用在校园环境中发现的这种多数使用的实例。这可以在保留用于少数多跳情形以及用于处理故障的原始叠加头部的同时完成。这允许叠加在减少所需处理开销的同时保持不变。
基于链路状态的叠加协议可以被用来管理简化的单跳叠加头部和它的相关功能。例如,简化的单跳叠加头部可以包括以更通用的头部格式的本地相关的转发信息。被编码在简化的单跳叠加头部中的转发信息可以有助于在不要求额外的转发表查询(现有技术的实现方式中可能需要)的情况下做出转发决定。
虽然本公开主要在校园LISP环境中进行描述,但是应该理解本文所述的实施例可能也适合于包括但不限于vxLAN和多链路的透明互联(“TRILL”)的其它叠加架构。例如,TRILL在数据中心中提供类似的用例,其中,网关功能位于脊交换机中。vxLAN可以被用于扩展多个叶交换机之间的以及叶和脊之间的L2网络(类似于实际上是单物理跳的南北流量)。
上面提到的校园环境中最普遍的情况可能是L2隧道替换在校园的接入侧和分配侧之间运行的生成树拓扑。类似地,L3-LISP隧道可以在核心侧和分配侧(它们也彼此距离单物理跳)之间运行。针对此类单跳隧道,隧道源可以源自进入接口。隧道目的地未必来自原始头部。实质上,头部只需要载送分组的vLAN ID/网络分段。
简化的叠加头部
本公开的实施例定义了具有特定以太类型的简化的叠加头部,其中,简化的叠加头部可以载送用于转发功能在内部(原始)帧上发生的刚好足够的信息,而不需要与传统头部的封装和解封装相关联的额外转发性能开销。图1示出简化的叠加头部的一个实施例。
简化的叠加头部130可以存在于帧(例如,分组100)中。在简化的叠加头部130之前,分组100可以包含诸如目的地地址110和源地址120之类的信息。简化的叠加头部130可以包括以太类型131。例如,以太类型131可以指示2字节的值,该2字节的值指示以太类型值与互联网分组交换(“IPX”)、网桥协议数据单元(“BPDU”)、多协议标签交换(“MPLS”)-单播、MPLS-多播中的一个相对应,或者以太类型131可以指示在0x600(1536)和0xffff之间的另一16位的16进制值,通过该值可以标识以太类型。
以太类型131可以跟随有一个字节的头部长度字段132。头部长度字段132可以指示简化的叠加头部130是8字节。或者,头部长度字段132可以指示简化的叠加头部130是12字节。当简化的叠加头部130是12字节时,这可以指示简化的叠加头部130包含可选平台信息136。可选平台的信息136可以被预留给未来使用,以载送任意其它平台专用的转发上下文信息。
头部长度字段132后面可以是一个字节的协议ID字段133。协议ID字段133可以包含允许多个叠加在相同链路内共存的值,例如,L2-LISP、L3-LISP、TRILL和vxLAN。在一些实施例中,协议ID可以与转发ID一起用来导出最终的转发上下文。
转发实例ID字段134可以跟在协议ID字段133后面并且包括3个字节的信息。转发实例ID字段134可以代表与协议实例ID相对应的本地转发实例。例如,转发实例ID字段134可以代表逻辑接口ID。逻辑接口ID可以被用于表示特定的虚拟路由和转发(“VRF”)或vLAN接口。
跟在转发实例ID字段134后面的可以是单个字节的对等体字段135。对等体字段135可以表示针对已经被标识为跨单物理跳的叠加对等体的本地标识符。例如,对等体字段135的值可以表示虚拟专用LAN服务(“VPLS”)对等体。这种对等体ID可以被用于在本地学习以及转发至被标识的对等体所指向的邻接。
在简化的叠加头部130后面,分组100可以包含原始的以太类型字段140、帧有效负载150、和循环冗余检验(“CRC”)字段160。应该注意的是简化的叠加头部130可以被用于常规的单播数据流量,针对常规单播数据流量,典型隧道中的其它字段使用默认值。针对任意例外以及为了处理L2多播流量,常规隧道头部可以在相同的端点之间使用。换言之,简化的叠加头部130不一定能在所有情形中替代常规隧道头部的要求。
检测适合的叠加端点
本公开的实施例执行单跳叠加控制协议来检测相互距离单物理跳的叠加端点。单跳叠加控制协议还可以用于交换与叠加端点标识符和转发实例映射相关联的信息。该信息可以在构建简化的叠加头部时被使用。单跳叠加控制协议可以被实现为新的链路状态协议。可替换地,单跳叠加控制协议可以跟随有具有额外值的链路层发现协议(“LLDP”)/思科发现协议(“CDP”)来传送叠加信息。
单跳叠加控制协议可以被用于与代表在给定系统上运行的不同叠加协议的对等体设备交换类型长度值(“TLV”)。从对等体设备接收到的信息被反馈至在单跳控制平面被注册的叠加协议。在本示例中,通过链路接收到的控制分组可以在本地被消耗并且不被转发。
以TLV形式交换的信息可以包括指示可应用的叠加协议的叠加协议id。信息还包括隧道端点地址。地址信息可以是以路由桥接(“RBRIDGE”)地址或IP地址的形式。地址信息可以被叠加协议用于确定叠加对等体是否距离单跳。例如,交换机可以针对给定叠加协议通过所有叠加端点运行,并且进行检查以确定每个叠加端点地址是否与经由TLV接收到的隧道端点地址相匹配。如果成功发现匹配,那么单跳叠加控制协议可以将叠加封装邻接更新为基于在TLV中接收到的实例和对等体信息形成的单跳邻接。
在本公开的其它实施例中交换的其他信息可以包括映射至本地实例的叠加协议实例ID。例如,协议实例ID可以是针对LISP和vxLAN的24位实例或者针对TRILL的12位实例。本地实例ID可以是在简化的叠加头部中被载送的24位值,并且可以被用于基于叠加协议ID直接提取类似于桥域值或VRF-ID值的转发上下文。使用简化的叠加头部中的本地实例ID可以通过省去随后的转发管道中的映射查找功能来提供帮助。否则,可能需要映射查找功能来将协议实例ID映射至本地转发域。
最后,TLV信息还可以提供隧道端点地址至对等体ID的映射信息。一旦叠加控制平面接收到如上文所述的携带隧道端点地址的TLV,那么叠加控制平面就可以为对等隧道端点分配本地唯一的对等体ID。接下来,叠加控制平面可以向对等体发送回包含隧道端点地址至对等体ID的映射的TLV。对等体可以利用这种对等体ID来在简化的叠加头部中标识它自身。对等体ID的分配可以是最初发现对等体的接口ID的功能。这种信息可以使得源接口能够基于对等体ID检查逆向路径转发(“RPF”)。
映射可以以范围值被传送以叠加具体系统所支持的大量实例ID。应该理解的是虽然本地实例ID可以作为24位值被传送,但是该值的范围可以由具体系统所支持的转发上下文的数量确定。
图2示出采用上文所述的原理的示样情形。交换机210可以与交换机220和交换机230通信。每个交换机可以具有各自的端口,例如,端口215、端口225和端口235。交换机通过交换机间的链路连接。例如,交换机210经由端口210-220与交换机220通信。类似地,交换机210经由端口210-230与交换机230通信。其他交换机以类似的形式相互通信。此处,端口215具有习得的MAC=MAC1;端口225具有习得的MAC=MAC2;以及端口235具有习得的MAC=MAC3。交换机间的链路可以是L3接口,其中,L2-LISP/vxLAN隧道可以在每对交换机之间运行以载运L2帧。
图3示出与交换机210相关联的MAC表。例如,MAC地址MAC1可以与桥域=10相关联。桥域可以表示允许L2桥接的网络和L3路由的网络流量之间的双向流量流的逻辑接口。MAC1还可以与L2端口/隧道=端口215相关联。相应地,MAC1可能不具有针对隧道邻接内容或针对最终出口端口的值。
MAC地址MAC2可以与相同的桥域=10相关联。MAC2还可以与L2端口/隧道=LISP 210-220相关联。MAC2可以具有针对隧道邻接内容的多个值。例如,源的IP地址可以被表示为交换机210的IP地址。目的地的IP地址可以被表示为交换机220的IP地址。用户数据报协议(“UDP”)目的地端口可以被表示为L2 LISP/vxLAN隧道。最后,实例ID可以被设为16k。针对MAC2的最终出口端口可以被表示为端口210-220。在一些实施例中,该端口可以通过对交换机220的IP地址进行IP查找来决定。
MAC地址MAC3也可以与相同的桥域=10相关联。MAC3还可以与L2端口/隧道=LISP 210-230相关联。MAC3可以具有针对隧道邻接内容的多个值。例如,源的IP地址可以被表示为交换机210的IP地址。目的地的IP地址可以被表示为交换机230的IP地址。用户数据报协议(“UDP”)目的地端口可以被表示为L2 LISP隧道。最后,实例ID可以被设为16k。针对MAC3的最终出口端口可以被表示为端口210-230。
图4示出与交换机220相关联的MAC表。例如,MAC地址MAC1可以与桥域=100相关联。MAC1还可以与L2端口/隧道=LISP 220-210相关联。MAC1可以具有针对隧道邻接内容的多个值。例如,源的IP地址可以被表示为交换机220的IP地址。目的地的IP地址可以被表示为交换机210的IP地址。用户数据报协议(“UDP”)目的地端口可以被表示为L2LISP隧道。最后,实例ID可以被设为16k。
MAC地址MAC2可以与相同的桥域=100相关联。MAC2还可以与L2端口/隧道=端口225相关联。相应地,MAC2可能不具有针对隧道邻接内容的值。
MAC地址MAC3也可以与相同的桥域=100相关联。MAC3还可以与L2端口/隧道=LISP 220-230相关联。MAC3可以具有针对隧道邻接内容的多个值。例如,源的IP地址可以被表示为交换机220的IP地址。目的地的IP地址可以被表示为交换机230的IP地址。用户数据报协议(“UDP”)目的地端口可以被表示为L2 LISP隧道。最后,实例ID可以被设为16k。
图5示出与交换机230相关联的MAC表。例如,MAC地址MAC1可以与桥域=10相关联。MAC1还可以与L2端口/隧道=LISP 230-210相关联。MAC1可以具有针对隧道邻接内容的多个值。例如,源的IP地址可以被表示为交换机230的IP地址。目的地的IP地址可以被表示为交换机210的IP地址。用户数据报协议(“UDP”)目的地端口可以被表示为L2LISP隧道。最后,实例ID可以被设为16k。
MAC地址MAC2可以与相同的桥域=10相关联。MAC2还可以与L2端口/隧道=LISP 230-220相关联。MAC2可以具有针对隧道邻接内容的多个值。例如,源的IP地址可以被表示为交换机230的IP地址。目的地的IP地址可以被表示为交换机220的IP地址。用户数据报协议(“UDP”)目的地端口可以被表示为L2 LISP隧道。最后,实例ID可以被设为16k。
MAC地址MAC3也可以与相同的桥域=10相关联。MAC3还可以与L2端口/隧道=端口235相关联。相应地,MAC3可以不具有针对隧道邻接内容的值。
在图2-5所描述的情形中,叠加控制协议的实施例可以开始在交换机间的链路上运行,多个TLV可以被交换。交换机210可以向交换机220和交换机230两者提供以下TLV:
叠加协议=L2-LISP
本地隧道端点=交换机210的IP地址
实例ID至本地转发域的映射={16k->10}
对等体ID映射=未知
当从交换机210接收到TLV时,交换机220可以通知本地L2-LISP控制平面关于它发现的单跳对等体。一旦交换机220从L2-LISP控制平面接收到关于对等体(端点为交换机210的IP地址)有效性的确认,针对交换机210的IP地址的新的对等体ID可以在交换机220处被创建(例如,“peerA”)。当在这个或其它链路上从交换机210接收另外的消息时,“peerA”标识符可以被重复使用。应该注意的是“peerA”标识符只在交换机220中才有意义。
交换机220可以向交换机210提供回以下TLV:
叠加协议=L2-LISP
本地隧道端点=交换机220的IP地址
实例ID至本地转发域的映射={16k->100}
对等体ID映射={交换机210的IP地址,“peerA”}
然后交换机210可以利用L2-LISP控制平面验证交换机220的IP地址。只要证实IP地址有效,未使用的本地对等体ID(例如,“peerB”)可以被生成并且以下映射从交换机210被提供给交换机220:
叠加协议=L2-LISP
本地隧道端点=交换机210的IP地址
实例ID至本地转发域的映射={16k->10}
对等体ID映射={交换机220的IP地址,“peerB”}
然后交换机210可以将相应的隧道邻接内容从{源的IP地址=交换机210的IP地址;目的地的IP地址=交换机220的IP地址;UDP目的地端口=L2-LISP,实例=16k}更新为{以太类型=单跳叠加;叠加协议=L2-LISP;对等体=PeerA,转发域=100}。为了进行进一步的描述,本文件可以把新的隧道邻接内容称作“L2-LISP-A-B-单跳”。
图6示出与交换机210相关联的被相应更新的MAC表。具体地,与MAC地址MAC2相关联的条目已经被更新。MAC2可以仍旧与相同的桥域=10相关联。MAC2还可以与针对L2端口/隧道的新的条目相关联,其中主要路径P与L2-LISP-A-B-单跳相关联并且备用路径与L2-LISP-A-B相关联。MAC2还可以具有针对隧道邻接内容的多个被更新的值。例如,以太类型可以被表示为单跳叠加。协议可以被表示为L2-LISP。对等体ID可以被表示为“PeerB”。转发域可以被表示为100。针对MAC2的最终出口端口可以被表示为端口210-220。在一些实施例中,该端口210-220可以表示叠加消息在其上在交换机210和交换机220之间被交换的端口。
图7示出与交换机220相关联的被相应更新的MAC表。当从交换机210接收到消息时,交换机220可以将其相应的L2-LISP邻接从{源的IP地址=交换机220的IP地址;目的地的IP地址=交换机210的IP地址;UDP目的地端口=L2-LISP,实例=16k}更新为{以太类型=单跳叠加;叠加协议=L2-LISP;对等体=PeerB,转发域=10}。
具体地,与MAC地址MAC1相关联的条目已经被更新。MAC1现在可以与桥域=100相关联。MAC1还可以与针对L2端口/隧道的新的条目相关联,其中主要路径P与L2-LISP-B-A-单跳相关联并且备用路径与L2-LISP-B-A相关联。MAC1还可以具有针对隧道邻接内容的多个被更新的值。例如,以太类型可以被表示为单跳叠加。协议可以被表示为L2-LISP。对等体ID可以被表示为“PeerA”。转发域可以被表示为10。针对MAC2的最终出口端口可以被表示为端口220-210。在一些实施例中,该端口220-210可以表示叠加消息在其上在交换机220和交换机210之间被交换的端口。
处理故障切换
当交换机210和交换机220之间的链路故障时(或者当没有从另一端接收到保活时),被建立的邻接会回落到如MAC表所定义的备用邻接。例如,在交换机210处,邻接会从主要邻接L2-LISP-A-B-单跳变成备用邻接L2-LISP-A-B。在这种情况下,原始叠加头部会被用于路由帧。帧可以自动获得现有的朝向被指定的隧道端点的替换路径。叠加控制协议的实施例可以使用双向转发检测(“BFD”)作为一种快速的链路故障检测机制。
图8示出在交换机210和交换机220之间的链路故障后与交换机210相关联的被相应更新的MAC表。具体地,与MAC地址MAC2相关联的条目已经被再次更新。MAC2可以仍旧与相同的桥域=10相关联。MAC2还可以与针对L2端口/隧道的新的条目相关联,其中,主要路径P与之前被指定为备用路径的L2-LISP-A-B相关联。现在备用路径可以被指定为“无”。隧道邻接内容可以恢复成它们的初始设置。例如,源的IP地址可以被表示为交换机210的IP地址。目的地的IP地址可以被表示为交换机220的IP地址。用户数据包协议(“UDP”)目的地端口可以被表示为L2 LISP/vxLAN隧道。最后,实例ID可以被设为16k。针对MAC2的最终出口端口现在可以被表示端口210-230,因为端口220似乎不再可用。在一些实施例中,该端口可以通过对交换机220的IP地址进行IP查找来决定,而现在会通过交换机230来决定。
转发和性能
本公开的实施例可以包括转发引擎。转发引擎可能能够在单跳以太类型值经历常规的L2和L3解析功能之前对其进行预解析。预解析步骤可以遵守图9的流程图中所示的某些规则。方法900可以在步骤905处开始,在步骤905处,确定是否给定分组的以太类型=单跳叠加。如果以太类型确实与单跳叠加相对应,那么方法900进行至步骤910,在步骤910处,可以确定分组的叠加对等体ID加上所确定的第一偏移值是否不等于源接口ID。
如果在步骤910处,如果确定分组的叠加对等体ID加上所确定的第一偏移值不等于源接口ID,那么方法900可以进行至步骤915并且丢弃帧。否则,方法900可以进行至步骤920并且对等体ID值可以被设置为等于分组的叠加对等体ID加上所确定的第二偏移值。在一些实施例中,第二偏移值可以取决于被识别的协议ID值。
接下来,方法900可以进行至步骤925。在步骤925处,可以确定分组的叠加协议值是否是L2-LISP、vxLAN、TRILL或802.3无线接入点的控制和配设(“CAPWAP”)中一者。如果分组的叠加协议值是上述所列的值中的一者,那么方法900可以进行至步骤930,在步骤930处,vlan/桥域ID值被设置为等于分组的叠加转发ID加上基于具体协议值的预定的偏移。
然后方法900可以进行至步骤935,在步骤935处可以确定分组的叠加协议值是否是L3-LISP。如果是这种情况,那么方法900可以进行至步骤940。在步骤940处,VRF ID可以被设置为等于分组的叠加转发ID加上基于具体协议值的预定偏移。
然后方法900可以进行至步骤945。在步骤945处,叠加头部可以从分组中移除,同时保持分组的其余部分不变。在一些实施例中,单跳叠加头部可以总在入口上被移除并且从不按它原来的样子被桥接。方法900可以在步骤950处断定常规分组转发基于分组头部信息被执行。
方法900可以部分基于在转发管道中不需要查找阶段的条件和静态偏移值。此外,方法900可以在现有的转发引擎中的预查找解析/分类阶段被容易地处理。在某些系统(例如,思科的cat6k sup2T系统)中,方法900可以通过现场可编程门阵列(“FPGA”)功能执行。
图10是示出本公开的某些实施例的流程图。方法1000可以在步骤1005处开始,在步骤1005处,包括第一叠加头部的第一分组可以被接收。在本公开的一些实施例中,方法1000可以在校园网拓扑中的一个或多个交换机上被采用。校园网可以根据由L2-LISP、L3-LISP、TRILL以及vxLAN中的一者定义的协议操作。接下来,在步骤1010处,在单物理跳中可到达的一个或多个网络设备可以被识别。
方法1000可以进行至步骤1015。在步骤1015处,第二叠加头部可以被添加至第一分组。在一些实施例中,第二叠加头部可以包括不同于第一叠加头部所采用的以太类型的新的以太类型。第二叠加头部还可以包括至少部分被用于导出转发上下文的协议ID值。第二叠加头部还可以包括与协议ID值一起用来导出转发上下文的转发实例ID值。
第二叠加头部还可以包括表示被标识为在单物理跳中可到达的网络设备的对等体ID值。在本公开的一些实施例中,对等体ID可以是文本值,例如“peerA”。第二叠加头部还可以包括平台专用转发上下文信息。
当将第一分组转发至被标识为在单物理跳中可到达的网络设备时,方法1000可以在步骤1020处断定第二叠加头部可以被采用。然而,当将第一分组转发至未被标识为在单物理跳中可到达的网络设备时,第一叠加头部可以被采用。
图11是示出本公开的某些实施例的流程图。
方法1100可以在步骤1105处开始,在步骤1105处,位于距离第一交换机单物理跳的第二交换机可以被识别。
方法1100可以进行至步骤1110,在步骤1110处,一个或多个信息片段可以被提供给第二交换机作为类型长度值。该一个或多个信息片段可以被用于建立单跳头部以在第一交换机和第二交换机之间传输分组时使用。一个或多个信息片段可以包括叠加协议ID值、隧道端点地址、叠加协议实例ID至本地实例ID的映射、以及隧道端点地址至被分配的对等体ID的映射。
第一交换机可以被配置为确定隧道端点地址是否与叠加端点地址相匹配。如果匹配,那么第一交换机可以将叠加封装邻接更新为单跳邻接。在本公开的一些实施例中,在构造单跳头部期间,第一交换机可以包括本地实例ID。隧道端点地址至被分配的对等体ID之间的映射还可以被包含在单跳头部中。
在一些实施例中,方法1100可以在步骤1115处断定MAC表可以被更新为反映被建立的与第二交换机的单跳关系。MAC表可以在第一交换机和第二交换机两者处被更新。
图12更详细地示出可以采用本公开的实施例的网络设备,例如,交换机。该网络设备可以至少包括处理设备1202、存储器1204、输入/输出(I/O)设备1206、以及网络接口1208,其中每个设备可以经由本地接口1210被通信地耦合。MAC表可以位于存储器1204内。处理设备1202可以是用于执行软件(特别是存储在存储器1204中的软件)的硬件设备。处理设备1202可以是任意定制的或市售的处理器、中央处理单元(CPU)、与内容服务器相关联的若干处理器中的辅助处理器、基于半导体的微处理器(以微芯片或芯片组的形式)、微处理器、或通常执行软件指令的任意设备。转发引擎可以由处理器设备1202实施。
I/O设备1206可以包括输入设备,例如但不限于,键盘、鼠标、扫描仪、麦克风等。此外,I/O设备1206还可以包括输出设备,例如但不限于,打印机、显示器等。
网络接口1208可以包括与输入和输出两者通信的一个或多个设备,例如但不限于调制器/解调器(用于接入另一设备、系统或网络的调制解调器)、射频(RF)收发器或其它类型的收发器、电话接口、桥接器、路由器等。
本地接口1210例如可以是但不限于一个或多个总线、或其它有线或无线连接。本地接口1210可以具有为了简明而被省略的额外的元件以使能进行通信,例如,控制器、缓冲器(缓存)、驱动器、中继器和接收器。此外,本地接口1210可以包括地址、控制、和/或数据连接以使能在上述组件之间进行适当通信并且提供与处理设备1202通信的接口。
在一些实施例中,网络设备还可以被配置有耦接至本地接口1210的集成存储设备1212。存储设备1212可以被配置为存储多个内容数据块。在一些实施例中,存储设备1212可以被用于存储一个或多个MAC表或映射表。
存储器1204可以包括适合的操作系统(O/S)1214。操作系统1214本质上可以控制其他计算机程序(例如,调度、输入-输出控制、文件和数据管理、存储器管理、以及通信控制和相关服务)的执行。逻辑1216可以包括可执行代码以向其他网络设备发送TLV。
存储器1204可以包括易失性存储器元件(例如,随机访问存储器(RAM,例如DRAM、SRAM、SDRAM等))和非易失性存储器元件(例如,ROM、硬盘驱动器、磁带、CDROM等)中的任意一个或组合。此外,存储器1204可以结合电、磁、光、半导电、和/或其它类型的存储介质。应该注意的是存储器1204可以具有分布式架构,其中,通过处理设备1202可访问的各种组件被远离彼此放置。
存储器1204中的软件可以包括一个或多个独立程序,每个独立程序包括用于实现逻辑功能的可执行指令的有序列表。在所述实施例中,存储器1204中的软件可以包括操作系统1214和逻辑1216,如上文所解释的。逻辑1216的功能可以利用单个模块被实现或者被分布在多个模块中。
当逻辑1216正在运行时,处理设备1202可以被配置为执行存储器1204中的逻辑1216,以自或向存储器1204传输数据,并且被配置为一般控制逻辑1216的操作。逻辑1216和O/S 1214的整体或部分(但通常是后者)被处理设备1202读取(可能被缓存在处理设备1202中)然后被执行。
网络设备可以包括适合于使能与其它网络设备进行通信(例如,TCP/IP)或者适合于接收和处理转发请求以将叠加通信服务提供给交换机的通信接口。例如,通信接口可以是适合于IP网络、同轴电缆网络、HFC网络、和/或无线网络等网络上的通信的类型。
通信端口(或端口)还可以被包含在从其它设备接收信息或者向其他设备发送信息的网络设备中。例如,通信端口可以以USB(通用串行总线)、以太网、IEEE-1394、串行和/或并行端口等为特征。此外,通信端口可以针对家庭网络(例如,HPNA/MoCA等)配置。
虽然本描述对其具体实施例进行了描述,但是这些具体实施例只是示例性的而不是限制性的。例如,虽然描述了具体应用,但本公开的特征可能适用于其他应用。任意适合的编程语言(包括C、C++、Java、汇编语言等)可以被用于实施具体实施例的例程。不同的编程技术(例如,面向过程的或面向对象的)可以被采用。例程可以在单个处理设备或多个处理器上执行。虽然步骤、操作或计算以特定的顺序呈现,但是在一些实施例中,这种顺序可以被改变。在一些实施例中,说明书中连续示出的多个步骤可以被同时执行。本文所述的一系列操作可以被中断、暂停或以其它方式由另一处理(例如,操作系统、内核等)控制。例程可以在操作系统环境中操作或者作为占用所有或大部分系统处理的独立例程操作。功能可以以硬件、软件或其组合被执行。
在本文的描述中,提供了大量具体的细节(例如,组件和/或方法的示例)以提供对具体实施例的充分理解。然而,本领域的相关技术人员应该承认具体实施例可以在没有一个或多个具体细节的情况下实践,或者利用其它的装置、系统、构件、方法、组件、材料、部分等实践。在其它实例中,众所周知的结构、材料或操作没有被具体地详细描述以避免模糊具体实施例的方面。
具体实施例可以通过利用可编程的通用数字计算机实现,通过利用专用集成电路、可编程逻辑设备、现场可编程门阵列,光、化学、生物、量子或纳米工程系统、组件和机制可以被使用。通常,具体实施例的功能可以通过本领域已知的任意装置获得。分布式的网络系统、组件、和/或电路可以被使用。数据的通信或传递可以是有线的、无线的、或者通过任意其它装置。
包括摘要中所述的内容的被示出的具体实施例的上述描述不意图进行穷举或者将本发明限制于本文描述的精确形式。本领域的相关技术人员应该承认和理解各种等同修改的具体实施例可以落在本精神和范围内。如所示,这些修改可以是根据被示出的具体实施例的上述描述对本系统和方法进行的,并且被包含在精神和范围内。
因此,虽然本文参考其具体实施例描述了各种系统和方法,上述公开意图包括修改的界限、各种变化和替换,并且应该理解在一些实例中,在不背离提出的精神和范围的情况下,具体实施例的一些特征可以在不相应地使用其它特征的情况下被采用。因此,可以进行许多修改以将特定的情形或材料适应于基本的精神和范围。不打算将各种实施例限制于所附权利要求中所用的具体项目和/或作为最佳方式公开的具体实施例(被构想来执行系统和方法),而某些实施例可以包括落在所附权利要求的范围内的任意和所有具体实施例和等同物。
Claims (20)
1.一种方法,包括:
接收包括第一叠加头部的第一分组;
识别在单物理跳中能到达的一个或多个网络设备;
将第二叠加头部添加至所述第一分组;以及
当将所述第一分组转发至被标识为在单物理跳中能到达的网络设备时,采用所述第二叠加头部。
2.根据权利要求1所述的方法,其中,所述方法在校园网络拓扑中的一个或多个交换机上被采用。
3.根据权利要求1所述的方法,还包括:当将所述第一分组转发至未被标识为在单物理跳中能到达的网络设备时,采用所述第一叠加头部。
4.根据权利要求2所述的方法,其中,所述校园网络根据L2-LISP、L3-LISP、TRILL和vxLAN中的一者定义的协议操作。
5.根据权利要求1所述的方法,其中,所述第二叠加头部包括与所述第一叠加头部所采用的以太类型不同的新的以太类型。
6.根据权利要求5所述的方法,其中,所述第二叠加头部还包括至少部分被用于导出转发上下文的协议ID值。
7.根据权利要求6所述的方法,其中,所述第二叠加头部还包括与所述协议ID值一起用来导出所述转发上下文的转发实例ID值。
8.根据权利要求7所述的方法,其中,所述第二叠加头部还包括表示被标识为在单物理跳中能到达的网络设备的对等体ID值。
9.根据权利要求8所述的方法,其中,所述对等体ID值是文本值。
10.根据权利要求9所述的方法,其中,所述第二叠加头部还包括平台专用转发上下文信息。
11.一种第一交换机,包括:
存储器;以及
被配置为执行存储在所述存储器中的指令的处理器,所述指令包括:
识别位于所述第一交换机的单物理跳内的第二交换机;以及
向所述第二交换机提供一个或多个信息片段作为类型长度值,其中,所述一个或多个信息片段能够被用于建立供所述第一交换机和所述第二交换机之间传送分组时使用的单跳头部。
12.根据权利要求11所述的第一交换机,其中,所述处理器还被配置为提供叠加协议ID值作为所述信息片段中的一个信息片段。
13.根据权利要求12所述的第一交换机,其中,所述处理器还被配置为提供隧道端点地址作为所述信息片段中的一个信息片段。
14.根据权利要求13所述的第一交换机,其中,所述处理器还被配置为确定所述隧道端点地址与叠加端点地址是否相匹配;以及
如果所述隧道端点地址与叠加端点地址相匹配,那么将叠加封装邻接更新为单跳邻接。
15.根据权利要求13所述的第一交换机,其中,所述处理器还被配置为提供叠加协议实例ID至本地实例ID的映射。
16.根据权利要求15所述的第一交换机,其中,所述处理器还被配置为在所述单跳头部中包括所述本地实例ID。
17.根据权利要求13所述的第一交换机,其中,所述处理器还被配置为提供所述隧道端点地址至被分配的对等体ID的映射作为所述信息片段中的一个信息片段。
18.根据权利要求16所述的第一交换机,其中,所述处理器还被配置为在所述单跳头部中包括由所述第二交换机分配的第一对等体ID。
19.根据权利要求16所述的第一交换机,其中,所述处理器还被配置为更新MAC表以反映所建立的与所述第二交换机的单跳关系。
20.一种方法,包括:
确定分组的以太类型是否等于单跳叠加;
如果分组的以太类型等于单跳叠加,那么确定与所述分组相关联的叠加对等体ID加上所确定的第一偏移值是否不等于源接口ID;
将对等体ID值设置为等于与所述分组相关联的所述叠加对等体ID加上所确定的第二偏移值;
将vlan域ID值设置为等于与所述分组相关联的叠加转发ID加上第二偏移值,所述第二偏移值是基于作为L2-LISP、vxLAN、TRILL或802.3CAPWAP中的一者的协议值;
将VRF ID设置为等于所述分组的叠加转发ID加上第三偏移,所述第三偏移是基于等于L3-LISP的所述协议值;以及
从所述分组中移除叠加头部,同时保持所述分组的其余部分不变。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/155,493 US9531564B2 (en) | 2014-01-15 | 2014-01-15 | Single hop overlay architecture for line rate performance in campus networks |
US14/155,493 | 2014-01-15 | ||
PCT/US2015/011378 WO2015108956A1 (en) | 2014-01-15 | 2015-01-14 | Single hop overlay architecture for line rate performance in campus networks |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105917617A true CN105917617A (zh) | 2016-08-31 |
CN105917617B CN105917617B (zh) | 2019-10-25 |
Family
ID=52450586
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201580004658.2A Active CN105917617B (zh) | 2014-01-15 | 2015-01-14 | 针对校园网中的线路速率性能的单跳叠加架构 |
Country Status (4)
Country | Link |
---|---|
US (1) | US9531564B2 (zh) |
EP (1) | EP3095216B1 (zh) |
CN (1) | CN105917617B (zh) |
WO (1) | WO2015108956A1 (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9967231B2 (en) * | 2015-03-18 | 2018-05-08 | Cisco Technology, Inc. | Inter-pod traffic redirection and handling in a multi-pod network environment |
WO2017091219A1 (en) * | 2015-11-25 | 2017-06-01 | Hewlett Packard Enterprise Development Lp | Processing virtual local area network |
CN111510379B (zh) | 2017-03-14 | 2024-04-16 | 华为技术有限公司 | Evpn报文处理方法、设备及系统 |
CN110650076B (zh) * | 2018-06-26 | 2021-12-24 | 华为技术有限公司 | Vxlan的实现方法,网络设备和通信系统 |
CN110875855A (zh) * | 2018-08-30 | 2020-03-10 | 北京华为数字技术有限公司 | 检测网络链路状态的方法和网络设备 |
US10924397B2 (en) * | 2019-02-22 | 2021-02-16 | Vmware, Inc. | Multi-VRF and multi-service insertion on edge gateway virtual machines |
CN115567450A (zh) * | 2019-09-06 | 2023-01-03 | 华为技术有限公司 | 一种网络设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060233317A1 (en) * | 2005-04-15 | 2006-10-19 | Mci, Inc. | Handling emergency service calls originating from internet telephony |
US20080310344A1 (en) * | 2007-06-15 | 2008-12-18 | Telefonaktiebolaget Lm Ericsson (Publ) | Tunnel overhead reduction |
US20120327936A1 (en) * | 2011-06-27 | 2012-12-27 | Melman David | Fcoe over trill |
US8520540B1 (en) * | 2010-07-30 | 2013-08-27 | Cisco Technology, Inc. | Remote traffic monitoring through a network |
US20130322453A1 (en) * | 2012-06-04 | 2013-12-05 | David Ian Allan | Routing vlan tagged packets to far end addresses of virtual forwarding instances using separate administrations |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001251351A (ja) * | 2000-03-02 | 2001-09-14 | Nec Corp | パケット交換機における入力パケット処理方式 |
US6985963B1 (en) * | 2000-08-23 | 2006-01-10 | At Home Corporation | Sharing IP network resources |
US7436804B2 (en) * | 2002-09-18 | 2008-10-14 | Qualcomm Incorporated | Methods and apparatus for using a Care of Address option |
US7480255B2 (en) * | 2004-05-27 | 2009-01-20 | Cisco Technology, Inc. | Data structure identifying for multiple addresses the reverse path forwarding information for a common intermediate node and its use |
US8391148B1 (en) * | 2007-07-30 | 2013-03-05 | Rockstar Consortion USLP | Method and apparatus for Ethernet data compression |
US8054744B1 (en) * | 2007-10-25 | 2011-11-08 | Marvell International Ltd. | Methods and apparatus for flow classification and flow measurement |
JP5915454B2 (ja) * | 2011-09-01 | 2016-05-11 | 富士通株式会社 | ネットワークシステム |
US9769049B2 (en) * | 2012-07-27 | 2017-09-19 | Gigamon Inc. | Monitoring virtualized network |
US8837476B2 (en) * | 2012-09-07 | 2014-09-16 | International Business Machines Corporation | Overlay network capable of supporting storage area network (SAN) traffic |
US9179197B2 (en) * | 2012-10-10 | 2015-11-03 | Sonos, Inc. | Methods and apparatus for multicast optimization |
US9143582B2 (en) * | 2013-03-08 | 2015-09-22 | International Business Machines Corporation | Interoperability for distributed overlay virtual environments |
-
2014
- 2014-01-15 US US14/155,493 patent/US9531564B2/en active Active
-
2015
- 2015-01-14 CN CN201580004658.2A patent/CN105917617B/zh active Active
- 2015-01-14 WO PCT/US2015/011378 patent/WO2015108956A1/en active Application Filing
- 2015-01-14 EP EP15702878.8A patent/EP3095216B1/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060233317A1 (en) * | 2005-04-15 | 2006-10-19 | Mci, Inc. | Handling emergency service calls originating from internet telephony |
US20080310344A1 (en) * | 2007-06-15 | 2008-12-18 | Telefonaktiebolaget Lm Ericsson (Publ) | Tunnel overhead reduction |
US8520540B1 (en) * | 2010-07-30 | 2013-08-27 | Cisco Technology, Inc. | Remote traffic monitoring through a network |
US20120327936A1 (en) * | 2011-06-27 | 2012-12-27 | Melman David | Fcoe over trill |
US20130322453A1 (en) * | 2012-06-04 | 2013-12-05 | David Ian Allan | Routing vlan tagged packets to far end addresses of virtual forwarding instances using separate administrations |
Non-Patent Citations (1)
Title |
---|
HUAWEI: ""TRILL Integrated Routing and Bridging Solution"", 《DRAFT-HAO-TRILL-IRB-02.TXT,INTERNATIONAL ENGINEERING TASK FORCE》 * |
Also Published As
Publication number | Publication date |
---|---|
EP3095216A1 (en) | 2016-11-23 |
EP3095216B1 (en) | 2020-09-30 |
US20150200848A1 (en) | 2015-07-16 |
CN105917617B (zh) | 2019-10-25 |
WO2015108956A1 (en) | 2015-07-23 |
US9531564B2 (en) | 2016-12-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10164838B2 (en) | Seamless segment routing | |
CN111886833B (zh) | 重定向控制信道消息的方法和用于实现该方法的设备 | |
CN109218178B (zh) | 一种报文处理方法及网络设备 | |
CN108574616B (zh) | 一种处理路由的方法、设备及系统 | |
EP3254417B1 (en) | Method and system for supporting port ranging in a software-defined networking (sdn) system | |
CN105917617A (zh) | 针对校园网中的线路速率性能的单跳叠加架构 | |
CN109076018B (zh) | 利用is-is协议实现分段路由网络中网元的方法和设备 | |
RU2704714C1 (ru) | Технологии для предоставления максимальной глубины идентификатора сегмента узла и/или линии связи, использующие ospf | |
US10263808B2 (en) | Deployment of virtual extensible local area network | |
US20120063451A1 (en) | Shared virtual tunnels supporting mac learning in communication networks | |
WO2022062506A1 (zh) | 一种数据处理方法、装置、存储介质及电子装置 | |
US9819574B2 (en) | Concerted multi-destination forwarding in a joint TRILL fabric and VXLAN/IP fabric data center | |
US7864666B2 (en) | Communication control apparatus, method and program thereof | |
WO2016174597A1 (en) | Service based intelligent packet-in mechanism for openflow switches | |
US20160226753A1 (en) | Scheme for performing one-pass tunnel forwarding function on two-layer network structure | |
CN112511431B (zh) | 一种用于虚拟化网络仿真的路由流量融合方法 | |
CN103905284B (zh) | 一种基于evi网络的流量负载分担方法和设备 | |
CN104702476A (zh) | 分布式网关、基于分布式网关的报文处理方法及装置 | |
KR20140024051A (ko) | 다수의 인터페이스 네트워크 노드들에 대한 통신 메커니즘 | |
WO2020230146A1 (en) | Method and apparatus for layer 2 route calculation in a route reflector network device | |
WO2018138544A1 (en) | Using location identifier separation protocol to implement a distributed gateway architecture for 3gpp mobility | |
CN108282404B (zh) | 一种路由生成方法、装置及系统 | |
US20170149663A1 (en) | Control device, communication system, control method, and non-transitory recording medium | |
Nakamura et al. | ovstack: A protocol stack of common data plane for overlay networks | |
WO2024016869A1 (zh) | 一种组播配置方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |