计算机网络

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6

目录

一、绪论

1、网络、互联网和因特网

2、因特网发展的三个阶段

3、因特网的标准化工作

4、因特网的组成

5、三种交换方式

6、计算机网络的定义

7、计算机网络的分类

 8、计算机网络的性能指标

9、计算机网络体系结构

二、物理层

1、物理层的基本概念

2、物理层下面的传输媒体

 3、传输方式

4、编码与调制

​编辑

5、信道的极限容量

三、数据链路层

1、概述

2、封装成帧

3、差错检测

4、可靠传输

5、可靠传输的实现机制

 6、点对点协议PPP

 7、媒体接入控制

8、MAC地址/IP地址/ARP协议

1、MAC地址

2、IP地址

3、ARP协议

9、集线器与交换机

10、以太网交换机自学习和转发帧的流程

11、以太网交换机的生成树协议STP

12、虚拟局域网VLAN概述

13、虚拟局域网VLAN的实现机制

1、IEEE 802.1Q帧

2、交换机的端口类型


一、绪论

1、网络、互联网和因特网

网络由若干结点和链接这些结点的链路组成

多个网络还可以通过路由器互连起来这样就构成了一个覆盖范围更大的网络即互联网因此互联网是网络的网络

因特网是世界上最大的互联网络

internet是一个通用名词它泛指由多个计算机网络互联而成的网络在这些网络之间的通信协议可以是任意的。

Internet是一个专用名词它指当前全球最大的、开放的、由众多网络相互连接而成的特定计算机网络它采用TCP/IP协议作为通信的规则其前身是美国的ARPANET。

2、因特网发展的三个阶段

1969从单个网络ARPANET向互联网发展

1985逐步建成三级结构的因特网

1993逐步形成了多层次ISP结构的因特网。

因特网服务提供者ISP

基于ISP的三层结构的因特网

b2a031cf212e4434be54c69b00dcb997.png

3、因特网的标准化工作

因特网的标准化工作对因特网的发展起到了非常重要的作用

因特网在指定其标准上的一个很大的特点是面向公众

        因特网所有的RFC技术文档都可以从因特网上免费下载

        任何人都可以随时用电子邮件发表对某个文档的意见或建议

因特网协会ISOC是一个国际性组织它负责对因特网进行全面管理以及在世界范围内促进其发展和使用。

        因特网体系结构委员会IAB负责管理因特网有关协议的开发

        因特网工程部IETF负责研究中短期工程问题主要针对协议的开发和标准化。

        因特网研究部IRTF从事理论方面的研究和开发一些需要长期考虑的问题。

指定因特网的正式标准要经过以下四个阶段

①因特网草案

②建议标准

③草案标准

④因特网标准

4、因特网的组成

边缘部分由所有连接在因特网上的主机组成这部分是用户直接使用的用来进行通信和资源共享

核心部分由大量网络和连接这些网络的路由器组成这部分是为边缘部分提供服务的

1734e69b46f94512bdd5211227c75287.png

5、三种交换方式

1、电路交换电话交换机连通电话线的方式

从通信资源的分配角度来看交换就是按照某种方式动态地分配传输线路的资源

2c0ccffe4e614732ae65494b6c161cfc.png

电路交换的三个步骤①建立连接、②通话、③释放连接

2、分组交换

727ca3e2ffb9497389599cc12431ec88.png

3、报文交换

4、三种交换方式的对比

2fc7bbee2cc244628bf29405862234c1.png

 电路交换

优点①通信时延小、②有序传输、③没有冲突、④适用范围广、⑤实时性抢、⑥控制简单

缺点①建立连接时间长、②线路独占使用效率低、③灵活性差、④难以规格化

报文交换

优点①无需建立连接、②动态分配路线、③提高线路可靠性、④提高线路利用性、⑤提供多目标服务

缺点①引起了转发时延、②需要较大存储空间、③需要传输额外的信息量

分组交换

优点①无需建立连接、②线路利用率高、③简化了存储管理、④加速传输、⑤减少出错概率和重发数据量

缺点①引起了转发时延、②需要传输额外的信息量、③对于数据报服务存在失序丢失或重复分组问题。

6、计算机网络的定义

计算机网络的精确定义并未统一

计算机网络的最简单定义是一些互相连接的、自治的计算机的集合。

        互连是指计算机之间可以通过有线或无线的方式进行数据通信

        自治是指独立的计算机他有自己的硬件和软件可以单独运行使用

        集合是指至少需要两台计算机。

计算机网络较好的定义计算机网络主要是由一些通用的可编程的硬件互连而成的这些硬件并非专门用来实现某一特定目的这些可编程的硬件能够用来传送多种不同类型的数据并能支持广泛和日益增长的应用

7、计算机网络的分类

a93b5862a37a46178dd5822e5c12e255.png

 8、计算机网络的性能指标

1、速率

比特计算机中的数据量的单位也是信息论中信息量的单位一个比特就是二进制数字中的一个1或0。

