大二层网络-Trill
(1)Trill原理
TRILL协议被设计用于把三层路由的稳定性、可扩展性和高性能引入二层网络。
传统以太网报文进入TRILL网络被转发时,在原有报文前添加了一个TRILL头和外层以太头,在TRILL网络中转发时使用TRILL的路由信息进行转发。
报文到达目的RB后被解封装,最终通过原始的以太网报文头进行普通的交换处理。
(2)Trill转发流程
(a)第1次转发
发送侧交换机第一次转发某一目的MAC的单播报文时,由于MAC表中没有记录该目的MAC和RB的对应关系,该报文将使用组播转发表项按照未知单播报文进行转发。
在下游交换机的Egress RB处,RB会学习源MAC和Ingress nickname的对应关系。
所以经过一次报文交互后,Ingress RB和Egress RB的MAC表中记录了相关的目的MAC和RB的对应关系,后续的报文就使用单播转发表项按照已知单播报文进行转发:
(b)第2次转发
发送测交换机将目的MAC对应的RB的Nickname添加到TRILL头中的Egress RB字段中,将本RB的Nickname添加到TRILL头中的Ingress RB字段中,M值设置为0。
已知单播报文转发时,首先查看Egress RB是否为当前RB,
如果是,则到达接收侧交换机,对报文进行解封装;
如果否,则根据Egress RB查找单播路由表及其关联的下一跳表,更新外层以太头中的目的MAC新为下一跳RB的MAC)和源MAC(更新为当前RB的MAC),从指定接口发送出去。
在转发过程中只修改TRILL头中的Hop Count字段。
(3)Trill的局限性
TRILL交换机之间的地址平面,与TRILL的Leaf交换机与主机之间的地址平面是不同的。
某些拥塞控制消息必须通过发回送到阻塞源头。TRILL核心并不知道主机的真实地址; 它只知道TRILL边缘,因此,类似于Qcn阻塞管理计划无法有效支持这种架构。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· AI与.NET技术实操系列(六):基于图像分类模型对图像进行分类