计算机网络:自顶向下 第二章笔记链路层和局域网

Posted mayunfei233

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了计算机网络:自顶向下 第二章笔记链路层和局域网相关的知识,希望对你有一定的参考价值。

2.4寻址(Addressing)

2.4.1MAC寻址

地址解析协议ARP:将IP地址转换为链路层地址

MAC地址:链路层地址,也叫LAN地址,物理地址

32位的IP地址:

  • 网络层地址的接口
  • 用于第三层(网络层)转发

MAC(或局域网或物理或以太网)地址:

  • 功能:用于“本地”从一个接口到另一个物理连接的接口(相同的网络,在ip寻址意义上)
  • 48位(6字节,2^48种可能地址)MAC地址(大多数局域网)刻录在网卡ROM中,有时也可通过软件设置
    在这里插入图片描述
  • 链路层地址不在主机或路由器当中,而是在他们的适配器当中
  • IEEE管理MAC地址(保证地址不会重复)
  • 制造商购买部分MAC地址空间(以确保唯一性)
  • 扁平结构–MAC地址不会随位置改变(不像IP地址层次结构,随位置改变)
  • 适配器可以接收并非向他寻址的帧,适配器接收到帧时会检查该帧MAC地址是否与自己MAC地址相同,相同就取出封装的网络层数据报,不同就丢弃

2.4.2ARP:地址解析协议

  • 局域网中的每个IP节点(主机、路由器)都有一个ARP表
  • ARP表:一些局域网节点的IP/MAC地址映射:
  • < IP address; MAC address; TTL>
  • TTL(Time To Live):地址映射被遗忘的剩余时间(通常是20分钟)

如果发送方的ARP表中没有接收方的表项:

  • 构造ARP分组(ARP packet)
  • 广播ARP查询分组,MAC广播地址(FF-FF-FF-FF-FF-FF)
  • 目的主机接收查询分组后通过响应分组返回MAC地址,有相同格式

注意:

  • 查询ARP报文在广播帧发送,响应ARP报文在标准帧发送
  • ARP表自动建立,不需要网络管理员配置
  • ARP既是链路层协议也是网络层协议

2.4.3发送数据报到子网外

在这里插入图片描述

  • 发送端A向B发送数据报
  • 首先发给路由器接口111.111.111.110,对于该帧来说MAC地址为E6-E9-00-17-BB-4B
  • 路由器适配器看到MAC地址与自己相同,把数据报传到网络层
  • 根据路由器转发表选择转发接口
  • 该接口把数据报传递给他的适配器,适配器把数据报封装成新的帧,此时该帧的MAC地址为最终MAC地址

注意:每台主机只有一个IP地址和适配器,而路由器每个接口都有IP地址、适配器和ARP模块

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

2.5以太网

2.5.1以太网物理结构

总线: 90年代中期流行
星型: 中间有交换机(switch),无碰撞,储存转发分组

2.5.2以太网帧结构

发送适配器封装的IP数据报(或其他链路层协议包)在以太网帧内 Ethernet frame在这里插入图片描述
Preamble-前同步码: 8字节,奇案字节都是10101010,第8字节是10101011,前7字节唤醒适配器,同步发送方时钟速率,第8字节后两位(第一个连续的11)提醒重要内容将要到达

dest Addresses-目的地址: 6字节 目的地MAC地址,目的主机适配器检查MAC地址,与自己相同或者是广播地址就上传网络层,其余MAC地址就丢掉帧

sourceAddress-源地址: 6字节,字面意思

Type-类型字段: 2字节,表示更高的层协议(主要是IP,但其他可能被支持,如Novell IPX和AppleTalk)

data-数据: 46~1500字节,IP数据报,以太网最大传输单元(MTU)是1500字节,超过就要分片,少于46字节就要填充

CRC-循环冗余检测: 使接受适配器检测帧是否有差错

在这里插入图片描述
在这里插入图片描述
所有以太网技术向网络层提供无连接服务

无连接:发送和接收网卡之间没有握手’
不可靠:接收网卡不发送确认帧acks和否定确认帧 nacks

2.5.3以太网技术CSMA/CD

