计算机网络的预习与复习(五)

285-331

链路层和局域网

链路成概述

运行链路层协议协议的任何设备均称为节点(node)。节点包括主机、路由器、交换机和 WiFi 接入点。我们也把沿着通信路径连接相邻节点的通信信道称为链路(link)。

在通过特定的链路时,传输节点将数据报封装在链路层帧中,并将该帧传送到链路中。

链路层提供的服务

成帧(framing)。在每个网络层数据报经链路传送之前,几乎所有的链路层协议都 要将其用链路层帧封装起来。

链路接入。媒体访问控制(Medium Access Control,MAC)协议规定了帧在链路上 传输的规则。

可靠交付。当链路层协议提供可靠交付服务时,它保证无差错地经链路层移动每个 网络层数据报。

差错检测和纠正。当帧中的一个比特作为1传输时,接收方节点中的链路层硬件 可能不正确地将其判断为0,反之亦然。这种比特差错是由信号衰减和电磁噪声导致的。因为没有必要转发一个有差错的数据报,所以许多链路层协议提供一种机制来检测这样的比特差错。通过让发送节点在帧中包括差错检测比特,让接收节点进行差错检查,以此来完成这项工作。

链路层在何处实现

链路层的主体部分是在网络适配器(network adapter)中实现的,网络适配器有时也称为网络接口卡(Network Interface Card,NIC)。位于网络适配器核心的是链路层控制器、该控制器通常是一个实现了许多链路层服务(成帧、链路接入、差错检测等)的专用芯片。因此,链路层控制器的许多功能是用硬件实现。

 差错检测和纠正技术

在发送节点,为了保护比特免受差错,使用差错检测和纠正比特(Error-Detection and-Correction,EDC)来增强数据 D。通常,要保护的数据不仅包括从网络层传递下来需要通过链路传输的数据报,而且包括链路帧首部中的链路级的寻址信息、序号和其他字段。

奇偶校验

也许差错检测最简单的方式就是用单个奇偶校验位(parity bit)。

采用单个奇偶校验位方式,接收方的操作也很简单。接收方只需要数一数接收的d+1 比特中1的数目即可。如果在采用偶校验方案中发现了奇数个值为1的比特,接收方知道至少出现了一个比特差错。更精确的说法是,出现了奇数个比特差错。

但是如果出现了偶数个比特差错,那会发生什么现象呢?你应该认识到这将导致一个未检出的差错。

单比特奇偶校验方案的二维一般化方案。

使用这种二维奇偶校验(two-dimensional parity)方案,包含比特值改变的列和行的校验值都将会出现差错。因此接收方不仅可以检测到出现了单个比特差错的事实,而且还可以利用存在奇偶校验差错的列和行的索引来实际识别发生 差错的比特并纠正它。

接收方检测和纠正差错的能力被称为前向纠错(Forward Error Correction,FEC)。这些技术通常用于如音频 CD这样的音频存储和回放设备中。

检验和方法

一个简单检验和方法就是将这 k比特整数加起来,并且用得到的和作为差错检测比特。因特网检验和(Internet checksum)就基于这种方法,即数据的字节作为 16 比特的整数对待并求和。

循环冗余检测

现今的计算机网络中广泛应用的差错检测技术基于循环冗余检测(Cyclic Redundancy Check,CRC)编码。CRC 编码也称为多项式编码(polynomial code),因为该编码能够将要发送的比特串看作为系数是0和1 一个多项式,对比特串的操作被解释为多项式算术。

多路访问链路和协议

点对点链路(point-to-point link)由链路一端的单个发送方和链路另一端的单个接收方组成。

第二种类型的链路是广播链路(broadcast link),它能够让多个发送和接收节点都连接到相同的、单一的、共享的广播信道上。

如何协调多个发送和接收节点对一个共享广播信道的访问,这就是多路访问问题(multiple access problem)。

多路访问协议应该具有以下所希望的特性∶

1)当仅有一个节点发送数据时,该节点具有R bps的吞吐量;

2)当有M个节点发送数据时,每个节点吞吐量为R/M bps。这不必要求 M个节点中的每一个节点总是有R/M的瞬间速率,而是每个节点在一些适当定义的时间间隔内应该有R/M的平均传输速率。

3)协议是分散的;这就是说不会因某主节点故障而使整个系统崩溃。

4)协议是简单的,使实现不昂贵。

信道划分协议

时分多路复用(TDM)和频分多路复用(FDM)是两种能够用于在所有共享信道节点之间划分广播信道带宽的技术。

随机接入协议

在随机接入协议中,一个传输节点总是以信道的全部速率(即 R bps)进行发送。当有碰撞时,涉及碰撞的每个节点反复地重发它的帧(也就是分组),到该帧无碰撞地通过为止。但是当一个节点经历一次碰撞时,它不必立刻重发该帧。相反,它在重发该帧之前等待一个随机时延。

