美文网首页互联网科技计算机杂谈程序员
计算机网络复习 ch1-3 报文交换

计算机网络复习 ch1-3 报文交换

作者: 张照博 | 来源:发表于2019-01-19 14:50 被阅读44次

    正文之前

    忘了把后面的丢上来了。。其实考完之后我就放飞自我了。。写了一篇体系结构的论文总结,然后正在写分布式系统的读书报告,想哭啊!!

    正文

    以太网

    • 1975年纯ALOHA原始ethernet:<u>单工竞争系统</u>,基本思想:
      • 无连接,先说后听,想发就发,错了重发
      • 对数据帧不编号,不要求对方发回确认;不可靠交付,尽力而为
      • 建立在近距离、信道出错概率小-->局域网,出错由高层重发
    • 随机接入协议
      • Time sloted ALHOA;Aloha;Taking turns
      • CSMA(载波侦听多路访问):先听后说+指数退避
        * 1持续CSMA、非持续CSMA、P持续CSMA
      • CSMA/CD:多点接入、载波监听、碰撞检测
        * 信道效率 传送距离越短,发送帧时T0越长,效率越高
    • 以太网优势
      • 可扩展(10M—10G),灵活(多种媒介、全/半双工、共享/交换), 便宜、易于安装使用、稳健性好。

    以太网卡与MAC地址模式

    • 网卡功能
      • 数据的封装与解封
      • 链路管理:CSMA/CD
      • Bit的编码与解码
    • MAC地址
      • Unicast:单播帧地址,仅对某个网卡
      • Broadcast:广播帧地址,仅对某个子网
      • Multicast:多播帧地址,组地址
      • 杂收模式:Promiscuous mode:接收总线上所有的可 能接收的帧

    高速局域网

    快速以太网100 Mbps
    • 对10 Mbps 802.3 LAN的改进
      • 局域网发展史上重要里程碑
    • Fast Ethernet标准
      • 1995年,IEEE通过802.3u标准,实际上是802.3的 一个补充。原有的帧格式、接口、规程不变,只是 将每比特时间从100ns缩短为10ns。
    100Base-TX/F
    • 100Base-TX
      • 使用<u>2对</u>5类平衡双绞线或150屏蔽平衡电缆,1对 to the hub,1对 from the hub,全双工
      • 5类双绞线使用125 MHz的信号;
      • 4B/5B编码,5个时钟周期发送4个比特,物理层与FDDI兼容,比特率 为 125 * 4/5 = 100 Mbps;
    • 100Base-FX
      • 使用2根多模光纤,全双工
    • 100Base-T4 和 100Base-TX 统称 100Base-T
    • 两种类型的HUB
      • 共享式 HUB,一个冲突域,工作方式与802.3相同,CSMA/CD,二进 制指数后退算法,半双工 …
      • 交换式HUB,输入帧被缓存,一个端口构成一个冲突域。
    1000Mbps以太网
    • 工作方式
      • IEEE 802.3定义的10M/100M以太网一致的CSMA/CD帧格式和MAC层协议
      • 以太网交换机(全双工模式)中的千兆端口不能采用共享信道方式访 问介质,不使用 CSMA/CD 协议,而只能采用专用信道方式.
      • 在专用信道方式下,数据的收/发能够不受干扰地同步进行.
      • 在半双工方式下仍使用 CSMA/CD 协议
      • 物理层采用已有光纤通道技术;
    • PAUSE协议
      • 规范发展完善了PAUSE协议,不采用CSMA/CD协议完成全双工操作。
      • 该协议采用不均匀流量控制方法最先应用于100M以太网中。
    • 流控
      • 利用802.3定义的Pause控制帧进行流量控制,要求发送数据节点暂停 数据发送,避免缓冲区溢出造成的丢包。
      • 只有在全双工时,才支持Pause流控,半双工时不支持流控。
    万兆(10Gbps)以太网
    • 2002.6月正式发布802.3ae 10GE标准
      • 只全双工,不支持单工和半双工,也不采用CSMA/CD
      • 不持自协商;提供广域网物理层接口。
    • 长距离(40-50KM)网络
      • 扩展了网络的覆盖区域,且标准简化。
      • 支持<u>现存的大量SONET网络兼容</u>
    • 两种物理层技术:
      • 局域网物理层LAN PHY;10.000Gbps精确10G;
      • 广域网物理层WAN PHY;OC-192,异步SONET/SDH
      • 与10M/100M/1000Mbps帧格式完全相同;

    交换机

    • 以太网可以是一组直连的主机
    • 以太网也可以通过网桥、集线器、交换机这些 连接设备进行扩展

    以太网的连接设备

    • 集线器(HUB):物理层互连设备
      • 1进多出,相同速率,无帧缓冲/线 障隔离,使用方便
      • 带宽受限 ,广播风暴 ,单工传输 ,通信效率低
    • 交换机(Switch):链路层互连设备
      • 依帧头信息转发以太帧;
      • 实现方法
        • 直接交换方式
        • 存储转发方式
        • 改进直接交换方式。
    • 广播域与冲突域
      • 同时共享同一广播帧的计算机子网
      • 同时共享同一传播媒介的计算机子网

    虚拟局域网

    • 不依赖三层交换,通过虚拟局域网VLAN,可以将 同一交换机或者多个交换机的广播域划分多个广 播域
    • 每个虚拟局域网一个广播域

    交换机-自学习功能

    交换机采用的是 Datagram (or connectionless) model,每个帧拥有完整地址,然后通过一个转发表来确定帧发往哪个端口

    最简单的情况: 右边的转发表是可以通过交换机学习自动得到的

    交换机生成树协议

    • 交换机的自学习机制可以工作良 好,但是一旦交换机连接存在环 路,会造成严重后果
    • B1, B4, and B6 form a loop
    • 当交换机之间存在多条活动链路 时,容易形成环路,导致转发表 的不正确与不稳定,并且还会导 致重复的数据包在网络中传递, 引起广播风暴,使网络不稳定
    • 为了防止交换机之间由于多条活动链路而导致的网络故 障,必须将多余的链路置于非活动状态,即不转发用户 数据包,而只留下单条链路作为网络通信。
    • 要实现此功能,需要依靠生成树协议(Spanning Tree Protocol)来完成,STP将交换网络中任何两个点之间 的多余链路置于Blocking(关闭)状态,而只留一条活 动链路,当使用中的活动链路失效时,立即启用被 Block的链路,以此来提供网络的冗余效果。
    • 去掉环路的方法:所有交换机按照树的方式进行连通
    • STP的核心思想是网络中选出一台交换机做为核心交换机,STP称其为 Root,也就是根,功能相当于hub-spoke网络中的Hub。
    • 其它不是Root的交换机则需要留出一条活动链路去往根交换机,因为只要普通交换机到根是通的,到其它交换机也就是通的。
    • 只有在一个广播能够到达的范围内,才需要进行相同的STP计算与选举 ,<u>也就是一个广播域内独立选举STP</u>
    • 下图中网络被路由器分割成两个广播域,所以在两个网段中,需要进 行独立的STP计算与选举
    • 交换机之间选举根交换机(Root)

      • 一个广播域内只能选举一台根交换机。Birdge-ID中优先级最高(即数 字最小)的为根交换机,优先级范围为0-65535,如果优先级相同,则 MAC地址小的为根交换机。
    • 交换机端口之间选举根端口(Root Port)

      • 所有非根交换机都要选举根端口,选举规则为到根交换机的Path Cost 值最小的链路。
    • 非根交换机选择指定端口(Designated Port)

      • 简单地理解为每条连接交换机的物理线路的两个端口(属于不同交换机)中,有一个要被选举为指定端口。选举规则和选举根端口一样, 即:到根交换机的Path Cost值最小的链路,如果多条链路到达根交换机的Path Cost值相同,则选举上一跳交换机Bridge-ID最小的链路。
    • 剩余端口状态为Blocking

      • 在STP选出根交换机,根端口以及指定端口后,其它所有 端口全部为Blocking状态,为了防止环路,所有 Blocking端口只有在根端口或指定端口失效、拓扑改变 的时候才会被启用。

      • 一个端口,在STP中只能处于一种角色,不可能是两种角色

    交换机生成树协议-选举

    • BPDU(Bridge Protocol Data Unit) 交换机间用BPDU报文来选举,目的地址为layer 2 multicast address 01:80:C2:00:00:00.:

      • Protocol ID 固定为0。
      • Version:0为802.1d,1为802.1w,2为 802.1s。
      • Message type:0为普通BPDU,80为TCN。
      • Flags字段:802.1d时只用到0位和7位,都和 TCN相关,TCN的ACK报文里0位置1,TC报文里 7位置1。
      • Root ID,Cost of path,Bridge ID,Port ID:用于选举。
    • Path cost计算

      • 每个交换机会把自己链路的代价加上接收到的邻居交换机的Path Cost,得到总的Path Cost。

    选举过程

    1. 当交换机打开的时候,所有的端口都处于Listening状态,每个交换 机都会认为自己是根交换机(Root ID为自己),然后都每隔两秒就 向外发送一次自己的BPDU。
    2. 如果收到的BPDU的Bridge ID比自己的小,则停止转发自己的BPDU ,开始转发更优的BPDU,如果比自己的Bridge ID大或者和自己的 Bridge ID相等,则丢弃该BPDU。
    3. 持续15s(转发延迟)等到BPDU扩散完毕之后,开始各种端口的选举 ,这时候每个BID最小的交换机成了根交换机,各个交换机通过收到 的BPDU来确定根端口和指定端口。剩下的成为非指定端口,转到 blocking状态。然后进入learning状态
    4. 进入Learning状态之后,填写MAC地址表,经过15s(转发延迟)之 后进入Forwarding状态。
    5. 进入Forwarding状态之后,开始转发数据,并且同时接受转发来自于根的BPDU(Root ID为根交换机),维护拓扑。这时只有根交换机发BPDU,其他交换机都只是转发BPDU。
    6. 当一个新的交换机加入的时候,端口状态是Learning,新的交换机认为自己是根交换机开始发送BPDU,也接收对端的BPDU,然后进行进一步的竞选。
    7. 若竞选成功,则网络拓扑就重新变化了,若竞选失败则计算根端口指定端口和非指定端口。(30s可以完成)

    第二种类型的BPDU包:Topology Change Notification(TCN) BPDU

    1. 当一台交换机检测到拓扑变化后,它就可以发送TCN给root bridge,注 意TCN是通过root port向root bridge方向发出的.
    2. 当交换机从它的designate port接收到TCN类BPDU时,它必须为其做转 发,从它自已的root port上发送出去TCN类型的BPDU包,这样一级一级 地传到root bridge后,TCN的任务才算完成.
    3. 在以上的过程中,无论是哪台交换机从它的designate port上收到了 TCN类型的BPDU包,它都必须给一个回复,必须从designate port上发 出TCA位被置1的normal configuration BPDU包
    4. 那么当TCN传遍全网,直至到达ROOT BRIDGE后,root bridge也要做出 一种回应,它会发出一个正常的configuration BPDU包,当然会有一些 不同,就是包内的TC字段会被置1,TC即topology change,表示发现拓 扑变化。
    5. 这个包会被所有交换机转发,同样的TC位会置1,直至传遍全网,所有交 换机都得知拓扑变化为止,原来转发表作废,重新开始选举。

    重点思考
    • 如何加快STP的选举速度?
    • 如何根据VLAN虚拟局域网进行优化?

    正文之后

    气!!!分布式系统好难啊!!!

    相关文章

      网友评论

        本文标题:计算机网络复习 ch1-3 报文交换

        本文链接:https://www.haomeiwen.com/subject/hfqzdqtx.html