1. 计算机网络在信息时代的作用
1.1. 三大网络
- 电信网络
- 有线电视网络
- 计算机网络
1.2. 特点
互连网最重要的两个特点:
- 连通性
- 共享
2. 互连网概述
2.1. 网络的网络
- 计算机网络是若干的节点和连接这些节点的链路组成的;这样的网络被称为互连网,也就是网络的网络;
- 网络把所有的计算机连接在一起,而互连网把许多网络通过一些路由器连接在一起,与网络相连的计算机常被称为主机;
- 互联网与互连网:
- 仅仅在局域范围互联的计算机网络是互连网;
- 互联网指的是世界上最大的计算机网络
Internet
;
2.2. 互联网基础结构发展的三个阶段
-
第一个阶段
- 单个网络
ARPANET
向互连网发展的过程; internet
是一个专用名词,特指全球最大的互连网;前身为ARPANET
;
- 单个网络
-
第二个阶段
- 建成三级结构的互联网,分为主干网、地区网、校园网(企业网);
-
第三个阶段
-
形成全球范围的多层次 ISP 结构的互联网
-
2.3. 互联网标准化工作(了解)
- 互联网工程部 IETF:Internet Engineering Task Force;
- 互联网研究部 IRTF:Internet Research Task Force;
其制定互联网的正式标准要经过:
- 互联网草案;有效期 六个月,不能算是 RFC 文档;
- 建议标准;开始成为 RFC 文档;
- 互联网标准;经过长期的检验,可以形成标准,分配标准编号:STDxx;一个互连网标准可以和多个 RFC 文档相关联;
3. 互联网组成
- 边缘部分:用户直接使用的;
- 核心部分:为边缘部分提供服务的;
3.1. 边缘部分
端系统:连接在互联网上所有的主机;大的端系统可能是服务器,小的则可能是一个网络摄像头;
计算机之间的通信:主机 A 的某个进程和主机 B 的另一个进程之间进行通信;
- 客户-服务器方式:常用、传统;
- 对等连接:p2p;如:bt、pt 下载;
3.2. 核心部分
网络核心部分是最复杂的,其中起特殊作用的事路由器,是一种专用计算机;实现分组交换的关键构建,任务是转发收到的分组,这是最重要的功能;
3.2.1. 电路交换
从通信资源分布的角度来看,交换就是按照某种方式动态分布传输线路的资源;在电路交换打电话前,需要一条专用的物理通路;通话时独占资源;经历过程:建立连接->通话->释放连接;经过这三步走的称之为:电路交换;
3.2.2. 分组交换
分组交换则采用存储转发的技术;通常将整块数据称为报文(message);发送报文前,将较长报文划分为一个个更小的等长数据段,加上一些必要的控制信息组成的首部(header)之后,构成一个分组(packet),称为包;
分组交换优点:
- 高效:在分组传输过程中动态分配传输带宽,对通信链路逐段占用;
- 灵活:为每个分组独立选择最适合的转发路由;
- 迅速:分组为传送单位,不需先建立连接就能向其他主机发送分组;
- 可靠:保证可靠性网络传输协议:分布式多路由的分组交换网,使网络有很好的生存性;
分组带来的新问题:
- 时延:分组在各个路由器存储转发需要排队,会造成一定的时延;
- 开销:头部带来的控制信息开销;
3.2.3. 报文交换
电报通信也是采用基于存储转发原理的报文交换,整个报文先传送到相邻节点,全部进行存储,查询转发表,转发到下一个节点;
3.2.4. 总结
- 电路交换:整个报文的比特流连续地从源点直达终点,像在一个管道中传送;
- 报文交换:整个报文先传送到相邻节点,全部存储下后查询转发表,转发到下一个节点;
- 分组交换:单个分组(整个报文的一部分)传送到相邻节点,存储下来后查询转发表,转发到下一个节点;
4. 计算机网络的类别
4.1. 计算机网络的定义
精确定义并未统一;
较好的定义:计算机网络主要由一些通用的、可编程的硬件互连而成,这些硬件并非专门用来实现某一特定目的;这些可编程硬件能够用来传送多种不同类型的数据,并能支持广泛的和日益增长的应用;
4.2. 几种不同类别的计算机网络
4.2.1. 按照网络的作用范围分类
- 广域网 WAN:也称为远程网,核心部分,长距离,高速链路,较大的通信容量;作用范围通常是几十到几千公里;
- 城域网 MAN:作用范围一般是一个城市,约为:5~50km;
- 局域网 LAN:较小范围(1km左右);
- 个人局域网 PAN:10m左右;
4.2.2. 按照网络的使用者分类
- 公用网:电信公司(国有或私有)建造的大型网络;缴纳费用,即可使用;也称为:公众网;
- 专用网:某个部门为满足本单位的特殊业务工作建造;不向外开放;
4.2.3. 按把用户接入到互连网的网络
- 接入网:本地接入网或居民接入网;
5. 计算机网络性能
5.1. 性能指标
- 速率
数据的传送速率;往往指的是额定速率或标称速率,非实际运行速率;
- 带宽
- 带宽本来指的是信号具有的频带宽度;单位是:赫,千赫,兆赫,吉赫等;
- 计算机网络中,指某通道传送数据的能力;代表最高数据率;单位:数据率的单位 bit/s,即比特每秒;
- 吞吐量
- 吞吐量表示单位时间投过某个网络(或信道、接口)的实际数据量;
- 时延
-
数据从一端到另一端的所需时间;
-
构成:
-
发送时延:主机或路由器发送数据帧所需要的时间;发送时延 = 数据帧长度(bit) / 发送速率 (bit/s)
-
传播时延:在信道传播一定距离需要花费的时间;传播时延 = 信道长度(m) / 在信道上传播速率(m/s)
-
处理时延:收到分组花费的时间处理;
-
排队时延:分组经过传输的时候,需要经过多个路由器,进入路由器后现在输入队列排队等待处理;
-
总时延 = 发送时延 + 传播时延 + 处理时延 + 排队时延;
-
-
时延带宽积
时延带宽积 = 传播时延 x 带宽;
表示这样的链路可以容纳多少个比特;也称为:以比特为单位的链路长度; -
往返时间 RTT
这里举一个题目: A 向 B 发送数据,如果数据长度为 100MB ,发送速率为 100Mbit/s 那么 发送时间 = 100x2^20x8 / (100x10^6) = 8.39s 假设 B 正确接受数据后,立即向 A 发送确认,再假定 A 只有在接收到 B 的确认信息后,才可以向 B 发送数据;显然,这里要等一个 RTT(这里假设B确认消息极短,忽略B的发送时延),那么可以算出 A 到 B 的有效数据率: 有效数据率 = 数据长度 / (发送时间 + RTT) = 80.7Mbit/s
-
利用率
有两种,分别是:信道利用率和网络利用率;
信道利用率指出某信道有百分之几的时间是被利用的;
网络利用率则是全网络的信道利用率的加权平均值;
如果 D0 表示网络空闲时的时延,D 表示网络当前的时延,设网络利用率现在是 U ,那么适当的假定条件下:D = D0 / (1-U)
这里 U 是网络利用率,数值为 0 -1 之间,当网络利用率为其容量的 1/2 的时候,时延就要加倍;注意:打到最大值 1 的时候,产生时延趋于无穷大;
5.2. 非性能指标
- 费用
- 质量
- 标准化
- 可扩展性和可升级性
- 易于管理和维护
6. 计算机网络体系结构
6.1. 形成
- 1974年,系统网络体系结构 SNA 由 IBM 发布
- 1977年,ISO 组织,提出 开放系统互联基本参考模型 OSI/RM,简称 OSI
- 20世纪90年代初期,TCP/IP 成为事实上的过几标准;
6.2. 协议与划分层次
6.2.1. 网络协议
-
规定了所交换的数据的格式以及有关的同步问题;为进行网络中的数据交换而建立的规则、标准或约定称为网络协议;
-
构成:
-
语法:即数据域控制信息的结构或格式;
-
语义:即需要发出何种控制信息,完成何种动作以及做出何种响应;
-
同步:即事件实现顺序的详细说明
-
6.2.2. 分层的好处
- 各层之间独立;
- 灵活性高;
- 结构上可分割开;
- 易于实现和维护;
- 促进标准化工作;
6.2.3. 各层需要完成的主要功能
- 差错控制:是响应层次对等方的通信更加可靠;
- 流量控制;
- 分段和重装;
- 复用和分用;
- 连接建立和释放;
6.2.4. 五层协议的体系结构
OSI 的七层协议过于复杂不实用,TCP/IP 是一个四层体系结构;传授计算机网络原理的时候,往往采用综合 OSI 和 TCP/IP 的优点,用五层协议的体系结构进行讲解;
6.2.4.1. 应用层 (application layer)
任务:通过应用进程之间的交互来完成特定的网络应用;其协议定义的事:应用进程之间通信和交互的规则;
交互的数据单元:报文;
6.2.4.2. 运输层 (transport layer)
任务:负责两台主机进程之间的通信,提供通用的数据传输服务;
常用协议:
- 传输控制协议:TCP ;提供面相连接,可靠的数据传输服务,传输单位为报文段;
- 用户数据协议:UDP ;提供无连接的尽最大努力的数据传输服务,传输单位:用户数据报;
6.2.4.3. 网路层 (network layer)
任务:负责为分组交换网上的不同主机提供通信服务;发送数据时,将运输层的产生的报文段或用户数据报进行分装成分组或包进行传送;因为网络层采用 IP 协议,故其分组也称为 IP 数据报;(勿弄混用户数据包协议 UDP 和网络层的 IP 数据报;此外,无论哪一层传输的数据单元,都可以笼统的称为分组)
6.2.4.4. 数据链路层 (data link layer)
作用:将网络层交下来的 IP 数据包组装成帧;每一帧都包含必要的控制信息;如果接收端发现出错,则丢弃出错帧;即链路层不仅仅要检错,还要纠错;
6.2.4.5. 物理层 (physical layer)
作用:数据传输的物理介质;编码和解码;等
6.3. 实体、协议、服务、服务访问点
6.3.1. 实体
任何可发送或接受信息的硬件或软件进程;
6.3.2. 协议
控制两个对等实体或多个实体进行通信的规则的集合;
6.3.3. 服务
协议的控制下,两个对等实体之间的通信使得本层能够向上一层提供服务,要实现本层协议,还需要使用下面一层所提供的服务;
协议是水平的,服务是垂直的;
6.3.4. 服务访问点 SAP (Service Access Point)
SAP 是一个抽象概念,实际上是一个逻辑接口,OSI 把层与层之间交换数据的单位称为:服务数据单元 SDU (Service Data Unit);他可以和 PDU 不一样,可以是多个 SDU 合并成为一个 PDU;
PDU:Protocol Data Unit 协议数据单元
6.4. TCP/IP 体系结构
但是:实际上的 TCP/IP 体系结构已经演化成:
另一种表示方法:
网际层的最重要的协议是 IP 协议;