computer network
chapter 2:网络模型与直连网络
计算机网络体系结构模型
一些概念:
协议(protocol):定义通信参与方如何交互的一种协定和规范
全双工(full-duplex)链路:节点可同时收发数据
半双工(half-duplex)链路:节点不能同时收发数据
无线链路和星型链路:节点收发数据受其他节点影响
复用(multiplexing)是通信网络技术中的基本概念
如何利用协议构建计算机网络?
方案 | 概念 | pros | cons |
---|---|---|---|
模块化 | 模块化的协议栈 + 良好定义的模块接口 | 独立性强,功能简单,模块易于实现 | 适应性差,难以维护,对系统实现是场灾难 |
两层结构 | 将计算机网络分为两层,应用层与物理层,两层的每种类型一对一适配 | 相比于方案1,结构更清晰,更易于维护 | 每有一种新的应用,都需要与物理层的每种类型去适配 |
三层结构 | 引入中间层,分别与应用层和物理层适配,中间层实现对物理层的抽象,对应用层提供统一接口 | 极大降低了适配的工作量, M * N -> M + N | 引入适配层增加了设计难度 (可忽略不计) |
分层网络模型(Layered Network Model)
Why? 为什么需要分层网络模型
How? 如何定义分层网络模型
Pros and cons? 优缺点
分层模型工作机制:
封装和复用
网络体系结构的细腰特征:细腰结构(narrow-waist)是互联网体系结构模型中最典型的特征
分层模型的改进:
理论上,每层只需要实现对上层提供接口,对下层复用,大多数情况下都可以取得不错的性能结果
现实中,网络环境的复杂性使得分层独立设计难以达到最优性能,跨层(CrossLayer)感知可以弥补这一缺陷
直连网络
直连网络模型与性能指标:
模型:
点线模型,包括有线网、无线网
性能指标:
带宽(Bandwidth): 单位时间内通过链路所能传输的比特数
时延(Latency): 消息从网络一端传到另一端所需的时间 ,传播时延+处理时延+排队时延,大多时候更关注往返时间(RTT)
Q1:how to send the message?
A1:数据帧封装
在一段数据的前后分别添加首部和尾部,就构成了一个帧(不同协议对数据长度有上、下限规定),首部和尾部的作用是界定帧的范围
数据帧的透明传输
A2:差错检测
name | 概念 | 差错检测的思想 | 差错检测的方法 |
---|---|---|---|
差错检测 | 数据在传输过程中可能会产生比特差错,传输错误的比特占传输比特总数的比率称为误码率(Bit Error Rate, BER) | 在数据帧中加入冗余信息来确定是否存在差错 | 1. 通知对方数据有差错,使其重传数据副本(重传机制) 2. 通过加入的冗余信息,重新构造正确的数据(纠错码) |
差错检测的方法:奇偶校验,互联网校验和 (checksum),循环冗余校验CRC
A3:可靠传输
可靠传输基本思想
• 确认(acknowledgment, ACK):接收方接受数据帧,回复ACK帧
• 超时(timeout):发送方在规定时间(timeout)内没收到ACK,重传该数据
提升传输速率的根本方法是增加单位时间传输数据帧的数目
• 并发传输数据
• 允许多个在途传输(未收到ACK)的数据帧
• 通过窗口大小(window)限制在途传输的数据帧个数
• 每个数据帧赋予一个序列号 (Seq),数据传输和确认都基于Seq
name | 概念 | features |
---|---|---|
停等协议 | 发送方每传输一个数据帧,在传输下一数据帧之前等待确认 | 缺点:链路每次只能传输一个数据帧,带宽利用率低 |
滑动窗口算法 | • 滑动窗口是一种高效的可靠传输机制,包含4部分:1. 可靠传输(数据确认和超时重传机制)2. 高效传输(通过并发提升传输性能)3. 按序传送(接收方将连续的数据交给上层,不连续的数据存放在buffer中)4. 流控功能(通信双方通过设定Window大小表达自己的发送/接收能力) | 提升传输速率 |
Q2:how to share the link road between nodes?
A1:面向固定带宽分配的多路复用机制 FDM, TDM, CDM
A2:争用式多路复用机制 CSMA/CD, CSMA/CA
多路复用 | 概念 | features |
---|---|---|
FDM(频分复用) | 用户分配到一定的频带后,在通信过程中自始至终都占用这个频带 | 频分复用的所有用户在同样的时间占用各自的带宽资源 |
TDM(时分复用) | 时分复用将时间划分为一段段等长的时分复用帧(TDM 帧),每个用户在每一个TDM帧中占用固定序号的时隙 | 计算机网络中,由于数据传输具有突发性,TDM总带宽利用率不高 |
STDM(统计时分复用) | 基于动态带宽分配的思想,STDM将信号按需分成可变数目的子信道 | 相比于TDM,STDM子信道浪费较少,因此有更高的带宽利用率 |
CDM(码分复用) | ||
CSMA(载波帧听多路访问) | 核心思想:先侦听,后发送(sense before transmit) | • 非持续CSMA:可减少碰撞,会导致信道利用率降低,较长的延迟• 1-持续CSMA:会导致较多的碰撞,导致性能降低• p-持续CSMA:通过调节p在减少碰撞和高信道利用率之间取得平衡 |
CSMA/CD(带碰撞检测的CSMA) | 核心思想:1-持续CSMA + 碰撞检测 | • 侦听/发送:1. 发送数据时,侦听链路中是否有其他数据在传输。2. 如果有数据传输,则继续侦听等待。3. 如果没有检测到,则传输数据。4. 在数据传输过程中,如果遇到碰撞,执行碰撞处理操作。• 碰撞处理:1. 停止发送数据,发送特殊阻塞信息通告其他设备有碰撞发生。2. 根据发生碰撞的次数,计算指数退避时间(exp backoff),并在时间内随机等待。 |
CSMA/CA(带碰撞避免的CSMA) | 无线网络中存在隐藏节点问题(hidden node problem), CSMA/CD难 以准确检测碰撞,因此不再适用,核心思想:非持续CSMA + 碰撞避免 | • 侦听/发送:1. 发送数据时,先侦听信道是否空闲。如果信道忙,随机等待后再次侦听。2. 如果信道空闲,执行碰撞避免操作,发送数据。• 碰撞避免:1. 发送方向接收方发送Request to Send帧,请求对方开始接受数据。2. 接收方回复Clear to Send帧,表示现在可以接收数据。 |
Q3:how to link in the net?
A1:以太网,WiFi,蜂窝数据(5G)
name | 基本组成 | 概念 | 优点 | 缺点 |
---|---|---|---|---|
以太网 | 链路共享机制:CSMA/CD | 组网方式:直连型、总线型、星型 | 便宜,高速,易于使用、管理和扩展 | 数据包越小,传输单位数据的代价越大 ,用户数增加时,更容易发生碰撞• 链路变长时,需要更长时间来检测拥塞 • 网络负载越大,传输性能越低 |
WiFi | 链路共享机制:CSMA/CA | 组网方式:自组织网络、面向接入点的网络 | 不需要使用电缆,可以稍微移动位置 | 不同热点间信号相互干扰造成传输性能急剧下降,信号质量随着距离增大显著下降,不同热点间切换造成上层连接终止 |
蜂窝数据(5G) | 5G通信网络完全基于IP技术,使用毫米波、大规模MIMO、高密微基 站大幅提升网络性能 | 5G核心网架构• 基于服务的体系结构• 网络切片• 控制平面与用户平面的分离 | 接入范围广• 很好的支持移动性• 资源分配更公平 | 贵• 网络性能相对较差• 当用户接入数增加时,网络性能急剧下降 |
基于服务的体系结构
• 每个服务(Service)是一个功能(Function),功能可以在物理节点上 实现,也可以在虚拟节点上实现
网络切片 (Network Slicing)
• 网络切片对应一个逻辑上服务于某一特定用户或应用的网络
• 一个网络可以划分成多个网络切片
• 对于用户来说,其网络切片是一个有隔离资源的独立的网络