计算机网络-运输层
计算机网络中进行通信的真正实体是位于通信两端主机中的进程,如何为运行在不同主机上的应用进程提供直接的通信服务是运输层的任务(端到端)。
-
因特网的运输层为应用层提供了面向连接的TCP和无连接的UDP两种不同的运输协议;
## 一、端口号、复用和分用
端口号:TCP/IP体系的运输层使用端口号来区分应用层的不同应用进程。 -
端口号用16比特表示,分为熟知端口号、登记端口号、短暂端口号; -
端口号只具有本地意义; 复用和分用: - 发送方:UDP复用/TCP复用、IP复用;
- 接收方:IP分用、UDP分用/TCP分用; ## 二、UDP和TCP的对比
## 三、TCP的流量控制和拥塞控制
#### 流量控制
如果发送方数据发送速度过快,接收方可能来不及接收,造成数据丢失,这时需要采用流量控制。
利用滑动窗口机制可以很方便地在TCP连接上实现对发送方的流量控制:
- TCP接收方利用自己接收窗口的大小来限制发送方发送窗口的大小; -
TCP发送方收到接收方的零窗口通知后,启动持续计时器,持续计时器超时后发送零窗口探测报文。
#### 拥塞控制
某段时间内,若对网络中某一资源的需求超过了该资源所能提供的可用部分,网络性能就要变差,称为拥塞。
TCP采用了四种拥塞控制算法:慢开始、拥塞避免、快重传、快恢复。
-
发送方维护拥塞窗口cwnd变量:其值取决于网络的拥塞程度(当发生超时重传,则视为发生网络拥塞),并动态变化,发送方将拥塞窗口作为发送窗口swnd;
-
维护一个慢开始门限ssthresh:cwnd<ssthresh使用慢开始算法,cwnd>ssthresh时改用拥塞避免算法;
-
慢开始:cwnd初始值为1,发送方每收到一个确认报文段,将cwnd加1,cwnd呈指数增长;
-
拥塞避免:每个传输轮次结束后,cwnd加1,cwnd呈线性增长;
-
当遇到拥塞(超时重传),则ssthresh重置为当前cwnd的一半,cwnd减少为1,重新开始执行慢开始算法;
-
快重传:超时重传不一定由网络拥塞导致,错误启动慢开始算法,降低传输效率。快重传要求接收方收到数据立刻发送确认(包括失序报文段),发送方一旦收到3个连续的重复确认就将相应报文段立即重传,而不用等超时重传计时器超时。
-
快恢复:发送方收到3个重复确认,不启动慢开始算法,而是将ssthresh和cwnd调整为当前cwnd的一半,并开始执行拥塞避免算法;
## 四、TCP超时重传时间的选择
超时重传时间RTO的选择是TCP最复杂的问题之一。
加权平均往返时间RTTs: - RTTs1 = RTT1; - 新的RTTs =
(1-α) × 旧的RTTs + α × 新的RTT样本(指数平滑法) -
已成为建议标准的α取值为0.125; 超时重传时间RTO: -
应略大于加权平均往返时间RTTs; - RFC6298建议使用的RTO = RTTs + 4 ×
RTTd,RTTd1 = RTT1 ÷ 2,新的RTTd = (1-β) x 旧的RTTd + β × |RTTs -
新的RTT样本|,β建议值为0.25; -
只要报文段重传了,就不采用其往返时间RTT样本,并把RTO增大一些(如×2);
## 五、TCP可靠传输的实现
TCP基于以字节为单位的滑动窗口来实现可靠传输。 -
确认报文段包含接收窗口大小和希望接收到的起始字段,发送方据此构建发送窗口;
-
发送方在未收到接收方的确认时,可将发送窗口内还未发送的数据全部发送出去;
- 接收方只接收序号落入发送窗口内的数据; -
TCP通常将不按序到达的数据先临时存放在接收窗口中,等字节流缺少的字节收到后,再按序交付用户进程;
- TCP要求接收方必须有累积确认和捎带确认机制,不应过分推迟发送确认; -
TCP通信是全双工通信; ## 六、TCP的运输连接管理 TCP运输连接有三个阶段: -
“三报文握手”建立TCP连接; - “四报文挥手”释放TCP连接; #### TCP的连接建立
TCP连接建立要解决以下三个问题: - 使TCP双方能够确知对方的存在; -
使TCP双方能够协商一些参数(如窗口最大值); -
使TCP双方能够对运输实体资源(如缓存大小、连接表中的项目等)进行分配;
“三报文握手”过程: - TCP服务器进程创建传输控制块,进入监听状态; -
TCP客户进程创建传输控制块,向TCP服务进程发送TCP连接请求报文段(SYN=1,seq=x,不能携带数据且需要消耗掉一个序号),进入同步已发送状态;(一握手)
-
TCP服务器进程发送TCP连接请求确认报文段(SYN=1,ACK=1,seq=y,ack=x+1,不能携带数据且需要消耗掉一个序号),进入同步已接收状态;(二握手)
-
TCP客户进程发送一个普通的TCP确认报文段(ACK=1,seq=x+1,ack=y+1,可携带数据,若未携带数据则不消耗序号),进入连接已建立状态;(三握手)
- TCP服务器进程进入连接已建立状态; -
若改为两挥手,则可能因TCP连接请求超时重传导致错误;
#### TCP的连接释放
“四报文挥手”过程: -
TCP客户进程发送TCP连接释放报文段(FIN=1,ACK=1,seq=u,ack=v,不携带数据也要消耗掉一个序号),并进入终止等待1状态;
-
TCP服务器进程发送一个普通的TCP确认报文段(ACK=1,seq=v,ack=u+1),并进入关闭等待状态(未传输完的数据会继续传输,持续一段时间);
- TCP客户进程收到后进入终止等待2状态; -
TCP服务器进程数据发送完后,发送TCP释放报文段(FIN=1,ACK=1,seq=w,ack=u+1),并进入最后确认状态;
-
TCP用户进程发送普通的TCP确认报文段(ACK=1,seq=u+1,ack=w+1),并进入时间等待状态;
- TCP服务器进程进入关闭状态; -
TCP客户进程在2MSL(MSL为最长报文段寿命,建议值为2min,一般更小)的时间后进入关闭状态;
保活计时器:TCP服务器进程每收到一次数据,就重新设置并启动保活计时器(2小时),保活计时器到时后,TCP服务器进程发送一个探测报文段,并每隔75秒发送一次。若连续10个探测报文段未被响应,则TCP服务器进程关闭连接。
## 七、TCP报文段的首部格式
序号:指出本TCP报文段数据载荷的第一个字节的序号(循环)。
确认号:指出期望收到对方下一个TCP报文段的数据载荷的第一个字节的序号,同时也是对之前收到的所有数据的确认,只有ACK=1才有效;
数据偏移:即首部长度,指出TCP报文段的数据载荷部分的起始处距离TCP报文段起始处有多远,取值为首部字节数/4;
保留:保留今后使用,置为0;
SYN:在TCP连接建立时用来同步序号;
FIN:用来释放TCP连接;
RST:用来复位TCP连接,RST=1时表明连接出现异常,需要释放并重新建立连接;
PSH:PSH=1时,接收方会将该报文段尽快上交应用进程;
窗口:本报文段发送方的接收窗口;
校验和:检查TCP报文段(首部+数据载荷)是否出现误码;
紧急指针:URG=1时才有效,用来指明紧急数据的长度,紧急数据可插队到发送缓存的最前面;
选项:用来增加TCP功能: - 最大报文段长度MSS选项:数据载荷部分最大长度;
- 窗口扩大选项:为了扩大窗口(提高吞吐率); -
时间戳选项:用来计算RTT;用于处理序号超范围的情况,又称防止序号绕回PAWS;
- 选择确认选项:实现选择确认功能;
路由器的基本结构: -
路由表:收到路由报文后,会将信息记录到路由表中;
- 根据路由表得到易于查找的转发表; -
收到数据分组后,则根据转发表查表转发; -
路由选择处理机存储路由表,还会周期性地给其他路由器发送自己所知道的路由信息;
- 缓存区:输入/输出缓冲区用来暂存分组; #### 1. RIP
RIP要求自治系统AS内的每一个路由器都要维护从它自己到AS内其他每一个网络的距离记录。
-
基于距离向量,使用“跳数”来衡量距离,距离等于16相当于不可达,因此只适用于小型互联网;
-
RIP认为好的路由就是“距离短”的路由,即通过路由器数量最少的路由(不考虑传输速率)。
-
当到达同一目的网络有多条距离相等的路由时,可以进行等价负载均衡;
RIP基本工作过程: -
刚开始工作时,进知道自己到直连网络的距离为1; -
每个路由器仅和相邻路由器周期性地交换并更新路由信息; -
若干次交换更新后,每个路由器都知道到达本AS内各网络的最短距离和下一跳地址,称为“收敛”;
RIP存在“坏消息传播得慢”的问题,可能导致路由环路。可以采用以下方法缓解:
- 限制最大路径距离为15; -
触发更新:当路由表发生变化就立即发送更新报文; -
水平分割:让路由器记录收到某特定路由信息的接口,而不让同一路由信息再通过此接口反方向传送;
#### 2.开放最短路径优先OSPF
OSPF基于链路状态(即本路由器都和哪些路由器相邻以及相应链路的“代价”),使用了Dijkstra提出的最短路径算法SPF。
- “代价”用来表示费用、距离、时延、带宽等; -
每个使用OSPF的路由器都会产生链路状态通告LSA,包含直连网络的状态信息和邻居路由器的状态信息,并有一个“链路状态数据库LSDB”用于存储LSA;
-
LSA被封装在链路状态更新分组LSU中,采用洪泛法发送;
- 各路由器的LSDB最终将达到一致; -
各路由器基于LSDB进行最短路径优先SPF计算,构建各自的路由表;
OSPF有以下五种分组类型: - 问候分组:用来发现和维护邻居路由器的可达性;
- 数据库描述分组:发送给邻居路由器; -
链路状态请求分组:发现链路状态缺失时向邻居路由器发送; -
链路状态更新分组:洪泛发送; -
链路状态确认分组:对链路状态更新分组的确认;
OSPF在多点接入网络中路由器邻居关系的建立: -
选举指定路由器DR和备用的指定路由器BDR; -
所有的非DR/BDR只与DR/BDR建立邻居关系,非DR/BDR之间通过DR/BDR交换信息;
为了使OSPF能够用于规模很大的网络,OSPF把一个自治系统再划分为若干个更小的范围,叫做区域。
- 减少了整个网络上的通信量; #### 3. 边界网关协议BGP
用于自治系统之间的路由选择,工作原理如下: -
再配置BGP时,每个自治系统的管理员选择至少一个路由器作为该自治系统的“BGP发言人”;
-
不同自治系统的发言人通过建立TCP连接交换路由信息,使用TCP连接交换路由信息的两个BGP发言人称为对方的邻站或对等站;
-
BGP发言人交换网络可达性的信息,并根据所采用的策略从收到的路由信息中找出到达各自治系统较好的路由,即构造不存在贿赂的自治系统连通图(树形结构);
BGP-4有以下四种报文: -
OPEN报文:用来与相邻的另一个BGP发言人建立关系; -
UPDATE报文:用来发送通过某一路由的信息,以及列出要撤销的多条路由;
- KEEPALIVE报文:周期性地证实邻站的连通性; -
NOTIFICATION报文:发送检测到的错误; ##
四、IPv4数据报的首部格式
版本字段:表示IP协议版本,如IPv4;
首部长度:取值为首部长度字节数/4;
区分服务字段:根据不同取值获得不一样的服务质量,一般不用;
总长度:IP数据报的字节数(包含首部);
标识:属于同一个数据报的各分片数据报具有相同标识(按计数器);
标志:3个比特,DF位表示允许分片,MF位表示后面是否还有分片,保留位为0;
片偏移:分片数据报的数据载荷部分从原数据报的第几个字节开始(字节位置除以8,第一个分片为0);
生存时间TTL:每一跳-1,归零后丢弃,防止死循环;
协议:表明数据部分是何种协议数据单元(如TCP、UDP、ISPF、IPv6);
首部检验和:用来检测首部在传输过程是否出现差错;
可选字段:用来支持排错、测量及安全等措施,很少使用; ##
五、网际控制报文协议
为了更有效地转发IP数据报和提高交付成功的机会,在网际层使用了网际控制报文协议ICMP。
-
主机或路由器使用ICMP来发送差错报告报文和询问报文;
- ICMP报文被封装在IP数据报中发送;
ICMP差错报告报文共有五种: -
终点不可达:当路由器或主机不能交付数据报时,就像源点发送终点不可达报文;
-
源点抑制:当路由器或主机由于拥塞而丢弃数据报时,就向源点发送源点抑制报文;
- 时间超过:生存时间TTL字段减到0时发送; -
参数问题:通过首部检验和字段发现首部字段出现误码时发送; -
改变路由(重定向):路由器把改变路由报文发送给主机,让主机知道下次应将数据报发给另外的路由器;
ICMP询问报文有以下两种: -
回送请求和回答:用来测试目的站是否可达及了解有关状态;
-
时间戳请求和回答:请某个主机或路由器回答当前的日期和时间,用来进行时钟同步和测量时间;
ICMP应用举例 - 分组网间探测PING:用来测试主机或路由器之间的连通性; -
跟踪路由:用来测试IP数据报从源主机到达目的主机要经过哪些路由; ##
六、虚拟专用网VPN和网络地址转换NAT
虚拟专用网VPN:利用因特网作为本机构各专用网之间的通信载体。
- 各主机地址使用私有地址(只能作为本地地址); - 加密并通过路由器发送;
-
同一机构不同部门的内部网络构成的虚拟专用网称为内联网VPN,有时某些外部机构参加进来,称为外联网VPN;
网络地址转换NAT:使用NAT路由器将私有地址转换成全球IP地址,缓解IPv4地址空间即将耗尽的问题。
- 使用私有地址的主机发送IP数据报; -
NAT路由器修改IP数据报的IP地址为全球IP地址; -
记录私有地址和全球IP地址的对应关系,并转发IP数据报; -
一个NAT路由器可连接多台主机; -
NAT路由器接收外部发来的数据报,并根据转换表转发给主机; -
可以利用运输层的端口号和IP地址一起进行转换,这样一个全球IP地址就可以使多个拥有本地地址的主机同时和因特网上的主机进行通信,称为网络地址与端口号转换NAPT;
CRC有很好的检错能力,虽然计算复杂但非常易于用硬件实现,因此被广泛用于数据链路层。
#### 2. 回退N帧协议GBN 原理: -
使用n个比特给分组编序号,即序号0至2^n-1; -
发送窗口尺寸Wt取值:1<Wt<2^n-1,数据落在发送窗口外的分组不允许发送;接收串口的尺寸Wr
=
1,数据落在接收窗口外的分组不允许接收,接收方只能按序接收正确到达的数据分组;
-
累积确认:接收方不一定要对所有数据分组逐个发送确认,可通过发送ACKn表示需要n及以前的所有数据分组都已正确接收;
-
当数据分组出现了差错,接收方会丢弃分组并发送当前接收成功的累积确认(比如序号5出现差错则会丢弃567并重复发送ACK4),发送方接收到重复的确认,就可以不等超时计时器超时就立刻重传567;
#### 3. 选择重传协议SR
回退N帧协议GBN需丢弃误码数据分组及之后的所有分组,为了进一步提高性能,可设法只重传出现误码的数据分组。接收窗口尺寸Wr大于1,可以使接收方先收下失序到达但无误码的数据分组,等所缺分组收齐后再一并交送上层。
-
1<Wt<=2(n-1),1<Wr<=Wt,若Wt>2(n-1)会出现接收方无法分辨新旧数据分组的问题;
- 无法使用累计确认; ## 四、点对点协议PPP
点对点协议PPP是目前使用最广泛的点对点数据链路层协议。
PPP协议为在点对点链路传输各种协议数据报提供了一个标准方法,主要由以下三部分构成:
- 对各种协议数据报的封装方法(封装成帧) -
链路控制协议LCP,用于建立、配置以及测试数据链路的链接; -
一套网络控制协议NCPs,其中的每一个协议支持不同的网络层协议; 帧格式
实现透明传输的方法 -
面向字节的异步链路:字节填充法(插入转义字符); -
面向比特的同步链路:比特填充法(插入比特0); 差错检测
- CRC-CCITT = X16+X12+X^5+1; -
使用PPP的链路层向上不提供可靠服务; ## 五、媒体接入控制
共享信道要注重考虑如何协调多个发送和接受站点对一个共享传输媒体的占有,即媒体接入控制MAC;
- 静态划分信道:频分多址、时分多址、码分多址(不灵活,多用于物理层); -
动态接入控制:受控接入(集中控制&分散控制,已淘汰)、随机接入; -
在有线领域,共享式局域网已被取代;但由于无线信道的广播天性,无线局域网仍然使用共享媒体技术;
#### 1. 静态划分信道 信道复用:通过一条物理线路同时传输多路用户的信号。
频分复用FDM:所有用户同时占用不同的频带资源并行通信;
时分复用TDM:所有用户在不同的时间占用相同的频带宽度;
波分复用WDM:光的频分复用;
码分复用CDM -
CDMA中,每一个比特时间再划分成m个短的间隔,成为码片; -
每个站被指派一个唯一的m bit码片序列,如果要发送1,则发送自己的m
bit码片序列;如果要发送0,则发送m bit码片序列的二进制反码; -
码片序列挑选原则:①每个站码片必须各不相同;②每个站码片必须相互正交;
#### 2. 随机接入CSMA/CD
CSMA/CD:载波监听多址接入/碰撞检测,总线局域网使用。 -
多址接入MA:多个站连接在一条总线上,竞争使用总线; -
载波监听CS:每个站在发送帧之前先要检测一下总线上是否有其他站点在发送帧(“先听后说”)——在总线空闲96比特时间时发送;
-
碰撞检测CD:每一个正在发送帧的站边发送边检测碰撞,一旦发现总线上出现碰撞,则立即停止发送,退避一段随机时间后再次发送;
争用期
最小帧长 -
当帧长太小时,争用期过短,已发送的帧可能在发送完毕后遭遇碰撞,而无法被检测出;
-
因此以太网规定最小帧长为64字节,即512bit,如果发送的数据非常少则需要填充至64字节(包含帧头帧尾);
最大帧长:最大长度1500字节(不包含帧头帧尾);
退避时间计算方法:截断二进制指数退避算法
信道利用率:Smax = 1/(1+a),a=τ/T0 -
要使帧长度尽量大,参数a尽量小,以提高信道利用率;
帧发送流程:
帧接收流程
####
3. 随机接入CSMA/CA 载波监听多址接入/碰撞避免
CSMA/CA,802.11无线局域网使用。 -
无线网卡上实现碰撞检测对硬件要求非常高,且由于隐蔽站问题,碰撞检测意义不大;
-
由于不可能避免所有碰撞,且无线信道误码率高,802.11标准使用了数据链路层确认机制(停止-等待协议);
-
802.11的MAC层标准定义了两种不同的媒体接入控制方式:分布式协调功能DCF(默认)和点协调功能PCF(较少使用);
帧间间隔IFS:802.11标准规定,所有的站点必须在持续检测到信道空闲一段指定时间后才能发送帧。
- 高优先级帧需要等待的时间较短,低优先级帧需要等待的时间较长; -
短帧间间隔SIFS(28μs),是最短的帧间间隔,用来分隔一次对话的各帧; -
DCF帧间间隔DIFS(128μs),在DCF方式中用来发送数据帧和管理帧;
工作原理: -
源站在检测到信道空闲后,经过DIFS间隔发送第一帧,目的站在接收到帧后,经过SIFS间隔反馈ACK;
-
从源站发出第一帧到接收到ACK这段时间里,信道为忙;其他站在检测到信道空闲后,经过DIFS间隔并退避一段随机时间(以防止多个站点同时发送数据而产生碰撞)后,发送下一帧。
-
站点检测到信道为空,且所发送的数据帧不是成功发送完上一个数据帧之后立即连续发出的数据帧时,不用退避;
退避算法 -
站点为退避计时器设置一个随机退避时间,当退避计时器时间为0时,开始发送数据;
-
当退避计时器还未减小到0信道又转为忙状态,则冻结计时器数值,等信道空闲,再经过DIFS后,继续启动计时器;
- 在进行第i次退避时,在时隙编号{0,1,...,2^(i+2)-1}中随机选择一个(i达到6
时不再增加),乘以基本退避时间(一个时隙的长度)得到退避时间;
信道预约:为了尽可能减少碰撞的概率和降低碰撞影响,802.11标准允许对信道进行预约。
- 源站在发送数据帧前先发送一个短的控制帧,即请求发送RTS; -
目的站收到RTS,且媒体空闲,就发送一个响应控制帧,即允许发生CTS; -
源站收到CTS后,等待SIFS间隔即可发送数据帧; -
目的站正确收到数据帧并等待SIFS后,向源站发出ACK; -
其他各站收到CTS后就推迟接入无线局域网; -
如RTS帧发生碰撞,需执行算法重传RTS帧; -
一般数据帧发送时延往往大于传播时延,碰撞概率大;而RTS、CTS很短,碰撞的概率和开销很小;
虚拟载波监听:除RTS和CTS会携带通信需要持续时间,数据帧也能携带通信需要持续时间。
-
因此,站点只要监听到RTS帧、CTS帧或数据帧的任何一个,就能知道信道被占用的持续时间;
- 虚拟载波监听机制能减少隐蔽站带来的碰撞问题; ##
六、MAC地址、IP地址和ARP协议 #### 1. MAC地址
当多个主机连接在同一个广播信道上,要想实现两个主机之间的通信,则每个主机都必须有一个数据链路层地址。
每个主机发送的帧必须携带标识发送主机和接收主机的地址,由于这类地址用于媒体介入控制(MAC),因此被称为MAC地址。
-
MAC地址一般被固化在网卡(网络适配器)上,因此也被称为硬件地址和物理地址;
-
一般情况下用户主机会有有线局域网适配器和无线局域网适配器,每个适配器都会有唯一的MAC地址,交换机和路由器拥有更多网络接口,所以一台设备会有多个MAC地址;
IEEE
802局域网的MAC地址格式:xx-xx-xx-xx-xx-xx,每个x表示一个16进制数。
- OUI:前三个字节,分配给厂商; -
第一个字节的b0位表示单播0/多播1,b1位表示全球管理0/本地管理1; -
广播地址:FF-FF-FF-FF-FF-FF; -
单播:帧会发给广播域所有主机,只有MAC地址匹配才会接收,否则会丢弃; ####
2. IP地址
IP地址是因特网上的主机和路由器所使用的地址,用于标识两部分信息: -
网络编号:表示因特网上数以百万计的网络; -
主机编号:标识同一个网络上的不同主机或路由器接口;
MAC地址不具备区分不同网络的功能,而IP地址具备。
数据包转发过程中IP地址和MAC地址的变化情况: -
IP地址因填写源主机和目标主机;
MAC地址因填写上一个发送接口的MAC地址和下一跳的地址;
#### 3. ARP协议
地址解析协议ARP:通过IP地址找到MAC地址(不能跨网络使用)。
主机中存放ARP高速缓存表,记录各主机IP地址和MAC地址的对应关系。 -
若查找不到,则向广播地址发布ARP请求报文; -
IP地址匹配的主机反馈ARP响应报文(单播); -
将收到的响应报文记录到ARP高速缓存表中(动态,2分钟后会自动删除),下次可直接使用;
## 七、交换机 #### 1. 集线器HUB - 早期以太网的互连设备; -
工作在OSI体系结构的物理层; - 对接受到的信号进行放大、转发; -
使用集线器作为互联设备的以太网属于共享总线式以太网,集线器互连起来的所有主机共享总线宽带,属于同一个碰撞域和广播域;
#### 2. 交换机SWITCH - 目前以太网中使用最广泛的互连设备; -
工作在OSI体系结构的数据链路层(也包括物理层); -
根据MAC地址对帧进行转发(存储帧交换表,即接口号和MAC地址的对应表),因此单播帧只会发给目标主机;
-
使用交换机作为互连设备的以太网是交换式以太网,交换机可以隔离碰撞域但不隔离广播域;
#### 3. 交换机自学习和转发帧的流程
交换机根据帧交换表中查找到的MAC地址对帧进行转发,以太网交换机通过自学习算法逐渐建立帧交换表。
-
若帧交换表中没有源主机,则记录源主机MAC地址及对应接口; -
若帧交换表中没有目标主机,则向所有接口转发该帧(盲目泛洪),只有MAC地址对应的主机会接受该帧;
- 若帧交换表有目标主机,则会直接将帧转发到对应接口; #### 4.
生成树协议STP
为了提高以太网可靠性,可以添加冗余链路。但冗余电路会形成网络环路,导致:
- 广播风暴(广播帧在各交换机间反复转发); -
主机收到重复广播帧; - 交换机的帧交换表震荡;
以太网交换机使用生成树协议STP,可以避免网络环路带来的各种问题:
-
无论交换机之间采用怎样的连接,都使用生成树算法构建一个逻辑上没有环路的网络;
- 交换机或网络物理拓扑发生变化时,进行生成树的重新计算; ##
八、虚拟局域网VLAN
随着交换式以太网规模扩大,广播域也会响应扩大,带来许多弊端: -
广播风暴(如一个ARP请求会传遍整个广播域); - 难以管理和维护; -
潜在的安全问题;
使用路由器可以隔离广播域,但路由器成本较高,可以使用虚拟局域网VLAN达到类似的效果。
虚拟局域网是一种将局域网内的设备划分成与物理位置无关的逻辑组的技术,这些逻辑组具有某些共同的需求。
#### 实现方式 IEEE
802.1Q帧对以太网帧格式进行了扩展,插入4字节的VLAN标记。 -
VLAN标记的最后12比特称为VLAN标识符VID,唯一地标志了以太网帧属于哪一个VLAN;
- VID有效取值为1-4094; -
交换机收到普通的以太网帧时,会插入4字节的VLAN标记(打标签),转发802.1Q帧时,可能会删除VLAN标记(去标签);
交换机端口类型: Access: -
一般用于连接用户计算机,只能属于一个VLAN; -
接收处理:一般只接收普通以太网MAC帧,根据端口PVID给帧打标签; -
发送处理:若帧中的VID与端口的PVID相等则“去标签转发”;
Trunk: -
一般用于交换机之间或交换机与路由器之间,可以属于多个VLAN; -
接收处理:接收未打标签的帧,根据端口PVID打标签; -
发送处理:对VID等于PVID的帧去标签再转发,对于不等的帧直接转发;
Hybird: -
既可连接用户计算机,也可以交换机之间或交换机和路由器互连,可以属于多个VLAN;
-
发送处理方法:查看帧的VID是否在端口的“去标签”列表中,若存在则去标签再转发,否则直接转发(直接转发给用户计算机会因无法识别而被丢弃);
- 接收处理方法:同Trunk;
#### 调制方法
基本调制方法:调幅、调频、调相
混合调制:正交振幅调制QAM -
基本调制方法一个码元只能表示一个bit信息;可以采用混合调制方法,相位和振幅一起调制;
-
如QAM-16,有12种相位,可以调制出16种码元,每种码元对应4个bit(2^4=16);
## 信道的极限容量 信号通过信道会产生失真,产生失真的原因主要有: -
码元传输速率、信号传输距离、噪声干扰、传输媒体质量等;
奈式准则:在假定的理想条件下,为了避免码间串扰,码元传输速率是有上限的。
- 理想低通信道的最高码元传输速率 = 2W Baud = 2W码元/秒; -
理想带通信道的最高码元传输速率 = W Baud = W码元/秒; -
W:信道带宽(单位:HZ);Baud:波特,即码元/秒; -
码元传输速率又称波特率、调制速率、波形速率或符号速率,当1码元携带n比特信息量时,n*波特率=比特率;
-
要想提高比特率,就必须设法使每一个码元能携带更多比特信息,需要采用多元制;
- 实际信道所能传输的最高码元速率明显低于奈式准则的上限数值;
香农公式:带宽受限且有高斯白噪声干扰的信道的极限信息传输速率c:
- c = W × log2(1+S/N) -
W:信道带宽,s:信道内所传信号的平均功率,N:信道内的高斯噪声功率,S/N:信噪比(单位分贝);
- 要努力提高信道中的信噪比; -
实际所能达到的比公式的极限功率低不少;