概述
局域网
- 局域网最主要的特点
- 网络为一个单位所拥有
- 地理范围和站点数目均有限
- 误码率低
- 以PC机为主体,数据传输速率高,一般为0.1-100Mbps
- 局域网具有如下主要优点
- 具有广播功能,从一个站点可很方便地访问全网
- 局域网上的主机可共享连接在局域网上的各种硬件和软件资源
- 便于系统的扩展和逐渐地演变,各设备的位置可灵活调整和改变
- 提高了系统的可靠性、可用性和生存性
- 常用的拓扑结构:总线型、环型、星型
数据链路层的两个子层
- 逻辑链路控制 LLC(Logical Link Control) 子层
- 识别网络层协议,然后对它们进行封装
- 为网络层提高服务:无确认无连接、面向连接、有确认无连接、高速传送
- 介质访问控制 MAC(Medium Access Control) 子层
- 数据帧的封装/卸装、帧的寻找和识别、帧的接收与发送、链路的管理、帧的差错控制
- 与接入到传输媒体有关的内容都放在 MAC子层,而 LLC 子层则与传输媒体无关,不管采用何种协议的局域网对 LLC 子层来说都是透明的。
- MAC(Media Access Control,介质访问控制)是一种控制使用通信介质的机制,它是数据链路层协议的一部分。
网卡
局域网中提供各种网络设备与网络通信介质相连的接口,全名是网络接口卡(NIC,Network Interface Card),也叫网络适配器。
- 网卡作为一种I/O接口卡插在主机板的扩展槽上,其基本结构包括接口控制电路、数据缓冲器、数据链路控制器、编码解码电路、内收发器、介质接口装置等六大部分
- 主要实现数据的发送与接收、帧的封装与拆封、编码与解码、介质访问控制和数据缓存等功能
分类
- 按网络技术可分为:以太网卡(最常见)、令牌环网卡、FDDI网卡、802.11卡等
- 按传输速率,单以太网卡就提供了10Mbps、100Mbps、1000Mbps和10G等多种速率
- 按照总线类型,网卡可分为ISA总线网卡(已淘汰)、EISA总线网卡、PCI总线网卡等
- 按照所支持的传输介质,网卡可分为双绞线网卡、粗缆网卡、细缆网卡、光纤网卡和无线网卡
信道分配
介质访问子层的中心论题是相互竞争的用户之间如何分配一个单独的广播信道
- 静态分配:只要一个用户得到了信道就不会和别的用户冲突。
- 如 FDM,TDM
- 但是用户数据流量具有突发性和间歇性,信道利用率差
- 动态分配:称为多路访问(Multiple Access)或多点接入,指多个用户共用一条线路,而信道并非是在用户通信时固定分配给用户,这样的系统又称为竞争系统
- 随机访问(Random Access Protocol),典型ALOHA协议、CSMA协议
5 个关键假设
- 站模型:由N个独立的站组成,每个站有一个可以产生待发送帧的程序或用户。一旦生成一帧,该站就被阻塞,直到帧被成功传出
- 单通道假设:所有通信都通过单个信道进行。所有的站都在该信道上发送和接收信息。尽管软件可赋予各站优先级,但就硬件来说,各站是平等的
- 冲突假设:若两帧同时发送,它们会相互重叠,使信号难以辨认。所有的站都能检测到冲突。冲突的帧必须事后重发。除了冲突产生的差错外,不再有其他任何差错
- 发送时间假设:
- 连续任意时刻可发送:帧能在任何时候开始发送。没有主时钟将时间分隔为离散的发送区间
- 分槽时间:时间被分为离散的区间(时隙)。帧总是在时隙开始的一瞬间开始发送。一个时隙内可发送0,1或多个帧,它们分别对应空闲时隙、成功时隙、发生冲突
- 载波检测:
- 有载波检测:所有站在使用信道以前都可以检测到信道是否正在使用。若忙,其他站不会去使用它,直到它变得空闲
- 无载波检测:各站在使用信道前不检测信道,只是盲目地发送,事后才能确定本次传送是否成功
多路复用
频分多路复用FDM
用户在分配到一定的频带后,在确信过程中自始至终都占用这个频带。频分复用的所有用户在同样的时间占用不同的带宽(频率带宽)资源。
充分利用传输介质带宽,系统效率较高;由于技术比较成熟,实现也比较容易。
- 并行
时分多路复用TDM
将时间划分成一段段等长的时分复用帧(TDM)。每一个时分复用的用户在每一个TDM帧中占用固定序号的时隙,所有用户轮流占用信道。
- TDM 帧是在物理层传送的比特流所划分的帧,标志一个周期
- 并发
统计时分复用STDM
每一个 STDM 帧中的时隙小于连接在集中器上的用户数。STDM 帧不是固定分配时隙,而是按需动态分配时隙。
波分多路复用WDM
波分多路复用就是光的频分多路复用,在一根光纤中传输多种不同波长(频率)的光信号,由于波长(频率)不同,所以各路光信号互不干扰,最后再用波长分解复用器将各路波长分解出来,
码分多路复用CDM
**码分多址(CDMA)**是码分复用的一种方式。
1 个比特分为多个码片/芯片(chip),每一个站点被指定一个唯一的 m 位的芯片序列。
发送 1 时站点发送芯片序列,发送 0 时发送芯片序列反码(通常把 0 写成 -1)
- 如何不打架:多个站点同时发送数据的时候,要求各个站点芯片序列相互正交
- 如何合并:各路数据在信道中被线性相加
- 如何分离:合并的数据和源站规格化内积
ALOHA
基本思想适用于任何无协调关系的多用户竞争单信道使用权的系统。分为:纯ALOHA、分隙ALOHA
区别:是否将时间分成离散的时隙。纯ALOHA无需全局时间同步,而分隙ALOHA则必须时间同步。
纯ALOHA协议
基本思想:用户只要有数据待发,就让他们发
- 当产生冲突,使帧受损时,发送方只要侦听信道就会知道
- 若帧遭破坏,则发送方随机等待一段时间后重发
- 两个单位帧时内成功传输的概率:,当 G = 0.5 时,
- S 吞吐量
分槽ALOHA协议
基本思想:把使用信道的时间分成离散的时间槽,槽长为一个帧所需的发送时间,每个站点只能在时间槽开始时才允许发送,其他过程与纯ALOHA协议相同。
- 冲突主要发生在时间槽的起点,一旦发送成功就不会出现冲突,分槽ALOHA大幅度降低了冲突的可能性,信道利用率比纯ALOHA提高了约一倍。
- ,当 G = 1 时,
比较
- 纯 ALOHA 协议吞吐量更低,效率更低
- 纯 ALOHA 协议想发就发;时隙 ALOHA 只能在时间槽内发
CSMA
载波侦听多路访问(Carrier Sense Multiple Access):网络站点侦听载波是否存在(即有无传输)并相应动作的协议。
- CS:载波侦听/监听,每一个站在发送数据之前要检测一下总线上是否有其他计算机在发送数据
- MA:多点接入,表示许多计算机以多点接入的方式连接在 一根总线上
可分为:
- 持续CSMA
- 1-持续CSMA
- P-持续CSMA
- 非持续CSMA
- CSMA/CD(有冲突检测)
1-持续CSMA
- 基本原理:
- 当一个站点要传送数据时,它首先监听信道,看是否有其他站点正在传送
- 若信道忙,则持续等待直到信道空闲,便将数据送出
- 若发生冲突,站点就等待一个随机长的时间,然后重新开始
- 此协议被称作1-持续CSMA,是因为站点一旦发现信道空闲,其发送数据的概率为 1
- 传输延时对协议性能的影响:
- 传输延时越长,冲突可能性越大,系统性能也就越差
- 即使传输延时为0,仍然有可能发生冲突
P-持续CSMA
用于分隙信道,工作过程如下:
- 一个站点在发送之前,首先侦听信道
- 若空闲,便以概率 p 传送,以概率 q=1-p 把这次发送推迟到下一时隙
- 若下一时隙仍空闲,便再次以概率p传送,而以概率q=1-p把该次发送推迟到下下一时隙
- 此过程一直重复,直到发送成功或另外一站开始发送为止
非持续CSMA
- 在该协议中,站点发送前会侦听信道的状态
- 如果没有其他站点在发送,它就开始发送
- 但如果信道正在使用中,该站点将不再继续侦听信道,而是等待一个随机的时间后,再重复上述过程
三种CSMA比较
条件 | 1-持续CSMA | P-持续CSMA | 非持续CSMA |
---|---|---|---|
信道空闲 | 马上发 | p概率马上发 | 马上发 |
信道忙 | 持续监听 | 放弃监听,等待一个随机时间再监听 | 放弃监听,等待一个随机时间再监听 |
ALOHA 和 CSMA 的性能对比
CSMA/CD
CD:碰撞检测,“边发送边监听”,适配器边发送数据边检测信道上信号电压的变化情况,以便判断自己在发送数据时其他站是否也在发送数据
- 基本思想:
- 若两站侦听到信道空闲并同时开始传送,几乎会同时检测到冲突
- 一旦检测到冲突,不是继续传完帧,而是尽快停止
- 使用 CSMA/CD 协议的以太网不能进行全双工通信而只能进行双向交替通信(半双工通信)。
- 这种发送的不确定性使整个以太网的平均通信量远小于以太网的最高数据率
争用期
最先发送数据帧的站,在发送数据帧后至多经过时间 (端到端往返时延)就可知道发送的数据帧是否遭受了碰撞。
- 最差情况:A发送快到B的时候,B恰好也发送了,此时经历了,然后冲撞又经历了传回到A,A此时才知道发生了碰撞,即的时间
以太网的端到端的往返时延 称为争用期,或碰撞(冲突)窗口
- 10Mbit/s的以太网取51.2us为争用期长度
二进制指数退避算法
- 确定基本退避(推迟)时间为争用期
- 定义重传次数 k,k <= 10,即 k = Min{重传次数,10}
- 从离散整数集合{0,1,…,2^k-1}中随机取出一个数 r,重传所需要退避的时间就是 r 倍的基本退避时间,即
- 当重传 16 次仍然不成功时,丢弃该帧,并向高层报告
最小帧长
最小帧长 = 往返时延 x 数据传输速率 = 2τ(争用期) x 数据传输速率
- 以太网规定最短帧长 64Bytes(51.2us*10Mbps=512bit=64B),凡是长度小于 64B 的全是由于冲突而异常终止的无效帧
- 随着网络速度的提高,最小的帧长度必须成比例的增加,或者最大电缆长度成比例地减短。
CSMA/CA
CA:Collision Avoidance避免冲突
CSMA/CA 协议使用于无线局域网
工作原理:
- 发送数据前,先检测信道是否空闲
- 空闲则发出 RTS(request to send),RTS 包括发射端的地址、接收端的地址、下一份数据将持续发送等信息;信道忙则等待。
- 接收端收到 RTS 后,将响应 CTS(clear to send)
- 发送端收到 CTS 后,开始发送数据帧(同时预约信道:告知其他站点自己要传多久数据)
- 接收端收到数据帧后,将用 CRC 来检验数据是否正确,正确则响应 ACK 帧
- 发送方收到 ACK 就可以进行下一个数据帧的发送,若没有则一直重传至规定重发次数为止(二进制指数规避算法)
无线局域网的两个问题
隐藏站点:由于站点距离竞争者太远,从而不能发现潜在介质竞争者的问题称为隐藏站点问题
- A向B发送数据的过程中,C由于收不到A的数据,也可以向B发送数据,导致B接收发生冲突
暴露站点:由于非竞争者距离发送站点太近,从而导致介质非竞争者不能发送数据的问题称为暴露站点问题。
- B向A发送数据,被C监听到,导致C不能向D发送数据
CSMA/CD vs CSMA/CA
- 相同点:都属于 CSMA,核心是先听再说,就是要信道空闲时才能接入。
- 不同点
- 传输介质不同:CSMA/CD 用于总线式以太网,而 CSMA/CA 用于无线局域网
- 载波检测方式不同:因为传输介质不同,检测方式也不同
- CSMA/CD 检测冲突,CSMA/CA 避免冲突,发生冲突时都会有限重传
以太网(Ethernet)
以太网(Ethernet)指的是由Xerox公司创建并由Xerox、Intel和DEC公司联合开发的基带总线局域网规范,使用了CSMA/CD技术,采用曼切斯特编码
两个标准
- DIX Ethernet V2:是世界上第一个局域网产品(以太网)的规约。
- IEEE 802.3:IEEE 802 委员会 802.3 工作组制定的第一个 IEEE 的以太网标准(帧格式有改动)
- DIX以太网与IEEE802.3以太网是兼容的
无连接、不可靠的服务
无连接:发送方和接收方无“握手过程”
不可靠:可对发送方的数据帧编号,接收方不向发送方进行确认,差错帧直接丢弃,差错纠正由高层负责。
- 以太网只实现无差错接收,不实现可靠传输
- 局域网信道的质量很好,因此信道质量产生差错的概率是很小的
拓扑结构
逻辑上总线型,物理上星型
10BASE-T以太网
10BASE-T 是传输基带信号的双绞线以太网,现 10BASE-T 采用的是无屏蔽双绞线(UTP),传输速率是 10Mbit/s
-
10:速率为 10Mbit/s
-
BASE:基带传输
-
T:双绞线
-
物理上采用星型拓扑,逻辑上总线型,每段双绞线最长为 100m
-
采用曼切斯特编码
-
采用 CSMA/CD 介质访问控制
MAC地址
在局域网中,硬件地址又称为物理地址,或MAC地址
每个网卡有一个全球唯一的 48bit 地址,前 24 位代表厂家(IEEE规定),后 24 位厂家自己指定。
常用 6 组十六进制数表示,如:00-16-EA-AE-3C-40
以太网MAC帧
最常用的MAC帧是以太网V2的格式
- 目的地址、源地址:MAC 地址
- 类型:指明上一层使用的协议
- 数据:存放IP数据报,46~1500字节
- 46B:最小帧长度规定为 64B,因此数据段至少为 46B(64-6-6-2-4)
- 1500B:最大传输单元 MTU
- FCS:CRC 帧检验序列
- 实际传输插入了 8 字节前导码,为了达到比特同步和帧开始定界,不属于 MAC 帧
- IEEE 802.3 MAC 帧的变化:
- 先导域降到 7 个字节,将空出的一个用作帧起始定界符
- 将类型域变成了长度域
- 两者兼容
高速以太网
速率 >= 100 Mb/s 的以太网称为高速以太网
- 100BASE-T
- 支持全双工和半双工,可在全双工方式下工作而无冲突
- 吉比特以太网
- 在光纤或双绞线上传输 1Gb/s 信号
- 支持全双工和半双工,可在全双工方式下工作而无冲突
- 10 吉比特
- 在光纤上传送 10Gb/s
- 只支持全双工,无争用问题,不发生冲突
以太网信道利用率
P(帧发送时间)= F(帧长)/B(数据率)
一个站以概率 p 发送帧,而其它 k-1 个站以 1-p 的概率延迟发送,一个站发送成功的概率为 。
令 A 为某个站发送成功的概率,因为有k个站,A =
- 更一般的情况:帧长为F,网络带宽为B,电缆长度为L,信号传输速率为c,则每帧传输时间为P=F/B
- 分母越大效率低。给定帧长度,增加带宽和距离,即带宽距离的乘积会降低网络效率。长距离上拥有高带宽是网络研究的目标。
无线局域网
IEEE 802.11 是无线局域网的通用标准。
-
定义了三种类型 MAC 帧:数据帧、控制帧、管理帧
-
隐藏站、暴露站问题使 CSMA/CD 不能工作,因而使用 CSMA/CA 协议
链路层设备
物理层扩展以太网
使用集线器(Hub)扩展:将多个以太网段连成更大的、多级星形结构的以太网。
- 集线器:共享带宽,转发到所有端口
物理层设备还有中继器。
碰撞域
碰撞域(collision domain)又称为冲突域,是指网络中一个站点发出的帧会与其他站点发出的帧产生碰撞或冲突的那部分网络。
- 碰撞域越大,发生碰撞的概率越高。
网桥&交换机
网桥(bridge)是工作在数据链路层的一种网络互连设备,它根据 MAC 帧的目的地址对收到的帧进行转发和过滤。
当网桥收到一个帧时,并不是向所有的接口转发此帧,而是先检查此帧的目的 MAC 地址,然后再确定将该帧转发到哪一个接口,或把它丢弃(即过滤)。
- 网段:一般指一个计算机网络中使用同一物理层设备(传输介质,中继器,集线器)能够直接通信的一部分
网桥优点:
- 过滤通信量,增大吞吐量
- 扩大了物理范围
- 提高了可靠性
- 可互连不同物理层、不同MAC子层和不同速率的以太网
透明网桥
透明网桥:“透明”指以太网上的站点并不知道所发送的帧将经过哪几个网桥,是一种即插即用设备–自学习
- 扩散法:对于每一个发向未知目的地址的进入帧,网桥将其转发到所有连接的LAN中,除了帧到来的那个LAN以外。
- 运行自学习算法自动维护交换表。
- 定时检查更新交换表
生成树网桥
多个网桥间的冗余连接会产生回路,导致无限转发。
生成树网桥就是用于解决多个网桥产生回路的问题。
思想–让网桥之间互相通信,用一棵连接每个 LAN 的 生成树(Spanning Tree) 覆盖实际的拓扑结构
源路由网桥
源路由网桥:在发送帧时,把详细的最佳路由信息(路由最少/时间最短)放在帧的首部中。
方法:源站以广播方式向欲通信的目的站发送一个发现帧
多接口网桥–以太网交换机
- 每一个端口都是冲突域
- 用户独享带宽,增加了总容量
存储转发方式
将帧放入高速缓存,并检查是否正确,正确转发,错误丢弃。
- 延迟大,可靠性高,支持不同速率的端口的交换
直通 (cut-through) 方式
接收数据帧的同时就立即按数据帧的目的 MAC 地址决定该帧的转发接口,因而提高了帧的转发速度。
- 延迟低,可靠性低,无法支持具有不同速率的端口的交换
- 不检查差错帧,可能转发无效帧
路由器
路由器是一个网络层设备。
不仅能像交换机一样隔离冲突域,还能隔离广播域。它可以将广播限制在一个网络之内,进而增大网络之间的带宽。
主要用途是选路,路由器的存储器里面存放着路由表。
设备 | 能否隔离冲突域 | 能否隔离广播域 |
---|---|---|
物理层设备 (中继器、集线器) |
x | x |
链路层设备 (网桥、交换机) |
√ | x |
网络层设备 (路由器) |
√ | √ |
PPP 和 HDLC
广域网(WAN,Wide Area Network),通常跨接很大的物理范围。
广域网的通信子网主要使用分组交换技术。广域网的通信子网可以利用公用交换网、卫星通信网和无线分组交换网,他将分布在不同区域的局域网或计算机系统互连起来,达到资源共享的目的。
- 因特网(Internet)是世界范围内最大的广域网
PPP
**点对点协议 PPP(Point-to-Point Protocol)**是目前使用最广泛的数据链路层协议,用户使用拨号电话接入因特网时一般采用PPP协议。
- 只支持全双工链路
- 面向字节,字符填充/比特填充
要求
- 简单:对于链路层的帧,无需纠错,无需序号,无需流量控制
- 封装成帧:帧定界符
- 透明传输:与帧定界符一样的比特组合应该如何处理:异步线路用字节填充,同步线路用比特填充
- 多种网络层协议:封装的 IP 数据报可以采用多种协议
- 多种类型链路:串行/并行,同步/异步,电/光
- 差错控制
- 检测连接状态
- 最大传送单元
- 网络层地址协商
- 数据压缩协商
无需要求
- 不需要纠错
- 不需要流量控制
- 不需要序号
- 不需要多点线路
三个组成部分
- 一个将 IP 数据报封装到串行链路(同步串行/异步串行)的方法
- 链路控制协议 LCP:建立并维护数据链路连接
- 网络控制协议 NCP:PPP 可以支持多种网络协议,每个不同的网络协议都要一个相应的NCP来配置,为网络层协议建立和配置逻辑连接
HDLC
高级数据链路控制 HDLC(High-Level Data Link Control),是一个在同步网上传送数据、面向比特的数据链路层协议,ISO 指定。
- 数据报文可透明传输。用于实现透明传输的“0比特插入法”易于硬件实现
- 采用全双工通信
- 所有帧采用 CRC校验,对信息帧进行顺序编号,可防止漏收或重份,传输可靠性高
帧格式
- 信息帧(I)
- 监督帧(S)
- 无编号帧(U)
PPP&HDLC
- 只支持 全双工 链路
- 透明传输
- 差错检测,不纠错
- 不同
- PPP 面向字节;HDLC 面向比特
- PPP 有 2B 协议字段
- PPP 无序号和确认机制;HDLC 有编号有确认
- PPP 不可靠;HDLC 可靠