《计算机网络》谢希仁第7版之 概述

《计算机网络》谢希仁第7版学习笔记之 概述

网络分类

  • 电信网络
  • 有线电视网络
  • 计算机网络

计算机网络定义

计算机网络主要是由一些通用的、可编程的硬件互连而成的,而这些硬件并非专门用来实现某一特定目的(例如,传送数据或视频信号)。这些可编程的硬件能够用来传送多种不同类型的数据,并能支持广泛的和日益增长的应用。

计算机网络特点

  • 连通性

互联网上用户不管距离多远,都能通信,就像这些用户终端都彼此连通

  • 共享性

指资源共享,包含信息、软件、硬件等共享,就像资源在用户身边

计算机网络的分类

按照网络的作用范围进行分类

  • 广域网 WAN (Wide Area Network):作用范围通常为几十到几千公里
  • 城域网 MAN (Metropolitan Area Network):作用距离约为 5~50 公里。
  • 局域网 LAN (Local Area Network) :局限在较小的范围(如 1 公里左右)。
  • 个人区域网 PAN (Personal Area Network) :范围很小,大约在 10 米左右。

若*处理机之间的距离非常近(如仅 1 米的数量级甚至更小些),则一般就称之为多处理机系统,而不称它为计算机网络

按照网络的使用者进行分类

  • 公用网 (public network)
    按规定交纳费用的人都可以使用的网络。因此也可称为公众网。
  • 专用网 (private network)
    为特殊业务工作的需要而建造的网络。

公用网和专用网都可以提供多种服务。如传送的是计算机数据,则分别是公用计算机网络和专用计算机网络。

用来把用户接入到互联网的网络

  • 接入网 AN (Access Network),它又称为本地接入网或居民接入网。
  • 接入网是一类比较特殊的计算机网络,用于将用户接入互联网。
  • 接入网本身既不属于互联网的核心部分,也不属于互联网的边缘部分
  • 接入网是从某个用户端系统到互联网中的第一个路由器(也称为边缘路由器)之间的一种网络。
  • 从覆盖的范围看,很多接入网还是属于局域网。
  • 从作用上看,接入网只是起到让用户能够与互联网连接的“桥梁”作用。

互联网

互联网,特指 Internet,它起源于美国,是由数量极大的各种计算机网络互连起来而形成的一个互连网络。它采用 TCP/IP 协议族作为通信规则,是一个覆盖全球、实现全球范围内连通性和资源共享的计算机网络。

以小写字母 “i” 开始的 internet(互连网)是一个通用名词,它泛指由多个计算机网络互连而成的网络。
以大写字母 “I” 开始的的 Internet(互联网或因特网)则是一个专用名词,它指当前全球最大的、开放的、由众多网络相互连接而成的特定计算机网络,它采用 TCP/IP 协议族作为通信的规则,且其前身是美国的 ARPANET

任意把几个计算机网络互连起来(不管采用什么协议),并能够相互通信,这样构成的是一个互连网 (internet),而不是互联网 (Internet)。

互联网的组成

从互联网的工作方式上看,可以划分为两大块:

  • 边缘部分: 由所有连接在互联网上的主机组成。这部分是用户直接使用的,用来进行通信(传送数据、音频或视频)和资源共享。
  • 核心部分:由大量网络和连接这些网络的路由器组成。这部分是为边缘部分提供服务的(提供连通性和交换)。

“主机 A 和主机 B 进行通信”实际上是指:“运行在主机 A 上的某个程序和运行在主机 B 上的另一个程序进行通信”。

主机

与网络互连的计算机称为主机

ISP层次

  • 主干ISP

由几个专门的公司创建和维持,服务面积最大(一般能够覆盖国家范围),并且拥有高速主干网(例如10Gbit/s或更高)。有一些地区ISP也可以直接与主干ISP相连

  • 地区ISP

地区ISP是一些较小的ISP。这些地区ISP通过一个或多个主干ISP链接起来,它们位于等级中的第二层,数据率也低一些

  • 本地ISP

