当前位置: 首页 > article >正文

【网络工程师软考版】局域网与城域网

将此博客当作学习笔记,持续更新,欢迎指正。参考书目《网络工程师教程(第五版)》

拓扑结构

总线型拓扑

1、基带系统/基带同轴电缆(传播数字信号)

数字信号 —> 电压脉冲。

脉冲信号沿电缆传播时会发生衰减和畸变,还会受到噪音和其他不利因素的影响。

传播距离越长,影响越大。(数据速率越小,传输的距离越远?

数据速率与宽度成反比。

数据速率越小,脉冲的宽度就比较宽;—> 影响更容易恢复,抗噪声特性更好。

数据速率越高,脉冲的宽度就比较窄。

2、宽带系统/宽带同轴电缆(传播模拟信号) —> 传输距离更远

采用频分多路技术传播模拟信号。

*模拟信号比数字脉冲受噪声和衰减的影响更小,可以传播更远的距离。

由于宽带系统中需要模拟放大器,但模拟放大器只能单向工作  —> 加在宽带电缆上的信号只能单方向传播 —> 在同一条电缆上,只能由上游站发送,下游站接收。

相反方向的通信需采用特殊的技术(1、双缆配置 or 2、分裂配置)

双缆配置:用两根电缆分别提供两个方向不同的通路。(可提供双倍的带宽)

分裂配置:把单根电缆的频带分裂为两个频率不同的子通道,分别传输两个方向相反的信号。(相比于双缆配置,可以节约15%的费用)

环型拓扑

整个环路是单向传输的。

由于环网是一系列点对点链路串联起来的 —> 可以使用任何传输介质。

双绞线:价格较低

同轴电缆:可得到较高的带宽

光纤:能提供更大的数据速率

星型拓扑与树型拓扑

 集线器Hub有两种形式:

1、有源Hub:配置了信号再生逻辑。能够接收输入链路上的信号,经再生后再向所有输出链路发送。如果多个输出链路同时有信号输入,则向所有输出链路发送冲突信号。

2、无源Hub:只是把输入链路上的信号分配到所有的输出链路上。

*为了达到较高的数据速率,必须限制工作站到中心节点(集线器Hub)的距离和连接的站点数。

一般来说,无源Hub用于光纤或同轴电缆网络;有源Hub则用于无屏蔽双绞线网络。

LLC层与MAC层

802标准将局域网中的数据链路层划分成两个子层

1、介质访问控制子层(Medium Access Control,MAC)

2、逻辑链路控制子层(Logical Link Control,LLC)

*提供标准的OSI数据链路层服务,使得任何高层协议(TCP/IP、SNA等)都可运行与局域网标准之上。

逻辑链路控制子层

逻辑链路控制子层规范包含在IEEE 802.2标准中,与HDLC兼容,但帧格式有所不同。例如,

1、由于HDLC的标志和位填充技术不适合局域网,因此被排除;

2、帧校验序列由MAC子层实现,因而也不包含在LLC帧结构中。

3、同时提供目标地址和源地址。

LLC地址

LLC地址是LLC层服务访问点

IEEE 802局域网中的地址分两级表示,MAC地址+LLC地址?

MAC地址是主机地址;LLC地址是主机中上层协议实体的地址

*一个主机可以同时拥有多个上层协议进程 —> 有多个服务访问点

LLC服务(3种)

1、无确认无连接的服务(不安全)

简单而不涉及任何流控和差错控制功能 —> 不保证可靠地提交

—> 使用这种服务的设备必须在高层软件中处理可靠性问题

主要应用于:

1、高层软件具有流控和差错控制机制,例如TCP或ISO的TP4传输协议;

2、连接的建立和维护机制会引起不必要的开销,因而必须简化控制,例如,周期性的数据采集或网络管理等应用场合,偶然的数据丢失是允许的,随后来到的数据可以弥补前面的损失,所以不必保证每一个数据都能可靠地提交。

2、连接方式的服务

类似于HDLC提供的服务

在有数据交换的用户之间要建立连接

同时也通过连接提供流控和差错控制功能

主要应用于简单设备中,例如终端控制器,只有很简单的上层协议软件,因而由数据链路层硬件实现流控和差错控制功能。

3、有确认无连接的服务

提供有确认的数据报,但不建立连接。

高效而可靠

主要应用于传送少量的重要数据。例如,在过程控制和工厂自动化环境中,中心站需要向大量的处理机和可编程控制器发送控制指令。(由于控制指令的重要性,所以需要确认。但如果采用连接方式的服务,则中心站必然要建立大量的连接,数据链路层软件也要为建立连接、跟踪连接的状态而设置和维护大量的表格。

LLC协议

LLC协议与HDLC协议兼容,但差别如下:

1、LLC用无编号信息帧支持无连接的服务 —> LLC 1型操作

2、LLC用HDLC的异步平衡方式支持LLC的连接方式服务 —> LLC 2型操作

3、LLC用两种新的无编号帧支持有确认无连接的服务 —> LLC 3型操作

4、通过LLC服务访问点支持多路复用,即一对LLC实体间可建立多个连接

LLC 1型操作支持无确认无连接的服务

无编号信息帧(UI)用于传送用户数据。(这里没有流控和差错控制,差错控制由MAC子层完成)

XID帧用于交换两类信息:LLC实体支持的操作和窗口大小

TEST帧用于进行两个LLC实体间的通路测试。当一个LLC实体收到TEST命令帧后,应尽快发回TEST响应帧。

LLC 2型操作支持连接方式的服务

当LLC实体得到用户的要求后可发出置扩展的异步平衡方式帧SABME,另一个站的LLC实体请求建立连接。如果目标LLC实体同意建立连接,则以无编号应答帧UA回答;否则以断开连接应答帧DM回答。

建立连接后,使用I帧传送数据。I帧包含发送/接收顺序号,用于流控和捎带应答。数据发送完成后,任何一端的LLC实体都可发出断连帧DISC来终止连接。

LLC 3型操作支持有确认无连接的服务

采用无连接应答帧AC(Acknowledged Connectionless)。信息通过AC命令帧发送,接收方以AC响应帧回答。为了防止帧的丢失,使用了1位序列号。发送者交替在AC命令帧中使用0和1,接收者以相反序号的AC帧回答。

CSMA/CD协议

Carrier Sense Multiple Access/Collision Detection,带有冲突检测的载波侦听多路存取

是一种介质访问控制协议

属于资源的竞争使用

实现冲突检测,将冲突的产生控制在传播时间内,减少了冲突的概率。

*CSMA = 载波监听多路访问

站在发送数据之前,先监听信道上是否有别的站发送的载波信号。若有,说明信道正忙,否则说明信道是空闲的,任何根据预定的策略决定。

1、若信道空闲,是否立即发送

2、若信道忙,是否继续监听

—> 仍可能发送冲突

例1,远端的站刚开始发送,载波信号尚未达到监听站,这是监听站若立即发送,就会和远端的站发生冲突。

例2,虽然暂时没有站发送,但碰巧两个站同时开始监听,如果它们都立即发送,也会发生冲突。

例3,若信道忙时,如果坚持监听,发送的站一旦停止就可立即抢占信道。但是,有可能几个站同时都在监听,同时都抢占信道,从而发生冲突。

监听算法

监听算法不能完全避免发生冲突 —> 优化监听算法,将冲突概率减到最低。

1、非坚持型监听算法

当一个站准备好帧,发送之前先监听信道。

①若信道空闲,立即发送,否则转②。

②若信道忙,则后退一个随机时间,重复①。

*由于随机时延后退,从而减少了冲突的概率。然而,可能出现的问题是因为后退而使信道闲置一段时间,使信道的利用率降低,增加了发送时延。

2、1-坚持型监听算法

当一个站准备好帧,发送之前先监听信道。

①若信道空闲,立即发送,否则转②。

②若信道忙,继续监听,直到信道空闲后立即发送。

*有利于抢占信道,减少信道空闲时间。但,如果多个站都在监听信道,必然会发生冲突。

3、P-坚持型监听算法

①若信道空闲,以概率P发送,以概率(1-P)延迟一个时间单位。一个时间单位等于网络传输时延。

②若信道忙,继续监听直到信道空闲,转①。

③如果发送延迟一个时间单位,则重复①。

难点在于决定概率P的值。

冲突监测原理

载波监听只能减小冲突的概率,不能完全避免冲突。—>要采用边发边听的冲突监测方法

①、发送期间同时接收,并把接收的数据与站中存储的数据进行比较。

②、若比较结果一致,说明没有冲突,重复①

③、若比较结果不一致,说明发生了冲突,立即停止发送,并发送一个简短的干扰信号(Jamming),使所有站都停止发送。

④发送Jamming信号后,等待一段随机长的时间,重新监听,再试着发送。

冲突窗口 —> 基带系统中监测冲突的最长时间是网络传播延迟的两倍

为了避免帧长度太短,导致在整个发送期间监测不到冲突,对最小帧长度进行限制:

最小帧长  L_{min} = 2Rd/v

其中,R是网络数据速率,d为最大段长,v是信号传播速度。

发送站必须对较短的帧增加填充位,使其等于最小帧长。

接收站对收到的帧要检查长度,小于最小帧长的帧被认为是冲突碎片而丢弃。

***

标准以太网中的最小帧长为64字节。当除去首部和校验和,剩下的是数据与填充字段,当数据为空时,填充字段最长,为46字字节,即46*8=368bit。

以太网的默认MTU=1500Byte

例,若主机采用以太网接入Internet,TCP段格式中,数据字段最大长度为1460字节。

TCP数据部分需要减去TCP首部和IP首部,1500-20-20=1460Byte。

例,在CSMA/CD以太网中,数据速率为100Mb/s,网段长5km,则此网络的最小帧长是多少字节?

最小帧长 = 2 * 100Mb/s * 5km / 信号传播速度(200m/us) = 625Byte

传输时延= 2* 传播时延

传播时延 = 5km / 200m/us = 25us

传输时延 = 2 * 25us = 50us

长度 = 速度 * 时间 = 100Mb/s * 50 us = 5000bit ? -> 625 Byte ?

1us = 10^-6 s

50us = 5*10^-5s

100Mbit/s = 100*10^6bit/s = 10^8 bit/s

因此,100Mbit/s * 50 us = 10^8 bit/s * 5*  10^-5s = 10^3 bit = 5000bit

= 5000bit/8 = 625Byte

例,设某单总线LAN,总线长度为1000米,数据率为10Mbps,数字信号在总线上的传输速度为2C/3(C为光速),则每个信号占据的介质长度为多少米?当采用CSMA/CD访问方式时,如只考虑数据帧而忽略其他一切因素,则最小时间片的长度为多少微秒?最小帧长度为多少位?

速度200m/us是哪来的?要记住的数据!

最小时间片的长度实际对应最小帧长的发送时间,即大于等于2*端对端传输时间 T= 2*1000m*200m/us = 10us

对应的最小帧长度为 = 10Mbps*10us = 100bit

最小帧长度 = 2 * 10Mbps * 1000m / 200m/us = 

= 2 * 10^7 bps * 1000m / 200m/us 

= 2 * 10^7 bps * 5us

= 2 * 10^7 bps * 5 * 10^ -6 s

= 100 bit 

最小时间片长度 = 传输时延 = 2 * 传播时延 = 2 * 1000m / 200/us 10 us

1bit的信号在总线上的长度

长度 = 速度 * 时间 = 200m/us * 1/10Mbps = 200m/us * 0.1us = 20m 

退避二进制指数算法

基本原理:每冲突一次,集合的范围就增大为原来的两倍。

,采用CSMA/CD进行介质访问,两个站点连续冲突3次后,再次冲突的概率为 1/8。

CSMA/CD协议的实现

在基带总线和宽带总线中,CSMA/CD的实现基本上相同。差异有二

1、载波监听的实现

针对基带系统,检测电压脉冲序列。由于以太网上的编码采用曼切斯特编码,其特点为每位中间都有电压跳变,监听站可以把这种跳变信号当作代表信道忙的载波信号。

针对宽带系统,监听站接收RF载波以判断信道是否空闲。

2、冲突检测的实现

针对基带系统,将直流电压加到信号上来检测冲突。

每个站都测量总线上的直流电平,由于冲突而迭加的直流电平比单个站发出的信号强,则说明检测到了冲突。但,信号在电缆上传播时会有衰减,如果电缆太长,就会使冲突信号到达远端时的幅度小于规定的限值。因此,标准限制了电缆长度(500m或200m)。

针对宽带系统,将接收的数据与发送的数据逐位比较。

*802.3z定义了一种帧突发方式(Frame Bursting),使得一个站可以连续发送多个帧。

无线个域网(Wireless Personal Area Network,WPAN)是为了实现活动半径小、业务类型丰富、面向特定群体、无线无缝的连接而提出的新兴无线通信网络技术。主要技术有蓝牙、UWB(超宽带)即802.15.3a技术、Zigbee、RFID俗称电子标签。

Wifi6覆盖2.4/5GHz,完整涵盖低速与高速设备

1000BASE-T 无屏蔽双绞线 —> IEEE 802.3ab

1000BASE-CX 屏蔽双绞线  —>  IEEE 802.3z

1000BASE-LX 长波1330nm光纤 —>  IEEE 802.3z


http://www.kler.cn/a/537402.html

相关文章:

  • 寒假2.6--SQL注入之布尔盲注
  • 网络安全威胁框架与入侵分析模型概述
  • 11.PPT:世界动物日【25】
  • intra-mart实现简易登录页面笔记
  • [Deepseek-自定义Ollama 安装路径+lmStudio 简易安装]
  • .net的一些知识点6
  • 网络HTTP详细讲解
  • C++ CRTP:奇异递归模板模式的原理与应用
  • 详解Swift中 Sendable AnyActor Actor GlobalActor MainActor Task、await、async
  • TDengine 中如何部署集群
  • 京东 rpc调用h5st
  • Python用langchain、OpenAI大语言模型LLM情感分析苹果股票新闻数据及提示工程优化应用...
  • 【鸿蒙HarmonyOS Next实战开发】多媒体视频播放-ijkplayer
  • ip地址是手机号地址还是手机地址
  • 【使用小技巧】git rebase命令详解
  • 学习class的几个步骤?
  • WebAssembly:前后端开发的未来利器
  • 嵌入式AI革命:DeepSeek开源如何终结GPU霸权,开启单片机智能新时代?
  • Linux环境下Tomcat的安装与配置详细指南
  • 01什么是DevOps
  • 【数据结构】_栈与队列经典算法OJ:有效的括号
  • 攻防世界 文件上传
  • UG NX二次开发(C++)-UIStyler-枚举(enum)
  • 网络工程师 (23)OSI模型层次结构
  • 使用Django Rest Framework构建API
  • Ubuntu MKL(Intel Math Kernel Library)