湖科大-计算机网络
Created: October 12, 2021 2:22 PM
Reviewed: No
Topic: 网课
第一章 概述
1.2 因特网概述
1.2.1 网络、互连网(互联网)和因特网
- 网络(Network):节点(Node) +连接节点的链路(Link)
- 互联网:多个网络由路由器连接起来形成互联网,覆盖范围更大(网络的网络,Network of Networks)
- 因特网(Internet):是世界上最大的互联网,用户称为主机(host) 因特网是互联网的子集
1.2.2 因特网发展的三个阶段
- 单个网络ARPANET向互联网发展
- 逐步建成三级结构的因特网
- 逐步形成多层次ISP结构的因特网
- ISP(Internet Service Provider,因特网服务提供者):普通用户接入到因特网的过程通过ISP,ISP从因特网管理机构申请到成块的IP地址,且拥有通信线路和路由器等联网设备,用户缴纳费用即可获取可用的IP地址进行通信。
- 中国ISP:电信、移动、联通
- 基于ISP三层结构的因特网:
-
第一层ISP:因特网主干网,直接互联,由高速链路和交换设备,国际性区域
-
第二层ISP、一些大公司:是第一层ISP的用户,区域性或国家性覆盖规模
-
第三层ISP:本地ISP,仅有本地范围网络,用户为校园网、企业网、住宅用户等
红线表示常见因特网中两主机通信示意 若某用户可以接入到因特网,则该用户也可以成为一个ISP,需要网络通信设备使其他用户与之相连(手机热点)
-
1.2.3 因特网的标准化工作
-
特点:面向公众
- 因特网所有的RFC(Request For Comments)技术文档都可以从因特网上免费下载
- 任何人可以随时用电子邮件发表对某个文档的意见和建议
-
因特网协会ISOC是国际性组织,负责对因特网全面管理和在世界范围内促进其发展使用
-
制定因特网正式标准经过4个阶段:
- 因特网草案(不是RFC文档)
- 建议标准(开始成为RFC文档)
- 草案标准
- 因特网标准
1.2.4 因特网的组成
- 边缘部分:由所有连接在因特网上的主机组成,由用户直接使用,用来通信和资源共享
- 核心部分:由大量网络和连接这些网络的路由器组成,为边缘部分提供服务(连通性和交换)
1.3 三种交换方式
1.3.1 电路交换(Circuit Switching)
- 两部电话用一对电线互相连接
- 电话机数量庞大,n部电话机两两相连需要 n ( n − 1 ) 2 \frac{{n(n - 1)}}{2} 2n(n−1)对电话线
- 使用中间设备接通电话线,即电话交换机的方式,称为电路交换,可以抽象为一个开关控制设备,电话机间按需连接,电话机数量增多时使用彼此连接起来的电话交换机完成全网的交换
- 交换(Switching):转接,按照某种方式动态分配传输线路的资源
- 用户线和电话交换机之间线路为用户专用,电话交换机之间的中继线由许多用户共享
- 电路交换三个步骤:
- 建立连接(分配通信资源):主叫端到被叫端建立专用物理通路
- 通话(一直占用通信资源):占用端到端的通信资源
- 释放连接(归还通信资源):挂机后将占用的通信资源归还给电信网、
- 电路交换传送计算机数据效率往往很低,计算机数据突发存在
1.3.2 分组交换(Packet Switching)
-
分组交换使用存储转发技术
-
把整块数据**(报文,message)划分为固定长度的等长数据段**,每个数据段加上控制信息的首部,构成一个分组(packet)
-
分组又称为包,分组的首部称为包头
-
首部含有地址:目的地址、源地址
-
主机的任务:用户信息处理、接收/发送数据
-
路由器的任务:转发分组,进行分组交换
-
分组交换机收到分组后,先将分组存储下来,再检查分组首部,按照首部中的目的地址进行查表转发,找到合适的转发接口,通过该接口将分组转发给下一个交换机
-
分组传输中可以存在两种情况:
- 各分组从源站到达目的站可以走不同的路径(路由)
- 分组乱序,分组到达目的站的顺序不一定与分组在源站的发送顺序相同
-
路由器处理分组的过程:放入缓存->查找转发表->转发
-
问题:1.在各节点需要排队,造成时延;2.各分组携带信息造成开销
-
传输距离/传输时间=时延
1.3.3 报文交换(Message Switching)
- 主要用于早期的电报通信网
- 交换节点也采用存储转发方式
- 对报文大小没有限制,要求交换节点有较大的缓存空间
1.3.4 三种交换的对比
- 电路交换需要首先建立连接,分组交换和报文交换无需建立连接
- 存在时延的原因:交换机存在存储转换
- 分组交换由于分组相比报文交换数据量大大减少,因而交换中出错率减少
1.4 计算机网络的定义和分类
1.4.1 计算机网络定义
-
最简单定义:一些互相连接的自治的计算机的集合
-
互连:计算机之间可通过有线或无线的方式进行数据通信
-
集合:指至少需要两台计算机
-
自治:拥有自己的硬件和软件,独立的计算机,可以单独运行使用
注意:下图中不是计算机网络,因为终端机只具有显示和输入设备,不具备自治性,因此图中是一个运行分时系统的大型机系统
-
-
较好的定义:计算机网络是由一些通用的、可编程的硬件互连而成的,而这些硬件并非专门用来实现某一特定目的(例如传送数据或视频信号)。这些可编程的硬件能够用来传送多种不同类型的数据,并能支持广泛的和日益增长的应用。
- 通用的、可编程的硬件:硬件不局限于一般的计算机,包括智能终端等硬件
- 支持广泛的和日益增长的应用:支持今后可能出现的各种应用
1.4.2 计算机网络分类
- 按交换技术分类
- 电路交换网络
- 报文交换网络
- 分组交换网络
- 按使用者分类
- 公用网:电信公司出资建造大型网络
- 专用网:某个部门为单位特殊业务建造的网络
- 按传输介质分类
- 有线网络:双绞线网络、光纤网络等
- 无线网络:Wi-Fi
- 按覆盖范围分类
- 广域网WAN:覆盖几十至几千公里,因特网核心,为核心路由器提供远距离高速连接,互连分布在不同区域的城域网和局域网
- 城域网MAN:覆盖一个城市,5-50公里,城市骨干网,互连企业、机构、校园局域网
- 局域网LAN:局限在较小范围内,1公里左右,速度通常在10Mbit/s以上,用微型计算机或工作站通过高速通信线路相连,由单位单独拥有使用维护,一个学校或企业拥有多个互连的局域网,成为校园网或企业网
- 个域网PAN:覆盖范围10m,个人局域网,用于在个人工作的地方把个人使用的电子设备用无线技术连接起来的网络
- 按拓扑结构分类
-
总线型网络
- 建立简易,增删节点方便,节省线路
- 重负载通信效率低,一处有故障全网瘫痪
-
星型网络
- 中央设备演变:计算机->集线器->交换机->路由器
- 便于网络集中控制管理
- 成本高,中央设备对故障敏感
-
环形网络
- 令牌环局域网:单环/双环,环中信号单向传输
- 令牌环局域网:单环/双环,环中信号单向传输
-
网状型网络
- 每个节点至少有两条路径与其他节点相连
- 可靠性高
- 控制复杂,线路成本高
-
1.5 计算机网络的性能指标
- 性能指标从不同方面度量计算机网络性能
1.5.1 速率
- 比特:计算机中数据量的单位和信息论中信息量的单位,一个比特就是二进制数据中的一个0或1
- 常用数据量单位:字节(Byte,简写为B)
- 8 bit = 1 B
- KB = 2 10 2^{10} 210 B
- MB = 2 20 2^{20} 220 B
- GB = 2 30 2^{30} 230 B
- TB = 2 40 2^{40} 240 B
- 速率:连接在计算机网络上的主机在数字信道上的传送比特的速率,也称为比特率或数据率
- 常用数据率单位
- bit/s(b/s, bps)
- kb/s = 1 0 3 10^3 103 b/s(bps)
- Mb/s = 1 0 6 10^6 106 b/s(bps)
- Gb/s = 1 0 9 10^9 109 b/s(bps)
- Tb/s = 1 0 12 10^{12} 1012 b/s(bps)
1.5.2 带宽
- 带宽在模拟信号系统中的意义
- 信号所包含的各种不同频率成分所占据的频率范围
- 单位:Hz(kHz, MHz, GHz)
- 带宽在计算机网络中的意义
- 用来表示网络的通信线路所能传输数据的能力
- 网络带宽表示在单位时间内从网络中的某一点到另一点所能通过的**“最高数据率”**
- 单位:b/s(kb/s, Mb/s, Gb/s, Tb/s)
- 一条通信线路的频带宽度越宽,其所传输数据的最高数据率也越高
1.5.3 吞吐量
- 吞吐量表示在单位时间内通过某个网络(或信道、接口)的数据量
- 被经常用于对现实世界的网络的测量,得出实际上有多少数据量能够通过网络
- 吞吐量受网络的带宽或额定速率的限制(例如带宽为1Gb/s的局域网,吞吐量为700Mb/s)
1.5.4 时延
-
时延的产生和构成
-
发送时延:源主机将分组发往传输线路
- 计算公式:
发 送 时 延 = 分 组 长 度 ( b ) 发 送 速 率 ( b / s ) 发送时延=\frac{分组长度(b)}{发送速率(b/s)} 发送时延=发送速率(b/s)分组长度(b)
-
设备与传输介质的速率匹配,才能完全发挥传输性能
-
传播时延:代表分组的电信号在链路上传输
- 计算公式:
传 播 时 延 = 信 道 长 度 ( m ) 电 磁 波 传 播 速 率 ( m / s ) 传播时延=\frac{信道长度(m)}{电磁波传播速率(m/s)} 传播时延=电磁波传播速率(m/s)信道长度(m)
- 电磁波传播速率:
- 自由空间为光速, 3 × 1 0 8 m / s 3 \times 10^8 \space m/s 3×108 m/s
- 铜线: 2.3 × 1 0 8 m / s 2.3 \times 10^8 \space m/s 2.3×108 m/s
- 光纤: 2.0 × 1 0 8 m / s 2.0 \times 10^8 \space m/s 2.0×108 m/s
-
处理时延:路由器存储转发(一般不方便计算)
在处理时延忽略不计时,发送时延和传播时延受实际问题影响
-
1.5.5 时延带宽积
- 时延带宽积中时延为传播时延
- 计算公式: 时延带宽积 = 传播时延(s) × 带宽(b/s)
- 时延带宽积可以理解为长度为传播时延,横截面积为带宽的管道体积,管道中充满比特
- 假定发送端连续发送数据,则在发送的第一个比特即将到达终点时,发送端就已经发送了时延带宽积个比特的数据
- 链路的时延带宽积又称为以比特为单位的链路长度
1.5.6 往返时间
-
许多情况下,因特网上信息是双向交互的,我们有时需要知道双向交互一次的时间
-
往返时间RTT(Round-Trip-Time):从源主机发送分组开始,直到源主机收到来自目的主机的确认分组为止,所需要的时间
-
时延在卫星链路中耗时较多,因为卫星的链路较长,传播时延比较大
1.5.7 利用率
-
信道利用率:表示信道有百分之几的时间是被利用的(有数据通过)
-
网络利用率:全网络的信道利用率加权平均
-
根据排队论,当某信道信道利用率增大时,该信道引起的时延也会迅速增加,因此,信道利用率并非越高越好
-
若令 D 0 D_0 D0表示网络空闲时的时延, ∗ D ∗ *D* ∗D∗表示网络当前时延,在适当的假定条件下, ∗ D ∗ *D* ∗D∗、 ∗ D 0 ∗ *D_0* ∗D0∗和利用率 ∗ U ∗ *U* ∗U∗有如下关系:
D = D 0 1 − U D=\frac{D_0}{1-U} D=1−UD0
1.5.8 丢包率
-
丢包率即分组丢失率,指在一定时间内传输过程中丢失的分组数量和总分组数量的比率
-
可分为接口丢包率、结点丢包率、链路丢包率、路径丢包率、网络丢包率等
-
网络运维人员十分关心丢包率
-
分组丢失主要分两种情况:
- 分组在传输过程中出现误码,被结点丢弃
- 分组到达一台存储队列已满的分组交换机时被丢弃,通信量较大时就可能造成网络拥塞,实际上路由器会在输入缓存未满时主动丢弃分组
-
丢包率反映网络拥塞情况
1.6 计算机网络体系结构
1.6.1 常见的计算机网络体系结构
- OSI体系结构(开放系统互连参考模型)
-
七层体系结构
-
从下往上为:物理层、数据链路层、网络层、运输层、会话层、表示层、应用层
-
失败原因:专家缺乏实际经验和商业驱动力、实现过分复杂效率低、制定周期长、层次划分不太合理
-
- TCP/IP体系结构
-
四层体系结构
-
从下往上为:网络接口层、网际层、运输层、应用层
-
将OSI体系结构中的物理层和数据链路层合并为网络接口层,去掉表示层和会话层
-
接入因特网的主机必须支持TCP/IP协议
-
用户主机操作系统中通常带有符合TCP/IP体系结构标准的TCP/IP协议族,在网络互连的路由器中也同样带有,后者一般只包含网络接口层和网际层
-
网络接口层并未规定具体内容,以此可以互连全世界各种不同的网络接口(以太网、Wi-Fi)
-
IP协议将不同的网络接口进行互连,向其上的TCP协议和UDP协议提供网络互联服务,TCP协议在网络互联服务基础上向应用层相应协议提供可靠传输的服务,UDP协议在网络互联服务基础上向应用层提供不可靠传输的服务
-
IP协议互连不同的网络接口(IP over everything),同时IP协议可以为各种网络应用提供服务(Everything over IP)
-
- 原理体系结构
- 五层体系结构,综合OSI和TCP/IP优点
- 从下到上为:物理层、数据链路层、网络层、运输层、应用层
1.6.2 计算机网络体系结构分层的必要性
-
两台主机通过网线连接情况下需要考虑的问题:
-
主机通过总线互连构成总线型网络需要考虑的问题:
-
多个网络互连需要考虑的问题:
-
对于计算机网络应用需要考虑的问题:
-
原理体系结构中各分层解决问题:
1.6.3 计算机网络体系结构分层思想举例
1.6.4 计算机网络体系结构中的专用术语
-
实体
-
实体:任何可发送或接收信息的硬件或软件进程
-
对等实体:收发双方相同层次中的实体,例如通信双方的网卡、通信双方中正在通信的应用进程
-
-
协议
-
协议:控制两个对等实体进行逻辑通信的规则集合(逻辑通信并不存在,假设方便研究)
-
协议的三要素:语法、语义、同步
-
语法:定义所交换信息的格式
-
例:IP数据报格式
-
-
语义:定义收发双方所要完成的操作
- 例:主机访问远程web服务器,构建HTTP get请求报文发送给服务器,服务器收到报文进行解析,在自身内部查找请求内容,将找到内容封装在HTTP响应报文中返回发送主机,主机收到响应报文后进行解析,取出请求内容浏览器显示
-
同步:定义收发双发的时序关系(注意区分时钟频率同步)
-
例:TCP三次握手建立连接
-
-
-
-
服务
-
在协议的控制下,两个对等实体间的逻辑通信使得本层能够向上一层提供服务
-
协议是水平的,服务是垂直的
-
透明性:实体看得见相邻下层提供的服务,但并不知道实现该服务的具体协议,即下面的协议对上面的实体是透明的
-
服务访问点:同一系统中相邻两层的实体交换信息的逻辑接口
- 数据链路层的服务访问点为帧的“类型”字段
- 网络层的服务访问点为IP数据报首部中的“协议字段”
- 运输层的服务访问点为“端口号”
-
服务原语:上层使用下层所提供的服务必须通过与下层交换一些命令,这些命令称为服务原语。
-
协议数据单元PDU:对等层次之间传送的数据包称为该层的协议数据单元
- 物理层:比特流(bit stream)
- 链路层:帧(frame)
- 网络层:IP数据报或分组(packet)
- 运输层:TCP报文段(segment)或UDP用户数据报(datagram)
- 应用层:报文(message)
-
服务数据单元SDU:同一系统内,层与层之间的交换的数据包称为服务数据单元
-
多个SDU可以合称为一个PDU,一个SDU也可以划分为几个PDU
-
1.7 本章小结
计算机网络微课堂(有字幕无背景音乐版)
1.8 第一章习题课
1.8.1 体系结构相关习题
1.8.2 时延相关习题
发送时延:分组长度/发送速率
传播时延:信道长度/电磁波传播速率
若主机在一段链路上连续发送分组,则总时延为所有分组的发送时延加信号在这段链路上的传播时延
重要结论:
注:p/b是1个分组的发送时延,x/p是分组的数量,k是链路数量,(k-1)是转发次数,kd是k段链路的传播时延