本地ISP给用户提供直接的服务(这些用户有时也称为端用户,强调是末端的用户)本地ISP可以连接到地区ISP,也可以直接连接到主干ISP。

绝大多数用户都是连接到本地ISP的。本地ISP可以是一个仅仅提供互联网服务的公司,也可以是一个拥有网络并向自己的雇员提供服务的企业,或者是一个运行自己的网络的非营利机构(如大学)

XIP(互联网交换点)

允许两个网络直接相连并交换分组,而不需要再通过第三个网络来转发分组

端系统之间的两种通信方式

  • 客户服务器方式(C/S方式)
    即 Client/Server 方式,简称为 C/S 方式。
  • 对等方式(P2P方式)
    即 Peer to Peer 方式 ,简称为 P2P 方式。

路由器

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

  • 在路由器中的输入和输出端口之间没有直接连线。
  • 路由器处理分组的过程是:
    1. 把收到的分组先放入缓存(暂时存储);
    2. 查找转发表,找出到某个目的地址应从哪个端口转发;
    3. 把分组送到适当的端口转发出去。

典型交换技术包括:

“交换”的含义

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

电路交换

N 部电话机两两直接相连,需 N(N –1)/2 对电线。这种直接连接方法所需要的电线对的数量与电话机数量的平方(N 2)成正比。

当电话机的数量增多时,就要使用交换机来完成全网的交换任务

每一部电话都直接连接到交换机上,而交换机使用交换的方法,让电话用户彼此之间可以很方便地通信。
所采用的交换方式就是电路交换 (circuit switching)。

特点

  • 电路交换必定是面向连接的。

    电路交换分为三个阶段:
  • 建立连接:建立一条专用的物理通路,以保证双方通话时所需的通信资源在通信时不会被其他用户占用;

  • 通信:主叫和被叫双方就能互相通电话;

  • 释放连接:释放刚才使用的这条专用的物理通路(释放刚才占用的所有通信资源)。

  • 计算机数据具有突发性。
    这导致在传送计算机数据时,通信线路的利用率很低(用来传送数据的时间往往不到 10% 甚至不到 1% )。

分组交换

特点

  • 分组交换则采用存储转发技术。
  • 在发送端,先把较长的报文划分成较短的、固定长度的数据段。
  • 每一个数据段前面添加上首部构成分组 (packet)。
  • 分组交换网以“分组”作为数据传输单元。
  • 依次把各分组发送到接收端。
  • 接收端收到分组后剥去首部还原成报文。
  • 最后,在接收端把收到的数据恢复成为原来的报文。

分组交换的传输单元

  • 每一个分组的首部都含有地址(诸如目的地址和源地址)等控制信息
  • 分组交换网中的结点交换机根据收到的分组首部中的地址信息,把分组转发到下一个结点交换机。
  • 每个分组在互联网中独立地选择传输路径。
  • 用这样的存储转发方式,最后分组就能到达最终目的地。

优点

优点 所采用的手段
高效 在分组传输的过程中动态分配传输带宽,对通信链路是逐段占用
灵活 为每一个分组独立地选择最合适的转发路由。
迅速 以分组作为传送单位,可以不先建立连接就能向其他主机发送分组。
可靠 保证可靠性的网络协议;分布式多路由的分组交换网,使网络有很好的生存性。

分组交换带来的问题

  • 分组在各结点存储转发时需要排队,这就会造成一定的时延。
  • 分组必须携带的首部(里面有必不可少的控制信息)也造成了一定的开销。

报文交换

互联网的核心部分采用了分组交换技术。

三种交换的比较

《计算机网络》谢希仁第7版之 概述

  • 若要连续传送大量的数据,且其传送时间远大于连接建立时间,则电路交换的传输速率较快。
  • 报文交换和分组交换不需要预先分配传输带宽,在传送突发数据时可提高整个网络的信道利用率。
  • 由于一个分组的长度往往远小于整个报文的长度,因此分组交换比报文交换的时延小,同时也具有更好的灵活性。

计算机网络的性能

性能指标

  • 速率

