计算机网络系列学习(一)概述
计算机网络系列学习(二)数据链路层
计算机网络系列学习(三) 网络层
计算机网络系列学习(四)传输层
计算机网络系列学习(五)应用层
第一章:概述
一、计算机网络的定义
1. Internet全球最大、最重要的计算机网络
称呼:
因特网:推荐,但却长期未得到推广。
互联网:目前流行最广,事实上的标准译名。
2. 互联网的两个重要基本特点
- 连通性
- 资源共享
二、互联网概述
1. 网络的网络
- 计算机网络
由若干节点(node)和连接这些节点的链路(link)组成
- 互连网
多个网络通过一些路由器相互连接起来,构成了一个覆盖范围更大的计算机网络
-
网络与互连网
网络:把许多计算机连接在一起。
互连网:把许多网络通过一些路由器连接在一起。与网络相连的计算机常称为主机。
互连网 (internet) ≠ 互联网 (Internet)
2. 互联网基础结构发展的三个阶段
-
第一阶段
ARPANET:最初只是一个单个的分组交换网,不是一个互连网。
1983 年,TCP/IP 协议成为 ARPANET 上的标准协议,使得所有使用 TCP/IP 协议的计算机都能利用互连网相互通信
-
第二阶段
三级结构:主干网、地区网和校园网(或企业网)
-
第三阶段
互联网服务提供者 ISP (Internet Service Provider):提供接入到互联网的服务。需要收取一定的费用
多层次 ISP 结构:主干 ISP、地区 ISP 和本地 ISP
互联网交换点 IXP (Internet eXchange Point):允许两个网络直接相连并快速交换分组
内容提供者 (Content Provider):在互联网上向所有用户提供视频等内容的公司。不向用户提供互联网的转接服务
3. 互联网的标准工作
RFC:Request For Comments (请求评论)
并非所有的 RFC 文档都是互联网标准。只有很少部分的 RFC 文档最后才能变成互联网标准
三、互联网的组成
1. 互联网的边缘部分
由所有连接在互联网上的主机组成,由用户直接使用,用来进行通信(传送数据、音频或视频)和资源共享
-
端系统:处在互联网边缘部分的就是连接在互联网上的所有的主机
-
计算机间通信
主机 A 的某个进程和主机 B 上的另一个进程进行通信
-
客户/服务器方式
客户是服务的请求方,服务器是服务的提供方,通信是双向的,客户和服务器都可发送和接收数据
客户程序:被用户调用后运行,需主动向远地服务器发起通信(请求服务)。必须知道服务器程序的地址
服务器程序:专门用来提供某种服务的程序,可同时处理多个客户请求。一直不断地运行着,被动地等待并接受来自各地的客户的通信请求。不需要知道客户程序的地址
-
对等方式
不区分服务请求方和服务提供方,每一个主机既是客户又是服务器
-
2.互联网的核心部分
大量网络和连接这些网络的路由器组成,为边缘部分提供服务(提供连通性和交换)
路由器:实现分组交换 (packet switching) 的关键构件,其任务是转发收到的分组
- 典型交换技术:
-
电路交换
每一部电话都直接连接到交换机上,而交换机使用交换的方法,让电话用户彼此之间可以很方便地通信。 这种交换方式就是电路交换
-
交换:把一条电话线转接到另一条电话线,使它们连通起来。从通信资源的分配角度来看,就是按照某种方式动态地分配传输线路的资源
-
特点:
建立连接:建立一条专用的物理通路(占用通信资源)。
通话:主叫和被叫双方互相通电话(一直占用通信资源)。
释放连接:释放刚才使用的专用的物理通路(归还通信资源)
通话的两个用户始终占用端到端的通信资源
计算机数据具有突发性,这导致在传送数据时,通信线路的利用率很低,真正用来传送数据的时间往往不到 10%,甚至不到 1%,已被用户占用的通信线路资源在绝大部分时间里都是空闲的
-
-
分组交换
采用存储转发技术
数据段前面添加首部就构成了分组 (packet)
分组是在互联网中传送的数据单元。发送端依次把各分组发送到接收端
接收端收到分组后剥去首部,还原成原来的报文
-
转发过程:
根据首部中包含的目的地址、源地址等重要控制信息进行转发。
每一个分组在互联网中独立选择传输路径。
位于网络核心部分的路由器负责转发分组,即进行分组交换。
路由器要创建和动态维护转发表
-
路由器处理分组的过程
暂存收到的分组->检查分组首部->查找转发表->按照首部中的目的地址,找到合适的接口转发出去
-
优点:
动态分配传输带宽,对通信链路是逐段占用
每一个分组独立地选择最合适的转发路由
可以不先建立连接就能向其他主机发送分组
-
-
报文交换
基于存储转发原理的报文交换
- 三种交换方式比较
若要连续传送大量的数据,且其传送时间远大于连接建立时间,则电路交换的传输速率较快
报文交换和分组交换不需要预先分配传输带宽,在传送突发数据时可提高整个网络的信道利用率
由于一个分组的长度往往远小于整个报文的长度,因此分组交换比报文交换的时延小
四、计算机网络的类别
1. 计算机网络的定义
可编程的硬件能够用来传送多种不同类型的数据,并能支持广泛的和日益增长的应用
2.不同类别的计算机网络
- 按照网络的作用范围进行分类
- 按照网络的使用者进行分类
-
用来把用户接入到互联网的网络
接入网
实际上就是本地 ISP 所拥有的网络,是从某个用户端系统到本地 ISP 的第一个路由器(也称为边缘路由器)之间的一种网络
五、计算机网络的性能
1. 计算机网络的性能指标
-
速率
数据的发送速率(数据率、比特率),速率往往是指额定速率或标称速率,非实际运行速率
千 = K = 210 = 1024,兆 = M = 220 = 1024 K,吉 = G = 230 = 1024 M
1kbit/s=103bit/s,1Mbit/s=106bit/s, 1Gbit/s=109bit/s
-
带宽
- 频域:允许通过的信号频带范围称为该信道的带宽
- 时域:在单位时间内网络中的某信道所能通过的“最高数据率”
两者本质相同,都表示单位时间内的最大传送数据量
-
吞吐量
单位时间内通过某个网络(或信道、接口)的实际数据量
-
时延
数据(一个报文或分组,甚至比特)从网络(或链路)的一端传送到另一端所需的时间
- 发送时延(传输时延):从发送数据帧的第一个比特算起,到该帧的最后一个比特发送完毕所需的时间(在机器内部的发送器中)
- 传播时延:电磁波在信道中传播一定的距离需要花费的时间
- 处理时延:在收到分组时,为处理分组(例如分析首部、提取数据、差错检验或查找路由)所花费的时间
- 排队时延:在路由器输入输出队列中排队等待处理和转发所经历的时延
总时延 = 发送时延 + 传播时延 + 处理时延 + 排队时延
一般说来,小时延的网络要优于大时延的网络。在某些情况下,一个低速率、小时延的网络很可能要优于一个高速率但大时延的网络
高速网络链路:我们提高的仅仅是数据的发送速率,而不是比特在链路上的传播速率
-
时延带宽积
时延带宽积 = 传播时延 *带宽
-
往返时间RTT (Round-Trip Time)
从发送方发送完数据,到发送方收到来自接收方的确认总共经历的时间,即不包括发送方的发送时延
有效数据率:数据长度/(发送时间+RTT)
往返时间还包括各中间结点的处理时延、排队时延以及转发数据时的发送时延
-
利用率
信道利用率:某信道有百分之几的时间是被利用的(即有数据通过)
网络利用率:全网络的信道利用率的加权平均值
2. 计算机网络的非性能指标
六、计算机网络体系结构
1. 计算机网络体系结构的形成
-
ISO提出的OSI七层协议的体系结构
-
事实上的 (de facto) 国际标准 TCP/IP
2.协议与划分层次
协议组成要素
- 语法:数据与控制信息的结构或格式
- 语义
- 同步:事件实现顺序的详细说明
3. 具有五层协议的体系结构
-
应用层
应用层交互的数据单元称为报文
协议:应用进程间通信和交互的规则(如http)
-
运输层
负责向两台主机中进程之间的通信提供通用的数据传输服务
协议:
-
传输控制协议 TCP
面向连接的、可靠的数据传输服务。数据传输的单位是报文段 (segment)
-
用户数据报协议 UDP
无连接的尽最大努力 (best-effort) 的数据传输服务(不保证数据传输的可靠性)。数据传输的单位是用户数据报
-
-
网络层
分组交换网上的不同主机提供通信服务,数据名为IP 数据报,或简称为数据报
任务:
-
路由选择:通过一定的算法,在互联网中的每一个路由器上,生成一个用来转发分组的转发表。
-
转发:每一个路由器在接收到一个分组时,要依据转发表中指明的路径把分组转发到下一个路由器
协议:无连接的网际协议 IP
-
-
数据链路层
两个相邻节点之间的可靠通信,传送帧
-
物理层
确定连接电缆的插头应当有多少根引脚,以及各引脚应如何连接
OSI 参考模型把对等层次之间传送的数据单位称为该层的协议数据单元 PDU
4. 实体、协议、服务和服务访问点
实体 (entity) :表示任何可发送或接收信息的硬件或软件进程
协议:控制两个对等实体进行通信的规则的集合
服务:在协议的控制下,两个对等实体间的通信使得本层能够向上一层提供服务。要实现本层协议,还需要使用下层所提供的服务
服务访问点SAP:在同一系统中相邻两层的实体进行交互(即交换信息) 的地方,实际上就是一个逻辑接口
OSI 把层与层之间交换的数据的单位称为服务数据单元 SDU
5. TCP/IP的体系结构
-
四层结构
应用层、运输层、网络层、网络接口层
2.TCP/IP 体系结构的另一种表示方法