# 第 1 章   概述
## 计算机网络在信息时代中的作用
### 21 世纪的一些重要特征就是数字化、网络化和信息化，它是一个以网络为核心的信息时代。
### 网络现已成为信息社会的命脉和发展知识经济的重要基础。
### 网络是指“三网”，即电信网络、有线电视网络和计算机网络。
### 发展最快的并起到核心作用的是计算机网络。
### 因特网(Internet)的发展
* 进入 20 世纪 90 年代以后，以因特网为代表的计算机网络得到了飞速的发展。
* 已从最初的教育科研网络逐步发展成为商业网络。
* 已成为仅次于全球电话网的世界第二大网络。 
### 因特网的意义
* 因特网是自印刷术以来人类通信方面最大的变革。
* 现在人们的生活、工作、学习和交往都已离不开因特网。 
## 因特网概述
###  网络的网络
* 起源于美国的因特网现已发展成为世界上最大的国际性计算机互联网 
* 网络(network)由若干结点(node)和连接这些结点的链路(link)组成。 
* 互联网是“网络的网络”(network of networks)。 
* 连接在因特网上的计算机都称为主机(host)。 
* 网络与因特网
    * 网络把许多计算机连接在一起。
    * 因特网则把许多网络连接在一起。
### 因特网发展的三个阶段
* 第一阶段是从单个网络 ARPANET 向互联网发展的过程。
    * 1983 年 TCP/IP 协议成为 ARPANET 上的标准协议。
    * 人们把 1983 年作为因特网的诞生时间。
* 第二阶段的特点是建成了三级结构的因特网。
    * 三级计算机网络，分为主干网、地区网和校园网（或企业网）。 
* 第三阶段的特点是逐渐形成了多层次 ISP 结构的因特网。
    * 出现了因特网服务提供者 ISP (Internet Service Provider)。  
    * 根据提供服务的覆盖面积大小以及所拥有的IP 地址数目的不同，ISP 也分成为不同的层次。
### 因特网的标准化工作
* 制订因特网的正式标准要经过以下的四个阶段 
    * 因特网草案(Internet Draft) ——在这个阶段还不是 RFC 文档。
    * 建议标准(Proposed Standard) ——从这个阶段开始就成为 RFC 文档。
    * 草案标准(Draft Standard)
    * 因特网标准(Internet Standard) 
* 各种RFC之间的关系
### 计算机网络在我国的发展
## 因特网的组成
### 因特网的边缘部分
* 由所有连接在因特网上的主机组成。这部分是用户直接使用的，用来进行通信（传送数据、音频或视频）和资源共享。
    * 处在因特网边缘的部分就是连接在因特网上的所有的主机。这些主机又称为端系统(end system)。
    *  “主机 A 和主机 B 进行通信”，实际上是指：“运行在主机 A 上的某个程序和运行在主机 B 上的另一个程序进行通信”。
    * 即“主机 A 的某个进程和主机 B 上的另一个进程进行通信”。或简称为“计算机之间通信” 
### 因特网的核心部分
* 由大量网络和连接这些网络的路由器组成。这部分是为边缘部分提供服务的（提供连通性和交换）
    * 网络核心部分是因特网中最复杂的部分。
    * 网络中的核心部分要向网络边缘中的大量主机提供连通性，使边缘部分中的任何一个主机都能够向其他主机通信（即传送或接收各种形式的数据）。
    * 在网络核心部分起特殊作用的是路由器(router)。
        * 路由器是实现分组交换(packet switching)的关键构件，其任务是转发收到的分组，这是网络核心部分最重要的功能。
            * 在路由器中的输入和输出端口之间没有直接连线。
            * 路由器处理分组的过程是：
                * 把收到的分组先放入缓存（暂时存储）；
                * 查找转发表，找出到某个目的地址应从哪个端口转发；
                * 把分组送到适当的端口转发出去。 
    * 路由器是实现分组交换(packet switching)的关键构件，其任务是转发收到的分组，这是网络核心部分最重要的功能。 
