第1章 概述
-
互联网边缘部分和核心部分的作用,其中包含分组交换的概念
-
计算机网络的性能指标
-
计算机网络分层次的体系结构,包含协议和服务的概念
1.1 计算机网络在信息时代中的作用
-
信息时代:数字化、网络化和信息化,21世纪是一个以网络为核心的信息时代。
-
三网:电信网络、有线电视网络和计算机网络。
-
Internet是由数量极大的各种计算机网络互连起来的。
-
互联网的特点就是连通性和共享。
1.2 互联网概述
1.2.1 网络的网络
-
计算机网络(简称网络)由若干**结点(node)和连接这些结点的链路(link)**组成。
-
网络中的结点可以是计算机、集线器、交换机或路由器等。
-
网络把许多计算机连接在一起,而互连网则把许多网络通过路由器连接在一起。与互联网相连的计算机常称为主机。
1.2.2 互联网基础结构发展的三个阶段
第一阶段:从单个网络ARPANET向互联网发展的过程(1969美国首创ARPANET)
1983年TCP/IP协议成为ARPANET上的标准协议。Internet采用TCP/IP协议族作为通信的规则,其前身是ARPANET。
第二阶段:三级结构的互联网
主干网、地区网和校园网(企业网)
第三阶段:逐渐形成了多层次ISP结构的互联网
ISP:互联网服务提供商
1.2.3 互联网的标准化工作
制定互联网正式标准有三个阶段:
1. 互联网草案
2. 建议标准
3. 互联网标准
1.3 互联网的组成
-
边缘部分(资源子网)
由所有连接在互联网上的主机组成。是用户直接使用的,用于通信(传送数据、音频或视频)和资源共享
-
核心部分(通信子网)
由大量网络和连接这些网络的路由器组成。为边缘部分提供服务(连通性和交换)
1.3.1 互联网的边缘部分
处于互联网边缘的部分就是连接在互联网上的所有的主机,这些主机又称为端系统(end system)。
进程就是运行着的程序,即主机A的某个进程和主机B上的另一个进程进行通信,简称为“计算机之间通信”。
在网络边缘的端系统之间的通信方式通常可划分为两大类:客户-服务器方式(C/S方式)和对等方式(P2P方式)。
-
客户-服务器方式
客户(client)和服务器(server)都是指通信中所涉及的两个应用进程。 客户是服务请求方,服务器是服务提供方。都需要使用网络核心部分所提供的服务。
客户程序:
- 被用户调用后运行,在通信时主动向远地服务器发起通信(请求服务)。因此,客户程序必须知道服务器程序的地址。
- 不需要特殊的硬件和很复杂的操作系统。
服务器程序:
- 是一种专门用来提供某种服务的程序,可同时处理多个远地或本地客户的请求。
- 系统启动后即自动调用并一直不断地运行着,被动地等待并接受来自各地的客户的通信请求。因此,服务器程序不需要知道客户程序的地址。
- 一般需要有强大的硬件和高级的操作系统支持。
-
对等连接方式
**对等连接**(peer-to-peer)是指两台主机在通信时并不区分哪一个是服务请求方哪一个是服务提供方。
1.3.2 互联网的核心部分
在网络核心部分中起特殊作用的路由器(router),它是一种专用计算机(但不叫主机),它是实现分组交换(packet switching)的关键构件,其任务是转发收到的分组。
-
电路交换的主要特点
- 从通信资源的分配角度来看,交换就是按照某种方式动态地分配传输线路的资源。
- 建立连接建立一条专用的物理通路。
电路交换:建立连接(占用通信资源)->通话(一直占用通信资源)->释放连接(归还通信资源)
优缺点:延时小,速度快,效率不高
在通话的全部时间内,通话的两个用户始终占用端到端的通信资源。
-
分组交换的主要特点
- 分组转发采用存储转发技术。
- 报文(message)就是要发送的整块数据。在发送之前,将报文划分成一个个更小的等长数据段,再在每个数据段前面加上一些必要的控制信息组成的首部(header)后,就构成了一个分组(packet),也称为包,而分组的首部也可以称为包头。
- 主机是为用户进行信息处理的,并且可以和其他主机通过网络交换信息。路由器则是用来转发分组的,即进行分组交换的。
- 采用存储转发的分组转换,实质上是采用了在数据通信的过程中断续(或动态)分配传输带宽的策略。
分组交换的优点
优点 所采用的手段 高效 在分组传输的过程中动态分配传输带宽,对通信链路是逐段占用 灵活 为每一个分组独立地选择最合适的转发路由 迅速 以分组作为传送单位,可以不先建立连接就能向其他主机发送分组 可靠 保证可靠性的网络协议;分布式多路由的分组交换网,使网络有很好的生存性 但是,分组交换存在一定的时延,且各分组必须携带的控制信息也造成了一定的开销(overhead)。
电报通信也采用了基于存储转发原理的报文交换。
三种交换方式在数据传输阶段的主要特点:
- 电路交换——整个报文的比特流连续地从源点直达终点,像在管道中运输。
- 报文交换——整个报文先传送到相邻结点,全部存储下来后查找转发表,转发到下一个结点。
- 分组交换——单个分组(整个报文的一部分)传送到相邻结点,存储下来后查找转发表,转发到下一个结点。
1.4 计算机网络在我国的发展
1994年被国际正式承认接入互联网的国家。
中国五大公用计算机网络:
- 中国电信互联网CHINANET(即原来的中国公用计算机互联网)
- 中国联通互联网UNINET
- 中国移动互联网CMNET
- 中国教育和科研计算机网CERNET
- 中国科技技术网CSTNET
1.5 计算机网络的类别
1.5.1 计算机网络的定义
计算机网络主要是由一些通用的、可编程的硬件(这种硬件中一定包含有中央处理机CPU)(不限于一般计算机,也包括智能手机)互连而成的,而这些硬件并非专门用来实现某一特定目的(如传送数据或视频信号)。这些可编程的硬件能够用来传送多种不同类型的数据,并能支持广泛的和日益增长的应用。
1.5.2 几种不同类别的计算机网络
-
按照网络的作用范围进行分类
- 广域网WAN(Wide Area Network)(远程网)
- 城域网MAN(Metropolitan Area Network)(以太网技术)
- 局域网LAN(Local Area Network)(如校园网或企业网)
- 个人区域网(Personal Area Network)(蓝牙)
若中央处理机之间的距离非常近(<= 1 m),则称为多处理机系统而不称为计算机网络。
-
按照网络的使用者进行分类
- 公用网(public network)
- 专用网(private network)
-
用来把用户接入到互联网的网络
接入网AN(Access Network),又称为本地接入网或居民接入网。它本身既不属于互联网的核心部分,也不属于互联网的边缘部分。它是从某个用户端系统到互联网中的第一个路由器(边缘路由器)之间的一种网络。
1.6 计算机网络的性能
1.6.1 计算机网络的性能指标
-
速率
比特就是一个“二进制数字”,是信息量的单位。速率指的是数据的传送速率,也称为数据率(data rate)或比特率(bit rate)。单位是bit/s(或b/s,有时也写为bps,即bit per second)。k= 10^3 =千,M= 10^6 =兆,G= 10^9 =吉,T= 10^12 =太,P= 10^15 =拍,E= 10^18 =艾,Z= 10^21 =泽,Y= 10^24 =尧。提到的网络的速率时,往往指的是额定速率或标称速率,而非实际运行速率。
-
带宽
- 带宽(bandwidth)本来是指某个信号具有的频带宽度。单位是赫(千赫、兆赫、吉赫等)。曾经一段时间,通信的主干线路传送的是模拟信号(即连续变化的信号)。因此,表示某信道允许通过的信号频带范围就称为带宽(或通频带)。
- 在计算机网络中,带宽用来表示网络中某通道传送数据的能力,因此网络带宽表示在单位时间内网络中的某信道所能通过的“最高数据率”。这个意义带宽的单位是数据率的单位bit/s。
两种表述中,前者为频域称谓,而后者为时域称谓,其本质是相同的。也就是说,一条通信链路的“带宽”越宽,其所能传输的“最高数据率”也越高。
-
吞吐量
吞吐量(throughput)表示在单位时间内通过某个网络(或信道、接口)的实际数据量。吞吐量受网络的带宽或网络的额定速率的限制。有时可用每秒传送的字节数或帧数来表示。
-
时延(延迟或迟延)
时延(delay/latency)是指数据(一个报文或分组,甚至比特)从网络(或链路)的一段传送到另一端所需要的时间。
网络中的时延是由以下几个不同的部分组成的:
- 发送时延 是主机或路由器发送数据帧所需要的时间。
发送时延的计算公式是:
- 传播时延 传播时延是电磁波在信道中传播一定的距离需要花费的时间。
传播时延的计算公式是:
发送时延是在机器内部的发送器(通常是网络适配器)中产生,与传输信道的长度(或信号传输的距离)没有任何的关系。
传播时延发生在机器外部的传输信道媒体上,而与信号的发送速率无关。信号传送的距离越远,传播时延就越大。- 处理时延
- 排队时延
总时延 = 发送时延 + 传播时延 + 处理时延 + 排队时延
对于高速网络链路,我们提高的仅仅是数据的发送速率而不是比特在链路上的传播速率。提高数据的发送速率只是减小了数据的发送时延。
数据的发送速率的单位是每秒发送多少个比特,这个是指在某个点或某个接口上的发送速率。而传播速率的单位是每秒传播多少公里,是指在某一段传输线路上比特的传播速率。
-
时延带宽积
时延带宽积 = 传播时延 * 带宽
可称为以比特为单位的链路长度
-
往返时间RTT
-
利用率
利用率由信道利用率和网络利用率两种。信道利用率指某信道有百分之几的时间是被利用的(有数据通过)。
网络利用率则是全网络的信道利用率的加权平均值。
D0表示网络空闲时的时延,D表示网络当前的时延,U是网络利用率
信道或网络的利用率过高会产生非常大的时延。
1.6.2 计算机网络的非性能指标
- 费用
- 质量
- 标准化
- 可靠性
- 可扩展性和可升级性
- 易于管理和维护
1.7 计算机网络体系结构
1.7.1 计算机网络体系结构的形成
1974年,系统网络体系结构SNA(System Network Architecture)被宣布诞生。它是采用分层的方法来实现的。
分层可将庞大而复杂的问题,转化为若干较小的易于研究和处理的局部问题。
1977年,提出了开放系统互连基本参考模型OSI/RM(Open System Interconnetion Reference Model)的框架,简称OSI。
1983年,形成了ISO 7498国际标准正式文件,即七层协议的体系结构。
然而,TCP/IP已成为事实上的国际标准。
1.7.2 协议与划分层次
网络协议(network protocol协议)即为进行网络中的数据交换而建立的规则、标准或约定。
由以下三个要素组成:
- 语法,即数据与控制信息的结构或格式;
- 语义,即需要发出何种控制信息,完成何种动作以及做出何种响应;
- 同步,即事件实现顺序的详细说明,含有时序的意思。
分层的好处:
- 各层之间是独立的
- 灵活性好
- 结构上可分割开
- 易于实现与维护
- 能促进标准化工作
分层需要完成的功能
- 差错控制
- 流量控制
- 分段和重装
- 复用和分用
- 连接建立和释放
计算机网络的各层及其协议的集合就是网络的体系结构(architecture),计算机网络的体系结构就是这个计算机网络及其构件所应完成的功能的精确定义。体系结构是抽象的,而实现是具体的,是真正在运行的计算机硬件和软件。
1.7.3 具有五层协议的体系结构
TCP/IP是一个四层的体系结构,它包含应用层、运输层、网际层和网络接口层(用网际层这个名字是强调这一层是为了解决不同网络的互连问题)。将TCP/IP与OSI综合讲述具有五层协议的体系结构。
-
应用层(application layer)
任务:通过应用进程间的交互来完成特定网络应用。
协议:定义的是应用进程间通信和交互的规则。例如:域名系统DNS,支持万维网应用的HTTP协议,支持电子邮件的SMTP协议等。我们把应用层交互的数据单元称为报文。
-
运输层(Transport layer)
任务:负责向两台主机中进程之间的通信提供通用的数据传输服务。
“通用的”是指多种应用可以使用同一个运输层服务。
运输层主要使用以下两种协议:
- 传输控制协议TCP(Transmission Control Protocol)——提供面向连接的、可靠的数据传输服务,其数据传输的单位是报文段。
- 用户数据报协议UDP(User Datagram Protocol)——提供无连接的、尽最大努力的数据传输服务(不保证数据传输的可靠性),其数据传输的单位是用户数据报。
-
网络层(network layer)
网络层负责为分组交换网上的不同主机提供通信服务。在发送数据时,网络层把运输层产生的报文段或用户数据报封装成分组或包进行传送。在TCP/IP体系中,由于网络层使用IP协议,因此分组也叫IP数据报,简称数据报。
无论在哪一层传送的数据单元,都可笼统地用“分组”来表示。
网络层的另一个任务就是要选择合适的路由,使源主机运输层所传下来的分组,能够通过网络中的路由器找到目的主机。
互联网是由大量的异构(heterogeneous)网络通过路由器相互连接起来的。互联网使用的网络层协议是无连接的网络协议IP和许多种路由选择协议,因此互联网的网络层也叫做网际层或IP层。
-
数据链路层(data link layer)
在两个相邻结点之间传送数据时,数据链路层将网络层交下来的IP数据报组装成帧,在两个相邻结点间的链路上传送帧。每一帧包括数据和必要的控制信息(如同步信息、地址信息、差错控制 ,等)。
-
物理层(physical layer)
在物理层上所传数据的单位是比特。OSI参考模型把对等层次之间传送的数据单位称为该层的协议数据单元PDU(Protocol Data Unit)。
1.7.4 实体、协议、服务和服务访问点
实体用来表示任何可发送或接收信息的硬件或软件进程。
协议是控制两个对等实体(或多个实体)进行通信的规则的集合。
在协议的控制下,两个对等实体间的通信使得本层能够向上一层提供服务。要实现本层协议,还需要使用下面一层所提供的服务。
协议与服务
协议的实现保证了能够向上一层提供服务。使用本层服务的实体只能看见服务而无法看见下面的协议。也就是说,下面的协议对上面的实体是透明的。
协议是水平的,即协议是控制对等实体之间通信的规则。但服务是垂直的,即服务是由下层向上层通过层间接口提供的。
在同一系统中相邻两层的实体进行交互(即交换信息)的地方,成为服务访问点SAP(Server Access Point)。
OSI把层与层之间交换的数据的单位称为服务数据单元SDU(Service Data Unit)。
计算机网络协议必须把所有不利的条件事先都估计到,而不能假定一切都是正常的和非常理想的。要非常仔地检查这个协议能否应付各种异常情况。
1.7.5 TCP/IP的体系结构
TCP/IP协议可以为各式各样的应用提供服务,同时TCP/IP协议也允许IP协议在各式各样的网络构成的互联网上运行。
本章的重要概念
- 计算机网络(简称网络)把许多计算机连接在一起,而互连网则把许多网络连接在一起,是网络的网络。
- internet(互连网)是通用名词,它泛指由多个计算机网络互连而成的网络。在这些网络之间的通信协议(即通信规则)可以是任意的。
- Internet(互联网)是专用名词,它指当前全球最大的、开放的、由众多网络相互连接而成的特定互连网,并采用TCP/IP协议族作为通信规则,且其前身是美国的ARPANET。它的推荐译名是“因特网”。
- 互联网现在采用存储转发的分组交换技术,以及三层ISP结构。
- 互联网按工作方式可划分为边缘部分与核心部分。主机在网络的边缘部分,其作用是进行信息处理。路由器在网络的核心部分,其作用是按存储转发方式进行分组交换。
- 计算机通信是计算机中的进程(即运行着的程序)之间的通信。计算机网络采用的通信方式是客户-服务器方式和对等连接方式(P2P方式)。
- 客户和服务器都是指通信中所涉及的应用进程。客户是服务请求方,服务器是服务提供方。
- 按作用范围的不同,计算机网络分为广域网WAN、城域网MAN、局域网LAN和个人区域网PAN。
- 计算机网络最常用的性能指标是:速率、带宽、吞吐量、时延(发送时延、传播时延、处理时延、排队时延)、时延带宽积、往返时间和信道(或网络)利用率。
- 网络协议即协议,是为进行网络中的数据交换而建立的规则。计算机网络的各层及其协议的集合,称为网络的体系结构。
- 五层协议的体系结构由应用层、运输层、网络层(或网际层)、数据链路层和物理层组成。运输层最重要的协议是TCP和UDP协议,而网络层最重要的协议是IP协议。