MAC地址

IP地址:

  • 接口的网络层地址
  • 用于标识网络层分组,支持分组转发

MAC地址(物理地址,LAN地址,以太网地址):

  • 链路层标识一个帧从哪个接口发出,到达哪个物理相连的其他地址
  • 48位MAC地址,固化在网卡ROM中,有时也可软件设置
  • 局域网中每块网卡都有唯一的MAC地址
  • 由IEEE统一管理与分配

ARP(地址解析协议)

ARP表:LAN中每个IP结点(主机、路由器)维护一个表:

  • 存储某些LAN结点的IP/MAC映射关系
  • TTL(time to live),经过该时间后该映射关系会被遗弃,因为IP地址不是确定的

在一个局域网内,当需要没有存储的映射关系时,广播ARP查询分组,广播时MAC地址设为全1,对应结点接收查询分组时,向查询者响应其MAC地址(单播)

需要跨越路由器时,已知需要转化的IP地址、第一跳路由器IP地址(默认网关)、第一跳路由器MAC地址(一个局域网内ARP协议),在起点封装链路层数据帧时,MAC地址为第一跳路由器MAC地址,路由器接收数据帧后,提取网络层数据报,交给网络层处理,然后封装到新的链路层数据帧,发送到下一跳路由器,以此类推。

以太网(Ethernet)

统治地位的有线LAN技术,造价低廉,应用广泛,比令牌局域网和ATM等简单、便宜,可以满足网络速率需求

总线(bus)网络:上世纪90年代中期前流行,使用一条同轴电缆形式的总线连接所有结点,彼此可能冲突

星型:目前主流网络拓扑,利用交换机(switch),有一个中心交换机,结点间彼此不冲突

以太网提供不可靠、无连接的服务

  • 发送帧的网卡和接收帧的网卡没有握手过程
  • 接收网卡不向发送网卡进行确认,差错帧直接丢弃,数据恢复依靠高层协议(如TCP)
  • 以太网采用二进制指数退避算法的CSMA/CD协议

以太网CSMA/CD协议

  • 网卡从网络层接收数据报,创建数据帧
  • 监听信道,如果信道空闲,则开始发送帧;
  • 如果信道忙,则一直等待到信道空闲,然后发送帧
  • 网卡发送完整个帧,没有检测到其他结点的数据发送,则网卡确认帧发送成功
  • 如果检测到其他结点传输数据,则终止发送,并发送阻塞信号
  • 终止发送后,网卡进入二进制指数退避:第m次冲突,取n=max(m,10),从(0,1,…,$ 2^n-1 $)中随机取一个数k,网卡等待k*512比特的传输延迟时间,再重新开始监听信道,连续冲突次数越多,平均等待时间越长

以太网帧结构

网卡将IP数据报封装到以太网帧中

前导码:8byte,前7个字节为10101010,第8字节为10101011,用于发送端和接收端时钟同步

目的MAC地址、源MAC地址:各6byte,全1为广播地址

类型:2byte,指示封装的是哪种高层协议的分组

数据:46-1500byte

CRC:4byte

以太网标准

许多不同的以太网标准:

  • 相同MAC协议和帧格式
  • 不同速率
  • 不同物理介质

以太网交换机

链路层设备

  • 存储、转发以太网帧
  • 检验到达帧目的的MAC地址,选择性向一个或多个输出链路转发帧
  • 利用CSMA/CD协议

常用透明(transparent)交换机

  • 主机感知不到交换机的存在
  • 即插即用
  • 自学习

主机利用独享链路直接连接交换机

交换机实现帧缓存与转发

在每段链路上使用CSMA/CD协议,但无冲突,且可以全双工

不同链路可以并行传输

交换机维护转发表(交换表),每个入口记录主机MAC地址、到达主机的接口、时间戳

交换机通过自学习获知到达主机的接口信息,收到数据帧时,交换机得知MAC地址和到达接口的对应关系,记录到交换表中,然后查找表进行转发。如果源MAC地址和目的MAC地址位于相同的网段,则丢弃数据帧,不需要转发;如果在交换表中没有找到,则泛洪转发,转发到除接收接口之外的所有接口上。