96e66ac66f0f48999ee15ca06b65d2b4.png

 速率连接在计算机网络上的主机在数字通道上传送比特的速率也称比特率

3a5fa621b5664441befefa1c356e1766.png

 2、带宽

带宽用来表示网络的通信线路所能传送数据的能力因此网络带宽表示在单位时间内从网络中的某一点到另一点所能通过的最高数据率单位b/s

 3、吞吐量

吞吐量表示在单位时间内通过某个网络的数据量

吞吐量受网络的带宽或额定速率的限制

4、时延

网络时延

①发送时延=分组长度b/发送速率b/s

②传播时延=通信长度m/电磁波传播速率m/s

③处理时延忽略一般不便于计算

5、时延带宽积

时延带宽积=传播时延 × 带宽

若发送端连续发送数据则在所发送的第一个比特即将到达终点时发送端就已经发送了时延带宽积个比特、链路的时延带宽积又称为以比特为单位的链路长度

6、往返时间RTT

7、利用率

①信道利用率用来表示某信道又百分之几的时间是被利用的

②网络利用率全网络的信道利用率的加权平均

根据排队论当某信道的利用率增大时该信道引起的时延也会迅速增加因此信道利用率并非越高越好

25ea3f64e55c4487b685088a4f9c7dee.png

 也不能使信道利用率太低这会使宝贵的通信资源被白白浪费应该使用一些机制可以根据情况动态调整输入到网络中的通信量使网络利用率保持在一个合理的范围之内。

8、丢包率

丢包率即分组丢失率是指在一定时间范围内传输过程中丢失的分组数量与总分组数量的比率

分组丢失主要有两种情况

①分组在传输过程中出现误码被结点丢弃

②分组到达一台队列已满的分组交换机时被丢弃在通信量较大时就可能造成网络拥塞。

9、计算机网络体系结构

1、

5dcc2d37ef824f3190bf02e73e60820a.png

 2、计算机网络体系结构分层的必要性

计算机网络是个非常复杂的系统早在最初的ARPANET设计时就提出了分层的设计理念

aa2ada9e234d4438856d4e43f8f83d00.png

 3、专业术语

实体任何可发送或接收信息的硬件或软件进程

对等实体收发双方相同层次中的实体

27e7ba2692b7476aa3c28c8c8db691de.png

协议控制两个对等实体进行逻辑通信的规则的集合

3d8c35d8d1b9426b802347c8f9f028c1.png

协议三要素语法、语义、同步

语法定义所交换信息的格式

语义定义收发双方所要完成的操作

同步定义收发双方的时序关系

在协议的控制下两个对等实体间的逻辑通信使得本层能够向上一层提供服务

要实现本层协议还需要使用下面一层所提供的服务

协议是水平的服务是垂直的

实体看得见相邻下层所提供的服务但并不知道实现该服务的具体协议也就是说下面的协议对上面的实体是透明的。

bbff1b31de9c464db6f90dc8cd1aeea3.png

 服务访问点在同一系统中相邻两层的实体交换信息的逻辑接口用于区分不同的服务类型。

数据链路层的服务访问点为帧的类型字段

网络层的服务访问点为IP数据报首部的协议字段

运输层的服务访问点为端口号

服务原语上层使用下层所提供的服务必须通过与下层交换一些命令这些命令称为服务原语

协议数据单元PDU对等层次之间传递的数据包

服务数据单元SDU同一系统内层与层之间交换的数据包

多个SDU可以合成为一个PDU一个SDU也可以划分为几个PDU

f350243b467d44e4a606fc6dc15b4f2d.png

二、物理层

1、物理层的基本概念

物理层考虑的是怎样才能在连接各种计算机的传输媒体上传输数据比特流。

物理层为数据链路层屏蔽了各种传输媒体的差异使数据链路层只需要考虑如何完成本层的协议和服务而不必考虑网络具体的传输媒体是什么。

cbb91589e4aa4352af94394424d6a65e.png

 物理层协议的主要任务

机械特性指明接口所用接线器的形状和尺寸、引脚数目和排列、固定和锁定装置

电器特性指明在接口电缆的各条线上出现的电压的范围

功能特性指明某条线上出现的某一电平的电压表示何种意义

过程特性指明对于不同功能的各种可能时间的出现顺序

2、物理层下面的传输媒体

9b7a741fd8ca4f51b03a2f19ea496c14.png

导引型传输媒体

①同轴电缆

4e03b9d58d574524b22acc11d7170bb1.png

②双绞线

c4ed7c1ffa7a48158e752ba7ffde4a16.png

③光纤

68c7c8d451c14f7ca39bd9f3f119e2a4.png

674dd54b02dd40b89651336f132bd2fd.png 当光从高折射率的媒体射向低折射率的媒体上其折射角将大于入射角因此如果入射角够大就会出现全反射即光碰到包层时就会反射回纤芯。

光在纤芯中传输的方式使不断地全反射

f7a9b51bb94045debbb9ad60bab7a93c.png

④电力线

0cd5285ce15e407fa0cae0b1df79ce29.png

非导引型传输媒体

①无线电波

②微波

