文章目录
- 前言
- 一、计算机 络概述
-
- 1 互联 的构成
- 2. 络分类
- 3.接入
- 4. 络核心的两大功能
-
- ①路由
- ②转发
- 5. 络分层
-
- ①OSI 7层模型
- ②TCP/IP 4层模型
- ③两种模型比较
- 二、物理层
-
- 1.物理介质
-
- ①引导型介质
- ②非引导型介质
- 2.数据交换方式
-
- ①分组交换
- ②电路交换
- 3.信道复用
-
- ①频分复用
- ②时分复用
- ③波分复用
- ④码分复用
- 三、数据链路层
-
- 1.功能(要解决的问题)
- 2.数据链路层提供的服务
- 3.成帧(Framing)
-
-
- 3.1 要解决的关键问题:如何标识一个帧的开始/li>
- 3.2 成帧(framing)的方式
-
- ①带比特填充的定界符法
- ②物理层编码违例
-
- 4.差错控制
-
- 4.1 背景
- 4.2 差错检验与纠正
-
- ①奇偶检验 (Parity Check)
- ②校验和 (Checksum)
- ③循环冗余校验 (Cyclic Redundancy Check,CRC)
- ④汉明码
- 5.流量控制
- 6.媒体接入控制 MAC (Medium Access Control)子层
-
- 6.1 信道分配问题
-
- ① 时分多址接入-TDMA
- ② 频分多址接入-FDMA
- 6.2 多路访问协议
-
- 6.2.1 随机访问协议
-
- ①ALOHA
- ②载波侦听多路访问协议CSMA
- 6.2.2 受控访问协议
-
- ①位图协议(预留协议)
- ②令牌传递
- ③二进制倒计数协议
- 6.2.3 有限竞争协议
-
- ①自适应树搜索协议(Adaptive Tree Walk Protocol)
- 6.3虚拟局域 VLAN
- 6.4无线局域 WLAN
- 四、 络层
-
- 1. 络层概述
- 2. 络层关键功能
- 3.Internet 际协议
-
- 3.1 IPv4协议及其相关技术
-
- 3.1.1 基本概念
- 3.1.2 IPv4数据 格式
- 3.1.3 数据 分片
- 3.1.4 IP协议功能及 头字段总结
- 3.2 IP地址
-
- 3.2.1 概述
- 3.2.1 子 划分
- 3.2.3 无类域间路由
- 3.3 DHCP动态主机配置协议
- 3.4 ARP地址解析协议
- 3.5 络地址转换(NAT)
- 3.6 ICMP: 互联 控制 文协议
- 4.路由算法
-
- 4.1 距离向量路由
-
- 算法过程
- 特殊情况考虑
- 4.2 链路状态路由
-
- 算法过程
- 距离向量和链路状态算法比较
- 4.3 层次路由
- 4.4 广播路由
-
- 实现方法
- 5.Internet路由协议
-
- 5.1 路由选择协议RIP
- 5.2 BGP-外部 关路由协议
- 6.路由器的工作原理
-
- 6.1 路由器概述
- 6.2 路由器控制层
- 6.3 路由器数据层
- 7.拥塞控制算法
-
- 7.1 概述
- 7.2 流量调节
- 7.3 随机早期检测RED (Random Early Detection)
- 8.服务质量
-
- 8.1概述
- 8.2 流量整形
-
- ①漏桶算法
- ②令牌桶算法
- 8.3 数据包调度
- 9.三层交换
-
- 9.1 三层交换的技术背景
- 9.2 三层交换的动机
- 9.3 三层交换机的工作原理
- 10.虚拟专用 VPN (Virtual Private Network)
-
- 10.1 VPN的技术背景
- 10.2 VPN的原理
- 10.3 VPN的实现方式
- 11.IPv6协议
- 五、传输层
-
- 1.传输层概述
-
- 1.1 套接字
- 1.2 传输层提供的服务
- 1.3 因特 传输层提供的服务
- 2.传输层基本服务——复用和分用
-
- 2.1 复用和分用概述
- 2.2 套接字标识与端口
- 2.3 TCP/UDP套接字(复用和分用)
- 3.无连接传输:UDP
-
- 3.1 UDP 文段结构
- 3.2 UDP校验和(checksum)
- 3.3 为什么需要UDP/li>
- 4.面向连接的传输:TCP
-
- 4.1 可靠传输
- 4.2 流水线技术
-
- ①GBN 协议(回退 N 步协议)
- ②SR 协议(选择重传协议)
- ③TCP 可靠通信的具体实现
- GBN、SR和TCP小结
- 4.3 TCP 文段结构
- 5.TCP流量控制
- 6.拥塞控制
-
- 6.1 拥塞控制的类型
- 6.2 TCP拥塞控制要解决的问题
- 6.3 TCP拥塞控制的实现
- 六、应用层
-
- 1.应用层概述
-
- 1.1 应用进程通信方式
-
- ①客户/服务器(C/S, Client/Server)方式
- ②对等(P2P,Peer to Peer)方式
- 1.2 服务器进程工作方式
- 2.域名系统
-
- 2.1 概述
- 2.2 域名系统名字空间和层次结构
- 2.3 域名解析过程
- 3.电子邮件
-
- 3.1 邮件发送的常用协议
- 3.2 Webmail
- 4.WWW
-
- 4.1 WWW体系结构与协议
- 4.2 HTTP
-
- 概述
- HTTP发展现状
- Web安全与隐私:Cookie
- 5.流媒体
-
- 5.1 概述
- 5.2 流媒体动态自适应传输
- 6.内容分发 络CDN
-
- 6.1 概述
- 6.2 关键问题
- 6.3 机理与解决方式
- 7.P2P 络
- 8.远程登录Telnet
- 9.FTP
-
- 9.1 概述
- 9.2 工作过程
- 写在最后
前言
数据链路层 (Data Link Layer)
- 实现相邻(Neighboring) 络实体间的数据传输
- 成帧(Framing):从物理层的比特流中提取出完整的帧
- 错误检测与纠正:为提供可靠数据通信提供可能
- 物理地址(MAC address):48位,理论上唯一 络标识,烧录在 卡,不便更改
- 流量控制,避免“淹没”(overwhelming):当快速的发送端遇上慢速的接收端,接收端缓存溢出
- 共享信道上的访问控制(MAC):同一个信道,同时传输信 。如同:同一个Wifi热点(AP)连接着多个无线用户(手机),则多个用户同时需要发送数据,如何控制发送顺序/li>
络层 (Network Layer)
- 将数据包跨越 络从源设备发送到目的设备(host to host)
- 路由(Routing):在 络中选取从源端到目的端转发路径,常常会根据 络可达性动态选取最佳路径,也可以使用静态路由
- 路由协议:路由器之间交互路由信息所遵循的协议规范,使得单个路由器能够获取 络的可达性等信息
- 服务质量(QoS)控制:处理 络拥塞、负载均衡、准入控制、保障延迟
异构 络互联:在异构编址和异构 络中路由寻址和转发
传输层 (Transport Layer)
- 将数据从源端口发送到目的端口(进程到进程)
- 络层定位到一台主机(host),传输层的作用域具体到主机上的某一个进程
- 络层的控制主要面向运营商,传输层为终端用户提供端到端的数据传输控制
- 两类模式:可靠的传输模式,或不可靠传输模式
- 可靠传输:可靠的端到端数据传输,适合于对通信质量有要求的应用场景,如文件传输等
- 不可靠传输:更快捷、更轻量的端到端数据传输,适合于对通信质量要求不高,对通信响应速度要求高的应用场景,如语音对话、视频会议等
会话层 (Session Layer)
- 利用传输层提供的服务,在应用程序之间建立和维持会话,并能使会话获得同步
表示层(Presentation Layer)
- 关注所传递信息的语法和语义,管理数据的表示方法,传输的数据结构
应用层(Application Layer)
- 通过应用层协议,提供应用程序便捷的 络服务调用
②TCP/IP 4层模型
注:我们教材的是以下分层来讲述的
- 两根绝缘铜线互相缠绕为一对
- 电话线为1对双绞线, 线为4对双绞线,广泛用于计算机 络(以太 )双向传输
- 第5类:100 Mbps~1 Gbps;第6类:10Gbps
- 传输距离一般为为100米
②非引导型介质
信 自由传播,例如无线电(陆地无线电、卫星无线电信道)
无线电
- 电磁频谱中各种“波段”携带的信
- 没有物理“电线”
- 不依赖介质的广播
- 半双工(发送方到接收方)
无线链路类型
- 无线局域 (WiFi)
10-100 Mbps;10米 - 广域(如3/4/5G蜂窝)
在~10公里范围内 - 蓝牙:短距离,有限速率
- 地面微波:点对点;45 Mbps
- 同步卫星:36000km高空, 280毫秒的往返时延
- 低轨卫星:近地,但围绕地球高速运动,需要大量卫星才能覆盖地球
2.数据交换方式
①分组交换
分组交换采用把一个个小的数据包存储转发传输来实现数据交换。
主要的一些缺点:
1、不具有实时性。
2、存在延时。
3、会造成通信阻塞。
4、存在无用的重复数据。
5、会出现丢包的情况。
优点:
1、设计简单。
2、资源利用率很高。
②电路交换
电路连接的三个阶段:
1、建立连接。
2、数据传输。
3、释放连接。
优点:
1、传输速度快、高效。
2、实时。
缺点:
1、资源利用率低。
2、新建连接需要占据一定的时间,甚至比通话的时间还长。
电路交换的多路复用
频分多路复用FDM
时分多路复用TDM
②时分复用
时分复用则是将时间划分为一段段等长的时分复用帧(TDM 帧)。每一个时分复用的用户在每一个 TDM 帧中占用固定序 的时隙。
④码分复用
各用户使用经过特殊挑选的不同码型,因此彼此不会造成干扰。
三、数据链路层
1.功能(要解决的问题)
成帧 (Framing)
将比特流划分成“帧”的主要目的是为了检测和纠正物理层在比特传输中可能出现的错误,数据链路层功能需借助“帧”的各个域来实现
差错控制 (Error Control)
处理传输中出现的差错,如位错误、丢失等
流量控制 (Flow Control)
确保发送方的发送速率,不大于接收方的处理速率,避免接收缓冲区溢出
2.数据链路层提供的服务
1.无确认 无连接 服务( Unacknowledged connectionless )
- 接收方不对收到的帧进行确认
- 适用场景:误码率低的可靠信道;实时通信;
- 络实例:以太
2.有确认 无连接 服务( Acknowledged connectionless )
- 每一帧都得到单独的确认
- 适用场景:不可靠的信道(无线信道)
- 络实例:802.11
3.有确认 有连接 服务( Acknowledged connection-oriented )
- 适用场景:长延迟的不可靠信道
3.成帧(Framing)
3.1 要解决的关键问题:如何标识一个帧的开始/h4>
- 接收方必须能从物理层接收的比特流中明确区分出一帧的开始和结束,这个问题被称为帧同步或帧定界
- 关键:选择何种定界符界符出现在数据部分如何处理/li>
3.2 成帧(framing)的方式
①带比特填充的定界符法
定界符:两个0比特之间,连续6个1比特,即01111110,0x7E
接收方的处理:
若出现连续5个1比特,
若下一比特为0,则为有效载荷,直接丢弃0比特;
若下一比特为1,则连同后一比特的0,构成定界符,一帧结束
②物理层编码违例
- 核心思想:选择的定界符不会在数据部分出现
- 4B/5B编码方案
4比特数据映射成5比特编码,剩余的一半码字(16个码字)未使用,可以用做帧定界符
例如: 00110组合不包含在4B/5B编码中,可做帧定界符 - 前导码
存在很长的 前导码(preamble),可以用作定界符
例如:传统以太 、802.11 - 曼切斯特编码 / 差分曼切斯特编码
正常的信 在周期中间有跳变,持续的高电平(或低电平)为违例码,可以用作定界符
例如:802.5令牌环
4.差错控制
4.1 背景
链路层存在的一个问题:信道的噪声导致数据传输问题
- 差错( incorrect ):数据发生错误
- 丢失( lost ):接收方未收到
- 乱序(out of order):先发后到,后发先到
- 重复(repeatedly delivery):一次发送,多次接收
解决方案:差错检测与纠正、确认重传
- 确认:接收方校验数据(差错校验),并给发送方应答,防止差错
- 定时器:发送方启动定时器,防止丢失
- 顺序 :接收方检查序 ,防止乱序递交、重复递交
4.2 差错检验与纠正
目标
保证一定差错检测和纠错能力的前提下,如何减少冗余信息量/p>
考虑的问题
- 信道的特征和传输需求
- 冗余信息的计算方法、携带的冗余信息量
- 计算的复杂度等
两种主要策略
- 检错码(error-detecting code)
在被发送的数据块中,包含一些冗余信息,但这些信息只能使接收方推断是否发生错误但不能推断哪位发生错误,接收方可以请求发送方重传数据主要用在高可靠、误码率较低的信道上,例如光纤链路偶尔发生的差错,可以通过重传解决差错问题
- 纠错码(error-correcting code)
发送方在每个数据块中加入足够的冗余信息,使得接收方能够判断接收到的数据是否有错,并能纠正错误(定位出错的位置)主要用于错误发生比较频繁的信道上,如无线链路也经常用于物理层,以及更高层(例如,实时流媒体应用和内容分发)使用纠错码的技术通常称为前向纠错(FEC,Forward Error Correction)
常用的检错码包括:
①奇偶检验 (Parity Check)
1位奇偶校验是最简单、最基础的检错码。
1位奇偶校验:增加1位校验位,可以检查奇数位错误。
③循环冗余校验 (Cyclic Redundancy Check,CRC)
数据链路层广泛使用的校验方法
CRC校验码计算方法
- 设原始数据D为k位二进制位模式
- 如果要产生n位CRC校验码,事先选定一个n+1位二进制位模式G (称为生成多项式,收发双方提前商定),G的最高位为1
- 将原始数据D乘以2^n (相当于在D后面添加 n 个 0),产生k+n位二进制位模式,用G对该位模式做模2除,得到余数R(n位,不足n位前面用0补齐)即为CRC校验码
目标:以奇偶校验为基础,找到出错位置,提供1位纠错能力
- 给定n位待发送的数据,首先确定校验位的个数k(根据2^k≥k+n+1)
- 确定校验位在码流中的位置,2^i,i=0,1,2,……,得到校验位P_1,P_2,P_4,P_8,……
- 确定分组,即每个校验位分别负责哪些数据位
P_1负责位置 的二进制符合XXXX1形式的数据位,即1,3,5,7,9,……
P_2负责位置 的二进制符合XXX1X形式的数据位,即2,3,6,7,10,……
P_3负责位置 的二进制符合XX1XX形式的数据位,即4,5,6,7,12,13,14,15,…… - 基于偶校验确定每组的校验位(0或1)
注: 汉明码是采用奇偶校验的码。它采用了一种非常巧妙的方式,把这串数字分了组,通过分组校验来确定哪一位出现了错误。
实际的海明码编码的过程也并不复杂,我们通过用不同过的校验位,去匹配多个不同的数据组,确保任何一个数据位出错,都会产生一个多个校验码位出错的唯一组合。这样,在出错的时候,我们就可以反过来找到出错的数据位,并纠正过来。当只有一个校验码位出错的时候,我们就知道实际出错的是校验码位了。
5.流量控制
链路层存在的另一个问题:接收方的处理速率
- 接收方的接收缓冲区溢出
解决方案
- 基于反馈 (feedback-based) 的流量控制
接收方反馈,发送方调整发送速率 - 基于速率 (rate-based) 的流量控制
发送方根据内建机制,自行限速
6.媒体接入控制 MAC (Medium Access Control)子层
数据链路层分为两个子层:
MAC子层:介质访问
LLC子层:承上启下(弱层)
② 频分多址接入-FDMA
FDMA: frequency division multiple access
- 信道总频带被划分为多个相同宽度的子频带
- 每个用户占用一个子频带,不管用户是否有数据发送
例子: 6-user LAN, 1,3,4频带有数据发送, 2,5,6频带被闲置
6.2.1 随机访问协议
特点:冲突不可避免
①ALOHA
纯ALOHA协议
原理:想发就发!
特点:
- 冲突:两个或以上的帧
- 随时可能冲突
- 冲突的帧完全破坏
- 破坏了的帧要重传
分隙ALOHA
- 分隙ALOHA是把时间分成时隙(时槽)
- 时隙的长度对应一帧的传输时间。
- 帧的发送必须在时隙的起点。
非持续式CSMA
1.特点
①经侦听,如果介质空闲,开始发送
②如果介质忙,则等待一个随机分布的时间,然后重复步骤①
2.好处
等待一个随机时间可以减少再次碰撞冲突的可能性
3.缺点
等待时间内介质上如果没有数据传送,这段时间是浪费的
持续式CSMA
p-持续式CSMA
1.特点
①经侦听,如介质空闲,那么以 p的概率 发送,以(1–p)的概率延迟一个时间单元发送
②如介质忙,持续侦听,一旦空闲重复①
③如果发送已推迟一个时间单元,再重复步骤①
1-持续式CSMA
1.特点
①经侦听,如介质空闲,则发送
②如介质忙,持续侦听,一旦空闲立即发送
③如果发生冲突,等待一个随机分布的时间再重复步骤①
2.好处:持续式的延迟时间要少于非持续式
3.主要问题:如果两个以上的站等待发送,一旦介质空闲就一定会发生冲突
4.注意
1-持续式是p-持续式的特例
6.2.2 受控访问协议
③二进制倒计数协议
6.3虚拟局域 VLAN
广播域(Broadcasting Domain)
- 广播域是广播帧能够到达的范围;
- 缺省情况下,交换机所有端口同属于一个广播域,无法隔离广播域;
- 广播帧在广播域中传播,占用资源,降低性能,且具有安全隐患。
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!