交换机可以互联(层级连接,一个中心交换机连接其他的交换机)

交换机和路由器对比:

  • 都是存储-转发设备
  • 路由器为网络层设备,处理网络层数据报
  • 交换机为链路层设备,处理链路层帧
  • 二者都使用转发表,路由器利用路由算法计算得到,交换机利用自学习、泛洪构建转发表

虚拟局域网(VLAN)

不使用路由器隔离广播域

物理LAN的基础上配置、定义多个VLAN

单一物理交换机的端口分开,就像多个交换机一样

  • 流量隔离,分隔的端口只能在范围内广播
  • 也可以基于MAC地址划分
  • 动态成员,不需要改动物理线路
  • VLAN之间转发,需要使用路由器,厂家会将交换机和路由器集成在一起

VLAN如果要跨越多交换机划分:

  • 多线缆连接,每个线缆连接一个VLAN
  • 中继端口,连接两个物理交换机,传输跨越交换机的VLAN的帧(需要携带VLAN ID,802.1q协议,在标准以太网帧的基础上插入标记协议ID和控制信息的部分)

PPP协议

点对点数据链路控制

  • 不存在介质访问控制
  • 无需MAC寻址
  • 如,拨号链路,ISDN链路
  • 常见协议:HDLC、PPP

需求:

  • 组帧,可以承载任何网络层协议分组
  • 可以向上层实现复用和分用,在数据帧增加字段描述
  • 比特透明传输,数据域必须支持任何比特模式
  • 差错检测
  • 连接活性检测
  • 网络层地址协商,端结点可以学习/配置彼此网络地址

不支持功能:

  • 差错纠正
  • 流量控制
  • 不存在乱序交付
  • 不需要多点链路

PPP数据帧

首部和尾部分别flag:01111110,定界符

地址:无效

控制:无效

协议:上层协议,实现复用分用

信息:上层协议分组

校验:CRC校验

字节填充

透明传输需求:数据域需要允许包含标志模式01111110

发送端出现上述模式时,在前面进行填充

协议过程

在交换数据之前:

  • 配置PPP链路,最大帧长,身份认证,数据帧中可变部分的长度
  • 学习/配置网络层信息,对于IP协议,通过IPCP(IP control protocol)协议,完成IP地址等信息的配置

802.11无线局域网(WIFI)

802.11b:2.4-2.5GHz免费频段,最高速率为11Mbps,物理层采用直接序列扩频技术(如CDMA,所有主机使用相同的码片序列)

802.11a:5-6GHz,最高速率54Mbps

802.11g:2.4-2.5GHz,最高速率54Mbps

802.11n:多天线技术,2.4-2.5GHz,最高速率600Mbps

均使用CSMA/CA多路访问控制协议

均有基站网络模式和自组网网络模式

体系结构

  • 无线主机与基站通信(访问点,accesspoint,AP)
  • 基本服务集(BSS),基站模式包括基站和与基站关联的主机,自组网模式只有主机

主机必须与某个AP关联(associate),主机扫描信道,AP会定期广播信标(beacon)帧,包含名称(SSID)和MAC地址,使用DHCP等协议配置IP

多路访问控制

期望避免冲突

基于CSMA,发送数据前监听信道

不能向以太网CSMA/CD那样,边发送、边检测冲突,无线信道很难实现,信号强度衰减很快

需要避免冲突(Collision Avoidance)

CSMA/CA协议

发送方:

  • 监听信道空闲了DIFS时间,发送整个帧(无同时检测冲突,CD)
  • 如果监听到信道忙,开始随机规避计时,当计时器超时且信道空闲,发送帧
  • 如果没有收到接收方ACK,增加随机规避间隔时间,重新监听

接收方:

  • 如果正确接收帧,延迟SIFS时间(较短)后,向发送端发送ACK

基本思想:允许发送端预约信道,而不是随机发送数据帧,从而避免长数据帧的冲突

利用很小的预约帧避免了数据帧的冲突