计算机网络概述
1.计算机网络和互联网
1.1 计算机网络的定义和特点
1.2 互联网的历史
计算机所产生的数据具有突发性,因此电话网的技术并不适 用千构建计算机网络。分组交换的研究工作奠定了互联网的基础
-
20世纪60年代,美国高级研究计划局ARPA着手筹建“分布 式网络",该网络后来命名为ARPAnet,是今天的互联网的前身。 -
1969年5月,APRAnet的第一台分组交换机安装在美国加州 大学洛杉矶分校(UCLA)。 -
1972年,ARPAnet发展成具有15台分组交换机的计算机网络。 -
1973年,著名论文《关千包交换网络的协议》发表,提出不同计算机网络 通过“网关”进行联接的概念,并设计了TCP协议。 -
1981年,IP协议(RFC791)和TCP协议(RFC793)正式发布。 -
1983年,具有网络互联能力的TCP/IP协议成为ARPAnet上的标准协议。
1.3 互联网的发展阶段
1.3.1 阶段1:从APRAnet的建立到关闭
- 1969年,APRAnet建立;
- 1981年,IP和TCP发布 ;
- 1983年,ARPAnet迁移到TCP/IP;
- 1990年,ARPAnet正式关闭。
1.3.2 阶段2:美国国家科学基金网NSFnet的建立 到停止运作
- 1985 年 , 美 国国家科学基金会(National Science Foundation,NSF)利用TCP/IP协议建 立了用于科学研究和教育的骨干网NSFnet;
- NSFnet覆盖了美国主要的大学和研究所;
- NSFnetNSFnet是一个三级结构的计算机网络, 分为主干网、地区网和校园网;
- 1995年,NSFnet停止运作。
- NSFnet的主干网带宽从1985年的56kbit/s发展到 1995年的45Mbit/s。
1.3.3 阶段3:商业互联网的兴起和发展
- 1991年,NSF解除了对NSFnet用千商业目的的限制。互联网服务提供商ISP开始提供 互联网接入服务。
- 1989年,欧州原子核研究组织CERN发明了万维网。万维网将互联网带入数以万计的 家庭和单位。万维网出现后,互联网进入爆炸性发展的阶段。
2.互联网结构
互联网的拓扑结构虽然非常复杂,但从其 工作方式上看,可以分为两大部分: 网络边缘、网络核心
2.1 网络边缘
网络边缘部分由所有连接在互联网上的主机以及接入网构成,网络边缘部分是用户直接使用的。
2.1.1 主机
主机包括:个人计算机、服务器、超级计算机、智能手机、智能家电、智能 可穿戴装备、网络摄像头、汽车以及各种网络传感器等。
2.1.2 接入网
接入网指将主机连接到其边缘路由器的网络,边缘路由器指进入互联网核心部分后的第一台路由器。
2.2 网络核心
网络核心部分由ISP网络、其它网络以及连接这些网络的路由器组成。 网络核心部分是为网络边缘部分提供通信服务的。
计算机网络采用分组交换方式,路由器是网络核心部分最重要的设备,是实现分组交换的关键构件,其作用是将收到的分组转发到另一个网络
2.2.1 交换的引入
端系统数量很少时,可以采用全互连方法实现点对点通信。但全互连方式中,需要 N(N-1)/2条互连线。当 增加第N+1个端系统时, 必须增设N条线路。因此,引入交换设备, 称为交换机或交换结点。所有端系统通过用户线 连接到交换结点上,由交换结点控制端系统间的连接。
当端系统分布的区域较广时,需设置多个交换结点,交换结点之间用中继线相连。 当交换的范围更大时,需要再次引交换结点,由此形成交换网。
交换的定义:从通信资源分配的角度来看,交换就是按照某种方式分配传输线路的资源。
交换的方式:在通信网络中有多种交换方式,电路交换、分组交换和报文交换是其中最典 型的三种。
- 传统的电话网络采用电路交换方式;
- 计算机网络采用分组交换方式;
- 早期的电报网络采用报文交换方式。
2.2.2 电路交换
电路交换属于通信资源的预分配系统。
电路交换的过程:电路交换方式是面向连接的交换方式。必须经过 :
- 建立连接:例如打电话拨号;
- 数据传输:例如通话;
- 释放连接:例如挂断电话。
- 中继线中多路电话信号可以通过频分复用、时分复用等信道复用技术共享通信线路资源。
- 特点: 固定分配资源:通信资源在建立连接阶段已经预先分配给通话的双方了,在通话的全部时间内,通话的两个终端始终占用端到端的通信资源。
2.2.3 分组交换
分组交换属于通信资源的动态分配系统。
计算机网络数据具有突发特性,如果使用电路交换方式,通信资源的利用率 将极低。 因此,计算机网络采用分组交换方式。分组交换技术的出现奠定了互联网发 展的基础。
特点: ? 分组; ? 存储转发; ? 逐段占用通信链路资源; ? 虚电路或数据报。
(1)分组
分组:分组是互联网中传输的数据单元 报文:待发送的完整数据块称为报文(message) 包:将报文分成较小的数据段,在每个数据段前面增加控制信息,构成分组(packet)。分组也称为包。 包头增加的控制信息称为首部(header),也称为包头。
(2)存储转发
路由器收到一个分组后,先暂时存储起来; 然后根据首部中的控制信息,找到合适的接口将分组转发出去; 每台路由器都以存储转发的方式,逐跳(hop)处理,最终将分组交付目的主机; 目的主机将分组重新还原成报文。
(3)逐段占用通信链路资源
它通信链路资源并不被当前通信的双方所占用,即分组交换是逐段占用通信资源的。 带宽资源并不会预先分配给某一次通信,而是可以为多次通信所共享,其通信资源的利用率较高。
(4)分组交换的两种方式
分组交换包括两种方式:虚电路 (Virtual Circuit,VC)方式和数据报 (datagram)方式。
虚电路方式: 虚电路方式是面向连接的,虚电路中连 接,不是物理连接,只是一条逻辑连接。 建立虚电路后,在数据通信阶段,路由 器根据虚电路标识转发分组,属千相同 虚电路的数据分组将沿着相同的路径、 按序通过网络,到达目的结点。 数据报方式: 数据报方式是无连接的,即发送数据之前不需要先建立连接。
数据报方式中,路由器为每个分组独立选择转发接口,从相同源结点发往相同目的结点的数据分组,有可能沿着不同的路径,也有可能失序通过网络,到达目的结点。 (目前,互联网采用的交换方式就是数据报方式的分组交换)
(5)分组交换的问题
增大了时延:分组在各路由器中存储转发时,需要在队列中排队,这会增加 一些时延。 增大了开销:每一个分组的首部中都包含一些控制信息,这会增加一定的开销
2.2.4 报文交换
报文交换方式也采用存储转发方式。 报文交换与分组交换的区别在于:报文交换传输的数据单元是一个完整的报文,而分组交换传输的数据单元是较小的分组。
2.2.5 三种交换方式的比较
2.2.6 分组交换网的性能
(1)带宽
频域称谓 带宽是频带宽度的简称,单位是赫兹(Hz) 信号的带宽指该信号所包含的各种不同频率成分所占据的频率范围 信道的带宽指该信道允许通过的信号的频带范围
时域称谓 在计算机网络中,带宽是指在单位时间内能传输的最大数据星,也称为最高数据率,用来表示网络中某信道的数据传送能力,单位是比特每秒(bit/s)
(2)吞吐量
吞吐量表示在单位时间内通过某个网络或接 口的实际数据量,单位是比特每秒 (bit/s) 以文件传输应用为例,主机在任何瞬间接收到该 文件的速率称为瞬时吞吐量,主机收到完整文件 后计算的平均速率称为平均吞吐量。 端到端吞吐量是衡量计算机网络性能的一个 重要指标。 ? 端到端吞吐量受到网络带宽的限制。 ? 端到端吞吐量也会受到网络中其它通信量的影响
(3)时延
分组从源主机出发,经过一系列路由器,最终到达目的主机,在这个过程中 所花费的时间称为端到端时延。端到端时延由处理时延(processing delay)、排队时延(queuing delay)、**传输时延(**transmission delay)和 传播时延(propagation delay)等几个部分组成。
端到端时延 = 处理时延+ 排队时延+ 发送时延+ 传播时延
-
处理时延:结点在收到分组后,结点处理分组所花费的时间,称为处理时延。 -
排队时延:分组进入路由器后,在输入队列或输出队列中排队所产生的时延 称为排队时延。 -
传输时延:结点将分组传输到链路上所需要的时间,也称为发送时延。
发
送
时
延
=
分
组
长
度
(
b
i
t
)
发
送
速
率
(
b
i
t
/
s
)
{发送时延=\Large\frac{分组长度(bit)}{发送速率(bit/s)}}
发送时延=发送速率(bit/s)分组长度(bit)? -
传播时延:电磁波在信道中传播一定的距离所花费的时间称为传播时延。
传
播
时
延
=
信
道
长
度
(
m
)
电
磁
波
在
信
道
上
的
传
播
速
率
(
m
/
s
)
传播时延=\Large\frac{信道长度(m)}{电磁波在信道上的传播速率(m/s)}
传播时延=电磁波在信道上的传播速率(m/s)信道长度(m)?
(4)丢包率
丢包:当分组到达路由器的速率超过路由器发送分组的速率时,路由器有可能丢弃到达的分组,这种现象称为丢包。 丢包代表网络出现了拥塞。丢包率在很大程度上反映网络的阻塞程度,常被 用于评价和衡量网络性能。
丢
包
率
=
N
s
?
N
r
N
s
丢包率 = \Large\frac{Ns- Nr}{Ns}
丢包率=NsNs?Nr?
- Ns代表发送的分组总数
- Nr代表收到的分组总数
- Ns-Nr代表丢失的分组总数。
(5)利用率
利用率包括信道利用率和网络利用率两种:
- 信道利用率:指出某信道有百分之几的时间是被利用的(有数据通过)。
- 网络利用率:全网络的信道利用率的加权平均值。
信道利用率并非越高越好。当某信道的利用率增大时,该信道引起的时延也 就迅速增加。信道或网络的利用率过高会产生非常大的时延
在适当的假定条件下,时延和网络利用率之间的关系如下式:
D
=
D
0
1
?
U
D=\Large\frac{D_0}{1-U}
D=1?UD0??
-
D
D
D表示网络当前的时延
-
D
0
D_0
D0?表示网络空闲时的时延
-
U
U
U是网络的利用率。
3.网络体系结构
3.1 分层、协议和服务
分层:为了降低网络设计的复杂性,绝大多数网络都按照“分层”的方法进行设计。分层的设计方式具有灵活性好、耦合性低等优点,并且易于开发和维护,方 便进行标准化工作。
协议:在互联网中,为进行网络中的数据交换而建立的规则、标准和约定称为网络协议,简称为协议(对等层的双方之间的约定)。 网络协议主要由以下三个要素组成:
- 语法:即数据与控制信息的格式;
- 语义:即控制信息的含义;
- 同步:即事件顺序的详细说明。
协议栈/协议族:各层所有协议的集合被称为协议栈或协议族
实体:任何发送或接收消息的硬件或软件进程称为实体。在不同主机上,相对应 次上的实体称为对等实体
服务:在分层设计思想中,每一层都建立在下一层的基础之上,下层向上一层提供特定的服务。(每层协议的实现都保证了向上层实体提供服务)
- 协议是水平方向的,控制着对等实体之间的信息交换;
- 服务是垂直方向的,控制着相邻层次实体之间的信息交换;
- 对等实体之间交换的数据单位通常称为协议数据单元PDU;
- 相邻层次实体之间交换的数据单位通常称为服务数据单元SDU。
3.2 互联网体系结构
网络体系结构:层和协议的集合称为网络体系结构(network architecture)。
3.2.1 开放系统互连参考模型OSI
国际标准化组织提出的开放系统互连参考模型OSI概念清晰,理论完整,推 出的时机较晚,没有成为互联网上的国际标准。
OSI参考模型定义了七层协议栈:
3.2.2 TCP/IP协议族
TCP/IP协议族作为BSD Unix的一部分,随着Unix的流行,抢先在全球大范围成功地运行,成为了互联网上事实的国际标准。
TCP/IP定义了四层协议栈:
3.2.3 互联网体系结构
互联网体系体系结构实际采用了五层协议栈:
(1)应用层的功能和协议
- 主要任务:通过进程间的通信解决某一类应用问题。
- 常见协议:域名系统DNS;超文本传送协HTTP;动态主机配詈协议DHCP;简单邮件传送协议SMTP等。
- 协议数据单元:报文。
(2)运输层的功能和协议
(3)网络层的功能和协议
- 主要任务:向上层提供主机到主机的通信服务,包括路由选择和分组转发。
- 常见协议:网际协议IP;网际控制报文协议ICMP;网 际组管理协议IGMP;地址解析协议ARP等。
- 协议数据单元: IP协议:IP分组或IP数据报。
(4)数据链路层的功能和协议
- 主要任务:向上层提供相邻结点间的通信服务,包括 封装成帧、寻址、差错控制和媒体访间控制等。
- 常见协议:以太网Ethernet协议、点对点PPP协议无线局域网WLAN协议等。
- 协议数据单元:帧
(5)物理层的功能和协议
- 主要任务:透明的传输比特流。
- 常见协议:与实际的传输媒体相关,在不同的传输媒 体上定义了不同的物理层协议。
- 协议数据单元:码元(一个码元可以理解为一个脉冲信号,一个码元可以携带一比特信息,也可以携带多比特信息,也允许多个码元一起携带一比特信息。)
3.3 封装和解封
逐层封装的过程发生在发送数据时: 逐层解封的过程发生在接收数据时:
3.4 复用和分用
复用可以发生在多个层次, 在每层都有不同类型的标识符,用于指明封装的信息属于上层哪一个协议。
复用的过程发生在封装时。
分用的过程发生在解封时。
4.控制平面与数据平面
分组交换网络的操作涉及两种分组的处理:控制分组和数据分组。
-
控制:
- 控制分组携带的信息用来指导结点如何转发数据;
- 控制平面最重要的功能是路由选择(此外还包括差错报告、系统配詈和管理 以及资源的分配)
-
数据:
- 数据分组则包括用户程序要发送的数据。
- 数据平面最重要的功能是分组转发
传统的计算机网络中,每台分组交换设备都包括一个数据平面和一个控制平 面。因此,其控制平面是分布式的。 软件定义网络SDN中的控制平面与数据平面是分离的。即分组交换设备上仅 具有数据平面,而控制平面位于一个逻辑上的集中式控制器中。因此,其控 制平面是集中式的。
|