计算机网络——概述

422 阅读13分钟

1.2 因特网概述

网络的网络

网络(network)由若干结点(node)和连接这些网络的链路(link)组成。

互联网是"网络的网络"(network of networks)。

连接在因特网上的计算机都称为主机(host)。

网络与因特网

网络把许多计算机连接在一起。

因特网则把许多网络连接在一起。

image.png

image.png

1.2.2 互联网发展的三个阶段

第一阶段:从单个网络ARPANET向互联网发展

1983年TCP/IP协议成为ARPANET上的标准协议。

人们把1983年作为因特网诞生的时间。

internet和Internet的区别

internet:通有名词,泛指由多个计算机网络互连而成的(计算机)网络,其不一定要采取TCP/IP协议,通信协议(即通信规则)可以是任意的。

Internet:专有名词,特指因特网———当前全球最大的、开放的、由众多网络相互连接而成的特定的计算机网络,它采用TCP/IP协议作为通信的规则,并且前身为ARPAnet。

第二阶段:特点是建成了三级结构的因特网

三级计算机网络,分为主干网、地区网和校园网(或企业网)。

第三阶段:特点是逐渐形成了多层次ISP结构的因特网

出现了因特网服务提供者ISP(Internet Service Provider)。

image.png

image.png

1.3 因特网的组成

从因特网的工作方式上看,可以划分为以下的两大块:

(1)边缘部分:由所有连接在因特网上的主机组成。这部分是用户直接使用的,用来进行通信(传送数据、音频或视频)和资源共享。

(2)核心部分:由大量网络和连接这些网络的路由器组成。这部分是为边缘部分提供服务的(提供连通性和交换)。

1.3.1 因特网的边缘部分

处在因特网边缘的部分就是连接在因特网上的所有的主机。这些主机又称为端系统(end system)。

两种通信方式

1、客户−服务器方式(C/S 方式) 即Client/Server方式

客户是服务的请求方,服务器是服务的提供方。

image.png

2、对等方式(P2P 方式) 即 Peer-to-Peer方式

是指两个主机在通信时并不区分哪一个是服务请求方还是服务提供方。

只要两个主机都运行了对等连接软件(P2P 软件),它们就可以进行平等的、对等连接通信。

image.png

1.3.2 因特网的核心部分

因特网的核心部分是由许多网络和把它们互连起来的路由器(router)组成,而主机处在因特网的边缘部分。

路由器是实现分组交换(packet switching)的关键构件,其任务是转发收到的分组,这是网络核心部分最重要的功能。

主机的用途是为用户进行信息处理的,并且可以和其他主机通过网络交换信息。

image.png

1. 电路交换的主要特点

在这里,“交换”(switching)的含义就是转接——把一条电话线转接到另一条电话线,使它们连通起来。

从通信资源的分配角度来看,“交换”就是按照某种方式动态地分配传输线路的资源。

电路交换传送计算机数据效率低

计算机数据具有突发性,这导致通信线路的利用率很低。

2. 分组交换的主要特点

在发送端,先把较长的报文划分成较短的、固定长度的数据段。

image.png

每一个数据段前面添加上首部构成分组。分组交换网以“分组”作为数据传输单元。

image.png

接收端收到分组后剥去首部还原成报文。

最后,在接收端把收到的数据恢复成为原来的报文。

image.png

分组首部的重要性

每一个分组的首部都含有地址等控制信息。

分组交换网中的结点交换机根据收到的分组的首部中的地址信息,把分组转发到下一个结点交换机。

用这样的存储转发方式,最后分组就能到达最终目的地。

路由器

在路由器中的输入和输出端口之间没有直接连线。

路由器处理分组的过程是:

(1)把收到的分组先放入缓存(暂时存储);

(2)查找转发表,找出到某个目的地址应从哪个端口转发;

(3)把分组送到适当的端口转发出去。

主机和路由器的作用不同

主机是为用户进行信息处理的,并向网络发送分组,从网络接收分组。

路由器对分组进行存储转发,最后把分组交付目的主机。

分组交换的优点

