因为物理层可能会把数据弄丢,所以数据链路层需要进行一些设置来使得物理层可以可靠的传输数据。
将网络层传下来的分组添加首部和尾部,用于标记帧的开始和结束。
透明表示一个实际存在的事物看起来好像不存在一样。
缺点:记数字段丢失后,容易造成数据错乱。
加头字段与尾字段分别标记开始与结束,并且头字段与尾字段不同。
如何解决帧中出现的与标记字段相同的问题呢?解决方法:添加转义字符。
例如曼彻斯特编码中不会使用高-高、低-低来表示,所以如果使用高-高、低-低来表示帧起始和终止就不会与数据冲突。
检验和纠正差错的编码方法主要有检错编码与纠错编码:
缺点:只能校验奇数个错误,不能检验偶数个错误。
用传输数据除以生成多项式得到冗余码,最终发送的数据=要发送的数据+帧检验序列FCS。
举一个例子:要发送的数据是1101 0110 11,采用CRC校验,生成多项式是10011,那么最终发送的数据是?
FCS的生成以及接收端CRC检验都是由硬件实现,处理很迅速,因此不会厌恶数据的传输。
海明码可以发现双比特错误,纠正单比特错误。
海明码纠错详解可参考最通俗易懂的海明码校验纠错讲解一文。
停止-等待协议与滑动窗口协议
。停止-等待协议:发送窗口大小=1,接受窗口大小=1;
后退N帧协议(GBN):发送窗口大小>1,接受窗口大小=1;
选择重传协议(SR):发送窗口大小>1,接受窗口大小>1。
因为一次就一个,所以用0和1标记ack就行
情况一:数据帧丢失或检测到帧出错
情况二:ACK丢失
情况三:ACK迟到
停止等待协议的特点:
因为停止等待协议太浪费时间了,所以尝试采用GBN,发送连续多个数据帧,以增大信道利用率。
运行中的GBN:
发送窗口不能无限大,与使用的编号的比特数有关。
GBN的优缺点也显而易见,优点是提高了信道利用率,缺点是因为重传机制的原因导致已经收到数据却需要强行丢弃而造成浪费。
为了解决GBN的缺点,只重传出错误的帧,这样不用浪费资源把已经收到的帧再重传一次了。
解决办法就是,设置单个确认,同时加大接首窗口,设置接收缓存,缓存乱序到达的帧。
运行中的SR:
发送窗口不能无限大。滑动窗口最好等于接收窗口。(大了会溢出,小了没意义)
一对多通信,一个节点发送的数据能够被广播信道上所有的节点接收到。
所有的节点都在同一个广播信道上发送数据,因此需要有专门的控制方法进行协调,避免发生冲突(冲突也叫碰撞)。
主要有两种控制方法进行协调,一个是使用信道复用技术,一是使用 CSMA/CD 协议。常用于局域网。
一对一通信。
因为不会发生碰撞,因此也比较简单,使用 PPP 协议进行控制,常用于广域网。
介质访问控制(medium access control)简称MAC。 是解决共用信道的使用产生竞争时,如何分配信道的使用权问题。
信道划分介质访问控制就是使用介质的每个设备与来自同一信道的其他设备的通信隔离开,把时域和频域资源合理地分配给网络上的设备。
频分复用的所有主机在相同的时间占用不同的频率带宽资源。
优点:充分利用传输介质带宽,系统效率高;由于技术成熟,实现比较容易。
时分复用的所有主机在不同的时间占用相同的频率带宽资源。
频分复用——“并行”;时分复用——“并发”。
使用频分复用和时分复用进行通信,在通信的过程中主机会一直占用一部分信道资源。但是由于计算机数据的突发性质,通信过程没必要一直占用信道资源而不让出给其它用户使用,因此这两种方式对信道的利用率都不高。
是对时分复用的一种改进,不固定每个用户在时分复用帧中的位置,只要有数据就集中起来组成统计时分复用帧然后发送。
假设线路传输速率为8000b/s:
采用TDM,则4个用户的平均速率为2000b/s;
采用STDM,则每个用户的最高速率可达8000b/s。
光的频分复用。由于光的频率很高,因此习惯上用波长而不是频率来表示所使用的光载波。
CDM(码分多路复用技术)总结
纯ALOHA协议:
时隙ALOHA协议:
名称 | 描述 | 优点 | 缺点 |
---|---|---|---|
1-坚持CSMA | 发送信息时监听信道,一空闲下来就立即传输,信道忙也一直监听,如果发送时冲突就等待随机时长之后再监听。 | 立即发送,利用率高 | 如果多台设备同时监听,那么会发生冲突。 |
非坚持CSMA | 发送信息时监听信道,如果空闲就立即传输,信道忙就随机等待一段时间后再监听。 | 冲突发生的几率减少 | 因为需要等待,所以利用率不高。 |
p-坚持CSMA | 发送信息时监听信道,空闲时以概率p进行传输,概率1-p不传输。信道忙就随机等待一段时间后再监听。 | 冲突减少的同时效率也比较高 | 即使发生冲突也要坚持发送数据,资源被浪费。 |
CSMA/CD 表示载波监听多点接入 / 碰撞检测。
记端到端的传播时延为 τ,最先发送的站点最多经过 2τ 就可以知道是否发生了碰撞,称 2τ 为 争用期 。只有经过争用期之后还没有检测到碰撞,才能肯定这次发送不会发生碰撞。
当发生碰撞时,站点要停止发送,等待一段时间再发送。这个时间采用 截断二进制指数退避算法 来确定。从离散的整数集合 {0, 1, …, (2k-1)} 中随机取出一个数,记作 r,然后取 r 倍的争用期作为重传等待时间。
最小帧长问题:
CSMA/CD协议与CSMA/CA协议区别
轮询协议要求节点中有一个被指定为主节点,其余节点是从属节点。
主节点以循环的方式轮询每一个从属节点,“邀请”从属节点发送数据(实际上是向从属节点发送一个报文,告诉从属节点可以发送帧以及可以传输帧的最大数量),只有被主节点“邀请”的从节点可以发送数据,没有被“邀请”的节点不能发送,只能等待被轮询。
存在问题:
动态演示:
局域网是一种典型的广播信道,主要特点是网络为一个单位所拥有,且地理范围和站点数目均有限。
主要有以太网、令牌环网、FDDI 和 ATM 等局域网技术,目前以太网占领着有线局域网市场。
决定局域网的主要要素有:网络拓扑、传输介质和介质访问方法。
局域网 | 常用介质 |
---|---|
有线局域网 | 双绞线,同轴电缆,光纤 |
无线局域网 | 电磁波 |
以太网早期使用集线器进行连接,集线器是一种物理层设备, 作用于比特而不是帧,当一个比特到达接口时,集线器重新生成这个比特,并将其能量强度放大,从而扩大网络的传输距离,之后再将这个比特发送到其它所有接口。如果集线器同时收到两个不同接口的帧,那么就发生了碰撞。
目前以太网使用交换机替代了集线器,交换机是一种链路层设备,它不会发生碰撞,能根据 MAC 地址进行存储转发。
以太网提供无连接、不可靠的服务。
有固定的基础设施的无线局域网
无固定基础设施无线局域网的自组织网络
广域网与局域网的区别与联系
互联网用户通常需要连接到某个 ISP 之后才能接入到互联网,PPP 协议是用户计算机和 ISP 进行通信时所使用的数据链路层协议。
PPP协议的三个组成部分:
PPP 的帧格式:
HDLC的三种站
HDC帧格式
HDLC与PPP区别:
可以扩展以太网,但是集线器会无脑将一个设备的所有消息转发到集线器所连的所有设备,故会将所连接的所有设备变成一个大的冲突域,同时只能有两台设备进行通信,且设备越多,冲突越多。
透明网桥
通过自学习来构建转发表。每一个通过网桥的数据包都会被记录下网桥收到数据时数据对应的地址和网桥自己的接口,通过许许多多的数据包的构造的缓存,网桥就可以知道哪个数据包在哪个接口,以后如果要穿数据包就知道要往哪个接口发送数据包。
原路由网桥
在源路由网桥中,路由选择由发送数据帧的源站负责,网桥只根据数据真正的路由信息对帧进行接收和转发。
桥接器的主要限制是在任一时刻通常只能执行一个帧的转发操作,于是出现了局域网交换机,又称以太网交换机。
以太网交换机是一个多端口的网桥
,它工作在数据链路层。交换机能经济地将网络分成小的冲突域,为每个工作站提供更高的带宽。计算机网络