1.stp协议的由来。

在二层网络中,交换机起到了很重要的作用,如果有一台交换机出现故障会影响网络的使用,为了避免存在单点故障,在实际的二层链路中会采用链路冗余,也就是采用交换设备之间多条联络连接,即多台交换机之间都有连接,这样即使一台交换机故障了,也可以使用其他交换机。这就是链路冗余。

链路冗余会------带来环路。

1.1环路影响一----广播风暴。

上图主机A发送arp报文,交换机B收到后,除接收端口外,其余端口都发送一份。B-->A-->C--->B这样循环(外圈)

交换机A收到交换机C的报文后又发给交换价B。B-->C-->A--B(内圈)

由于交换价没有TTL值,所以这些报文一直这样循环,占用交换机资源。

而且主机B会收到2份报文。试想你下了一份手机壳的单,过来两份手机壳,还是货到付款的。

1.2环路影响二---mac地址震荡。

上图,主机A发送arp报文。交换机B首先是学习主机A的mac地址在G0-0-3上。并且交换机B吧数据帧发给A--->C---->B并且从G0-0-2口又学习到同一mac地址。

交换机以后学习到的mac地址为准,(因为平时办公室用笔记本电脑,直接吧网线拔了,去另个办公室插上,还能上网。)

就会产生mac地址在两个端口跳。导致交换机获取mac地址不稳定。

2.生成树计算过程

2.1根交换机的选举。

1.选桥(交换机是由网桥演变过来的)ID小的为根交换机,上图中SWA最小,选为根。

2.每个交换机刚启动的时候都认为自己是根交换机,然后在和网络中发送BPDU报文和交换设备比桥ID。

3.桥ID的组成32768(优先级).00e0-fc16-ee43(mac地址)  其中优先级可以修改,取值范围为0-65535里面4096*n也就是4096倍数 (n取0及正整数)

2.2非根交换机的根端口选举。

1.选开销小的(带宽越大,开销越小)距离根交换机越近。

2.邻居桥ID小的。

3.端口ID(端口号)(上游的端口)选小的

2.3选举网段的指定端口

0.这个网段是指数据链路段,比如交换机B和C之间的连线就是网段。

1.选开销小的(带宽越大,开销越小)距离根交换机越近。

2.邻近交换机 桥ID小的。

3.端口ID(端口号)(上游的端口)选小的

剩余交换机端口进行阻塞。

3.交换机端口的角色

交换机端口状态:

各个状态的转换

开机后从disabled转listenning,listenning状态默认停留15秒,如何接收到的bpdu被告知需要blocking,就直接进入阻塞状态。

否则进入learning状态,默认停留15秒,如果需要阻塞,直接进入blocking状态,否则进入forwarding状态就成为正常使用端口。

如果需要阻塞,直接进入blocking状态。

根交换机每隔两秒中发送一个bpdu报文,告知非根交换机状态(是否还活着)。非根交换机20s收不到根交换机报文,则视为根交换机已死,重新选举根交换机。