## 计算机网络在我国的发展
### (1) 中国公用计算机互联网 CHINANET
### (2) 中国教育和科研计算机网 CERNET
### (3) 中国科学技术网 CSTNET
### (4) 中国联通互联网 UNINET
### (5) 中国网通公用互联网 CNCNET
### (6) 中国国际经济贸易互联网 CIETNET
### (7) 中国移动互联网 CMNET
### (8) 中国长城互联网 CGWNET（建设中）
### (9) 中国卫星集团互联网 CSNET（建设中） 
## 计算机网络的类别
### 计算机网络的定义
* 最简单的定义：计算机网络是一些互相连接的、自治的计算机的集合。
* 因特网(Internet)是“网络的网络”。
### 几种不同类别的网络
* 不同作用范围的网络 
    * 广域网 WAN (Wide Area Network)
    * 局域网 LAN (Local Area Network) 
    * 城域网 MAN (Metropolitan Area Network)
    * 个人区域网 PAN (Personal Area Network) 
* 从网络的使用者进行分类 
    * 公用网 (public network) 
    * 专用网 (private network) 
## 计算机网络的性能
### 计算机网络的性能指标
* 速率
    * 比特（bit）是计算机中数据量的单位，也是信息论中使用的信息量的单位。
    * Bit 来源于 binary digit，意思是一个“二进制数字”，因此一个比特就是二进制数字中的一个 1 或 0。
    * 速率即数据率(data rate)或比特率(bit rate)是计算机网络中最重要的一个性能指标。速率的单位是 b/s，或kb/s, Mb/s, Gb/s 等
    * 速率往往是指额定速率或标称速率。  
*  带宽 
    * “带宽”(bandwidth)本来是指信号具有的频带宽度，单位是赫（或千赫、兆赫、吉赫等）。
    * 现在“带宽”是数字信道所能传送的“最高数据率”的同义语，单位是“比特每秒”，或 b/s (bit/s)。 
    * 常用的带宽单位
        * 更常用的带宽单位是
        * 千比每秒，即 kb/s （103 b/s）
        * 兆比每秒，即 Mb/s（106 b/s）
        * 吉比每秒，即 Gb/s（109 b/s）
        * 太比每秒，即 Tb/s（1012 b/s）
        * 请注意：在计算机界，K = 210 = 1024
        *    M = 220, G = 230, T = 240。
    * 数字信号流随时间的变化
        * 在时间轴上信号的宽度随带宽的增大而变窄。
* 吞吐量
    * 吞吐量(throughput)表示在单位时间内通过某个网络（或信道、接口）的数据量。
    * 吞吐量更经常地用于对现实世界中的网络的一种测量，以便知道实际上到底有多少数据量能够通过网络。
    * 吞吐量受网络的带宽或网络的额定速率的限制。  
* 时延(delay 或 latency)
    * 传输时延（发送时延 ）    发送数据时，数据块从结点进入到传输媒体所需要的时间。
    * 也就是从发送数据帧的第一个比特算起，到该帧的最后一个比特发送完毕所需的时间。 
    * 传播时延    电磁波在信道中需要传播一定的距离而花费的时间。 
    * 信号传输速率（即发送速率）和信号在信道上的传播速率是完全不同的概念。 
    * 处理时延    交换结点为存储转发而进行一些必要的处理所花费的时间。 
    * 排队时延    结点缓存队列中分组排队所经历的时延。
    * 排队时延的长短往往取决于网络中当时的通信量。
    * 数据经历的总时延就是发送时延、传播时延、处理时延和排队时延之和： 
* 时延带宽积
    * 链路的时延带宽积又称为以比特为单位的链路长度。 
* 利用率
    * 信道利用率指出某信道有百分之几的时间是被利用的（有数据通过）。完全空闲的信道的利用率是零。
    * 网络利用率则是全网络的信道利用率的加权平均值。
    * 信道利用率并非越高越好。 
* 时延与网络利用率的关系
    * 根据排队论的理论，当某信道的利用率增大时，该信道引起的时延也就迅速增加。 
    * 若令 D0 表示网络空闲时的时延，D 表示网络当前的时延，则在适当的假定条件下，可以用下面的简单公式表示 D 和 D0之间的关系：
        * U 是网络的利用率，数值在 0 到 1 之间。 