③红外线

点对点无线传输。直线传输中间不能有障碍物。传输速率低。

④可见光

 3、传输方式

串行&并行

07d03b5d544c4cc2918314f6e3321f49.png

同步&异步

9677938816ba4507930dd209eb5f40af.png

单向&双向交替&双向同时

2f5ee34974c646e68272b989f234ca8f.png

4、编码与调制

9de65a09f4014ff2bb8160858351c316.png

 码元在使用时间域的波形表示数字信号时代表不同离散数值的基本波形。

1、编码

不归零编码

e215647a43334614bfda301a5391981a.png

 需要额外一根传输线来传输时钟信号使发送方和接收方同步。

对于计算机网络宁愿利用这根传输线传输数据信号而不是时钟信号。

归零编码

e683753902034f64989502f224eadef4.png

 每个码元传输结束后信号都要归零所以接收方只要在信号归零后进行采样即可不需要单独的时钟信号。

实际上归零编码相当于把时钟信号用归零方式编码在了数据内这称为自同步信号。

但是归零编码中大部分的数据带宽都用来传输归零而浪费掉了。

曼彻斯特编码

e86b19032fcf4e79bcfe8aefbdfdce0a.png

码元中间时刻的跳变既表示时钟又表示数据。

差分曼彻斯特编码

045a0b38a52c46d2b66ebd25ebd86eba.png

跳变仅表示时钟。

码元开始处电平是否变化表示数据。

2、调制

基本调制方法
b89e27168e7445218c38781e78310bcb.png

使用基本调制方法1个码元只能包含1个比特信息。

混合调制

因为频率和相位是相关的即频率和相位随时间的变化率所以因此只能调制频率和相位中的一个。

通常情况下相位和振幅可以结合起来一起调制称为正交振幅调制QAM。

6f419308a2894f9e9054111d0eecf757.png

5、信道的极限容量

失真因素①码元传输速率、②信号传输距离、③噪声干扰、④传输媒体质量。

1、奈氏准则

在假定的理想条件下为了避免码间串扰码元传输速率是有上限的。

85a523cce7cc461a8b7af8b4944d2dd8.png

 码元传输速率又称为波特率、调制速率它与比特率有一定关系

        当1个码元只携带1比特信息量时则波特率与比特率在数值上是相等的、

        当1个码元携带n比特的信息量时则波特率转换成比特率时数值要×n。

要提高信息传输速率比特率就必须设法使每个码元能携带多个比特的信息量这需要采用多元制。

实际的信道所能传输的最高码元速率要明显低于奈氏准则给出的上限数值。

2、香农公式

 带宽受限且有高斯白噪声干扰的信道的极限信息传输速率

fb5e2c7151c84c7e88c5456bb1b18922.png

在信道带宽一定的情况下根据奈氏准则和香农公式要想提高信息传输速率就必须采用多元制和努力提高信道中的信噪比。

自从香农公式发表后各种新的信号处理和调制方法就不断出现其目的都是为了尽可能地接近香农公式给出的传输速率极限。

三、数据链路层

1、概述

链路就是从一个结点到相邻结点的一段物理线路而中间没有任何其他的交换结点。

数据链路是指把实现通信协议的硬件和软件加到链路上就构成了数据链路。

数据链路层以帧为单位传输和处理数据。

使用点对点信道的数据链路层的三个重要问题

封装成帧、差错检测、可靠传输

使用广播信道的数据链路层

共享式以太网的媒体接入控制协议CSMA/CD

802.11局域网的媒体接入控制协议CSMA/CA

数据链路层的互联设备

网桥和交换机的工作原理、集线器与交换机的区别。

2、封装成帧

封装成帧是指数据链路层给上层交付的协议数据单元添加帧头和帧尾使其成为帧。

        帧头和帧尾中包含有重要的控制信息。

        帧头和帧尾的作用之一就是帧定界。

透明传输是指数据链路层对上层交付的传输数据没有任何限制就好像数据链路层不存在一样。

        面向字节的物理链路使用字节填充的方式实现透明传输

        面向比特的物理链路使用比特填充的方式实现透明传输

为了提高帧的传输效率应当使帧的数据部分长度尽可能大些。

考虑到差错控制等多种因素每一种数据链路层协议都规定了帧的数据部分的长度上限即最大传送单元MTU。

3、差错检测

实际的通信链路都不是理想的比特在传输过程中可能会产生差错1可能会变成0而0也可能会变成1这称为比特差错。

在一段时间内传输错误的比特占所传输比特总数的比率称为误码率BER。

使用差错检测码来检测数据在传输过程中是否产生了比特差错是数据链路层所要解决的重要问题之一。

1、奇偶校验

在待发送的数据后面添加1位奇偶校验位使整个数据中”1“的个数为奇数奇校验或偶数偶校验。

如果有奇数个位发生误码则奇偶性发生变化可以检查出误码

如果有偶数个位发生误码则奇偶性不发生变化不能检查出误码。

2、循环冗余校验CRC

收发双方约定好一个生成多项式Gx

