最近在二刷《计算机网络——自顶向下》做点笔记,加深印象,书不在手边时也能有个参考。之前的章节会陆续补充。
两种链路层信道:
节点(node):运行链路层协议的任何设备。如主机、路由器、交换机、Wi-Fi接入点
链路(link):连接相邻节点的通信信道
链路层主体部分在网络适配器(网络接口卡NIC),其核心是链路层控制器。
大部分链路层服务在硬件(链路层控制器)中实现:
部分链路层在软件中实现:
链路层是软硬件结合体, 是协议栈中软件与硬件交接的地方。
通常,要保护网络层数据报以及链路层帧首部。即使采用了差错检测比特,还是可能有未检出比特出差。
三种技术:
偶校验:数据+校验比特共偶数个1
奇校验:数据+校验比特共奇数个1
实际上差错经常以“突发”的方式聚集在一起,一旦出错通常会有多个比特一起出错。单比特奇偶检验保护的一帧中未检出差错概率达50%。
可以检测并纠正单个比特差错(包括校验比特本身)
d比特数据,按 k 比特划分为一个个整数,把这些整数加起来。
因特网检验和将数据按16bit整数对待,求和,取反码(每一位取反)。接收方对接收到的数据(包括检验和)求和取反,检测是否全1。
TCP和UDP对所有字段包括首部和数据字段都计算因特网检验和。
也称为多项式编码,将发送比特串看成是系数是0和1的多项式。每个CRC标准都能检测
点对点链路:
广播链路:
多路访问信道:
多路访问协议:规范共享广播信道上的传输行为,协调活跃节点的传输
理想情况下,对于速率为 R bps的广播信道:
TDM将时间划分为时间帧,每个时间帧 time frame 分为N个时隙 slot。TDM 消除了碰撞、公平。但单节点只能利用 R/N 带宽,即使只有一个发送节点。且节点必须等待轮次。
FDM 优缺点同 TDM:消除碰撞,单节点最大 R/N 带宽。
CDMA 对每个节点分配不同的编码,同时传输,不在乎其他节点干扰。CDMA编码类似于 TDM的时隙和FDM的频率。军用到民用蜂窝电话。
节点总是以全部速率 R 发送。碰撞时,等待随机时延,反复重发,直到无碰撞通过。
以太网是CSMA协议。
最大效率: 一个节点成功传输的概率 p*(1-p)^(N-1)
N个节点活跃节点,时隙 ALOHA的效率是 Np*(1-p)^(N-1)
当 N趋向于∞,最大效率 37%。另外37%空闲,另外26%碰撞。
非时隙、完全分散。收到网络层数据报,立即发送,如果碰撞,发完之后立即以概率p重传。
ALOHA 最大效率是时隙ALOHA的一半。
载波侦听:节点发送前先听信道,如果有其他节点正在发送,则等待一段时间没有传输后再开始发送。
碰撞检测:检测到碰撞,立即停止传输。
这两个规则包含在CSMA和CSMA/CD中。
为什么有载波侦听还会碰撞?因为传播时延。A节点发送数据,但传播到B节点需要一段时间,这时B节点也开始发送。传播时延越长,碰撞机会越大。
CSMA没有碰撞检测,即使碰撞也会继续发送完。
CSMA/CD 检测到碰撞立即停止传输。
随机时间量的选取:以太网和DOCSIS使用二进制指数后退算法。一个帧经历n次碰撞后,随机从 {0...2^n - 1} 中选择K。对于以太网,等待的时间是发送512比特所需时间的K倍。
定义:大量活跃节点,大量帧要发送
传输时间指传是一个最大长度以太网帧的时间,对于10M以太网,约为1.2ms。
效率=1/(1+5*传播时延/传输时间)
6.3 节中对于速率为 R bps的广播信道的理想特性:
随机接入的 ALOHA 和 CSMA 具备第1个特性,但不具备第2个特性。轮流协议可以满足第2个特性。
两种重要的轮流协议:
电缆接入网用到了信道划分协议、随机接入协议和轮流协议。
CMTS:Cable Modem Termination System,电缆调制解调器端接系统
DOCSIS:Data Over Cable Service Interface,CMTS:数据经电缆服务接口
DOCSIS 使用 FDM 将下行(CMTS到Modem)和上行(Modem到CMTS)划分为多个频率信道。每个上下行均为广播信道。下行只有CMTS发送,没有多路访问问题;上行可能出现碰撞。每个上行信道划分为时间间隔(类TDM),CMTS在下行信道通过MAP控制报文显式准许各个Modem在特定微时隙进行传输。
为了通知CMTS有数据发送,Modem在微时隙的特定间隔内向CMTS发送请求帧。请求帧以随机接入方式传输,不能帧听信道是否空闲,也没有碰撞检测,如果没有在下一个下行控制报文收到响应,则以二进制指数回退延缓重发。