### 计算机网络的非性能特征
* 费用
* 质量
* 标准化
* 可靠性
* 可扩展性和可升级性 
* 易于管理和维护 
## 计算机网络的体系结构
### 计算机网络体系结构的形成
* 相互通信的两个计算机系统必须高度协调工作才行，而这种“协调”是相当复杂的。 
* “分层”可将庞大而复杂的问题，转化为若干较小的局部问题，而这些较小的局部问题就比较易于研究和处理。
### 协议与划分层次
* 划分层次的必要性
    * 计算机网络中的数据交换必须遵守事先约定好的规则。 
    * 这些规则明确规定了所交换的数据的格式以及有关的同步问题（同步含有时序的意思）。
    * 网络协议(network protocol)，简称为协议，是为进行网络中的数据交换而建立的规则、标准或约定。
* 网络协议的组成要素
    * 语法     数据与控制信息的结构或格式 。 
    * 语义     需要发出何种控制信息，完成何种动作以及做出何种响应。 
    * 同步    事件实现顺序的详细说明。
* 分层的好处 
    * 各层之间是独立的。
    * 灵活性好。
    * 结构上可分割开。
    * 易于实现和维护。
    * 能促进标准化工作。  
### 具有五层协议的体系结构
* TCP/IP 是四层的体系结构：应用层、运输层、网际层和网络接口层。
* 但最下面的网络接口层并没有具体内容。
* 因此往往采取折中的办法，即综合 OSI 和 TCP/IP 的优点，采用一种只有五层协议的体系结构 。 
### 实体、协议、服务和服务访问点
* 实体(entity) 表示任何可发送或接收信息的硬件或软件进程。 
* 协议是控制两个对等实体进行通信的规则的集合。 
* 在协议的控制下，两个对等实体间的通信使得本层能够向上一层提供服务。
* 要实现本层协议，还需要使用下层所提供的服务。 
* 本层的服务用户只能看见服务而无法看见下面的协议。
* 下面的协议对上面的服务用户是透明的。 
* 协议是“水平的”，即协议是控制对等实体之间通信的规则。
* 服务是“垂直的”，即服务是由下层向上层通过层间接口提供的。
* 同一系统相邻两层的实体进行交互的地方，称为服务访问点 SAP (Service Access Point)。 
* 协议必须把所有不利的条件事先都估计到，而不能假定一切都是正常的和非常理想的。 
* 看一个计算机网络协议是否正确，不能光看在正常情况下是否正确，而且还必须非常仔细地检查这个协议能否应付各种异常情况。 
## internet 和 Internet 的区别
### 以小写字母 i 开始的 internet（互联网或互连网）是一个通用名词，它泛指由多个计算机网络互连而成的网络。 
### 以大写字母I开始的的 Internet（因特网）则是一个专用名词，它指当前全球最大的、开放的、由众多网络相互连接而成的特定计算机网络，它采用 TCP/IP 协议族作为通信的规则，且其前身是美国的 ARPANET。
## 万维网 WWW 的问世
### 因特网已经成为世界上规模最大和增长速率最快的计算机网络，没有人能够准确说出因特网究竟有多大。
### 因特网的迅猛发展始于 20 世纪 90 年代。由欧洲原子核研究组织 CERN 开发的万维网 WWW (World Wide Web)被广泛使用在因特网上，大大方便了广大非网络专业人员对网络的使用，成为因特网的这种指数级增长的主要驱动力。 
## 客户软件的特点 
### 被用户调用后运行，在打算通信时主动向远地服务器发起通信（请求服务）。因此，客户程序必须知道服务器程序的地址。
### 不需要特殊的硬件和很复杂的操作系统。 
## 服务器软件的特点 
### 一种专门用来提供某种服务的程序，可同时处理多个远地或本地客户的请求。
### 系统启动后即自动调用并一直不断地运行着，被动地等待并接受来自各地的客户的通信请求。因此，服务器程序不需要知道客户程序的地址。
### 一般需要强大的硬件和高级的操作系统支持。
## 因特网的边缘部分与核心部分
## 两种国际标准
### 法律上的(de jure)国际标准 OSI 并没有得到市场的认可。
### 是非国际标准 TCP/IP 现在获得了最广泛的应用。
### TCP/IP 常被称为事实上的(de facto) 国际标准。
## 主机 1 向主机 2 发送数据 
## 主机 1 向主机 2 发送数据 
## 主机 1 向主机 2 发送数据 
## 主机 1 向主机 2 发送数据 
## 主机 1 向主机 2 发送数据 
## 主机 1 向主机 2 发送数据 
## 主机 1 向主机 2 发送数据 
## 主机 1 向主机 2 发送数据 
## 主机 1 向主机 2 发送数据 
## 主机 1 向主机 2 发送数据 
## 主机 1 向主机 2 发送数据
## 分组交换
### 在发送端，先把较长的报文划分成较短的、固定长度的数据段。 
### 添加首部构成分组
* 每一个数据段前面添加上首部构成分组
### 分组交换的传输单元
* 分组交换网以“分组”作为数据传输单元。
* 依次把各分组发送到接收端（假定接收端在左边）
### 分组首部的重要性
* 每一个分组的首部都含有地址等控制信息。
* 分组交换网中的结点交换机根据收到的分组的首部中的地址信息，把分组转发到下一个结点交换机。
* 用这样的存储转发方式，最后分组就能到达最终目的地。
### 收到分组后剥去首部
* 接收端收到分组后剥去首部还原成报文
### 最后还原成原来的报文
### 分组交换的优点
* 高效    动态分配传输带宽，对通信链路是逐段占用。 
* 灵活    以分组为传送单位和查找路由。
* 迅速    不必先建立连接就能向其他主机发送分组。
* 可靠    保证可靠性的网络协议；分布式的路由选择协议使网络有很好的生存性。
### 分组交换带来的问题
* 分组在各结点存储转发时需要排队，这就会造成一定的时延。 
* 分组必须携带的首部（里面有必不可少的控制信息）也造成了一定的开销。
##  电路交换
### 两部电话机只需要用一对电线就能够互相连接起来。
### 更多的电话机互相连通
* 5 部电话机两两相连，需 10 对电线。
* N 部电话机两两相连，需 N(N – 1)/2 对电线。
* 当电话机的数量很大时，这种连接方法需要的电线对的数量与电话机数的平方成正比。
### 使用交换机
* 当电话机的数量增多时，就要使用交换机来完成全网的交换任务。
### 电路交换的特点
* 电路交换必定是面向连接的。 
* 电路交换的三个阶段：
    * 建立连接
    * 通信
    * 释放连接