发送方基于待发送的数据和生成多项式计算出差错检验码将其添加到待传输数据后一起传输。

接收方通过生成多项式来计算收到的数据是否产生了误码。

0b238a47e40d4380b49c520ded8dbfcd.png

dff26ab879284baa8b46c32f35ae3931.png

 举例

4ecc1e157e24434cb9032069708bb743.png

 判断传输是否误码余数为0认为传输过程无误码余数不为0认为传输过程产生误码。

检错码只能检测出帧在传输过程中出现了差错但并不能定位错误因此无法纠正错误。

要想纠正传输中的差错可以使用冗余信息更多的纠错码进行前向纠错但纠错码的开销比较大在计算机网络中较少使用。

循环冗余校验CRC有很好的检错能力虽然计算比较复杂但非常易于用硬件实现因此广泛应用于数据链路层。

在计算机网络中通常采用检错重传方式来纠正传输中的差错或者仅仅是丢弃检测到差错的帧这要取决于数据链路层向上层提供的是可靠传输服务还是不可靠传输服务。

4、可靠传输

使用差错检验技术接收方的数据链路层就可检测出帧在传输过程中是否产生了误码。

数据链路层向上层提供的服务类型

        不可靠传输服务仅仅丢弃有误码的帧

        可靠传输服务想办法实现发送端发送什么接收端就收到什么。

一般情况下有线链路的误码率比较低为减小开销并不要求数据链路层向上提供可靠传输服务即使出现了误码可靠传输的问题由其上层处理。

无线链路易受干扰误码率较高因此要求数据链路层必须向上层提供可靠传输服务。

比特差错只是传输差错中的一种。

从整个计算机网络体系结构来看传输差错还包括分组丢失、分组失序、分组重复。

可靠传输服务并不仅局限于数据链路层其他各层均可选择实现可靠传输。、

5、可靠传输的实现机制

1、停止-等待协议SW

2d847692db354915948b8d1ab5827a2a.png

22a21e14cbfb4386bd12be9f746c8814.png

 接收方收不到数据分组就不会发送ACK/NAK如果不采取其他措施发送方就会一直处在等待接收方的状态。为了解决该问题可以在发送方发送完一个数据分组时启动一个超时计时器若到了超时计时器所设置的重传时间而发送方仍收不到接收方的任何ACK/NAK则重传原来的数据分组。一般可将重传时间选为略大于从发送方到接收方的平均往返时间。

82f6cb194a7b4bed92aa0ea2c2a2f638.png

为避免分组重复必须给每个分组带上序号。对于SW由于每发送一个数据分组就停止等待只要保证每发送一个数据分组发送序号与上次发送的数据分组的序号不同就可以了因此用一个比特位来编号就够了。

a6c11ab7c31642eda30ac91a1f4b54a5.png

 为了让发送方能判断所收到的ACK分组是否是重复的需要给ACK分组编号所用的比特数量与数据分组编号所用的比特数量一样数据链路层一般不会出现ACK分组迟到的情况因此数据链路层实现SW可以不用给ACK分组编号。

SW的信道利用率

98e0ff48ba574bed995f6a37caf4366d.png

f93354baf4f044a288012206e52b0350.png

当往返时延RTT远大于数据帧发送时延Td时信道利用率非常低。

为了克服SW信道利用率很低的缺点就产生了另外两种协议。

2、回退N帧协议GBN

ab45cc65b08e44bda8234c0c5e2e5e39.png

 接收方不一定要对收到的数据分组逐个发送确认而是可以在收到几个数据分组后由具体实现而定对按序列到达的最后一个分组发送确认ACKn表示序号为n及以前的所有数据分组都已正确接收。

即使确认分组丢失发送方也可能不必重传。

发送方收到重复的确认就知道之前所发送的数据分组出现了差错于是可以不等超时计时器就立刻重传。

 当通信线路质量不好时回退N帧协议的信道利用率并不比停止-等待协议高。

若Wt超过取值范围接收方无法分辨新、旧分组。

89a0248cb030499e9d5870f06818fcf1.png

回退N帧协议的接收窗口尺寸Wr只能等于1因此接收方只能按序接收正确到达的数据分组。

一个数据分组的误码就会导致后续多个数据分组不能被接收方按序接收而丢弃。这必然会造成发送方对这些数据分组的超时重传显然这是对通信资源的浪费。

为了进一步提升性能可设法只重传出现误码的数据分组因此接收窗口的尺寸Wr不应再等于1以便接收方先收下失序到达但无误码并且序号露在接收窗口内的数据分组等到所缺分组收齐后再一并送交上层这就是选择重传协议。

3、选择重传协议SR

PS选择重传协议为了使发送方仅重传出现差错的分组接收方不能再采用累计确认而需要对每个正确接收到的数据分组进行逐一确认。

83e0feee3de84835bbd579f036ff28c7.png

9c7b7caa22ad49478d4c2c78f0e1beb3.png 107b073622a04440a967a1c391b6e2a1.png

 6、点对点协议PPP

