链路层
- 负责相邻节点之间**数据报(datagram)**的传输
- 大部分实现在网络适配器(network adapter)(网络接口卡(network interface card(NIC)))
差错检测和纠正技术 (Error-Detection and -Correction Techniques)
- 奇偶校验(parity checks)
- 校验和(checksumming methods)(多用于运输层)
- 循环冗余检测(cyclic redundancy checks)(多用于适配器的链路层)
- 也称为多项式编码(polynomial code)
- 发送方和接收方首先确认一个r+1位的位模式G–生成多项式(generator),要求其最高位为1.
- 对于要发送的一个给定位模式D,发送方要计算一个r位的位模式R附加到D后,发送一个D+r长度的位模式。
- 若收到的D+r长的位模式可以被G用模2算术整除,则认为无错误;否则认为出错。
多路访问链路和协议
3类多路访问协议:
- 信道划分协议 (channel partitioning protocol)
- 时分复用(TDM)
- 频分复用(FDM)
- 码分多址(CMDA)
- 随机接入协议 (random access protocol)
- 碰撞发送时随机延时一段时间后重发
- 载波监听多路访问(Carrier Sense Mutiple Access, CSMA) / 具有碰撞检测的CSMA(CMSA/CD)协议
- 载波监听(carrier sensing):一个节点在传输前先听信道,等带一段空闲的时间发送
- 碰撞检测(collision detection):一个节点在传输时一直监听信道,检测到干扰时,立即停止传输,等待一段时间后,监听等待一段空闲
- 轮流协议 (taking-turns protocol)
- 轮询协议(polling protocol):主节点循环地允许每一个节点发送帧
- 令牌传递协议(token-passing protocol)
链路层寻址
- MAC(medium access control)地址:
- 物理地址
- 6字节
- 广播地址:FF-FF-FF-FF-FF-FF
- 地址解析协议(Addressing Resolution Protocol ARP)
- 负责网络层协议的地址(IP…)和链路层地址(MAC)之间的转换
- 介于网络层和链路层
- ARP只为在同一个子网内的主机和路由器解析IP地址
- 每个主机和路由器维护一个ARP表,每条记录包括 IP地址, 对应的MAC地址, TTL过期时间
- 为查询在同一个子网中的IP地址所对应MAC地址,向子网广播ARP分组(ARP Packet),询问子网上所有主机和路由器。
- 具有对应IP的设备向询问主机返回一个携带其期望映射的ARP分组
- windows下查看ARP表:arp -a
- 若目的IP地址不在ARP表中,说明不在同一个子网中,则发送到"first-hop router"–>网关("第一跳路由器"的地址)
以太网 Ethernet
-
局域网技术
-
使用总线—>集线器(hub)(星型拓扑)—>交换机(switch)(星型拓扑)
-
路由器:运行在高至第三层;交换机:仅运行在低二层。
-
Ethernet Frame 以太网帧
-
前同步码 Preamble: 7个10101010 + 1个10101011。用于“唤醒”接收适配器
-
类型:上层协议
-
CRC (Cyclic redundancy check)循环冗余校验
链路层交换机 Link-Layer Switches
- 通过**交换机表(switch table)**完成过滤和转发,表中包括
- MAC地址
- 对应的交换机接口
- 该表项创建的时间
- 转发:
- 若目的地址在表中不存在,则广播该帧
- 若该帧目的地址对应的接口与该帧传来的接口相同,没有必要转发,抛弃
- 正常情况下向目的地址对应的接口转发
- 交换机表的自动建立
- 对于每个到来的帧,将其源地址、到达的接口、到达的时间储存在一个表项中
- 在一段时间内(老化期(aging time)),未收到源地址为某个地址的帧,则从表中删除该地址的表项