第一章-计算机网络概述(二)

简介: 第一章-计算机网络概述(二)

1.4、报文交换方式

最简单的计算机网络只有两台计算机和一条链路(两个结点一条链路),这种情况是不需要交换的。如果有多台计算机需要通信,则需要利用交换技术实现它们之间一对一的通信。

典型的网络交换方式:电路交换和分组交换

电路交换

电路交换: 整个报文的比特流连续地从源点直达终点,好像一条物理的线路直接将源点和终点连接起来一样。

电路交换来源于电话线,如图,两部电话之前使用1条电线连接。但如果有五部电话需要互相通信,这时的电话线就需要10条,与电话数量平方成正比,这会造成电线数量太大,如果放在现实中成本太高、增加了维护成本(复杂)。

如果解决上面的问题?这时我们可以使用一个电话交换机(中间设备),将电话连接起来。如图,电话交换机就像一个代理,如果某两台电话需要通信,拨号的一方先请求建立连接,先经过交换机,被叫电话会听到交换机的拨号,这时连接建立成功了,这是一条专用物理通路专用物理通路,保证了双方的通信资源,在使用时不会被占用。

电路交换三个步骤:建立连接(分配通信资源)->通话(一直占用通信资源)->释放连接(归还通信资源)

当使用电路交换来传送计算机数据时,其线路的传输效率往往很低。因为计算机数据是突发式地出现在传输线路上,线路真正的传输数据的时间不到10%,这会造成大部分时间都是空闲、浪费的。因此计算机网络通常采用分组交换。

分组交换

分组交换: 将整个报文划为为一个个的分组,传送到相邻结点,存储下来后查找转发表,转发到下一个结点。

注意:分组交换机输入输出接口可以并行工作,当输出再发送一个分组时,其输入接口可以接收一个分组。

计算机网络主要采用分组交换技术。通常我们把发送的数据称为一个报文,在发送报文前,把这整块报文划分成一个个更小的等长数据段。如,每个数据段 1024bit ,在每个数据段加上首部(Header) 后,就构成了一个分组(Packet),又称为 “包” ,分组的首部称为 “包头”

首部:包含目的地址和源地址等控制信息。

计算机网络中两类典型的分组交换机:路由器和二层交换机

主机H6用户和主机H2用户通信过程?

假设,H6主机需要发送一个报文,我们知道了计算机网络中使用的是分组交换,因此,我们把H6的报文分组成一个一个的数据段,每个数据段都添加一个首部。之后,经过路由器R1,这时R1首先将分组暂存下来,再检查其首部信息,因为首部中包含目的地址和源地址等信息,因此,R1对照自己的路由表(地址转发表)找到合适的接口数据段转发出去,这样一步一步经过多个路由器最终把分组转发到目的主机H2,并且还原报文。

报文交换

报文交换: 整个报文先传送到相邻结点,全部存储下来后查找转发表,转发到下一个结点。

报文交换和分组交换对比理解:分组交换需要将发送的报文划分为一个一个的分组,而报文不需要划为直接发送整个报文。


三种交换方式对比

1.5、性能指标

性能指标从不同角度度量计算机网络的性能。

速率

速率: 是数据的传送速率,也称数据率或比特率,是计算机网络中最重要的一个性能指标。

比特:是计算机中数据量的单位,一个比特是二进制数字中的一个1或0。

小知识

为什么我们买的磁盘的大小是250G,到了自己计算机中就成了232G呢?

因为,厂家的数量单位GB中的G为10的9次方,而操作系统数量单位GB中的G为2的30次方

带宽

带宽本来是某个信号具有的频带宽度(范围),在计算机网络中,带宽用来表示网络某通道传送数据的能力,某一点到另一点所通过的 “最高数据率”。单位:Hz(KHz、MHz、GHz)。

一条通信链路的 “频带宽度” 越宽,传输数据的 “最高数据率” 也越高。

吞吐量

吞吐量也称吞吐率,表示在单位时间内通过某个网络(或信道、接口)的数据量。

吞吐量被经常用于对现实世界中的网络的一种测量,以便知道实际上到底有多少数据量能够通过网络。

吞吐量受网络的带宽或网络的额定速率的限制。例如,100Mbit/s的以太网,其吞吐量只有70Mbit/s。

时延

时延是指数据(一个报文或分组)从网络(或链路)的一端到另一端所需要的时间,也称为延迟或迟延。

时延分为三种:发送时延、传播时延、处理时延。

发送速率受限于信道带宽,所以一般计算发送时延时取带宽的值而不是发送速率的值。

目录
相关文章
|
2月前
|
机器学习/深度学习 存储 自然语言处理
深度学习入门:循环神经网络------RNN概述,词嵌入层,循环网络层及案例实践!(万字详解!)
深度学习入门:循环神经网络------RNN概述,词嵌入层,循环网络层及案例实践!(万字详解!)
|
2月前
|
机器学习/深度学习 PyTorch API
深度学习入门:卷积神经网络 | CNN概述,图像基础知识,卷积层,池化层(超详解!!!)
深度学习入门:卷积神经网络 | CNN概述,图像基础知识,卷积层,池化层(超详解!!!)
|
4月前
|
存储 网络协议 安全
|
4月前
|
数据采集 移动开发 Python
六:《智慧的网络爬虫》— 正则表达式概述
【8月更文挑战第7天】本文介绍了正则表达式的基本概念、用途,如表单验证和爬虫,以及Python中re模块的使用,包括match(),match()函数、元字符、预定义字符集、重复匹配、位置匹配、非贪婪模式和re模块的常用方法如compile(),search(),findall(),split(),sub()等。
75 1
六:《智慧的网络爬虫》— 正则表达式概述
|
3月前
|
Linux 调度 Docker
容器网络概述
【9月更文挑战第9天】容器技术利用如命名空间(namespace)和控制组(cgroup)等技术创建隔离环境,实现资源限制与独立运行。命名空间避免命名冲突,cgroup则能对CPU、内存等资源进行限制。容器状态可通过镜像保存并标准化,确保在任何环境中都能复现相同状态。
|
4月前
|
存储 NoSQL MongoDB
八:《智慧的网络爬虫》— MongoDB概述
【8月更文挑战第14天】本篇文章简单介绍了MongoDB的下载和安装以;其基本的操作语法,并附上每个语法的代码示例,为后续的爬虫学习打下基础
49 0
八:《智慧的网络爬虫》— MongoDB概述
|
4月前
|
SQL 数据采集 关系型数据库
七:《智慧的网络爬虫》— MySQL概述
【8月更文挑战第11天】本篇文章详细的介绍了MySQL数据库的安装与使用;并讲述了MySQL的基本操作及其应用语法
55 0
七:《智慧的网络爬虫》— MySQL概述
|
4月前
|
Linux 调度 Docker
容器网络概述
【8月更文挑战第7天】容器就是 Container,而 Container 的另一个意思是集装箱。其实容器的思想就是要变成软件交付的集装箱。集装箱的特点,一是打包,二是标准。
|
4月前
|
存储 运维 监控
|
6月前
|
数据采集 前端开发 开发者
《智慧的网络爬虫》— CSS概述
CSS主要作用是定义网页的样式。如网页元素的位置、大小、颜色等,也是前端及爬虫入门必须要学习的内容
52 7
《智慧的网络爬虫》—  CSS概述