点对点协议PPP是目前使用最广泛的点对点数据链路层协议。

PPP协议为在点对点链路传输各种下而已数据报提供了一个标准方法主要有以下三部分组成

        对各种协议数据报的封装方法封装成帧

        链路控制协议LCP用于建立、配置以及测试数据链路的连接

        一套网路控制协议NCPs其中的每一个协议支持不同的网络层系协议。

c0809fb4729041379635bb3576ecdfc8.png

 帧格式

c6461fee64de4bfe9737a2af3ce3e6f1.png

 标志字段PPP帧的定界符取值为0x7E

地址字段取值为0xFF预留

控制字符取值为0x03预留

协议字段指明帧的数据部分送交哪个协议处理

eec9290c38d84b86a33a32b3678a04c2.png

 帧检验序列字段CRC计算出的校验位

透明传输

实现透明传输的方法面向字节的异步链路、面向比特的同步链路

 0150f3e35d6d431982e0e0755e3e2e2d.png

 面向字节的异步链路采用插入转义字符的字节填充法

03d6956cf67944d6a2e8f19350f187e1.png

 面向比特的同步链路采用插入比特0的比特填充法

71d793da08dc43988fe0759ce5378acb.png

 差错检测
f0f9d0d873304df18f484a50fe2f2723.png

 采用的生成多项式

c7304bdc507d418b990e410b27a3da6c.png

 接收方每收到一个PPP帧就进行CRC检验若CRC检验正确就收下这个帧反之就丢弃这个帧使用PPP的数据链路层向上不提供可靠传输服务。

工作状态

 4407bc5e842c4ce79735116a05eece10.png

 7、媒体接入控制

共享信道要着重考虑的一个问题就是如何协调多个发送和接收站点对一个共享传输媒体的占用即媒体接入控制MAC。

1、静态划分信道

信道复用

复用是通信技术中的一个重要概念复用就是通过一条物理线路同时传输多路用户的信号。

当网络中传输媒体的传输容量大于多条单一信道传输的总通信量时可利用复用技术在一条物理线路上建立多条通信信道来充分利用传输媒体的带宽。

c10e6b9c43ee405a9618fed0d8c67d94.png

 频分复用FDM

cb5314e3b1e642ae8117ecf8494e36d7.png

 频分复用的所有用户同时占用不同的频带资源并行通信。

时分复用TDM

0f8565e6518a4590aceededcff39da66.png

 时分复用的所有用户在不同时间占用同样的频带宽度。

波分复用WDM

5074923ded0f4f66ac0e6c8e7391c616.png

码分复用CDM

人们更常用的名词是码分多址CDMA

同理上述复用对应的名词是频分多址FDMA、时分多址TDMA

与FDMA和TDMA不同CDMA的用户可以在同样的时间使用同样的频带进行通信。

由于各用户使用经过特殊挑选的码型因此各用户之间不会造成干扰。

在CDMA中每一个比特时间再划分为m个短的时间间隔称为码片。通常m的值是64/128。

使用CDMA的每一个站被指派一个唯一的m bit码片序列。

一个站如果要发送比特1则发送他自己的m bit码片序列

一个站如果要发送比特0则发送他自己的m bit码片序列的二进制反码。

5f25cbf1ce9e4e6cb0f273ea5a474573.png

 码片序列挑选原则

1.分配给每个站的码片序列必须各不相同

2.分配给每个站的码片序列必须相互正交规格化内积为0

令向量S表示站S的码片序列向量T表示其他任何站的码片序列

25382d0190f0465ab8bfe2d6c819f516.png

2、动态接入控制——随机接入 ——CSMA/CD

载波监听多址接入/碰撞检测 CSMA/CD协议

MA多个站连接在一条总线上竞争使用总线

CS每一个站在发送帧之前先要检测总线上是否有其他站点在发送帧

        若检测到总线空闲96比特时间则发送这个帧

        若检测到总线忙则继续检测并等待总线转为空闲96比特时间然后发送这个帧。

CD每一个正在发送帧的站边发送边检测碰撞

        一旦发现总线上出现碰撞则立即停止发送退避一段随机时间后再次发送。

以太网还采取一种叫做强化碰撞的措施这就是当发送帧的站点一旦检测到碰撞除了立即停止发送帧之外还要再继续发送32比特/48比特的人为干扰信号以便有足够多的碰撞信号使所有站点都能检测出碰撞。

争用期碰撞窗口

13c1208dc6854191bd4e3c9e1ed81b03.png

 主机最多经过2eq?%5Ctau的时长就可以检测到本次发送是否遭受了碰撞。

因此以太网的端到端往返传播时延2eq?%5Ctau称为争用期碰撞窗口。

经过争用期这段时间还没检测到碰撞才能肯定这次发送不会发生碰撞。

显然在以太网中发送帧的主机越多端到端往返传播时延越大发生碰撞的概率就越大。也难辞共享式以太网不能连接太多主机使用的总线也不能太长。

最小帧长

以太网规定最小帧长为64字节即512比特512比特时间即为争用期