速率是计算机网络中最重要的一个性能指标,指的是数据的传送速率,它也称为数据率 (data rate) 或比特率 (bit rate)。
速率的单位是 bit/s,或 kbit/s、Mbit/s、 Gbit/s等。
例如4 *1010 bit/s 的数据率就记为 40 Gbit/s。
速率往往是指额定速率或标称速率,非实际运行速率。

  • 带宽

“带宽”(bandwidth) 本来是指信号具有的频带宽度,其单位是赫(或千赫、兆赫、吉赫等)。
在计算机网络中,带宽用来表示网络中某通道传送数据的能力。表示在单位时间内网络中的某信道所能通过的“最高数据率”。单位是 bit/s,即 “比特每秒”。

在“带宽”的上述两种表述中,前者为频域称谓,而后者为时域称谓,其本质是相同的。也就是说,一条通信链路的“带宽”越宽,其所能传输的“最高数据率”也越高。

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

  • 吞吐量

吞吐量 (throughput) 表示在单位时间内通过某个网络(或信道、接口)的数据量。
吞吐量更经常地用于对现实世界中的网络的一种测量,以便知道实际上到底有多少数据量能够通过网络。
吞吐量受网络的带宽或网络的额定速率的限制。

  • 时延

时延 (delay 或 latency) 是指数据(一个报文或分组,甚至比特)从网络(或链路)的一端传送到另一端所需的时间。
有时也称为延迟或迟延。
网络中的时延由以下几个不同的部分组成:

时延 = 发送时延 + 传播时延 + 处理时延 + 排队时延

1、发送时延

也称为传输时延。
发送数据时,数据帧从结点进入到传输媒体所需要的时间。
也就是从发送数据帧的第一个比特算起,到该帧的最后一个比特发送完毕所需的时间。

发送时延 = 数据帧长度(bit)/ 发送速率(bit/s)

2、传播时延

电磁波在信道中需要传播一定的距离而花费的时间。
发送时延与传播时延有本质上的不同。
信号发送速率和信号在信道上的传播速率是完全不同的概念。

传播时延 = 信道长度(米)/ 信号在信道上的传播速率(米/秒)

3、处理时延

主机或路由器在收到分组时,为处理分组(例如分析首部、提取数据、差错检验或查找路由)所花费的时间。

4、排队时延

分组在路由器输入输出队列中排队等待处理所经历的时延。
排队时延的长短往往取决于网络中当时的通信量。

四种时延所产生的地方

《计算机网络》谢希仁第7版之 概述

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

以下说法是错误的:

“在高速链路(或高带宽链路)上,比特会传送得更快些”

  • 时延带宽积

链路的时延带宽积又称为以比特为单位的链路长度

时延带宽积 = 传播时延 * 带宽

  • 往返时间 RTT

互联网上的信息不仅仅单方向传输,而是双向交互的。因此,有时很需要知道双向交互一次所需的时间。
往返时间 RTT (round-trip time) 表示从发送方发送数据开始,到发送方收到来自接收方的确认,总共经历的时间。
在互联网中,往返时间还包括各中间结点的处理时延、排队时延以及转发数据时的发送时延。
当使用卫星通信时,往返时间 RTT 相对较长,是很重要的一个性能指标。

  • 利用率

分为信道利用率和网络利用率。
信道利用率指出某信道有百分之几的时间是被利用的(有数据通过)。
完全空闲的信道的利用率是零。
网络利用率则是全网络的信道利用率的加权平均值。
信道利用率并非越高越好。当某信道的利用率增大时,该信道引起的时延也就迅速增加。

时延与网络利用率的关系

根据排队论的理论,当某信道的利用率增大时,该信道引起的时延也就迅速增加。
若令 D0 表示网络空闲时的时延,D 表示网络当前的时延,则在适当的假定条件下,可以用下面的简单公式表示 D 和 D0 之间的关系:

《计算机网络》谢希仁第7版之 概述

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

