「作者主页」:士别三日wyx
「作者简介」:CSDN top100、阿里云博客专家、华为云享专家、网络安全领域优质创作者
「专栏简介」:此文章已录入专栏《计算机网络零基础快速入门》
学习目标
- 了解什么是网络,有哪几种网络?
- 了解什么是网络拓扑,常见的拓扑结构有哪几种?
- 了解网络都有哪些性能指标,这些指标的含义是什么?
- 了解什么是网络模型,网络模型分为哪些?
初识计算机网络
一、什么是计算机网络
计算机网络是一个连接分散计算机设备以实现「信息传递」的系统
简单来说就是将多台计算机「连接」在一起,使计算机之间可以互相通信。
二、网络分类
互相连接的计算机数量越多,所占的地方也就越大,按照「地理范围」划分,可以将网络分为四种:局域网、城域网、广域网 和 互联网。
1)局域网
局域网(Local Area Network)简称 LAN ,是最常见、应用最广的一种网络。局域网覆盖的地区范围小,点数没有限制,少到两台,多到几百台;比如公司、学校的网络,就是一个局域网。
2)城域网
城域网(Metropolitan Area Network)简称 MAN ,可以说是局域网在地理位置上的延伸。通常以城市为单位,连接城内的多个局域网。
3)广域网
广域网(Widw Area Network)简称 WAN ,连接不同城市之间的城域网或局域网。
4)互联网
互联网( Internet ),经常被音译成因特网、英特网。通常是指逻辑上全球互连的国际网络。实际上,它是一个概念性的东西,两台能够彼此通信的机器,也可以叫互联网。
上面介绍了几种网络,其实现实生活中,我们遇到最多的是局域网,因为它可大可小。
我们平时出门时,会用到某某地图,看一下目的地的位置以及通往目的地的路线。在局域网中,也有这种地图,用来描述局域网中「设备的位置」,以及设备之间的「连接关系」,局域网的这种地图,叫做网络拓扑图。
三、网络拓扑
网络拓扑图是指用各种设备使用传输介质互联的物理布局。
常见的拓扑结构有四种:星型、树型、总线型、环型。
1)星型
星型结构以一个「核心节点」为中心,其余所有设备与中心节点「互连」。
中心节通常是一个集线器或者交换机,起到一个控制中心的作用。传输数据时,先发送给中心节点,由中心节点发送给目标节点;因此,任意两个节点的通信只需要两步,传输速度快,但安全性低,一旦中心节点出现问题,就会导致全网瘫痪。
2)树型
树型结构就是树状图那种分级结构。
节点之间可以双向传输,结构简单、灵活,但安全性低,任意节点出现问题,都会影响整个网络的正常运行。
3)总线型
总线型结构使用一个「总线」连接所有设备。
网络所有节点的数据都通过总线传输,效率较低,但安全性高,单一节点出现问题时,对整体网络影响很小。因此,总线型结构是使用最普遍的一种网络结构。
4)环型
环型结构的设备「首尾相连」形成一个闭环
设备和线路比较节省,只有一条传输通道,通信效率低、并且安全性差,单一节点出现问题,就会导致全网瘫痪。
四、网络模型
互联网是一个极其复杂且庞大的网络,里面充斥着各种各样的设备和协议,为了能够系统化的管理,人们按照功能划分为多个小的模块,也就是分层的方式,以减小管理的难度,每一层只负责自己的功能,层与层之间使用接口连接,每一层的改进不会影响其他层。
常见的分层结构有三种:七层模型、四层模型 和 五层模型。
1)七层模型
七层模型也叫 「OSI参考模型」,是国际标准化组织(ISO)制定的标准体系。
它将网络分为七个层次:物理层、数据链路层、网络层、传输层、会话层、表示层、应用层。
七层模型是一种理想化,现实生产环境中很难满足,因此应用较少。
2)四层模型
四层模型是指「TCP/IP参考模型」 ,是从实际生产环境中演化出来的网络体系结构。
它将网络分为四个层次:网络接入层、网络层、传输层、应用层。
3)五层模型
五层模型就叫「五层参考模型」 ,是为了方便学习而抽象出来的参考模型。
它将网络分为五个层次:物理层、数据链路层、网络层、传输层、应用层。
后续的文章中,我们也将按照五层参考模型来学习计算机网络。
五、性能指标
工作交流中,通常会使用一些「专业名词」。
比如客户问你:我们网络时延比较大,应该怎么优化?
你跟她说你不知道,那场面不要太尴尬。
接下来,我们就学习几个比较常用的网络性能指标。
1. 比特
计算机之间使用 0101 进行通信,每一个0或1称为一个 「比特」,单位是「位」。
每8个比特相当于1个字节,即 8 bit = 1 Byte
比特之间的换算关系如下:
- 1KB = 210 B = 1024 B = 1024 * 8 b
- 1MB = 210 KB = 1024 KB
- 1GB = 210 MB = 1024 MB
- 1TB = 210 GB = 1024 GB
2. 速率
计算机在传输数据时,是一个比特一个比特进行传输的,每次传输一个0或一个1。
单位时间内能够传输多少个比特称为 「速率」。
比如计算机1秒内发送了10个比特(0101010101),那么速率就是10比特每秒
单位时间内传输的比特个数越多,速率也就越高。
速率的单位由低到高可以分为 b/s,kb/s,Mb/s,Gb/s,Tb/s
速率之间的换算关系如下:
- 1 kb/s = 103 b/s = 1000 b/s
- 1 Mb/s = 103 kb/s = 106 b/s
- 1 Gb/s = 103 Mb/s = 106 kb/s = 109 b/s
- 1 Tb/s = 103 Gb/s = 106 Mb/s = 109 kb/s = 1012 b/s
需要注意的是,比特在用在「存储」单位时,换算单位是 1024
而用在「速率」单位时,换算单位是 1000
3. 带宽
单位时间内能传输的最大速率称为「带宽」。
比如我的电脑是百兆网线,1秒钟内最多能传输100M个比特,那么带宽就是100M/s
4. 吞吐量
单位时间内传输的比特个数称为「吞吐量」
比如电脑1秒内传输了100M个比特,那么吞吐量就是100M/s
5. 时延
数据从一端传送到另一端所消耗的时间称为「时延」,单位 s。
比如我向你发送一条消息,从我发出消息开始,到你收到消息结束,一共经过了10秒,那么时延就是 10s
6. 往返时延RTT
从发送方发送数据开始,到发送方收到接收方的确认所消耗的时间称为「往返时延」
比如我向你发送一条消息,你收到消息后会向我返回一个确认信息,告诉我你收到我的消息了;从我发送消息开始,到我收到你的确认信息结束,一共经过了10秒,那么往返时延就是 10s
测试往返时延可以使用 ping 命令,比如测试我的电脑到百度的往返时延
D:\>ping www.baidu.com
正在 Ping www.a.shifen.com [110.242.68.4] 具有 32 字节的数据:
来自 110.242.68.4 的回复: 字节=32 时间=15ms TTL=52
来自 110.242.68.4 的回复: 字节=32 时间=14ms TTL=52
来自 110.242.68.4 的回复: 字节=32 时间=15ms TTL=52
来自 110.242.68.4 的回复: 字节=32 时间=14ms TTL=52
110.242.68.4 的 Ping 统计信息:
数据包: 已发送 = 4,已接收 = 4,丢失 = 0 (0% 丢失),
往返行程的估计时间(以毫秒为单位):
最短 = 14ms,最长 = 15ms,平均 = 14ms
4次ping命令的平均时间是 14ms,那么往返时延就是 14ms(14毫秒)