时隙ALOHA

在对时隙 ALOHA的描述中,我们做下列假设∶

●所有帧由L比特组成。

● 时间被划分成长度为L/R 秒的时隙(这就是说,一个时隙等于传输一帧的时间)。

● 节点只在时隙起点开始传输帧。

● 节点是同步的,每个节点都知道时隙何时开始。

● 如果在一个时隙中有两个或者更多个帧碰撞,则所有节点在该时隙结束之前检测 到该碰撞事件。 令p是一个概率,即一个在0和1 之间的数。在每个节点中,时隙 ALOHA的操作是简单的∶ ● 当节点有一个新帧要发送时,它等到下一个时隙开始并在该时隙传输整个帧。

● 如果没有碰撞,该节点成功地传输它的帧,从而不需要考虑重传该帧。

● 如果有碰撞,该节点在时隙结束之前检测到这次碰撞。该节点以概率p在后续的 每个时隙中重传它的帧,直到该帧被无碰撞地传输出去。

当只有一个活跃节点时,时隙 ALOHA 工作出色,但是当有多个活跃节点时效率又将如何呢?

ALOHA

在纯ALOHA中,当一帧首次到达(即一个网络层数据报在发送节点从网络层传递下来),节点立刻将该帧完整地传输进广播信道。如果一个传输的帧与一个或多个传输经历了碰撞,这个节点将立即(在完全传输完它的碰撞帧之后)以概率p重传该帧。否则,该节点等待一个帧传输时间。在此等待之后,它则以概率p传输该帧,或者以概率1-p在另一个帧时间等待(保持空闲)。

载波侦听多路访问(CSMA)

有礼貌的人类谈话有两个重要的规则∶

● 说话之前先听。

● 如果与他人同时开始说话,停止说话。

这两个规则包含在载波侦听多路访问(Carrier Sense Multiple Access,CSMA)和具有碰撞检测的 CSMA(CSMA with Collision Detection,CSMA/CD)协议族中 。

具有碰撞检测的载波侦听多路访问(CSMA/CD)

1)适配器从网络层一条获得数据报,准备链路层帧,并将其放入帧适配器缓存中。

2)如果适配器侦听到信道空闲(即无信号能量从信道进入适配器),它开始传输帧。在另一方面,如果适配器侦听到信道正在忙,它将等待,直到侦听到没有信号能量时才开始传输帧。

3)在传输过程中,适配器监视来自其他使用该广播信道的适配器的信号能量的存在。

4)如果适配器传输整个帧而未检测到来自其他适配器的信号能量,该适配器就完成了该帧。在另一方面,如果适配器在传输时检测到来自其他适配器的信号能量,它中止传输。

5)中止传输后,适配器等待一个随机时间量,然后返回步骤2。

CSMA/CD效率

当d变得很大时,效率也接近于1。这也和直觉相符,因为当一个帧取得了信道时,它将占有信道很长时间;因此信道在大多数时间都会有效地工作。

轮流协议

轮询协议要求这些节点之一要被指定为主节点。主节点以循环的方式轮询(poll)每个节点。特别是,主节点首先向节点1发送一个报文。告诉它(节点1)能够传输的帧的最多数量。在节点1传输了某些帧后,主节点告诉节点2 它(节点2)能够传输的帧的最多数量。(主节点能够通过观察在信道上是否缺乏信号,来决定一个节点何时完成了帧的发送。)上述过程以这种方式继续进行,主节点以循环的方式轮询了每个节点。

令牌传递协议(token-passing protocol)。在这种协议中没有主节点。一个称为令牌(token)的小的特殊帧在节点之间以某种固定的次序进行交换。

交换局域网

链路层寻址和ARP

MAC地址

事实上,并不是主机或路由器具有链路层地址,而是它们的适配器(即网络接口)具有链路层地址。因此,具有多个网络接口的主机或路由器将具有与之相关联的多个链路层地址,就像它也具有与之相关联的多个 IP 地址一样。

链路层地址有各种不同的称呼∶LAN 地址 (LAN address)、物理地址 (physical address)或 MAC地址(MAC address)。

地址解析协议

因为存在网络层地址(例如,因特网的 IP地址)和链路层地址(即 MAC 地址),所以需要在它们之间进行转换。对于因特网而言,这是地址解析协议(Address Resolution Protocol,ARP)「RFC 826】 的任务。

 发送数据到子网以外

以太网

以太网帧结构

 数据字段(46~1500 字节)。这个字段承载了IP数据报。以太网的最大传输单元 (MTU)是1500 字节。这意味着如果 IP数据报超过了1500字节,则主机必须将该数据报分片。