以太网的最小帧长确保了主机可在帧发送完成之前就检测到该帧发送过程中是否遭遇了碰撞。

截断二进制指数退避算法

退避时间=基本退避时间争用期2eq?%5Ctau×随机数rr从离散的整数集合012……2^k-1中随机挑选一个数k=Min[重传次数10]

例如

32ab9d2ca00244dfb689b43947712ebc.png

 若连续多次发生碰撞就表明可能有较多的主机参与竞争信道但使用上述退避算法可使重传需要推迟的平均时间随重传次数而增大动态退避因而减小发生碰撞的概率有利于系统稳定。

当重传达16次仍不能成功时表明打算发送帧的主机太多则丢弃该帧并向高层报告。

信道利用率

10ac2f67511b48998396f09a648a0769.png

 考虑以下理想情况

各主机发送帧都不会发生碰撞总线一旦空闲就有某个主机立即发送帧发送一帧占用总线的时间为T0+eq?%5Ctau而本身的发送时间是T0.

e7fea1463e5244eda8c606fb418b6f65.png

 参数a的值应该尽量小以提高信道利用率以太网端到端的距离受到限制以太网帧的长度应尽量长些。

帧发送流程

12c2976e516b4e19b1007c9b30f7714f.png

帧接收流程

acc8d0412af44aeb9d41ccd033aaa9a1.png

 3、动态接入控制——随机接入 ——CSMA/CA

载波监听多址接入/碰撞避免 CSMA/CA

在无线局域网中仍然可以使用载波监听多址接入CSMA即在发送帧之前先对传输媒体纪念性载波监听如果有其他站在发送帧就推迟发送以免发生碰撞。

在无线局域网中不能使用碰撞检测CD原因

1、由于无线信道的传输条件特殊其信号强度的动态范围非常大无线网卡上接收到信号强度往往会远小于发送信号的强度如果要在无线网卡上实现碰撞检测CD对硬件的要求非常高。

2、即使能够在硬件上实现无线局域网的碰撞检测功能但由于无线电波传播的特殊性存在隐蔽站问题进行碰撞检测的意义也不大。

0a31a014636440bc8e169def194fe8bf.png

 802.11无线局域网使用CSMA/CA协议在CSMA的基础上增加了一个碰撞避免CA功能而不再实现碰撞检测功能。

由于不可能避免所有的碰撞并且无线信道误码率较高802.11标准还使用了数据链路层确认机制停止-等待协议用来保证数据被正确接收。

802.11的MAC层标准定义了两种不同的媒体接入控制方式

1.分布式协调功能DCF。在DCF方式下没有中心控制站点每个站点使用CSMA/CA协议通过争用信道来获取发送权这是802.11定义的默认方式。

2.点协调功能PCF。PCF方式使用集中控制的接入算法一般在接入点AP实现集中控制是802.11定义的可选方式在实际中较少使用。

帧间间隔IFS

802.11标准规定所有站点必须在持续检测到信道空闲一段指定时间后才能发送帧这段时间称为帧间间隔IFS

帧间间隔的长短取决于该站点要发送的帧的类型

高优先级帧需要等待的时间较短因此可以优先获得发送权

低优先级帧需要等待的时间较长某个站的的低优先级帧还没来得及发送而其他站的高优先级已发送到信道上低优先级帧只能再推迟发送减少发生碰撞的机会。

常用的两种帧间间隔

短帧间间隔SIFS28eq?%5Cmus是最短的帧间间隔用来分隔开属于一次对话的各帧一个站点应当能够在这段时间内从发送方式切换到接收方式使用SIFS的帧类型有ACK帧CTS帧由过长的MAC帧分片后的数据帧以及所有回答AP探询的帧和在PCF方式中接入点AP发送出的任何帧。

DCF帧间间隔DIFS它比SIFS长的多在DCF方式中用来发送数据帧和管理帧。

CSMA/CA的工作原理

ec3782a976f64e57afb7804276df2fe5.png

 当站点检测到通信是空闲的并且所发送的数据帧不是成功发送完上一个数据帧之后立即连续发送的数据帧则不使用退避算法。

以下情况必须使用退避算法

1.在发送数据帧之前检测到信道处于忙状态时

2.在每一次重传一个数据帧时

3.在每一次成功发送后要连续发送下一个帧时避免一个站点长时间占用信道。

CSMA/CA的退避算法

在执行退避算法时站点为退避计时器设置一个随机的退避时间

当退避计时器的时间减小到零的时候就开始发送数据

当退避计时器的时间未减小到零时而信道又转变为忙状态这时就冻结退避计时器的数值重新等待信道变为空闲再经过时间DIFS后继续启动退避计时器。

在进行第i次退避时退避时间在间隙编号01……2^(2+i)-1中随机选择一个然后乘基本退避时间一个间隙的长度就可以得到随机的退避时间这样做是为了使不同站点选择相同退避时间的概率变小当间隙编号达到255时就不再增加了。

c7b89ee386e04f958c0628293a44d1c0.png

CSMA/CA协议的通信预约和虚拟载波监听

