四.ARP协议算法
1. MAC地址(LAN地址、物理地址、以太网地址)跨域
(1)做用:用于局域网内标识一个帧从哪一个接口发出,到达哪一个物理相连的其余接口缓存
(2)固化在网卡的ROM中(惟一的),有时能够软件设置网络
(3)表示:十六进制、六个字节,如1A-2F-BB-76-09-AD架构
(4)管理:IEEE统一管理与分配前24个比特给网卡生产商,生产商分配后24个比特学习
(5)MAC地址 vs IP地址spa
·MAC地址:平面地址,可携带,可从一个LAN移到另外一个LAN,至关于身份证号3d
·IP地址:层次地址,不可携带,依赖于结点链接到哪一个子网,至关于邮政地址blog
2. ARP:地址解析协议接口
(1)问题:在同一个LAN内,如何在一直目的接口的IP地址的前提下肯定其MAC地址
(2)ARP表:即插即用
·LAN中的每一个IP结点维护一个表,储存<IP地址; MAC地址; TTL>
·TTL一般为20min,通过这个时间后,映射关系会被遗弃
(3)过程
·A想发送数据报给B,B的MAC地址不在A的ARP表中
·A广播ARP查询分组,其中包含B的IP地址,目的MAC地址为全1,LAN中全部结点都接收查询
·B接收ARP查询分组,IP地址匹配成功,向A应答B的MAC地址(单播)
·A在其ARP 表中缓存B的IP-MAC地址对,直至超时
3. 寻址:从一个LAN路由到另外一个LAN
(1)A构造IP数据报,其中源IP地址是A的,目的地址是B的
(2)A构造链路层帧,其中源MAC地址是A的,目的MAC地址是R左端的,封装A到B的IP数据报
(3)帧从A发送至R,R接收帧,提取IP数据报,传递给上层IP协议
(4)R转发IP数据报(源和目的IP地址不变)
(5)R建立链路层帧,其中源MAC地址是R右端的,目的MAC地址是B的,封装A到B的IP数据报
五.以太网
1. 优点:造价低廉、应用普遍、简单偏移、知足网络速率需求
2. 物理拓扑
(1)总线(同轴电缆):全部节结点在同一冲突域
(2)星形(中心交换机):目前主流网络拓扑,每一个结点一个单独冲突域
3. 不可靠、无链接服务
(1)无链接:发送帧的网卡与接收帧的网卡间没有握手过程
(2)不可靠:接收王可不向发送网卡确认,差错帧直接丢弃,数据恢复依靠高层协议
(3)以太网的MAC协议:采用二进制指数退避算法的CSMD/CD
4. 以太网CSMD/CD算法
(1)NIC从网络层接收数据报,建立数据帧
(2)监听信道,若空闲则开始发送帧,不然一直监听直到信道空闲
(3)NIC发送完整个帧,而没有检测到其余结点的数据发送,NIC确认帧发送成功
(4)若NIC检测到其余结点的数据发送,停止发送,发送堵塞信号
(5)停止发送后,NIC进入二进制指数退避
·第m次连续冲突后
- 取n = Min(m, 10)
- NIC从{0, 1, 2, ..., 2^n - 1}中随机选择一个数K
- NIC等待512K比特的传输延迟时间,返回第二步
·连续冲突次数越多,平均等待时间越长
5. 以太网帧结构
(1)前导码:8B,7个字节的10101010,第8个字节为10101011
(2)目的/源MAC地址:6B,全1表示广播地址
(3)类型:2B,指示帧中封装的是哪一种高层协议的分组
(4)数据:46-1500B,上层协议载荷
(5)CRC:4B,循环冗余校验码,丢弃差错帧
6. 不一样以太网标准:相同的MAC协议和帧格式,不一样的速率和物理介质
7. 交换机
(1)链路层设备
·存储-转发以太网帧
·检验到达帧的目的MAC地址,选择性地向一个或多个输出链路转发帧
·利用CSMA/CD访问链路,发送帧
·透明:主机没法感知交换机的存在
·即插即用
(2)多端口间同时传输
·主机利用独享链路直接链接交换机
·交换机缓存帧
·全双工发送帧,每段链路一个独立的冲突域,即AA’和BB’可同时传输
(3)交换机转发表:交换表
·交换表项:主机MAC地址,到达主机的接口,时间戳
·自学习:收到帧时,学习源MAC地址,将信息记录到交换表中
·帧过滤/转发
(4)组织机构网络:IP子网 = 广播域
(5)交换机 vs 路由器
·均为存储-转发设备:路由器是网络层设备,交换机是链路层设备
·均使用转发表:路由器利用路由算法和IP地址,交换机利用自学习和MAC地址
8. 虚拟局域网(VLAN)
(1)动机:不使用路由器便可划分广播域
(2)支持VLAN划分的交换机能够在一个物理LAN架构上配置、定义多个VLAN
(3)基于端口的VLAN
·经过划分端口将单一的物理交换机视为两个独立虚拟交换机,进行流量隔离
·端口能够动态地分配给不一样VLAN
·两个VLAN间经过路由进行转发
(4)跨越多交换机地VLAN
·多线缆链接:每一个线缆链接一个VLAN
·中继端口:在跨域多个物理交换机定义地VLAN承载帧,为避免歧义,必须携带VLAN ID信息,802.1Q协议为通过中继端口转发的帧增长/去除额外的首部域
·802.1Q VLAN帧格式