计算机网络的体系结构

  • 计算机网络是个非常复杂的系统。
  • 相互通信的两个计算机系统必须高度协调工作才行,而这种“协调”是相当复杂的。
  • “分层”可将庞大而复杂的问题,转化为若干较小的局部问题,而这些较小的局部问题就比较易于研究和处理。
  • 计算机网络中的数据交换必须遵守事先约定好的规则。
    这些规则明确规定了所交换的数据的格式以及有关的同步问题(同步含有时序的意思)。
  • 网络协议 (network protocol),简称为协议,是为进行网络中的数据交换而建立的规则、标准或约定。

网络协议的三个组成要素

  • 语法:数据与控制信息的结构或格式 。
  • 语义:需要发出何种控制信息,完成何种动作以及做出何种响应。
  • 同步:事件实现顺序的详细说明。

分层结构

OSI 的七层协议体系结构的概念清楚,理论也较完整,但它既复杂又不实用。
TCP/IP 是四层体系结构:应用层、运输层、网际层和网络接口层。
但最下面的网络接口层并没有具体内容。
因此往往采取折中的办法,即综合 OSI 和 TCP/IP 的优点,采用一种只有五层协议的体系结构 。

《计算机网络》谢希仁第7版之 概述

主机 1 向主机 2 发送数据 流程

  1. (主机1)应用进程数据先传送到应用层,加上应用层首部,成为应用层 PDU(PDU (Protocol Data Unit):协议数据单元。
    OSI 参考模型把对等层次之间传送的数据单位称为该层的协议数据单元 PDU。

  2. (主机1)应用层 PDU 再传送到运输层,加上运输层首部,成为运输层报文

  3. (主机1)运输层报文再传送到网络层,加上网络层首部,成为 IP 数据报(或分组)

  4. (主机1)IP 数据报再传送到数据链路层,加上链路层首部和尾部,成为数据链路层帧

  5. (主机1)数据链路层帧再传送到物理层,最下面的物理层把比特流传送到物理媒体

  6. 电信号(或光信号)在物理媒体中传播,从发送端物理层传送到接收端(主机2)物理层

  7. (主机2)物理层接收到比特流,上交给数据链路层

  8. (主机2)数据链路层剥去帧首部和帧尾部取出数据部分,上交给网络层

  9. (主机2)网络层剥去首部,取出数据部分上交给运输层

  10. (主机2)运输层剥去首部,取出数据部分上交给应用层

  11. (主机2)应用层剥去首部,取出应用程序数据上交给应用进程

  12. (主机2)应用进程收到数据

  • 任何两个同样的层次把数据(即数据单元加上控制信息)通过水平虚线直接传递给对方。这就是所谓的“对等层”(peer layers)之间的通信。
  • 各层协议实际上就是在各个对等层之间传递数据时的各项规定。
  • 实体 (entity) 表示任何可发送或接收信息的硬件或软件进程。
  • 协议是控制两个对等实体进行通信的规则的集合。
  • 在协议的控制下,两个对等实体间的通信使得本层能够向上一层提供服务。
  • 要实现本层协议,还需要使用下层所提供的服务。
  • 同一系统相邻两层的实体进行交互的地方,称为服务访问点 SAP (Service Access Point)。
  • 服务访问点SAP是一个抽象的概念,它实际上就是一个逻辑接口。
  • OSI把层与层之间交换的数据的单位称为服务数据单元 SDU (Service Data Unit)。
  • SDU 可以与 PDU 不一样,例如,可以是多个 SDU 合成为一个 PDU,也可以是一个 SDU 划分为几个 PDU。

分层的好处与缺点

好处
  • 各层之间是独立的。
  • 灵活性好。
  • 结构上可分割开。
  • 易于实现和维护。
  • 能促进标准化工作
缺点
  • 降低效率。
  • 有些功能会在不同的层次中重复出现,因而产生了额外开销。

各层完成的主要功能

  • 差错控制:使相应层次对等方的通信更加可靠。
  • 流量控制:发送端的发送速率必须使接收端来得及接收,不要太快。
  • 分段和重装:发送端将要发送的数据块划分为更小的单位,在接收端将其还原。
  • 复用和分用:发送端几个高层会话复用一条低层的连接,在接收端再进行分用。
  • 连接建立和释放:交换数据前先建立一条逻辑连接,数据传送结束后释放连接。