OSI模型第二层数据链路层-STP协议的更多相关文章

  1. OSI模型——传输层

    OSI模型——传输层 运输层 运输层概述 运输层提供应用层端到端通信服务,通俗的讲,两个主机通讯,也就是应用层上的进程之间的通信,也就是转换为进程和进程之间的通信了,我们之前学到网络层,IP协议能将分 ...

  2. OSI模型七层模型结构

    OSI模型,即开放式通信系统互联参考模型(Open System Interconnection,OSI/RM,Open Systems Interconnection Reference Model ...

  3. OSI模型各层详解

    1. OSI概述 1.1 模拟器说明 1.1.1 模拟器的作用 搭建实验环境进行测试. 1.1.2 模拟器的类型 PT:一般是学校中使用,命令不完整,且不能抓包 GNS3:思科(CCNA,CCNP), ...

  4. OSI模型第一层物理层

    纪念我曾今热爱的数通(^o^). 物理层 一句话概述: OSI的第一层,它虽然处于最底层,却是整个开放系统的基础.物理层为设备之间的数据通信提供传输媒体及互连设备,为数据传输提供可靠的环境. 常见设备 ...

  5. HUB、Switch、Router在OSI模型层次信息

    序 (HUB)集线器工作在局域网(LAN)环境,像网卡一样,应用于OSI参考模型第一层,因此又被称为物理层设备. Switch交换机工作在OSI第2层数据链路层 Router路由器工作在OSI第3层网 ...

  6. 计算机网络概述下(OSI模型)

    1. 用什么作为计算机网络的性能的指标? 1. 速率:即数据率或称数据传输速率或者比特率.(计算机网络的最重要的一个性能指标) 单位时间(秒)传输的信息(比特)量.单位:b/s(bps),kb/s,M ...

  7. OSI七层模型详解 TCP/IP协议

      总结 OSI中的层 功能 TCP/IP协议族 应用层 文件传输,电子邮件,文件服务,虚拟终端 TFTP,HTTP,SNMP,FTP,SMTP,DNS,Telnet 等等 表示层 数据格式化,代码转 ...

  8. Linux--网络基础(概念+协议的了解+OSI七层模型,TCP/IP五层协议,网络数据传输流程)

    网络的发展 网络的发展有下面几个阶段: 独立模式:计算机最开始是以单机模式被广泛使用的.每一台计算机都是独立的,之间不能够进行数据共享与通信 网络互联: 计算机之间可以链接在一起,完成数据共享,计算机 ...

  9. OSI模型第四层传输层--TCP协议

    1.传输层2个协议tcp和udp 2.tcp的可靠性(挂号信). 面向链接的:类似寄挂号信,对方收到了并且能够确认.所以也是可靠的传输. 最大报文传输:两端可以协商传输报文大小.(协商一个报文的大小) ...

随机推荐

  1. web开发人员

    随笔- 4  文章- 18  评论- 12  [译]作为一个web开发人员,哪些技术细节是在发布站点前你需要考虑到的   前日在cnblogs上看到一遍文章<每个程序员都必读的12篇文章> ...

  2. 什么是gulp

    gulp:入门简介   本文是gulp的入门级介绍,主要内容包括什么是gulp,gulp与grunt有什么区别,gulp可以解决grunt存在的哪些问题,以及一个简单的说明例子. 什么是gulp gu ...

  3. Content Negotiation(内容协商)

    Asp.Net Web API 2第十四课——Content Negotiation(内容协商)   前言 阅读本文之前,您也可以到Asp.Net Web API 2 系列导航进行查看 http:// ...

  4. HtmlParser的使用-爬虫学习(三)

    关于这个HtmlParser的学习资料,网上真的很匮乏,这个好用的东西不要浪费啊,所以我在这里隆重的介绍一下. HtmlParser是一个用来解析HTML文件的Java包,主要用于转换盒抽取两个方面. ...

  5. Mysql中实现多表关联查询更新操作

    今天一下要记录一下才行了,每次都要去网上查找方法,每次都难找得要命 Mysql在更新某些字段的数据时,有时候会依据其他表的数据进行更新,需要通过关联后对不同的行更新不同的值,传统的update set ...

  6. windows下python的安装

    首先进入python的官方网站:http://www.python.org在下载处,我们找到windows下有两个版本,下载最新版本Python3.4.0

  7. DDD社区官网

    DDD社区官网上一篇关于聚合设计的几个原则的简单讨论: 聚合是用来封装真正的不变性,而不是简单的将对象组合在一起 聚合应尽量设计的小 聚合之间通过ID关联 聚合内强一致性,聚合之间最终一致性 从聚合和 ...

  8. node.js系列笔记之fs模块《二》

    一:感触 最近工作比较忙,感觉也比较多,因为工作上的不顺利,再加上加班比较多,所以最近心情不是很好,再加上英语能力差到不行,所以最近半个月学习进度也比较慢, 但还是告诉自己每天都坚持学一点,即使今天心 ...

  9. DRP项目总结

    DRP项目在6号就已经完工了,总共花费了一个半月的时间,从对java的懵懵懂懂,到现在的略微熟悉,对整个java web开发的认知,清晰了很多.涉及到的web项目开发的必备知识,也都有一次得到锻炼和提 ...

  10. C++ Config 配置文件类

    C++ Config 配置文件类 本文Config类的序列化和反序列化使用的jsoncpp, 因为jsoncpp提供的方法很简单易阅读.配置文件的格式自然也是json. 1 { 2 "ima ...