• 计算机网络 自顶向下 第6章 链路层和局域网 读书笔记(2)以太网


    更多《计算机网络 自顶向下》读书笔记

    6.4 交换局域网

    交换机运行在链路层,不识别网络层地址,使用链路层地址而不是IP地址来转发链路层帧。

    6.4.1 链路层寻址和 ARP

    为什么有网络层IP地址还需要链路层MAC地址?

    1. 局域网为任意网络层设计,不只是IP和因特网;如果适配器用IP地址寻址,不能方便地支持其他网络层协议。
    2. 如果适配器用IP地址寻址,网络层地址必须存在RAM,移动/上电时重新配置
    3. 如果适配器不使用任何地址,则每帧都需要中断,到网络层解析地址是否匹配

    1.MAC地址

    链路层地址别名:LAN地址、物理地址、MAC地址

    实际上并不是主机/路由器有MAC地址,而是他们的适配器(即网络接口)具有MAC地址

    注意:对应的链路层交换机接口没有MAC地址,因为链路层交换机透明地在主机和路由器之间传输数据报,不需要明确地将帧寻址到交换机。

    对于大多数局域网(以太网和802.11无线局域网),MAC地址长度为6字节,共2^48个可能。前24比特向IEEE购买,由IEEE分配,后24比特由公司自己生成唯一组合。MAC地址被设计为永久的,但可以用软件改写。

    IP地址具有层次结构,但MAC地址具有扁平结构:IP地址随着所连接网络的变化而变化,但MAC地址不变。

    适配器发送帧时,需要将目的适配器的MAC地址插入到该帧中。交换机偶尔将一个入帧广播到所有接口,所以适配器可能收到并非向他寻址的帧。适配器收到帧检查目的MAC是否与自身MAC匹配:匹配则提取数据报向上层传,不匹配则丢弃该帧。

    有时某适配器的确要局域网上所有其他适配器接受并处理某帧,此时目的地址为MAC广播地址 FF-FF-FF-FF-FF-FF。

    2.地址解析协议 ARP

    ARP:Address Resolution Protocol,在 IP 地址和 MAC 地址之间转换。

    局域网内,如果A要给B发数据,则A要向其适配器提供IP数据报及目的主机的MAC地址

    如何确定目的主机的MAC?通过ARP:给定同局域网上的IP,返回相应的MAC地址。

    每个主机和路由器的内存中有一个ARP表,包含 IP 地址到 MAC 的映射关系。

    ⚠️ ARP 只能为同一个子网的主机和路由器接口解析IP地址

    IP MAC TTL
    222.222.222.221 88-B2-2F-54-1A-0F 13:45:00

    TTL 指示从表中删除条目的时间,一般是20分钟。

    如果发送方的ARP表有目的节点的表项,直接返回目的主机的MAC。

    如果发送方ARP表中没有目的节点的表项:

    • 发送方构造ARP分组:包括发送和接收IP地址及MAC地址,用广播帧发送
    • 每个接收适配器都把该ARP广播分组向上传递个ARP模块,ARP模块检查其IP是否与ARP分组中的目的IP匹配
    • 匹配的主机用标准帧发送响应ARP分组

    注意:

    • ARP查询分组和响应分组具有相同格式
    • ARP查询报文在广播帧(FF-FF-FF-FF-FF-FF)中发送;ARP响应报文在标准帧中发送
    • ARP表自动建立,无需管理员维护
    • ARP是跨链路层和网络层的协议
      • 链路层:ARP分组封装在链路层帧中,包含链路层地址字段
      • 网络层:包含网络层地址

    3.发送数据到子网以外

    例子:一台路由器,连接2个子网;每个主机一个IP,一个适配器

    ⚠️ 路由器的每个接口都有自己的IP地址、ARP模块、适配器、MAC地址

    111.111.111/24 子网的主机向222.222.222/24 子网的主机发送数据报,如何确定目的MAC地址?

    • 不能直接填目的主机的MAC,因为子网1内所有适配器的MAC地址都不匹配

    • 该帧的目的MAC应该填入默认网关(第一跳路由器)的MAC地址

    数据从源主机到达路由器,路由器查询转发表,通过正确的端口发到子网2中

    路由器通过APR,获取目的主机的MAC地址,将新帧发送到子网2中

    6.4.2 以太网

    有线局域网技术:以太网、令牌环、FDDI、ATM

    以太网支配地位的原因:广泛部署、简单、硬件成本低、速率上奋起抗争

    • 20世纪90年代中期以前,以太网是同轴总线拓扑广播局域网,使用具有二进制指数回退的CSMA/CD多路访问协议
    • 20世纪90年代后期,基于集线器星形拓扑:集线器是物理层设备,作用于比特而不是帧,单纯地将一个接口收到的比特向所有其他端口广播(放大能量强度)
    • 进入21世纪,基于交换机星形拓扑:无碰撞的、存储转发分组交换机,仅运行在第二层

    1. 以太网帧结构

    6个字段:前同步码[8] 目的MAC地址[6] 源MAC地址[6] 类型[2] 数据[46-1500] CRC[4]

    以太网帧不仅可以承载IP数据报,还可以承载其他网络层分组。

    • 数据(46~1500字节):承载IP数据报,。以太网最大传输单元(MTU)是1500 字节,如果IP数据报超过1500字节,需要分片;不足46字节使用IP数据报的长度字段填充至46字节。
    • 目的MAC地址(6字节):如果是广播地址或与接收适配器MAC地址匹配,则将数据字段内容向上传递给网络层;收到MAC地址为其他的帧则丢弃。
    • 源MAC地址(6字节)
    • 类型(2字节):以太网支持多种网络层协议,根据类型字段不同传递给不同网络层协议。IP和其他协议都有自己的标准化类型编号。ARP类型:0x0806
    • CRC(4字节):使接受适配器能够检测帧中差错
    • 前同步码(8字节):前7字节 10101010,用于唤醒接收适配器,锁定发送适配器的时钟(速率不同或时钟漂移);最后一个字节 10101011,提示接收适配器信息即将到达。

    以太网特点:

    • 无连接:适配器A给B发送前无握手,类似IP、UDP
    • 不可靠:接收适配器进行CRC校验,但通过校验不回ACK;不通过校验直接丢弃,也不回NAK

    2. 以太网技术

    IEEE 802.3 CSMA/CD(Ethernet)工作组标准化了以太网技术:10BASE-2、1000BASE-LX、10GBASE-T等。

    第一部分代表速率。BASE代表基带以太网,即该物理层仅承载以太网流量。最后一部分代表物理媒介,「T」代表双绞线。

    初期以太网被构想为同轴电缆,使用CSMA/CD的总线拓扑广播媒体。但今天的以太网已经变成点对点拓扑,用双绞线/光纤和交换机相连。

    早期同轴距离限制500米,通过物理层的转发器(repeater)可以延长。100Mbps以太网用双绞线距离限制为100米,光纤可以几千米。

    吉比特以太网(IEEE 802.3z,40Gbps)是对10Mbps、100Mbps以太网的扩展:

    • 使用标准以太网帧格式,向后兼容
    • 允许点对点链路及共享广播信道
    • 使用CSMA/CD共享广播信道
    • 对于点对点,允许双向40Gbps 全双工
    • 最初工作于光纤上,现也工作在5类UTP上

    ⚠️ 最初的以太网基于总线拓扑、基于集线器的星形拓扑,是广播链路,为了处理碰撞,包括了CSMA/CD协议。但是今天的以太网是基于交换机的星形拓扑,采用存储转发分组交换,不会有碰撞,不再需要MAC(媒体访问控制)协议!

    以太网经过这么多年的发展,唯一不变的是以太网帧格式

    更多《计算机网络 自顶向下》读书笔记

  • 相关阅读:
    python学习笔记(五)
    python学习笔记(四)
    Jenkins学习系列——iOS打包任务的创建和配置
    Jenkins学习系列——jenkins平台搭建和配置
    java及java web学习笔记
    mac book下批量替换多个文件中的字符
    MAC的sed和GNU不一样
    python杂记
    appium ios环境搭建——iOS开发环境搭建
    ideviceinstaller报Segmentation fault: 11错误解决过程
  • 原文地址:https://www.cnblogs.com/tengzijian/p/16154044.html
Copyright © 2020-2023  润新知