802.1D生成树协议详解:二层交换网络如何防止环路
创始人
2026-09-03 22:01:45

在设计网络时,工程师总喜欢在核心交换机之间加冗余链路——主链路断了备用链路自动顶上,这样网络不会因为一根光纤坏了就瘫痪。但二层交换网络(交换机之间用网线或光纤连接的网络)有个头疼的问题:如果两台交换机之间同时接了两根线,就形成了"环路",广播包和未知单播包会在环路里无限转发,最终把整个网络的带宽占满,这就是臭名昭著的"广播风暴"。生成树协议(Spanning Tree Protocol,简称STP)就是专门解决这个问题的,IEEE 802.1D是它的标准版本,今天就好好聊聊STP的工作原理、端口角色,以及为什么企业网络里离不开它。

STP的核心思想很简单:把交换网络的物理拓扑自动变成一个逻辑上的"树"结构——没有任何环路的树,所有交换机之间有且只有一条路径可达。如果树里的某条路径断了,STP能自动把原来被阻塞的冗余路径"解封",恢复网络连通。这个过程完全自动,不需要工程师手动配置。那STP怎么知道哪台交换机是"根"、哪个端口该阻塞呢?靠的是一种叫BPDU(桥协议数据单元)的特殊数据包。交换机启动后会互相交换BPDU,BPDU里包含交换机的"桥ID"(Bridge ID,由优先级加MAC地址组成)和"根路径开销"(RPC,到根交换机的累计开销)。通过交换这些信息,所有交换机就能算出网络里的根是谁、自己离根的路径有几条、哪条是最优路径。

理解STP最重要的是搞清楚三个概念:根桥(Root Bridge)、根端口(Root Port)、指定端口(Designated Port)。根桥是整个网络的"老大"——桥ID最小的那台交换机就是根桥,整个网络只会有一个根桥。根端口是每台非根交换机上离根桥最近的那个端口——"最近"指的是根路径开销最小,如果两台交换机同时接根桥,那端口的对端MAC地址最小的那个成为根端口。指定端口是每条物理链路上唯一负责转发数据的端口——根桥的所有端口都是指定端口;非根桥上,除了根端口,其他端口如果是自己所在链路的指定者,也可以成为指定端口。既不是根端口也不是指定端口的,就是阻塞端口,不转发用户数据(只监听BPDU),这就是"树"上被剪掉的冗余路径。

STP的工作过程分三个阶段。第一个阶段是"选举根桥":网络里所有交换机都认为自己是根桥,互相发BPDU,桥ID小的胜出,最后只有一台被大家公认为根桥。第二个阶段是"选举根端口和指定端口":每台非根交换机选出自己的根端口,每条链路选出一个指定端口,剩下的端口进入阻塞状态。第三个阶段是"拓扑稳定":整个网络变成了一个无环的树,所有端口都处于转发或阻塞状态,不再有BPDU的频繁交换。但网络拓扑是会变化的——某根线断了、某台交换机挂了,STP需要重新计算。但传统的STP(802.1D)在拓扑变化时收敛很慢,一般要30到50秒,这个等待时间在生产网络里是不可接受的。所以后来IEEE推出了RSTP(快速生成树,802.1W),收敛时间缩短到1到2秒,现在生产网络里用的基本都是RSTP而不是原始的STP了。

实际网络设计中关于STP的几个实战经验。第一,根桥的位置很重要——根桥应该放在网络的核心位置,比如核心交换机,而不是边缘交换机,这样整个生成树的路径最短、开销最小。不要让STP自己选举根桥,要在交换机上手动配置根桥优先级(把核心交换机的优先级设得低一点,比如4096,默认是32768)。第二,接入层交换机上的端口一般不需要参与生成树计算——如果某个端口只接了一台PC机(不是交换机),可以把它设为PortFast模式,跳过监听和学习阶段直接进入转发,PC开机就能上网。但如果PortFast端口接了交换机,就会产生环路,所以很多交换机默认会在PortFast端口收到BPDU时自动关闭PortFast。第三,STP不是万能的——如果网络里有多个VLAN,每个VLAN应该有自己的生成树(PVSTP,每VLAN生成树),这样可以让不同VLAN阻塞不同的冗余链路,从而实现负载均衡。

最后说几个初学者容易搞混的概念。STP是二层协议,跟三层路由协议(OSPF、RIP)没关系,它只管交换机之间的二层路径。生成树是"单向阻塞"——一条链路的两端端口,只有一个会被阻塞,另一个继续转发,这样保证整个拓扑是树而不是有环的图。如果有3台交换机两两相连(三角形拓扑),STP会阻塞其中一条链路的一个端口,把三角形变成直线。总的来说,STP是交换网络的基础协议,虽然现在有更先进的二层技术(比如TRILL、SPB),但绝大多数企业网络里,STP/RSTP依然是二层防环的主力工具,学会它是网络工程师的必修课。