以太网使用CSMA/CD带有二进制指数后退(binary exponential back off)

  • 无时隙
  • 如果适配器感知到其他适配器正在传输,则适配器不进行传输,即载波监听
  • 当传输适配器感觉到另一个适配器正在传输时,传输适配器将中止,即冲突检测
  • 在尝试重新传输之前,适配器等待一个随机时间,即随机访问

重点看书99,100页!

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.6链路层交换机

在这里插入图片描述

2.6.1集线器(hub)

集线器本质上是物理层中继器

  • 来自一个链路的比特会输出到所有其他链路
  • 同样的速度(rate)
  • 没有帧缓冲
  • 在集线器没有CSMA/CD:适配器检测冲突
  • 提供网络管理功能

工作原理:

在这里插入图片描述
在这里插入图片描述
曼彻斯特编码(Manchester encoding):
在这里插入图片描述

  • 在10BaseT使用(见书311-以太网技术)
  • 每个比特都有一个转换
  • 允许发送和接收节点中的时钟彼此同步
  • 物理层

在这里插入图片描述
互相连接的集线器

  • 骨干网集线器连接局域网段
  • 扩展节点之间最大距离
  • 但是单个的分段碰撞域成为一个大的碰撞域
  • 不能连接10BaseT和100BaseT
    在这里插入图片描述

2.6.2以太网交换机

链路层设备,起到积极作用:

  • 存储,转发以太网帧(有缓存)
  • 检查传入帧的MAC地址,有选择地将帧转发到一个或多个出链路,使用CSMA/CD远程访问

透明:

  • 主机不知道交换机的存在

即插即用,自学plug-and-play, self-learning:

  • 交换机不需要配置

2.6.2.1交换机转发和过滤

过滤(filtering): 决定一个帧是应该转发到某个接口还是应该丢弃
转发(forwarding): 决定一个帧应该转发到哪个接口,并转发

转发和过滤借助于交换机表(switch table)

交换机表包括但不必全部包括局域网内主机和路由器的表项,一个交换机表项应该包括:

  1. 一个MAC地址
  2. 通向该MAC地址的交换机接口
  3. 表项放置在表中的时间

在这里插入图片描述

2.6.2.2交换机的自学习

交换机自主学习哪些主机可以通过哪些接口到达:

  • 交换机表开始为空
  • 对于每个接口接收到的每一个帧,交换机在交换机表中储存:
    1.该帧源地址字段的MAC地址
    2.该帧到达的接口
    3.当前时间
  • 如果在一段时间之后(老化期(aging time)),交换机没有收到以该地址作为源地址的帧,在表中清除该表项

即插即用设备:Plug and Play Devices

自学习交换器可以连接在一起
在这里插入图片描述
交换机是双工的,无MAC地址,上图A发送送到G是可以通过自学习实现的,一个接口可以对应多个MAC地址

2.6.2.3交换机和路由器的比较

在这里插入图片描述
都进行储存-转发(store-and-forward):
路由器:网络层设备(检查网络层报头)
交换机:链路层设备(检查链路层报头)

它们都有转发表:
路由器:使用路由算法计算表,IP地址
交换机:学习转发表使用泛洪,学习,MAC地址在这里插入图片描述
流量隔离、即插即用、优化路由、抄近路

在这里插入图片描述

2.6.3虚拟局域网VLAN

现代机构的局域网常常配置为等级结构,每个工作组有自己的交换局域网,经过一个交换机等级结构与其他工作组的交换局域网互联

缺点:

  • 缺乏流量隔离
  • 交换机的无效使用
  • 管理用户

虚拟局域网络
支持VLAN功能的交换机可以配置为在单个物理LAN基础设施上定义多个虚拟LAN。

基于端口的VLAN Port-based VLAN
交换机端口分组(通过交换机管理软件)使单个物理交换机…
在这里插入图片描述
…作为多个虚拟交换机运行
在这里插入图片描述
跨越多个交换机的:跨越多个交换机的VLANs

在这里插入图片描述
VLAN干线连接(VLAN trunking)
每台交换机上的特殊端口配置为干线端口(左16,右1),此端口属于所有VLAN,但是交换机不知道干线端口的帧属于哪个VLAN,所以IEEE定义拓展以太网帧格式——802.1 Q(携带VLAN ID),802.1q协议为中继端口之间转发的帧添加/删除额外的报头字段

802.1Q VLAN帧构成:

在这里插入图片描述
左:2字节标签协议标识(取值:81-00)
下:Tag Control Information(12位VLAN ID字段,3位优先级字段,类似IP TOS)
右:重新计算的CRC

在这里插入图片描述
在这里插入图片描述

  • 当 B1 向 VLAN2 工作组内成员发送数据时,工作站 B2 和 B3 将会收到广播的信息。
  • B1 发送数据时,工作站 A1, A2 和 C1都不会收到 B1 发出的广播信息。
  • 虚拟局域网限制了接收广播信息的工作站数,使得网络
    不会因传播过多的广播信息(即“广播风暴”)而引起性能恶化。
    在这里插入图片描述

100BASE-T:

100代表100 Mb/s以太网
BASE代表基带以太网(物理媒介仅承载以太网流量)
T代表双绞铜线
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.7PPP点对点通讯协定 (Point-to-Point Protocol)

2.7.1点对点数据链路控制

一个发送者,一个接收者,一个链接:比广播链接容易:

  • 没有媒体访问控制( Media Access Control,MAC)
  • 不需要显式MAC寻址
  • 例如,拨号链路,ISDN线路

流行的点对点DLC(Data Link Control)协议:

  • HDLC: High level data link control----高级数据链路控制协议
  • PPP point-to-point protocol-------------点对点通讯协定

数据链路层传送的是帧
在这里插入图片描述
在这里插入图片描述

2.7.2数据链路层:三个基本问题

(1) 封装成帧
(2) 透明传输
(3) 差错控制

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.7.3PPP 协议的组成

  • 1992 年制订了 PPP 协议。经过 1993 年和 1994 年的修订,现在的 PPP 协议已成为因特网的正式标准[RFC 1661]。
  • PPP 协议有三个组成部分 :
    • 一个将 IP 数据报封装到串行链路的方法
    • 链路控制协议 LCP (Link Control Protocol)
    • 网络控制协议 NCP (Network Control Protocol)

PPP设计要求:
packet framing: encapsulation of network-layer datagram in data link frame

  • carry network layer data of any network layer protocol (not just IP) at same time
  • ability to demultiplex upwards----有向上拆分的能力

bit transparency(比特透明): must carry any bit pattern in the data field

error detection (no correction)

connection liveness: detect(检测), signal link failure to network layer

network layer address negotiation(协商): endpoint can learn/configure(配置) each other’s network address

PPP 无需求

  • 没有差错检测,纠正
  • 没有流量控制
  • 交付错误——没问题
  • 不需要支持多链路(例如轮询polling)

错误恢复,流控制,数据重新排序所有交给更高的层解决!

2.7.4ppp数据帧

在这里插入图片描述

  • Flag: delimiter(定界符) (framing)
  • Address: does nothing (only one option)
  • Control: does nothing; in the future possible multiple control fields
  • Protocol: upper layer protocol to which frame delivered (eg, PPP-LCP, IP, IPCP, etc)
  • info: upper layer data being carried
  • check: cyclic redundancy check for error detection

2.7.5字节填充Byte Stuffing

在PPP中01111110是数据帧标志字段(flag),在帧首帧尾,如果信息域(info)里也有01111110会导致帧提前结束,PPP透明性要求不能限制高层协议数据的位模式,此时就需要字节填充。

原理: 在除flag字段的01111110前加一个01111101(转义字符),如果01111101出现在信息域内,则在01111101再加一个01111101证明后面的是实际数据部分,接收端收到数据后去除转义字符还原成原数据
在这里插入图片描述

2.7.6PPP数据控制协议

在交换网络层数据之前,数据链路对等体必须:

  • 配置PPP链路(最大帧长度、身份验证)
  • 了解/配置网络层信息:for IP:携带IPCP (IP Control Protocol) 消息 (Protocol field: 8021)配置/学习IP地址

在这里插入图片描述
在这里插入图片描述

以上是关于计算机网络:自顶向下 第二章笔记链路层和局域网的主要内容,如果未能解决你的问题,请参考以下文章

《计算机网络自顶向下方法》读书笔记:链路层和局域网

《计算机网络自顶向下方法》读书笔记:链路层和局域网

笔记整理

知识点回顾(自顶向下)

计算机基础(笔记)——计算机网络(链路层)

计算机基础(笔记)——计算机网络(链路层)