高效:动态分配传输带宽,对通信链路是逐段占用。

灵活:以分组为传送单位和查找路由。

迅速:不必先建立连接就能向其他主机发送分组。

可靠:保证可靠性的网络协议;分布式的路由选择协议使网络有很好的生存性。

分组交换带来的问题

分组在各结点存储转发时需要排队,这就会造成一定的时延。

分组必须携带的首部(里面有必不可少的控制信息)也造成了一定的开销。

ARPANET的成功使计算机网络的概念发生根本变化

早期的面向终端的计算机网络是以单个主机为中心的星形网。

分组交换网则是以网络为中心,主机都处在网络的外围。

image.png

1.5 计算机网络的分类

1.5.1 计算机网络的不同定义

最简单的定义:计算机网络是一些互相连接的、自治的计算机的集合。

1.5.2 几种不同类别的网络

  1. 从网络的作用范围进行分类

广域网 WAN (Wide Area Network)

局域网 LAN (Local Area Network)

城域网 MAN (Metropolitan Area Network)

个人区域网 PAN (Personal Area Network)

  1. 从网络的使用者进行分类

公用网 (public network)

专用网 (private network)

用来把用户接入到因特网的网络

接入网 AN (Access Network),它又称为本地接入网或居民接入网。

由 ISP 提供的接入网只是起到让用户能够与因特网连接的“桥梁”作用。

1.6 计算机网络的性能

1.6.1 计算机网络的性能指标

1. 速率

比特(bit)是计算机中数据量的单位,也是信息论中使用的信息量的单位。

速率即数据率(data rate)或比特率(bit rate)是

计算机网络中最重要的一个性能指标。速率的单位是 b/s,或kb/s, Mb/s, Gb/s 等。

2. 带宽

“带宽”是数字信道所能传送的“最高数据率”的同义语,单位是“比特每秒”,或 b/s (bit/s)。

数字信号流随时间的变化

在时间轴上信号的宽度随带宽的增大而变窄。

image.png

3. 吞吐量

吞吐量(throughput)表示在单位时间内通过某个网络(或信道、接口)的数据量。

吞吐量更经常地用于对现实世界中的网络的一种测量,以便知道实际上到底有多少数据量能够通过网络。

吞吐量受网络的带宽或网络的额定速率的限制。

4. 时延(delay 或 latency)

发送时延:发送数据时,数据帧从结点进入到传输媒体所需要的时间。

image.png

传播时延:电磁波在信道中需要传播一定的距离而花费的时间。

image.png

处理时延:交换结点为存储转发而进行一些必要的处理所花费的时间。

排队时延:结点缓存队列中分组排队所经历的时延。

排队时延的长短往往取决于网络中当时的通信量。

image.png

容易产生的错误概念

对于高速网络链路,我们提高的仅仅是数据的发送速率而不是比特在链路上的传播速率。

提高链路带宽减小了数据的发送时延。

5. 时延带宽积

image.png

这是一个用以测算链路长度的指标。

6. 利用率

信道利用率指出某信道有百分之几的时间是被利用的(有数据通过)。完全空闲的信道的利用率是零。

网络利用率则是全网络的信道利用率的加权平均值。

信道利用率并非越高越好。

时延与网络利用率的关系

根据排队论的理论,当某信道的利用率增大时,该信道引起的时延也就迅速增加。

若令 D0 表示网络空闲时的时延,D 表示网络当前的时延,则在适当的假定条件下,可以用下面的简单公式表示 D 和 D0之间的关系:

image.png

U 是网络的利用率,数值在 0 到 1 之间。

image.png

1.7 计算机网络的体系结构

1.7.1 计算机网络体系结构的形成

相互通信的两个计算机系统必须高度协调工作才行,而这种“协调”是相当复杂的。

分层”可将庞大而复杂的问题,转化为若干较小的局部问题,而这些较小的局部问题就比较易于研究和处理。

两种国际标准

法律上的国际标准 OSI 并没有得到市场的认可。

是非国际标准 TCP/IP 现在获得了最广泛的应用。TCP/IP 常被称为事实上的国际标准。

