适用计算机网络(第七版)
自己的学习笔记,PPT及图片来源网络,侵删。
计算机网络第一章
第一章概述
1.1计算机网络在信息时代中的作用
21世纪的一些重要特征:数字化、网络化、信息化,是一个以网络为核心的信息时代。
最初的网络:电信网络,有线电视网络,计算机网络。
随着技术的发展电信网络与有线电视网络逐渐融入了计算机网络技术。
Internet:是由数量极大的各种计算机网络互连起来的,是覆盖全球的。
互联网的两个重要基本特点:连通性与共享
- 连通性:用户之间,无论距离,都可以便捷、经济地交换信息
注意:互联网具有虚拟的特点,无法准确知道对方是谁,也无法知道对方的位置 - 共享:资源共享,资源可以是信息、软件、硬件等,可供用户方便的读取下载。
1.2互联网概述
1.2.1网络的网络
计算机网络(网络):由若干个节点和连接这些节点的链路组成。
互联网:“网络”的“网络”。
网络的云表示:
主机在“云”里,云表示的网络已经包含了和网络相连的计算机。
主机(与网络相连的计算机)在“云外”,云表示的互联网里面就只剩下许多路由器和连接这些路由器的链路。
一些基本概念:网络把许多计算机连接在一起,而互联网则把许多网络通过路由器连接在一起。与网络相连的计算机常称为主机。
1.2.2互联网基础结构发展的三个阶段
第一个阶段:单个网络ARPANET向互联网发展过程。
互联网:特指 Internet,它起源于美国,是由数量极大的各种计算机网络互连起来而形成的一个互连网络。它采用 TCP/IP 协议族作为通信规则,是一个覆盖全球、实现全球范围内连通性和资源共享的计算机网络。
Internet与internet:
- Internet:以小写字母 “i” 开始的 internet(互连网)是一个通用名词,它泛指由多个计算机网络互连而成的网络。
- Internet:以大写字母 “I” 开始的的 Internet(互联网或因特网)则是一个专用名词,它指当前全球最大的、开放的、由众多网络相互连接而成的特定计算机网络,它采用 TCP/IP 协议族作为通信的规则,且其前身是美国的 ARPANET
- 任意把几个计算机网络互连起来(不管采用什么协议),并能够相互通信,这样构成的是一个互连网 (internet),而不是互联网 (Internet)。
第二个阶段:三级结构的互联网,分为主干网,地区网,校园网(或企业网)。
第三个阶段:逐渐形成了多层次 ISP 结构的互联网。
ISP:互联网服务提供者(Internet Service Provider),根据提供服务的覆盖面积大小以及所拥有的IP地址数目的不同,ISP 也分成为不同层次的 ISP:主干 ISP、地区 ISP和本地 ISP。
IXP:允许两个网络直接相连并交换分组,而不需要再通过第三个网络来转发分组。
万维网(www):广泛使用在互联网上,大大方便了广大非网络专业人员对网络的使用。
1.2.3互联网的标准化工作
ISOC:互联网协会。
IAB:互联网体系结构委员会,包含互联网工程部(IETF)与互联网研究部(IRTF)
IETF:工作组WG组成,IESG管理 。
IRTF:研究组RG组成,IRSG管理。
RFC:互联网标准形式,所有互联网标准都是以RFC形式在互联网上发布的,但反过来则不是。
互联网标准:经过三个阶段
- 互联网草案 (Internet Draft) ——有效期只有六个月。在这个阶段还不是 RFC 文档。
- 建议标准 (Proposed Standard) ——从这个阶段开始就成为 RFC 文档。
- 互联网标准 (Internet Standard) ——达到正式标准后,每个标准就分配到一个编号 STD xxxx。 一个标准可以和多个 RFC 文档关联。
- 后来简化为二个阶段:建议标准,互联网标准。
1.3 互联网的组成
互联网的划分:划分为两大块:
- 边缘部分: 由所有连接在互联网上的主机组成。这部分是用户直接使用的,用来进行通信(传送数据、音频或视频)和资源共享。
- 核心部分:由大量网络和连接这些网络的路由器组成。这部分是为边缘部分提供服务的(提供连通性和交换)。
1.3.1互联网的边缘部分
端系统:处在互联网边缘的部分就是连接在互联网上的所有的主机。
端系统之间通信的含义:运行在主机 A 上的某个程序和运行在主机 B 上的另一个程序进行通信。简称为“计算机之间通信”
端系统之间的两种通信方式:客户——服务器方式(C/S方式)与对等方式(P2P方式)
C/S方式:客户 (client) 和服务器 (server) 都是指通信中所涉及的两个应用进程,客户-服务器方式所描述的是进程之间服务和被服务的关系,客户是服务的请求方,服务器是服务的提供方。
- 客户软件的特点:1)被用户调用后运行,在打算通信时主动向远地服务器发起通信(请求服务)。因此,客户程序必须知道服务器程序的地2)不需要特殊的硬件和很复杂的操作系统。
- 服务器软件的特点:1)一种专门用来提供某种服务的程序,可同时处理多个远地或本地客户的请求2)系统启动后即自动调用并一直不断地运行着,被动地等待并接受来自各地的客户的通信请求。因此,服务器程序不需要知道客户程序的地址。3)一般需要强大的硬件和高级的操作系统支持。
- 客户与服务器的通信关系建立后,通信可以是双向的,客户和服务器都可发送和接收数据。
P2P方式:指两个主机在通信时并不区分哪一个是服务请求方还是服务提供方。只要两个主机都运行了对等连接软件 ( P2P 软件) ,它们就可以进行平等的、对等连接通信双方都可以下载对方已经存储在硬盘中的共享文档。
- 对等连接方式的特点:1)对等连接方式从本质上看仍然是使用客户服务器方式,只是对等连接中的每一个主机既是客户又是服务器。2)对等连接工作方式可支持大量对等用户(如上百万个)同时工作。
1.3.2 互联网的核心部分
网络中的核心部分要向网络边缘中的大量主机提供连通性,使边缘部分中的任何一个主机都能够向其他主机通信(即传送或接收各种形式的数据)。分组转发是网络核心部分最重要的功能。
路由器:网络核心部分起特殊作用,是实现分组交换 (packet switching) 的关键构件,其任务是转发收到的分组。
交换:按照某种方式动态分配传输线路的资源。
电路交换:面向连接的,经过以下三个步骤
-
1、建立连接:建立一条专用的物理通路,以保证双方通话时所需的通信资源在通信时不会被其他用户占用;
-
2、通信:主叫和被叫双方就能互相通电话;
-
3、 释放连接:释放刚才使用的这条专用的物理通路(释放刚才占用的所有通信资源)。
电路交换特点:通信线路的利用率很低,电路交换的用户始终占用端到端的通信资源。
分组交换:采用存储转发技术,在发送端先把较长的报文划分成较短的、固定长度的数据段,在接收端把收到的数据恢复成为原来的报文。
- 1、在发送端,先把较长的报文划分成较短的、固定长度的数据段。
- 2、 每一个数据段前面添加上首部构成分组 。
- 3、 分组交换网以“分组”作为数据传输单元,依次把各分组发送到接收。
- 4、 接收端收到分组后剥去首部还原成报文。
- 5、最后,在接收端把收到的数据恢复成为原来的报文。
分组(传输单元):每一个分组的首部都含有地址(诸如目的地址和源地址)等控制信息。分组交换网中的结点交换机根据收到的分组首部中的地址信息,把分组转发到下一个结点交换机。每个分组在互联网中独立地选择传输路径。用这样的存储转发方式,最后分组就能到达最终目的地。
分组交换优缺点:
- 优点:
- 缺点:
(1)分组在各节点存储转法时需要排队,会造成一定延时。
(2)分组必须携带首部造成了一定开销。
讨论互联网的核心部分中的路由器转发分组的过程时,往往把单个的网络简化成一条链路,而路由器成为核心的结点。
主机:是为用户进行信息处理的,并向网络发送,接收分组。
路由器:对分组进行存储转发,最后把分组交付目的主机
路由器处理分组的过程:
- 把收到的分组先放入缓存(暂时存储)。
- 查找转发表,找出到某个目的地址应从哪个端口转发。
- 把分组送到适当的端口转发出去。
报文交换:整个报文先传送到相邻的节点,全部存储下来后查找转发表,转发到下一个节点。
三种交换的比较
- 若要连续传送大量的数据,且其传送时间远大于连接建立时间,则电路交换的传输速率较快。
- 报文交换和分组交换不需要预先分配传输带宽,在传送突发数据时可提高整个网络的信道利用率。
- 由于一个分组的长度往往远小于整个报文的长度,因此分组交换比报文交换的时延小,同时也具有更好的灵活性。
1.4计算机网络在我国的发展
发展迅速。
1.5计算机网络的类别
1.5.1计算机网络的定义
计算机网络较好的定义:计算机网络主要是由一些通用的、可编程的硬件互连而成的,而这些硬件并非专门用来实现某一特定目的(例如,传送数据或视频信号)。这些可编程的硬件能够用来传送多种不同类型的数据,并能支持广泛的和日益增长的应用。
1.5.2几种不同类别的计算机网络
按照网络的作用范围进行分类
- 广域网 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),它又称为本地接入网或居民接入网,接入网是一类比较特殊的计算机网络,用于将用户接入互联网接入网既不属于互联网的核心部分,也不属于互联网的边缘部分。
- 接入网是从某个用户端系统到互联网中的第一个路由器(也称为边缘路由器)之间的一种网络。
- 从覆盖的范围看,很多接入网还是属于局域网。
- 从作用上看,接入网只是起到让用户能够与互联网连接的“桥梁”作用。
1.6计算机网络的性能
1.6.1计算机网络的性能指标
速率:数据率,比特率,指的是数据的传送速率,单位(b/s),当提到速率时,往往是指额定速率或标称速率,非实际运行速率。
带宽:
- 频域:信号具有的频带宽度,其单位是赫,表示某信道允许通过的信号频带范围就称为该信道的带宽。
- 时域: 网络中某通道传送数据的能力,表示单位时间内网络中的某信道所能通过的“最高数据率”,单位(b/s)。
- 在“带宽”的上述两种表述中,前者为频域称谓,而后者为时域称谓,其本质是相同的。也就是说,一条通信链路的“带宽”越宽,其所能传输的“最高数据率”也越高。
吞吐量:表示在单位时间内通过某个网络(或信道、接口)的数据量。
- 吞吐量更经常地用于对现实世界中的网络的一种测量,以便知道实际上到底有多少数据量能够通过网络。
- 吞吐量受网络的带宽或网络的额定速率的限制。
时延:指数据(一个报文或分组,甚至比特)从网络(或链路)的一端传送到另一端所需的时间,有时也称为延迟或迟延。
-
发送时延:也称为传输时延,数据帧从结点进入到传输媒体所需要的时间,也就是从发送数据帧的第一个比特算起,到该帧的最后一个比特发送完毕所需的时间。与传输信道长度没有关系,相当于发车时从停车厂出来的时间。
发送时延 = 数据帧长度(bit) / 发送速率(bit/s)
-
传播时延:在信道中需要传播一定的距离而花费的时间。与信号的发射速率无关,相当于车辆运输在道路上花费的时间。电磁波在信道上的传播速率=3.0 x 105m/s.
传播时延 = 信道长度(m) / 电磁波在信道上的传播速率(m/s)
-
处理时延:主机或路由器在收到分组时,为处理分组(例如分析首部、提取数据、差错检验或查找路由)所花费的时间。。
-
排队时延:分组在路由器输入输出队列中排队等待处理所经历的时延,排队时延的长短往往取决于网络中当时的通信量。
总时延 = 发送时延 + 传播时延 + 处理时延 + 排队时延
主导时延:忽略处理时延和排队时延(通信量过大时,两者会大大增加)
- 对于高速网络链路,我们提高的仅仅是数据的发送速率而不是比特在链路上的传播速率。链路上的传播速率仅仅与链路的制造材料有关。
- 提高链路带宽减小了数据的发送时延。
- 以下说法是错误的:
“在高速链路(或高带宽链路)上,比特会传送得更快些”。
时延带宽积:以比特为单位的链路长度,只有在代表链路的管道都充满比特时,链路才得到了充分利用。
时延带宽积 = 传播时延 X 带宽
往返时间RTT:表示从发送方发送数据开始,到发送方收到来自接收方的确认,总共经历的时间。包括各中间结点的处理时延、排队时延以及转发数据时的发送时延。
利用率:包括信道利用率和网络利用率。
-
信道利用率指出某信道有百分之几的时间是被利用的
-
网络利用率则是全网络的信道利用率的加权平均值
信道利用率并非越高越好。当某信道的利用率增大时,该信道引起的时延也就迅速增加。
1.6.2 计算机网络的非性能特征
费用
质量
标准化
可靠性
可扩展性和可升级性
易于管理和维护
1.7计算机网络的体系结
1.7.1 计算机网络体系结构的形成
- 计算机网络是个非常复杂的系统。最简单的情况就是连接在网络上的两台计算机要互相传送文件。
- 相互通信的两个计算机系统必须高度协调工作才行,而这种“协调”是相当复杂的。
- 分层”可将庞大而复杂的问题,转化为若干较小的局部问题,而这些较小的局部问题就比较易于研究和处理。
分层模型
- SAN(系统网络体系结构):1974年美国IBM公司开发。
- OSI (开放系统互连基本参考模型):1983年ISO开发OSI/RM,开放指非独家垄断的,系统指在现实中的系统中与互连有关的各部分,并没有得到市场的认可,法律上的国际标准。
- TCP/IP:20世纪九十年代初,获得了最广泛的应用,称为事实上的国际标准。
1.7.2 协议与划分层
计算机网络中的数据交换必须遵守事先约定好的规则。
这些规则明确规定了所交换的数据的格式以及有关的同步问题(同步含有时序的意思)。
网络协议:简称为协议,是为进行网络中的数据交换而建立的规则、标准或约定。
网络协议的三个组成要素 :
- 语法:数据与控制信息的结构或格式 。
- 语义:需要发出何种控制信息,完成何种动作以及做出何种响应。
- 同步:事件实现顺序的详细说明。
协议的形式:便于人来阅读和理解的文字描述与计算机能够理解的程序代码。
这两种不同形式的协议都必须能够对网络上信息交换过程做出精确的解释。
层次式协议结构:
-
各层完成的主要功能
差错控制:使相应层次对等方的通信更加可靠。
流量控制:发送端的发送速率必须使接收端来得及接收,不要太快。
分段和重装:发送端将要发送的数据块划分为更小的单位,在接收端将其还原。复用和分用:发送端几个高层会话复用一条低层的连接,在接收端再进行分用。
连接建立和释放:交换数据前先建立一条逻辑连接,数据传送结束后释放连接。
-
优点
各层之间是独立的:每一层独立实现一种功能,只考虑接口提供的服务,不考虑具体实现。
灵活性好:只要层间接口关系保持不变,则各层不受影响。
结构上可分割开:各层可采用最适合的技术实现。
易于实现和维护:各层相对独立,便于实现与维护。
能促进标准化工作:每一层功能与服务都有精确的说明。 -
缺点:
降低效率
额外开销:有些功能会在不同的层次中重复出现,因而产生了额外开销。
计算机网络的体系结构
-
计算机网络的体系结构:是计算机网络的各层及其协议的集合。体系结构就是这个计算机网络及其部件所应完成的功能的精确定义。
-
实现:是遵循这种体系结构的前提下用何种硬件或软件完成这些功能的问题。
体系结构是抽象的,而实现则是具体的,是真正在运行的计算机硬件和软件。
1.7.3 具有五层协议的体系结构
OSI 的七层协议体系结构,复杂且不实用,TCP/IP最下面的网络接口层没有实际具体内容,综合 OSI 和 TCP/IP 的优点,采用一种只有五层协议的体系结构 学习计算机网络原理。
应用进程的数据在各层之间的传递过程
-
对等层:任何两个同样的层次。
-
PDU (Protocol Data Unit):协议数据单元,对等层次之间传输的数据单位称为该层的协议数据单元。
-
主机1的应用进程AP1向主机2的应用进程AP2传输数据。
-
各层协议实际上就是在各个对等层之间传递数据时的各项规定。
1.7.4 实体、议、服务和服务访问点
- 实体 (entity) :表示任何可发送或接收信息的硬件或软件进程。
- 协议:是控制两个对等实体进行通信的规则的集合。
- 在协议的控制下,两个对等实体间的通信使得本层能够向上一层提供服务要实现本层协议,还需要使用下层所提供的服务。
协议和服务概念区别:
- 协议的实现保证了能够向上一层提供服务。本层的服务用户只能看见服务而无法看见下面的协议。即下面的协议对上面的服务用户是透明的。
- 协议是“水平的”,即协议是控制对等实体之间通信的规则。
- 服务是“垂直的”,即服务是由下层向上层通过层间接口提供的。
- 上层使用服务原语获得下层所提供的服务。
服务访问点:
- 服务访问点 SAP:同一系统相邻两层的实体进行交互的地方,是一个抽象的概念,实际上就是一个逻辑接口。
- 服务数据单元 SDU:层与层之间交换的数据的单位。
- SDU 可以与 PDU 不一样,例如,可以是多个 SDU 合成为一个 PDU,也可以是一个 SDU 划分为几个 PDU。
相邻两层的关系:
协议很复杂:协议必须把所有不利的条件事先都估计到,而不能假定一切都是正常的和非常理想的。必须非常仔细地检查这个协议能否应付各种异常情况。
1.7.5 TCP/IP 的体系结构
目前互联网使用的TCP/IP体系结构表示方法:
- 方法1
- TCP/IP协议簇
TCP/IP协议簇表明:TCP/IP协议可以为各式各样的应用提供服务(everything over IP)同时TCP/IP协议也允许IP协议在各式各样的网络构成的互联网上运行(IP over everything)
协议栈概念表示客户进程和服务器进程使用 TCP/IP 协议栈进行通信
1.主机A的应用进程向主机B的应用进程发出请求,请求建立连接。
2.主机B的应用应用进程接受A发送的请求,接受连接建立请求。
实际上需要使用各层所提供的服务,但若仅仅考虑主机之间的通讯,可以简化为上图。