⚠️
本网站信息内容及素材来源于网络采集或用户发布,如涉及侵权,请及时联系我们,发送链接至2697952338@QQ.COM,我们将第一时间进行核实与删除处理。

相关内容

热门资讯

3G开发现在还有没有必要学:现... 现在提3G开发,很多人的第一反应是这东西不是早淘汰了吗。确实,国内三大运营商的3G网络基本都退网了,...
网络编程语言学哪个:从Sock... 想学网络编程,第一个问题往往是选语言。这个问题没有标准答案,因为不同语言擅长的地方不一样,关键看你最...
和众汇富1980的学员反馈,年... 对于离开校园多年、重新接触系统课程的学习者来说,需要适应的是自己的学习速度可能与年轻时不同。和众汇富...
和众汇富1980的学员反馈,从... 有些课程在第一次听讲时会给人留下很好的印象,老师表达流畅,案例也容易理解,学员自然会觉得自己已经掌握...
和众汇富1980的学员反馈,从... 评价投资教育课程时,人们容易期待学完之后立刻出现看得见的变化,但一些重要收获可能恰好表现为处理问题时...
和众汇富1980的学员反馈,学... 一门课程的学员心得里,除了对教学内容的评价,也经常能看到有关学习提醒、资料整理和沟通体验的描述。和众...
和众汇富1980的学员反馈,原... 学过一段时间投资知识的人,可能已经形成熟悉的信息获取方式,也知道自己喜欢什么类型的讲解,但经验越多,...
和众汇富1980的学员反馈,从... 刚接触一套内容丰富的课程时,学员最容易记住的是可选择的栏目很多,却不一定能立即判断哪些内容对自己更重...
和众汇富1980适合哪些人,喜... 有些家庭平时喜欢在晚饭后谈谈新闻,看到重要财经话题,也会交换各自的理解和疑问。和众汇富1980通过职...
和众汇富1980适合哪些人,习... 线上课程越来越丰富,但依然有人觉得,用纸笔写下一个问题,比打开多层菜单或安装复杂软件更容易集中注意力...
和众汇富1980适合哪些人,曾... 不少人曾经集中学习过一段时间的投资知识,后来因为工作或家庭安排暂停,重新开始时却不知道从哪里接上。和...
和众汇富1980适合哪些人,担... 刚开始了解投资知识的人,经常会遇到一个矛盾:明明有很多地方不懂,却担心自己的问题太简单,宁愿反复搜索...
和众汇富1980适合哪些人,工... 经常出差、轮换办公地点或者需要应对临时工作安排的人,可能很难为自己保留每天固定的听课时间。和众汇富1...
和众汇富1980适合哪些人,面... 平时经常阅读财经新闻的人,可能已经接触过不少观点,却仍会因为不同文章说法不一而感到困惑。和众汇富19...
和众汇富1980适合哪些人,面... 平时经常阅读财经新闻的人,可能已经接触过不少观点,却仍会因为不同文章说法不一而感到困惑。和众汇富19...
和众汇富1980适合哪些人,重... 面对网络上种类繁多的投资学习宣传,有些人不会因为课程介绍得热闹就立即报名,而是希望先了解实际教什么、...
和众汇富1980适合哪些人,同... 工作之外还在准备职业考试、学习外语或其他技能的人,往往已经拥有不少学习任务,增加一门投教课程之前最担...
和众汇富1980适合哪些人,习... 长期依靠自己查资料、看课程的人,往往已经习惯独立安排学习,却也可能遇到问题无人讨论、进度中断后难以重...
和众汇富1980适合哪些人,习... 长期依靠自己查资料、看课程的人,往往已经习惯独立安排学习,却也可能遇到问题无人讨论、进度中断后难以重...
和众汇富1980适合哪些人,希... 退休生活拥有更多可以自主安排的时间,但从熟悉的工作节奏转向个人选择,也可能让人一时不知道怎样建立新的...
和众汇富1980适合哪些人,习... 有些职场人擅长安排会议、拆分工作任务,面对个人兴趣学习时,却发现熟悉的规划能力并没有自然转化为清楚的...
和众汇富1980适合哪些人,习... 平时习惯通过播客、有声书或语音讲解获取知识的人,往往能够接受较长时间的口头表达,却未必擅长在听完之后...
和众汇富1980适合哪些人,习... 不少人平时习惯通过短视频了解财经话题,几分钟便能接触一个新观点,但想回头解释这些内容之间的联系时,又...
和众汇富1980适合哪些人,习... 不少成年人平时习惯通过阅读文章和书籍学习知识,面对以讲解为主的视频课程时,却发现自己难以按照原来的方...
和众汇富1980适合哪些人,从... 很多成年人已经习惯了坐在教室里听老师讲课,面对线上教学时,却发现自主安排时间、整理资料和保持注意力都...