计算机网络 CH1
计算机网络 CH1:概述
这一章重要的内容: 1.3的交换方式和1.5的性能指标
1.2 因特网概述
1.2.1 网络,互联网与因特网
1. 网络:关注概念:连接的设备称为节点(node),连接设备的称为链路(link);节点和链路组成的结构就是网络。 2. 互联网:网络与网络之间,一般通过路由器来连接;将一系列的网络连接起来,就形成互联网,如下图所示;互联网是“网络的网络”
3. 因特网(Internet):因特网是世界上最大的互联网,连接到因特网的设备称为主机(host),如图所示
4. 互联网与因特网的对比:
5. 协议:先理解为是一种网络设备之间通讯所遵守的一系列的规则与约定(比如说,规定了数据传输的格式和结构,传输的规则,建立和关闭连接的形式,etc.) ### 1.2.2 因特网简介 1. 因特网服务提供者(Internet Service Provider,ISP) 普通用户与ISP(付费)签约,以使用互联网;ISP是为用户提供接入互联网服务的组织;由于互联网的结构复杂,因此需要ISP帮助个人用户连接。 目前为止,因特网已经发展为基于ISP的多层次结构的互联网络
2. 因特网的标准化工作:因特网的标准化工作是面向大众的,对于互联网标准提出的建议标注称为RFC,后续需要进一步评估才可能有效、被采纳 3. 因特网的组成:如图所示:
1.3 电路交换,分组交换和报文交换
1.3.1 电路交换
电路交换是指在通信双方进行通信之前,首先在通信网络中为其建立一条专用的通信路径(电路),该路径在通信过程中一直保持,直到通信结束后才释放。这种方式常见于传统的电话网络中。用图表述如下:
电路交换是显然不适用于计算机交互的;比如说,使用微信和别人发消息,很可能是很长时间之发一两条消息,但如果你电路交换一直占着线路,但可能大部分时候网络实际上是空闲的,这很容易导致大量的资源的浪费;这是由于计算机信息的交换一般具有突发性
1.3.2 分组交换
分组交换的基本结构如下图: 假如说我H1与H3要进行传输文件,这个时候我们先将信息(的0/1编码)分成很多等长的message,分组完之后如下所示:
其中,“首部” 记录信息的寄件人和收件人;信息传输完成后,在收件人处删除掉首部,重新组装信息。 收件Host和寄件Host之间通过一系列路由器(R)进行存储转发,路由器会先存储信息,然后转发给下一个路由器。分组交换的优缺点如下所示:
1.3.3 报文交换
报文交换是分组交换的前身,区别就是报文交换是整个地发送,而不是分组发送;路由器会将文件整个接受后才会存储转发。 因此,很显然报文交换带来的转发时延和需求的存储空间都会大很多。
总结一下这部分的内容如下:
1.4 计算机网络的定义和分类
1.4.1 计算机网络的定义
在不同的时期,计算机网络有不同的定义;现阶段来说,较好的定义是计算机网络主要是由一些通用的、可编程的硬件互连而成的,而这些硬件都可以用来传输多种类型的数据,支持广泛的应用。 ## 1.4.2 计算机网络的分类 (1)按照交换方式:电路交换、报文交换、分组交换 (2)按照使用者:公用网和专用网(e.g. 军队、铁路、银行,etc.) (3)按照传输介质:有线网和无线网 (4)按照覆盖范围:如下 (5)按照拓扑结构:有总线型、网状型、环形、星形,etc.
1.5 计算机网络的性能指标
- 速率:速率就是指每秒可以传输多少个比特,也称为数据率(data rate)或者是比特率(bit rate)。
小写的b表示bit,大写的B表示byte。
有一个很恶心的东西,K M B T四个量在表示数据量和速率的时候代表的含义不同,如图所示: 也就是说,数据量是采用二进制的2的次方,速率是一般的10的次方。参见下面的例题:
一般地来说,只有表示存储内容的时候才是二进制,因为这些数据是用二进制内容来存储的
- 带宽(bandwidth): 在模拟信号和计算机网络中有不同的定义,如图所示:
关键词:最大 在数据传输的过程中,有如下的木桶效应:
- 吞吐量(throughput): 吞吐量是指在单位时间内通过某个网络或接口的实际数据量,如图所示为通过线路带宽的吞吐量
带宽描述的是理论上的最大值,而吞吐量是一段时间实际传输的数据量
时延(latency):时延是指数据从网络的一端传送到另一端所耗费的时间,在传输过程中各个部分的时延和计算方式如下图所示:
电脑、路由器发射数据都会产生发送时延,在线路上会产生传播时延,路由器处理的时候会产生排队时延和处理时延
要记住在光纤中的信号传播速度
一般来说,结构是这样的(忽略了中间的排队时延和处理时延)
一个例题:
时延带宽积: 定义为传播时延和带宽的乘积,相当于衡量了链路的一种”能力“
距离理解,相当于计算了一个特定链路中的”体积“,用比特来衡量链路中的数据量;传播时延相当于是链路中存储的数据”秒数“,而带宽是每秒传输的(最大)数据量,相当于是横截面积
往返时间(Round-Trip Time,RTT):是指从发送端发送数据分组开始,到发送端收到接收端发来的相应确认分组为止,总共耗费的时间;相当于是一个往返的时间
使用ping命令可以查看RTT,如下所示
- 利用率 利用率分为网络利用率和链路利用率两种,如图
网络时延和利用率的关系;
可以看出,利用率高于50%的时候,时延会显著增加;因此一些大型ISP会控制利用率不高于50%
关键词:就是百分之多少的时间有数据通过这个链路
- 丢包率: 丢包率是一段时间内,传输过程中丢失的分组数量与总分组数量的比率。形成”丢包“一般有一下两个原因:
(1)在传输的过程中,数据包受到电磁干扰等等问题,导致比特错误;接着接收方(路由器或者接收方)在差错校验之后,会把这个错误的包直接丢掉
(2)有时在传播的过程中,由于传输的数据量太多,在一个路由器拥堵的数据太多的时候,就会被丢弃(有点像快递站”爆仓“了导致快递被丢弃)。因此,丢包率可以用来反映网络拥塞情况
1.6 计算机网络体系结构
1.6.1 TCP/IP 结构
右边记录的是每一层的协议
第一个是法律的标准,但是其与实际有些脱离;实际运营中使用的都是TCP/IP参考模型;而在教学中,我们学习的是最后一个图中的模型
这个体系结构的分层中,每一层都有不同的功能,后面会逐层详细介绍;具体的总结如下
1.6.2 IP地址
也就是说,前三个数字代表网络号(用来标识网络),最后一个数字用来区分主机
相当于是说,发送的过程中是从上到下层层封装、添加信息,最终通过物理层进行发送;然后接受端接收到之后再一层层展开为最后的信息
1.6.4 几个专业术语
(1)实体(entity) 指的是任意可发送或接受的硬件或软件进程;对等实体指的是通信双方相同层次中的实体
(2)协议:协议是控制两个对等实体在“水平方向” 进行“逻辑通信”的规则的集合;协议的三要素是语法 语义和同步,具体如下:
(3)服务:在协议的控制下,两个对等实体在水平方向的逻辑通信使得本层能够向上一层提供服务。
(4)服务访问点(service access point,SAP):同一系统中相邻两层的实体 交换信息的逻辑接口称为服务访问点SAP
(5)PDU SDU:如下