为了尽可能减少碰撞的概率和降低碰撞的影响802.11标准允许要发送数据的站点对西宁道进行预约。

1.源站在发送数据帧之前先发送一个短的控制帧称为请求发送RTS。它包括源地址目的地址以及这次通信所需的持续时间

2.若目的站正确接收到源站发来的RTS帧且媒体空闲就发送一个响应控制帧称为允许发送CTS他也包括这次通信所需的持续时间从RTS帧中复制到CTS中

3.源站收到CTS帧后再等待一段时间SIFS后就可发送其数据帧

4.若目的站正确接收到源站发来的数据帧再等待一段时间SIFS后就向源站发送确认帧ACK。

28b6953f2e0747f386f51eaa627bad0e.png

 除源站和目的站以外的其他各站在收到CTS帧后就推迟接入到无线局域网中这样就保证了源站和目的站之间的通信不会收到其他站的干扰

如果RTS帧发生碰撞源站就收不到CTS帧需执行退避算法重传RTS帧。

由于RTS帧和CTS帧很短发送碰撞的概率、碰撞产生的开销很小。因此用很小的代价对信道进行预约是很值得的。

802.11标准规定了3种情况

使用RTS帧和CTS帧

不使用RTS帧和CTS帧

只有当数据帧的长度超过某一数值时才使用RTS帧和CTS帧。


除RTS帧和CTS帧会携带通信需要持续的时间数据帧也能携带通信需要持续的时间这成为802.11的虚拟载波监听机制。

由于利用虚拟载波监听机制站点只要监听到RTS帧、CTS帧、数据帧中的任何一个就能知道信道被占用的持续时间而不需要真正监听信道上的信号因此虚拟载波监听机制可以减少隐蔽站带来的碰撞问题。

8、MAC地址/IP地址/ARP协议

1、MAC地址

使用点对点信道的数据链路层不需要使用地址使用广播信道的数据链路层必须使用地址来区分各主机。

当多个主机连接在同一个广播信道上要想实现两个主机之间的通信则每个主机都必须有一个唯一的标识即一个数据链路层地址。

在每个主机发送的帧中必须携带标识发送主机和接收主机的地址由于这类地址是用于媒体接入控制MAC因此这类地址被称为MAC地址。

        MAC地址一般被固化在网卡网络适配器的电可擦可编程只读存储器EEPROM中因此MAC地址也被称为硬件地址。注意这并不意味着MAC地址属于网络体系结构中的物理层

一般情况下用户主机会包含两个网络适配器有线局域网适配器有线网卡和无线局域网适配器无线网卡。每个适配器都有一个全球唯一的MAC地址而交换机和路由器往往拥有更多的网络接口所以会有更多的MAC地址。严格来说MAC地址是对网络上各接口的唯一标识而不是对网络上各设备的唯一标识。

 

 判断多播地址

2、IP地址

 IP地址是因特网上的主机和路由器所使用的地址用于标识两部分信息

①网络编号标识因特网上数以百万计的网络

②主机编号标识同一网络上不同主机或路由器各接口

显然MAC地址不具备区分不同网络的功能

如果只是一个单独的网络不接入因特网可以只使用MAC地址不是一般用户的应用方式

如果主机所在的网络要接因特网则IP地址和MAC地址都要使用。

 数据包转发过程中IP地址和MAC地址的变换情况

 数据包转发过程中源IP地址和目的IP地址保持不变

数据包转发过程中源MAC地址和目的MAC地址逐个链路改变。

3、ARP协议

源主机在自己的ARP高速缓存表中查找目的主机的IP地址所对应的MAC地址若找到了则可以封装MAC帧进行发送若找不到则发送ARP请求封装在广播MAC帧中。

目的主机收到ARP请求后将源主机的IP地址和MAC地址记录到自己的ARP高速缓存表中然后给源主机发送ARP响应封装在单播MAC帧中ARP响应中包含有目的主机的IP地址和MAC地址。

源主机收到ARP响应后将目的主机的IP地址与MAC地址记录到自己的ARP高速缓存表中然后就可以封装之前想发送的MAC帧并发送给目的主机。

ARP的作用范围逐段链路或逐个网络使用。

除了ARP请求和响应外还有其他类型的报文。

ARP没有安全验证机制存在ARP欺骗问题。

9、集线器与交换机

早期的总线型以太网

使用双绞线和集线器HUB的星型以太网

使用集线器的以太网本质上还是总线网各站共享总线资源使用CSMA/CD协议

集线器只工作在物理层它的每个接口仅简单地转发比特不进行碰撞检测由各站网卡检测

集线器一般都有少量的容错能力和网络管理能力。

以太网交换机

 以太网交换机通常都有多个接口每个接口都可以直接与一台主机或另一个以太网交换机相连一般都工作在全双工方式。

以太网交换机具有并行性能同时连接多对接口使多对主机能同时通信无碰撞不适用CSMA/CD协议。

以太网交换机工作在数据链路层也包括物理层它收到帧后在帧交换表中查找帧的目的MAC地址所对应的接口号然后通过该接口转发帧。