目的地址(6字节)。这个字段包含目的适配器的MAC 地址,即 BB-BB-BB-BB- BB-BB。当适配器 B 收到一个以太网帧,帧的目的地址无论是 BB-BB-BB-BB-BB-BB,还是MAC 广播地址,它都将该帧的数据字段的内容传递给网络层;如果它收到了具有任何其他 MAC 地址的帧,则丢弃之。

源地址(6字节)。这个字段包含了传输该帧到局域网上的适配器的 MAC 地址, 在本例中为AA-AA-AA-AA-AA-AA。

类型字段(2字节)。类型字段允许以太网复用多种网络层协议。

CRC(4字节)。

前同步码(8字节)。以太网帧以一个8字节的前同步码(Preamble)字段开始。 该前同步码的前7字节的值都是10101010;最后一个字节是10101011。前同步码字段的前7字节用于"唤醒"接收适配器,并且将它们的时钟和发送方的时钟同步。

以太网技术都向网络层提供不可靠服务。特别是。当活配器 B收到一个来自适配器 A 的帧,它对该帧执行 CRC 校验,但是当该帧通过 CRC 校验时它既不发送确认帧;而当该帧没有通过CRC 校验时它也不发送否定确认帧。当某帧没有通过 CRC 校验,适配器 B 只是丢弃该帧。

以太网的确重传了数据,尽管以太网并不知道它是正在传输一个具有全新数据的全新数据报,还是一个包含已经被传输过至少一次的数据的数据报。

40Gbps 以太网提供40 000Mbps的总数据速率,与大量已经安装的以太网设备基础保持完全兼容。吉比特以太网的标准称为IEEE 802.3z,它完成以下工作∶

● 使用标准以太网帧格式,并且后向兼容10BASE-T与100BASE-T 技术。这使得吉比特以太网和现已安装的以太网设备基础很容易集成。

● 允许点对点链路以及共享的广播信道。如前所述,点对点链路使用交换机,而广 播信道使用集线器。在吉比特以太网术语中,集线器被称为"带缓存的分配器"。

● 使用CSMA/CD来共享广播信道。为了得到可接受的效率,节点之间的最大距离 必须严格限制。

● 对于点对点信道,允许在两个方向上都以40Gbps 全双工操作。吉比特以太网最初工作于光纤之上,现在能够工作在5类 UTP线缆上。

链路层交换机

交换机转发和过滤

过滤(filtering)是决定一个帧应该转发到某个接口还是应当将其丢弃的交换机功能。转发(forwarding)是决定一个帧应该被导向哪个接口,并把该帧移动到那些接口的交换机功能。

自学习

交换机具有令人惊奇的特性(特别是对于早已超负荷工作的网络管理员),那就是它的表是自动、动态和自治地建立的,即没有来自网络管理员或来自配置协议的任何干预。

1)交换机表初始为空。

2)对于在每个接口接收到的每个入帧,该交换机在其表中存储∶①在该帧源地址字段中的 MAC地址;②该帧到达的接口;③当前时间。交换机以这种方式在它的表中记录了发送节点所在的局域网网段。如果在局域网上的每个主机最终都发送了一个帧,则每个主机最终将在这张表中留有记录。

3)如果在一段时间(称为老化期(aging time))后,交换机没有接收到以该地址作为源地址的帧,就在表中删除这个地址。以这种方式,如果一台 PC被另一台 PC(具有不同的适配器)代替,原来 PC的 MAC 地址将最终从该交换机表中被清除掉。

交换机是即插即用设备(plug-and-play device),因为它们不需要网络管理员或用户的干预。

链路层交换机的性质

消除碰撞。

异质的链路。

管理。

虚拟局域网

支持VLAN的交换机允许经一个单一的物理局域网基础设施定义多个虚拟局域网。在一个VLAN 内的主机彼此通信,仿佛它们(并且没有其他主机)与交换机连接。在一个基于端口的 VLAN 中,交换机的端口(接口)由网络管理员划分为组。每个组构成一个VLAN,在每个VLAN中的端口形成一个广播域。

一种更具扩展性互联 VLAN 交换机的方法称为VLAN 干线连接(VLAN trunking)。每台交换机上的一个特殊端口被配置为干线端口,以互联这两台 VLAN交换机。

802.1Q 帧由标准以太网帧与加进首部的4 字节 VLAN 标签(VLAN tag)组成,而VLAN 标签承载着该帧所属的 VLAN标识符

多协议标签交换(MPLS)

使用固定长度标签(而不是最短前缀匹配),在支持MPLS的路由器网络之间实现高速IP转发

使用固定长度标识符加快查找速度

借鉴虚拟电路(VC)方法

但是IP数据报仍然保留IP地址

仅基于标签值将数据包转发到传出接口(不检查IP地址)

不同于IP转发表的MPLS转发表

灵活性:MPLS转发决策可能不同于IP转发决策

使用目的地和源地址以不同方式将流路由到同一目的地(流量工程)

如果链路失败,则快速重新路由流:预先计算的备份路径

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值