* 电路交换传送计算机数据效率低
    * 计算机数据具有突发性。
    * 这导致通信线路的利用率很低。
## 三种交换的比较 
## 两种通信方式
### 客户服务器方式（C/S 方式）   即Client/Server方式 
* 客户(client)和服务器(server)都是指通信中所涉及的两个应用进程。
* 客户服务器方式所描述的是进程之间服务和被服务的关系。
* 客户是服务的请求方，服务器是服务的提供方。
### 对等方式（P2P 方式）   即 Peer-to-Peer方式  
* 对等连接(peer-to-peer，简写为 P2P)是指两个主机在通信时并不区分哪一个是服务请求方还是服务提供方。
* 只要两个主机都运行了对等连接软件（P2P 软件），它们就可以进行平等的、对等连接通信。
* 双方都可以下载对方已经存储在硬盘中的共享文档。 
* 对等连接方式的特点
    * 对等连接方式从本质上看仍然是使用客户服务器方式，只是对等连接中的每一个主机既是客户又同时是服务器。
    * 例如主机 C 请求 D 的服务时，C 是客户，D 是服务器。但如果 C 又同时向 F提供服务，那么 C 又同时起着服务器的作用。
## TCP/IP 的体系结构
## 关于开放系统互连参考模型OSI/RM
### 只要遵循 OSI 标准，一个系统就可以和位于世界上任何地方的、也遵循这同一标准的其他任何系统进行通信。
### 在市场化方面 OSI 却失败了。
* OSI 的专家们在完成 OSI 标准时没有商业驱动力；
* OSI 的协议实现起来过分复杂，且运行效率很低；
* OSI 标准的制定周期太长，因而使得按 OSI 标准生产的设备无法及时进入市场；
* OSI 的层次划分并也不太合理，有些功能在多个层次中重复出现。  

![picture](https://github.com/SSHeRun/CS-Xmind-Note/blob/master/%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%BD%91%E7%BB%9C/%E7%AC%AC%201%20%E7%AB%A0%20%20%20%E6%A6%82%E8%BF%B0/%E7%AC%AC%201%20%E7%AB%A0%20%20%20%E6%A6%82%E8%BF%B0.png)
