系列文章戳这里👇
- 计算机网络第一章知识点总结
- 计算机网络第二章知识点总结
- 计算机网络第三章知识点总结
- 计算机网络第四章知识点总结
- 计算机网络第五章知识点总结
- 计算机网络第六章知识点总结
- 计算机网络第七章知识点总结
- 计算机网络第八章知识点总结
第一章知识点回顾
1.因特网构成
- 终端:
- 也称主机(host)或端系统( end system)
- 运行应用程序
- 通信链路:
- 光纤,铜线,电磁波
- 主要指标为传输速率,也称带宽(bandwidth)
- 交换设备:
- 转发分组(packet)
- 路由器和交换机
- Internet Service Provider:
- ISP是由交换设备和通信链路组成的网络,为终端提供因特网接入服务
- 不同层次的ISP:本地ISP,地区ISP,全球ISP
- 每个ISP是自治的
1.1协议规定
- 协议规定了设备之间通信需要遵循的规则:
- 终端与终端之间
- 终端与交换设备之间
- 交换设备与交换设备之间
- 因特网协议标准:
- 由IETF组织统一管理,以RFC xxx文档的形式发布
- 因特网中最核心的两个协议是TCP和IP,因特网协议统称为TCP/IP协议族
1.2因特网的定义
- 因特网定义一:
- 由一群遵循TCP/IP协议的ISP,按照松散的层次结构组织而成的网络的网络
- 因特网的几个特点:
- 因特网是“网络的网络”
- 因特网不存在严格的层次结构
- 因特网没有统一的管理机构
- 因特网定义二:
- 因特网是为分布式应用提供通信服务的基础设施
- 传统通信系统的服务接口:
- 电话系统:拨号,振铃
- 邮政系统:邮筒,信箱
- 因特网提供给应用程序的服务接口:
- 一组用于在因特网上发送和接收数据的应用编程接口API
小结
- 因特网定义一:
- 由一群遵循TCP/IP协议的ISP,按照松散的层次结构组织而成的网络的网络
- 对于通信功能的实现有指导作用:
- ISP内部实现
- ISP之间互联
- 因特网定义二:
- 为分布式应用提供通信服务的基础设施
- 对于服务接口的定义有指导作用:
- 有序、可靠的数据交付服务
- 不可靠的数据交付服务
2.网络核心
- 网络核心:由路由器和链路组成的网状网络
- 任务:将数据包从发送侧的边缘路由器传送到接收侧的边缘路由器
- 通信网络中移动数据的两种基本方式:
- 电路交换(独占信道):电话网使用
- 分组交换(复用信道):计算机网络使用
2.1分组交换
- 分组交换的过程
- 主机将要传输的数据分段,并组装成一系列分组
- 交换:在传输路径上,交换设备从一条链路上接收分组,将其发送到另一条链路上
- 存储转发:交换设备在接收到完整的分组后,才开始转发
2.存储转发引入序列化延迟- 将一个分组全部推送给到一条链路上,耗时L/R秒
- 将一个分组从源发送到目的,总耗时=2L/R(不考虑信号传播时间)
- 3个分组从源终端发送到目的终端,总耗时=4L/R
- P个分组经过N条链路的总耗时为:(P+N-1)L/R
- 当P远大于N时,存储转发不会引入过多的延迟
- 存储转发引入排队延迟和丢包
- 排队延迟:分组在输出链路的缓存中排队,引入延迟
- 丢包:若输出链路的缓存满,溢出的分组被丢弃
- 当大量分组集中到达时,排队延迟和丢包较严重
2.2电路交换
- 电路交换: 通话前完成两部电话机之间的电路接续,通话结束后释放整条电路。本质是预留资源和独占资源
- 概念区分:链路和电路
- 链路(link):物理媒体,也称信道(channel)、可以通过某种方式划分成若干条独立的子信道
- 电路(circuit):物理媒体中的一条子信道
- 多路复用
- 频分复用FDM
- 时分复用TDM
2.3采用电路交换的文件传输时间
1. 采用电路交换从主机A主机B传输一个640 000bits的文件需要多久?
- 链路带宽为1.536 Mbps
- 时分复用TDM为 24 slots/sec
- 500毫秒建立端到端电路
数据传输速率:
1.536
M
b
p
s
/
24
=
64
k
b
p
s
1.536Mbps/24 = 64kbps
1.536Mbps/24=64kbps
传输数据的时间:
640
k
b
i
t
s
/
64
k
b
p
s
=
10
s
640kbits/64kbps = 10s
640kbits/64kbps=10s
总时间:
500
m
s
+
10
s
=
10.5
s
500ms+10s = 10.5s
500ms+10s=10.5s
2. 为什么采用分组交换
同样的链路容量,分组交换允许支持更多用户!
- 1Mb/s的链路
- 每个用户:
- 活跃时可分配到100kb/s
- 用户有10%的时间活跃
- 采用电路交换时(固定分配):只能服务固定10个用户
- 采用分组交换(按需分配):同时有10个用户在线的概率小于0.0004,因此可以服务35个用户
轻负载时,分组交换可以更快地服务用户!
- 1Mb/s的链路
- 如果只有一个用户在线:需要传输1000个1kb的包
- 采用电路交换(固定分配):需要10s
- 采用分组交换(按需分配):只需要1s
2.4衡量网络性能的主要指标
-
延迟: 分组从源终端到达目的终端的时间
-
丢包率:未成功交付到目的终端的分组比例
-
吞吐量:单位时间内网络成功交付的数据量、端到端的吞吐量与瓶颈链路的带宽, 以及链路上的负载有关
-
分组在交换网络中要经历四种延迟:处理延迟,排队延迟,传输延迟,传播延迟
- 排队延迟的变化范围最大。
- 当分组到达交换设备时,若输出链路的缓冲队列满,发生丢包。
-
分组延迟的来源
- 节点处理延迟
d
p
r
o
c
d_{proc}
dproc:
- 检查错误、确定输出链路
- 几个微秒或更低
- 排队延迟
d
q
u
e
u
e
d_{queue}
dqueue:
- 在输出缓存等待传输、时间长短取决于链路负载大小
- 变化范围很大, 取决于链路负载
- 传输延迟
d
t
r
a
n
s
d_{trans}
dtrans :
- R=链路带宽(bps)、L=包长度(bits)
- 将分组发送到链路上的时间= L/R (分组序列化时间)
- 注意区分 L 的单位是字节还是比特
- 微秒 ~ 毫秒, 主要取决于链路传输速率 R
- 传播延迟
d
p
r
o
p
d_{prop}
dprop :
- d=物理链路的长度、s=中等传播速度(~ 2 ∗ 1 0 8 m / s e c 2*10^8\ m/sec 2∗108 m/sec)
- 传播时延=d/s、注意:s 和 R 是非常不同的量级!
- 几微秒 ~ 几百毫秒, 主要取决于链路长度
注意区分传输延迟和传播延迟
- 节点的总延迟 d n o d e = d p r o c + d q u e u e + d t r a n s + d p r o p d_{node} = d_{proc} + d_{queue} + d_{trans} + d_{prop} dnode=dproc+dqueue+dtrans+dprop
- 节点处理延迟
d
p
r
o
c
d_{proc}
dproc:
-
排队延迟与流量强度
- R:链路带宽(bps)
- L:数据包长度(btis)
- a:平均数据包到达率
- 流量强度:La/R
- La/R~ 0:平均排队延迟小
- La/R -> 1:平均排队延迟大
- La/R > 1: 到达的请求超出能服务的限额,平均延迟趋近无限大!
-
2.4.1 排队与丢包
- 输出队列的容量是有限的:队列满时,新来的分组被丢弃
- 队列长度是一个重要的参数:
- 队列太短:丢包率增大
- 队列太长:排队延迟增大(也会造成间接丢包!)
2.4.2端到端延迟
- 端到端延迟:分组传输路径上所有节点的节点延迟之和
- 对端到端延迟敏感的应用:
- 高度敏感:实时交互应用:如网络电话、视频会议
- 中度敏感:在线交互应用、如网页浏览
- 探测端到端延迟:ping、Traceroute
2.4.3端到端吞吐量
- 单位时间内接收端成功交付的数据量
- 瞬时吞吐量:给定时刻的传输速率
- 平均吞吐量:较长时间内的传输速率
- 瓶颈链路的带宽限制了端到端吞吐量:
-
- 端到端吞吐量: min(Rc,Rs,R/10)
- 端到端吞吐量与瓶颈链路的速率、以及链路上的负载有关
-
-
2.5分组交换和电路交换的区别
-
分组交换统计复用和电路交换中的同步时分复用(TDM),都是让用户轮流使用链路,它们之间的区别是:
- 统计复用(分组交换):信道使用模式不固定、用户使用链路的模式不固定
- TDM(电路交换):信道使用模式固定、用户使用链路的模式固定
-
分组交换的优点:资源利用率高,简单(不需要建立连接)
-
分组交换的缺点:可能产生延迟、丢包,需要设计相应的协议解决
-
有些应用需要类似电路交换的传输特性,如何提供:音视频应用需要带宽保证,该问题尚未解决
-
为什么因特网采用分组交换:
- 分组交换适合突发流量
- 传统因特网应用(如电子邮件、文件传输)具有突发通信的特点
小结
- 端系统
- 调用因特网服务接口,实现分布式应用
- 因特网中的通信过程对其不可见
- 接入网
- 因特网到用户的“最后一公里”,将各类终端接入因特网
- 关注物理媒体、信号传输技术
- 网络核心
- 任务是高效、准确地投递分组到目的地
- 关注选路、转发、拥塞控制等
- 延迟、丢包率、吞吐量三个指标,均与负载有关
- 如何通过调节负载来获得这些指标的平衡,是因特网的重要研究内容之一
3.协议
3.1协议的要素
- 网络:
- 发送的特定消息
- 收到消息时采取的特定操作,或其他事件
- 网络协议定义了:
- 通信实体之间交换的报文的格式和次序
- 在发送/接收报文、或其它事件后采取的动作
- 掌握计算机网络知识的过程,就是理解网络协议的构成、原理和工作的过程
- 系统分层:将系统按功能划分成一系列水平的层次,每一层实现一个功能(服务)
- 层次间服务:每一层的功能实现都要依赖其下各层提供的服务
3.2Internet协议栈
- 应用层:在应用程序之间传输应用特定的报文(message)如:FTP、SMTP、HTTP
- 传输层:在应用程序(进程)的网络接口之间传输报文段(segment)如:TCP、UDP
- 网络层:在源主机和目的主机(终端-终端)之间传输分组(packets)如:IP,routing protocs
- 链路层:在相邻设备之间传输帧(frame)如:PPP,Ethernet
- 物理层:在物理媒体上传输比特(bit)
- ISO/OSI 参考模型: 多两个层次
- 表示层
- 会话层
3.3网络功能的分布式实现
- 某一层上的网络功能,需要该层上的实体(分布在不同的节点)协同完成
- 协同计算要求功能实体之间能够交互信息,需要解决以下问题:
- 信息交互的载体是什么:各层上的报文
- 信息交互的约定:报文格式及语义规定
- 报文的传输方式:封装和解封装
小结
- 网络按功能划分层次,每层实现一个功能
- 在不同系统的同一层上:对等实体执行该层的协议
- 相同系统的上下层:
- 调用服务/提供服务
- 封装/解封装分组
- 不同系统的不同层
- 不直接通信
本章小结
- 计算机网络关注:
- 功能性问题:可达性(选路、转发),正确性(可靠性控制)
- 性能问题:吞吐量,延迟,丢包率
- 安全性问题:基础设施安全,信息安全
- 重点理解:
- 分组交换:存储转发,设计考虑(利),引入的问题(弊)
说明:在因特网中使用分组交换而不是电路交换,是一个重大的决定。需要理解这个决定背后的考虑,以及这些决定可能带来的问题,如何解决这些问题则是协议的主要内容 - 网络分层架构:服务,功能,接口,协议,封装
例题
-
分组在交换网络中需要经历各种延迟,以下哪种延迟对分组的端到
端延迟贡献最大?
A. 传输延迟 B. 排队延迟 C. 传播延迟 D. 钝角 -
以下那种设备运行了完整的协议栈?
A. 交换机 B. 终端 C. 路由器 D. 钝角 -
下列选项中, 不属于网络体系结构所描述的内容是 ()
A. 网络的层次 B. 每层使用的协议 C. 协议的内部实现细节 D. 每层必须完成的功能 -
协议是以下哪两个实体之间通信时需要遵循的规则?
A. 不同系统的相同层实体之间 B. 不同系统的不同层实体之间 C. 同一个系统的相邻层实体之间 D. 以上都是 -
写出至少三种接入网技术。对于每一种接入网技术,指出使用的传输媒体是什么。
接入网技术:DSL,HFC,以太网,WiFi,3G,…… (写出三种即可)
DSL使用双绞线,HFC使用光纤和同轴电缆,以太网使用双绞线或光纤,WiFi和3G使用电磁波 -
分组在交换网络中要经历哪四种延迟?哪种延迟的变化范围最大?什么情况下会出现丢包?
四种延迟:处理延迟,排队延迟,传输延迟,传播延迟
排队延迟的变化范围最大。
当分组到达交换设备时,若输出链路的缓冲队列满,发生丢包。 -
从高到低列出因特网协议栈的五个层次。主机上运行哪些层次?TCP协议运行在哪个层次?IP协议运行在哪个层次?HTTP协议运行在哪个层次?
因特网协议栈的五个层次:
应用层,传输层,网络层,数据链路层,物理层
主机上运行全部五个层次
TCP运行在传输层
IP运行在网络层
HTTP运行在应用层 -
分组交换和电路交换中的同步时分复用(TDM),都是让用户轮流使用链路,它们之间的区别是什么?
分组交换:用户使用链路的模式不固定
TDM:用户使用链路的模式固定 -
A和B两个终端通过一台分组交换机连接到一起。两段链路的数据速率分别为R1和R2,忽略信号传播时间。A向B连续发送2个长度为L的分组。假设路径上没有其它分组传输,请问从A开始发送到B完整收到2个分组,其间经过了多长时间?(提示:分R1≤R2和R1>R2两种情况考虑)
若R1≤R2,T = 2L/R1 + L/R2
若R1>R2,T = L/R1 + 2L/R2