1.7.2 协议与划分层次

计算机网络中的数据交换必须遵守事先约定好的规则。这些规则明确规定了所交换的数据的格式以及有关的同步问题(同步含有时序的意思)。

网络协议(network protocol),简称为协议,是为进行网络中的数据交换而建立的规则、标准或约定。

网络协议的组成要素

语法:数据与控制信息的结构或格式。

语义:需要发出何种控制信息,完成何种动作以及做出何种响应。

同步:事件实现顺序的详细说明。

两个主机交换文件

两个主机将文件传送模块作为最高的一层。剩下的工作由下面的模块负责。

image.png

分层的好处

(1)各层之间是独立的。

(2)灵活性好。

(3)结构上可分割开。

(4)易于实现和维护。

(5)能促进标准化工作。

计算机网络的体系结构

计算机网络的体系结构(architecture)是计算机网络的各层及其协议的集合。

体系结构就是这个计算机网络及其部件所应完成的功能的精确定义

实现(implementation)是遵循这种体系结构的前提下用何种硬件或软件完成这些功能的问题。

体系结构是抽象的,而实现则是具体的,是真正在运行的计算机硬件和软件。

1.7.3 具有五层协议的体系结构

TCP/IP 是四层的体系结构:应用层、运输层、网际层和网络接口层。但最下面的网络接口层并没有具体内容。因此往往采取折中的办法,即综合OSI和 TCP/IP 的优点,采用一种只有五层协议的体系结构。

五层协议的体系结构

image.png

image.png 上图为主机1对要传输的数据的处理,主机二接收时延相反方向操作,层层剥去首部和尾部。

五层体系结构各层的功能

  1. 应用层

应用层的任务是通过应用进程间的交互来完成特定网络应用。应用层协议定义的是应用进程间通信和交互的规则

不同的网络应用需要不同的协议,如万维网应用的HTTP协议,支持电子邮件的SMTP协议,支持文件传送的FTP协议等

  1. 运输层

运输层的任务是负责为两个主机中进程之间的通信提供通用的数据传输服务。应用进程利用该服务传送应用层 报文。

所谓通用,是指并不针对某个特定网络的应用。而是多种应用可以使用同一个运输层服务。

运输层主要使用以下两种协议:

传输控制协议TCP (提供面向连接的,可靠的数据传输服务,数据传输的单位是报文段)

用户数据报协议UDP(提供无连接的,尽最大努力交付,其数据传输的单位是用户数据报)

  1. 网络层

网络层为分组交换网上不同主机提供通信服务。网络层将运输层产生的报文段或用户数据报封装成分组和包进行传送。

  1. 数据链路层

两台主机间的数据传输,总是一段一段在数据链路上传送的,这就需要使用专门的链路层协议。在两个相邻节点间的链路上传送帧,每一帧包括数据和必要的控制信息(如同步信息,地址信息,差错控制等)

三个基本问题:封装成帧,透明传输,差错检测

  1. 物理层

在物理层上所传数据单位是比特。

1.7.4 实体、协议、服务和服务访问点

实体(entity) 表示任何可发送或接收信息的硬件或软件进程。

协议是控制两个对等实体进行通信的规则的集合。

在协议的控制下,两个对等实体间的通信使得本层能够向上一层提供服务。

要实现本层协议,还需要使用下层所提供的服务。

本层的服务用户只能看见服务而无法看见下面的协议。

下面的协议对上面的服务用户是透明的。

协议是“水平”的,即协议是控制对等实体之间通信的规则。

服务是“垂直”的,即服务是由下层向上层通过层间接口提供的。

同一系统相邻两层的实体进行交互的地方,称为服务访问点 SAP (Service Access Point)。

协议很复杂

协议必须把所有不利的条件事先都估计到,而不能假定一切都是正常的和非常理想的。

看一个计算机网络协议是否正确,不能光看在正常情况下是否正确,而且还必须非常仔细地检查这个协议能否应付各种异常情况

1.7.5 TCP/IP的体系结构

image.png

IP可应用到各式各样的网络上

image.png