计算机网络01—概述
学习参考资料:
- 湖南科技大学—计算机网络
- 王道考研—计算机网络
- 谢希仁 计算机网络(第7版)
1.因特网概述
1.1 网络、互联网和因特网
- 网络(Network)由若干结点(Node)和连接这些结点的链路(Link)组成。网络中的结点可以是计算机、集线器、交换机和路由器等。在很多情况下,我们可以用一朵云表示一个网络。
- 多个网络还可以通过路由器互连起来,这样就构成了一个覆盖范围更大的网络,即互联网(或互连网)。因此,互联网是“网络的网络(Network of Networks)”。
- 因特网(Internet)是世界上最大的互连网络(用户数庞大,互联的网络数也很庞大)。与网络相连的计算机常称为主机。
internet和Internet的区别:
-
internet(互联网)是一个通用名词,它泛指由多个计算机网络互连而成的计算机网络。在这些网络之间的通信协议可以是任意的。
-
Internet(因特网)是一个专用名词,它指当前全球最大的、开放的、由众多网络相互连接而成的特定互连网,它采用TCP/IP协议族作为通信的规则,其前身是美国的ARPANET。
1.2 因特网发展的三个阶段
互联网服务提供者ISP(Internet Service Provider):在很多情况下,ISP就是一个进行商业活动的公司。例如,中国电信、中国联通和中国移动等公司都是我国最有名的ISP。
1.3 因特网的组成
- 边缘部分:由所有连接在互联网上的主机组成。这部分是用户直接使用的,用来进行通信(传达数据、音频或视频)和资源共享。这些主机又叫端系统(end system)。
- 核心部分:由大量网络和连接这些网络的路由器组成。这部分是为边缘部分提供服务的(提供连通性和交换)。
2.三种交换方式
2.1 电路交换(Circuit Switching)
电话交换机接通电话线的方式称为电路交换。
从通信资源的分配角度来看,交换(switching)
就是按照某种方式动态地分配传输线路地资源。
电路交换地三个步骤:
- 建立连接(分配通信资源)
- 通话(一直占用通信资源)
- 释放连接(归还通信资源)
2.2 报文交换(Message Switching)
源地址主机发送的信息整体被称为报文。报文交换采用存储转发技术。
- 发送方生成并发送报文
- 网络中的路由器会存储并根据转发表转发该报文,转发的路径不是固定的,比如路由器R1即可以将报文转发给路由器R2或者R5
- 接收方接收报文
2.3 分组交换(Packet Switching)
分组交换采用存储转发技术。过程与报文交换类似,但发送的是一个分组而非整个报文。
把一个报文(message)划分为几个分组后再进行传送;分组的首部叫做“报文”,包含一些控制信息;分组又称为**“包”**。
2.4 对比
- 若要连续传送大量的数据,且其传送时间远大于连接建立时间,则电路交换的传输速率较快。
- 报文交换和分组交换不需要预先分配传输带宽,在传送突发数据时可提高整个网络的信道利用率。
- 由于一个分组的长度往往远小于整个报文的长度,因此分组交换比报文交换的时延小,同时也具有更好的灵活性。
3.计算机网络的定义
- 计算机网络的精确定义并未统一。
- 计算机网络的最简单的定义是:一些互相连接的、自治的计算机集合。
- 互连:指计算机之间可以通过有线或无线的方式进行数据通信;
- 自治:指独立的计算机,它有自己的硬件和软件,可以单独运行使用;
- 集合:指至少需要两台计算机;
- 计算机网络的较好定义是:计算机网络主要是由一些通用的、可编程的硬件互连而成的,而这些硬件并非专门用来实现某一特定目的(例如,传送数据或视频信号)。这些可编程的硬件能够用来传送多种不同类型的数据,并能支持广泛的日益增长的应用。
- 计算机网络所连接的硬件,并不限于一般的计算机,而是包括了智能手机等智能硬件。
- 计算机网络并非专门用来传送数据,而是能够支持很多种的应用(包括今后可能出现的各种应用)。
4.计算机网络的分类
4.1 按照网络的作用范围进行分类
- 广域网WAN(Wide Area Network):作用范围通常为几十到几千公里,是互联网的核心部分。
- 城域网MAN(Metropolitan Area Network):作用范围一般是一个城市,距离约为5~50km。
- 局域网LAN(Local Area Network):作用范围较小,如1km左右。
- 个人区域网PAN(Personal Area Network):将电子设备用无线技术连接起来的网络,范围大约在10m左右。
4.2 按照网络的使用者进行分类
- 共用网(public network):指电信公司(国有或私有)出资建造的大型网络,也叫做公众网。
- 专用网(private network):由某个单位搭建的网络,不向其他人提供服务。
4.3 按照拓扑结构分类
总线型结构
- 优点:结构简单
- 缺点:单点故障可能会影响全网
星型结构
- 优点:扩展方便
- 缺点:对中心节点的依赖较大
环型结构
- 优点:结构简单,扩展方便
- 缺点:单点故障可能会影响全网
网型结构
- 优点:扩展方便
- 缺点:冗余太多
4.4 其他分类
5.相关性能指标
比特是计算机中数据量的单位,一个比特就是二进制数字中的1或0。
5.1 速率
连接在计算机网络上的主机在数字信道上传送数据位数的速率,也称为比特率或数据率,常用数据单位是bit/s(b/s,bps)。
单位换算如下:
1
k
b
/
s
=
1
0
3
b
/
s
1kb/s=10^3b/s
1kb/s=103b/s
1 M b / s = 1 0 3 k b / s = 1 0 6 b / s 1Mb/s=10^3kb/s=10^6b/s 1Mb/s=103kb/s=106b/s
1 G b / s = 1 0 3 M b / s = 1 0 6 k b / s = 1 0 9 b / s 1Gb/s=10^3Mb/s=10^6kb/s=10^9b/s 1Gb/s=103Mb/s=106kb/s=109b/s
1 T b / s = 1 0 3 G b / s = 1 0 6 M b / s = 1 0 9 k b / s = 1 0 12 b / s 1Tb/s=10^3Gb/s=10^6Mb/s=10^9kb/s=10^{12}b/s 1Tb/s=103Gb/s=106Mb/s=109kb/s=1012b/s
注意要区分存储容量的单位,1Byte(字节)=8bit(比特)
1
K
B
=
2
10
B
=
1024
∗
8
b
1KB=2^{10}B=1024*8b
1KB=210B=1024∗8b
1 M B = 2 10 K B = 1024 K B 1MB=2^{10}KB=1024KB 1MB=210KB=1024KB
1 G B = 2 10 M B = 1024 M B 1GB=2^{10}MB=1024MB 1GB=210MB=1024MB
1 T B = 2 10 G B = 1024 G B 1TB=2^{10}GB=1024GB 1TB=210GB=1024GB
在速率中,是小写b(比特);而在存储容量中,是大写B(字节)。
5.2 带宽
用来表示网络的通信线路传送数据的能力,通常是指单位时间从网络的某一点到另一点所能通过的“最高数据率”
。可以理解为网络设备所支持的最高速度,单位同速率。
5.3 吞吐量
在单位时间内通过某个网络(或信道、接口)的数据量,单位同速率。吞吐量受网络的带宽或网络的额定速率的限制。
PC机和交换机链路带宽100Mb/s,每秒最多传输100Mb的数据。因为两个服务器速率很慢,所以服务器传输数据给交换机,交换机然后传输数据给PC机一秒钟传输数据最大只能是30Mb/s。
5.4 时延
指数据(一个报文或分组)从网络(或链路)的一端传送到另一端所需要的总时间,也称延迟或迟延,单位是s(秒)。它由4部分构成:发送时延、传播时延、处理时延、排队时延。
- 发送时延:主机或路由器发送数据帧需要的时间。
发 送 时 延 = 数 据 帧 长 度 ( b i t ) 发 送 速 率 ( b i t / s ) 发送时延=\frac{数据帧长度(bit)}{发送速率(bit/s)} 发送时延=发送速率(bit/s)数据帧长度(bit)
- 传播时延:电磁波在信道中传播一定距离所花费的时间。
传 播 时 延 = 信 道 长 度 ( m ) 电 磁 波 在 信 道 上 的 传 播 速 率 ( m / s ) 传播时延=\frac{信道长度(m)}{电磁波在信道上的传播速率(m/s)} 传播时延=电磁波在信道上的传播速率(m/s)信道长度(m)
- 处理时延:主机或路由器在收到分组时要花费一定的时间进行处理,不方便计算。
- 排队时延:分组进入路由器后排队等待的时间,不方便计算。
总时延=发送时延+传播时延+处理时延+排队时延
高速链路,提升的是发送时延而非传播时延。
5.5 时延宽带积
指发送端发送的第一个比特即将到达终点时,发送端已经发出了多少个比特。因此,链路的时延带宽积又称以比特为单位的链路长度。
时延带宽积 = 传播时延×信道带宽
5.6 往返时延RTT(Round-Trip Time)
发送端发送数据开始,到发送端收到来自接收端的确认(接收端收到数据后便立即发送确认),总共经历的时延。
RTT=传播时延x2+处理时间(有时可忽略)
5.7 利用率
利用率分为信道利用率和网络利用率两种。
- 信道利用率:某信道有百分之几的时间时被利用的(有数据通过)。
- 网络利用率:全网络的信道利用率的加权平均。
如果令D0表示网络空闲时的时延,D表示网络当前的时延,U表示利用率,之间的关系如下:
D
=
D
0
1
−
U
D=\frac{D_0}{1-U}
D=1−UD0
可以看到,利用率增大,时延也会增大。故信道利用率并非越高越好。
6.分层结构
6.1 为什么要分层?
- 发起通信的计算机必须将数据通信的通路进行激活。
- 要告诉网络如何识别目的主机。
- 发起通信的计算机要查明目的主机是否开机,并且与网络连接正常。
- 发起通信的计算机要弄清楚,对方计算机中文件管理程序是否已经做好准备工作。
- 确保差错和意外可以解决。
- …
可以采用“分层”的方式解决以上问题,将一个复杂大问题分解成若干子问题,那么子问题就相对来说更加容易研究和处理。
6.2 OSI七层协议
6.2.1 结构
名称 | 英文 | 说明 |
---|---|---|
应用层 | Application Layer | 直接为用户的应用进程提供服务。如HTTP、SMTP、FTP、DNS等 |
表示层 | Presentation Layer | 把数据转换为能与接收者的系统格式兼容并适合传输的格式,即让两个系统可以交换信息 |
会话层 | Session Layer | 负责在数据传输中设置和维护计算机网络中两台计算机之间的通信连接 |
传输层 | Transport Layer | 负责端到端通讯,可靠传输,不可靠传输 ,流量控制,复用分用 |
网络层 | Network Layer | 负责选择路由最佳路径,规划IP地址(ipv4和ipv6变化只会影响网络层),拥塞控制 |
数据链路层 | Data Link Layer | 帧的开始和结束,还有透明传输,差错校验(纠错由传输层解决) |
物理层 | Physical Layer | 定义网络设备接口标准,电气标准(电压),如何在物理链路上传输的更快 |
6.2.2 数据传输
6.3 TCP/IP四层协议
6.4 五层协议
6.4.1 结构
运输层最重要的协议是TCP和UDP协议,而网络层最重要的协议是IP协议。