计网笔记第五章
计网笔记
数据结构:
- data
- segment
- datagram
- frame
datagram到frame需要加头加尾,前面都是只需要加头。
网络适配器交流

位校验
EDC: Error Detection and Correction bits (redundancy)位校验和纠正位
原理:

奇偶校验
差错通常不是百分之一百的
例子,两维的奇偶校验,右边发生位错误,左边正确:

1的个数:奇1偶0
Cyclic redundancy check循环冗余校验

计算CRC例子:

Multiple access links protocol多路访问链路协议
信道划分协议
- 时分多路复用TDM
- 频分多路复用FDM
- 码分多址CDMA
随机接入协议
要解决的问题:
- 解决冲突
- 怎么从冲突中恢复
随机接入协议有:
- slotted ALOHA时隙ALOHA
- ALOHA
- CSMA CSMA/CD CSMA/CA
时隙ALOHA
- 每帧L比特
- 每个时隙L/R,就是每个时隙可以传输一个帧,节点只有在时隙起点开始传输帧
- 节点是同步的
- 如果有冲突,那么所有节点可以在时隙结束之前检查到碰撞
在每个节点中:
- 当一个节点有新帧,在下一个时隙开始传输这个帧
- 如果没有碰撞,那么成功传输
- 如果有,节点以p的概率重传它,1-p的概率再下一个时隙决定重传的概率
例子:

有点:
- 当只有一个节点活跃的时候可以全速传输
- 高度分散
- 简单
缺点:
- 碰撞,浪费时隙
- 空闲时隙
- 效率不高,最高只有0.37
ALOHA
原理:
- 当有帧到达时,立刻完整地传输整个帧
- 如果有碰撞,在传输完它的碰撞帧之后以概率p传输该帧。否则改节点等待一个帧传输时间。等待之后,p传输或者1-p在另一个帧时间等待
特点:
- 无时隙,更简单,不同步
- 碰撞概率增加
- 效率很低,只有时隙ALOHA的一半
载波侦听多路复用CSMA
- 传输之前先监听
- 如果信道空闲则传输帧
- 如果忙碌推迟传输
就是传输之前先监听,不要打扰别人的意思
CSMA碰撞
这样的情况下还是有碰撞的,因为即使CSMA在传输之前会监听别人是否在传输,但是由于信道传播时延,还是会出现碰撞的情况
具有碰撞检测的CSMA/CD
过程:
- 适配器从网络岑获得数据报,准备链路层帧,并放入帧适配器缓存中
- 如果适配器监听到信道空闲(即无能量进入适配器),开始传输,如果信道正忙,那么等待,知道监听到没有能量进入信道
- 在传输过程中,如果监听到有能量进入,那么终止传输,否则完成传输
- 终止传输之后,适配器等待一个随机时间量,然后回到步骤2
效率:
Tprop是信号能量在任意两个适配器之间传输的最大时间
ttrans是传输一个最大帧的时间
效率为:

轮流协议taking turn
轮询协议polling protocol

- 主节点邀请依次邀请其他节点,告诉它可以发送的最大帧数,发送完之后询问下一个节点
令牌传递协议token-passing protocal

线路接入网络cable access network

mac地址和arp
32位ip地址:
48位mac地址(或者叫LAN地址或者以太网地址):
ARP协议
arp表每一个在LAN中的ip节点(主机或者路由器)都有一张ARP表
形式:
相同LAN下的arp协议
一台机器获取另一台机器的mac地址
- A想给B发datagram,但是B的MAC地址不在A的arp表中
- A广播arp请求包arp query packet,其中包含了A的ip地址,所有在LAN下的节点都受到这个广播
- B接受到ARP packet,用自己的MAC地址回应A
- A缓存保存ip-mac地址对到它自己的arp表知道超时
不同LAN之间的routing
情形:
- A知道B的ip地址,但是不知道mac地址
- A知道第一跳路由器的ip地址和mac地址

- A创建一个带有src ip A dst ip B的ip datagram
- A创建一个链路层的frame,带有R的mac地址作为dst mac,frame包含了A-B的ip datagram
- 这个frame被从A发送给R
经过路由器

- 路由器R接收到这个frame之后,datagram被拿出来,放到ip层
- R转发这个ip datagram
- 路由器创建一个链路层的frame,包含A-B的datagram
Etherent以太网
网络结构:
- 总线结构
所有节点之间会发生碰撞
- 星型结构
所有节点之间不会发生碰撞

Ethernet frame以太网传输frame
Etherent 帧结构:

特点:
NIC是网卡
Ethernet CSMA/CD algorithm

- 网卡从网络层接受数据,创建链路层frame
- 如果网卡监听到信道空闲,开始传输帧,否则等到信道空闲再传输
- 如果网卡传输完整个帧,那么完成
- 如果在传输过程中监听到其他传输,那么终止传输,发哦是那个jam信号(让其他传输者也知道这个碰撞)
- 终止之后,网卡进入指数倒退:第m次碰撞之后,从{0,1,2,...,2^m - 1}中选择K,网卡等待K*512位时间,返回步骤2
CSMA/CD的效率
效率还是之前那样
比ALOHA更好:更简单和偏移,也分散
Manchester encoding曼彻斯特编码

点对点数据链路控制
- 一方发送,一方接受,一个链接:比广播链路更容易
- 例子:
- PPP(point-to-point协议)
- HDLC
LAN
hub结构
不缓存,会发生碰撞

以太网交换机
功能:
- 过滤
- 转发
过滤和转发依靠交换机内的交换机表,交换机和路由器的区别在于:交换机转发和分组基于mac地址而不是ip地址

交换机过滤和转发机制:
当有一个目的地址DD-DD-DD-DD-DD-DD的帧从x接口到达,交换机查找它的交换机表,有三种情况:
- 没有找到一个符合的表项,则向除了x之外的所有接口转发这个帧的副本
- 找到一个接口,但是就是x,这时候过滤掉这个帧,就是抛弃了
- 找到一个y!=x,向y转发这个帧
交换机的自学习:
- 交换机表初始为空
- 对于在每个接口受到的帧,在表中存一项:1 帧源mac地址;2 帧到达的接口;3 当前时间
- 老化期之后删除这个地址
交换机和路由器对比
交换机优点:
- 即插即用
- 便于管理
- 较高的分组过滤和转发速率
交换机缺点:
- 对广播风暴没有保护措施
路由器优点:
路由器缺点:
VLAN虚拟局域网
同一个交换机下两个vlan的交流
不同交换机上的vlan的交流,trunk模式

多协议标签交换MPLS
格式: (MAC address of host, interface to reach host, time stamp)
(主机的mac地址,去往主机的接口,时间戳)
Interconnecting switch互相连通的交换机
例子:一开始switch table为空,从A发送到G,然后从G发送到A

A一开始不知道G的mac地址以及链路接口,所以它只能往S1
浏览网页步骤
- DHCP获取ip地址