对比集线器和交换机

集线器HUB早期以太网的互联设备工作在OSI体系的物理层对接收到的信号进行放大转发使用集线器作为互联设备的以太网仍然属于共享总线式以太网集线器互连起来的所有主机共享总线带宽属于同一个碰撞域和广播域。

交换机SWITCH目前以太网使用最广泛的互联设备工作在OSI体系的数据链路层根据MAC地址对帧进行转发使用交换机作为互联设备的以太网称为交换式以太网交换机可以根据MAC地址过滤帧即隔离碰撞域交换机的每个接口是一个独立的碰撞域。交换机隔离碰撞但不隔离广播

10、以太网交换机自学习和转发帧的流程

以太网交换机是一种即插即用的设备刚上电启动时其内部的帧交换表是空的随着网络中各主机间的通信以太网交换机通过自学习算法自动逐渐建立起帧交换表。

每条记录都有自己的有效时间到期自动删除这是因为MAC地址与交换机接口的对应关系不是永久性的。

以太网自学习和转发帧的流程

①收到帧后进行登记登记的内容为帧的源MAC地址以及进入交换机的接口号

②根据帧的目的MAC地址和交换机的帧交换表对帧进行转发有三种情况

Ⅰ明确转发交换机知道应该从哪个接口转发该帧单播多播广播

Ⅱ盲目转发交换机不知道应该从哪个接口转发该帧只能将其通过除进入交换机的接口外的其他接口转发泛洪

Ⅲ明确丢弃交换机知道不应该转发该帧将其丢弃。

11、以太网交换机的生成树协议STP

添加冗余链路可以提高以太网的可靠性但是冗余链路也会带来负面效应——形成网络环路

带来以下问题

①广播风暴大量消耗网络资源使得网络无法正常转发其他数据帧

②主机收到重复的广播域大量消耗主机资源

③交换机的帧交换表震荡。

以太网交换机使用生成树协议STP可以在增加冗余链路的同时又避免网络环路带来的问题。

不论交换机之间采用怎样的物理连接交换机都能够自动计算并构建一个逻辑上没有环路的网络其逻辑拓扑结构必须是树形的无逻辑环路。

最终的树形逻辑拓扑要确保联通整个网络

当首次连接交换机或网络物理拓扑发生变化时交换机都将进行生成树的重新计算。

12、虚拟局域网VLAN概述

以太网交换机工作在数据链路层使用一个或多个以太网交换机互联起来的交换式以太网其所有的站点都属于同一个广播域。随着交换式以太网规模的扩大广播域相应扩大巨大的广播域会带来很多弊端广播风暴难以管理和维护潜在的安全问题。

 分割广播域的方法

使用路由器可以分割广播域成本较高

 虚拟局域网VLAN技术应运而生

VLAN是一种将局域网内的设备划分成与物理位置无关的逻辑组的技术这些逻辑组具有某些共同的需求。

13、虚拟局域网VLAN的实现机制

1、IEEE 802.1Q帧

IEEE 802.1Q帧也称Dot One Q帧对以太网的MAC帧格式进行了扩展插入了4字节的VLAN标记

 VLAN标记的最后12比特称为VLAN标识符VID它唯一地标志了以太网帧属于哪一个VLAN

802.1Q帧是由交换机处理的而不是用户主机。

当交换机收到普通的以太网帧时会将其插入4字节的VLAN标记转变为802.1Q帧

当交换机转发802.1Q帧时可能会删除其4字节VLAN标记转变为普通以太网帧。

2、交换机的端口类型

Access端口一般只用于连接用户计算机Access端口只能属于一个VLANAccess端口的PVID值与端口所属的VLAN的ID相同默认为1。

Access端口接收处理方法一般只接受”未打标签“的普通以太网MAC帧根据接收帧的端口的PVID给帧打标签即插入4字节的VLAN标记字段字段中的VID取值与端口的PVID取值相等。

Access端口发送处理方法若帧中的VID与端口的PVID相等则去标签并转发该帧否则不转发。

Trunk端口一般用于交换机之间或交换机与路由器之间的互联Trunk端口可以属于多个VLAN用户可以设置Trunk端口的PVID值默认情况下为1。

Trunk端口接收处理方法接收未打标签的帧根据接收帧的端口的PVID给帧打标签字段中的VID取值与端口的PVID相等。接收已打标签的帧

Trunk端口发送处理方法对VID等于PVID的帧去标签后转发。对VID不等于PVID的帧直接转发。

Hybrid端口既可用于交换机之间或交换机与路由器之技安的互联也可用于交换机与用户计算机之间的互联。Hybrid端口可以属于多个VLAN用户可以设置Hybrid端口的PVID值默认情况下为1

Hybrid端口发送处理方法查看帧的VID是否在端口的去标签列表中若存在去标签后转发若不存在直接转发。

Hybrid端口接收处理方法接收未打标签的帧根据接收帧的端口的PVID给帧打标签字段中的VID取值与端口PVID相等。接收已打标签的帧。

 

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6