精炼计算机网络——序章(二)

news2024/9/24 13:22:29

文章目录

  • 前言
  • 1.4 计算机网络在我国的发展
  • 1.5 计算机网络的类别
    • 1.5.1计算机网络的定义
    • 1.5.2 几种不同类别的计算机网络
  • 1.6 计算机网络的性能
    • 1.6.1 计算机网络的性能指标
    • 1.6.2 计算机网络的非性能特征
  • 1.7 计算机网络体系结构
    • 1.7.1 计算机网络体系结构的形成
    • 1.7.2 协议与划分层次
    • 1.7.3 具有五层协议的体系结构
    • 1.7.4 实体、协议、服务和服务访问点
    • 1.7.5 TCP/IP的体系结构
  • 总结


前言

上一篇文章简单介绍了计算机网络的一些基本概念性名词,读者需要重点掌握电路交换,报文交换,分组交换的内涵与区别。

1.4 计算机网络在我国的发展

该部分为了解内容,有兴趣的可自行了解,不必深入掌握,故不在文章中列出来。

1.5 计算机网络的类别

1.5.1计算机网络的定义

一种较好的定义:计算机网络主要是由一些通用的、可编程的硬件互连而成的,而这些硬件并非专门用来实现某一特定目的。这些可编程的硬件能够用来传送多种不同类型的数据,并能支持广泛的和日益增加的应用。
(1) 计算机网络所连接的硬件,并不限于一般的计算机,而是包括了智能手机或智能电视机。
(2) 计算机网络并非专门用来传送数据,而是能够支持很多种应用。

1.5.2 几种不同类别的计算机网络

1、按照网络的作用范围进行分类。
(1) 广域网WAN (2) 城域网MAN (3) 局域网LAN (4) 个人区域网PAN。
若中央处理机之间的距离非常近,则一般就称之为多处理机系统而不称它为计算机网络。

2、 按照网络的使用者进行分类
(1) 公用网 (2) 专用网

3、用来把用户接入到互联网的网络
这种网络就是接入网AN,它又称为本地接入网或居民接入网。这是一类比较特殊的计算机网络。
接入网实际上就是本地ISP所拥有的网络,它既不是互联网的核心部分,也不是互联网的边缘部分。接入网由某个端系统连接到本地ISP的第一个路由器(也称为边缘路由器)之间的一些物理链路所组成。

1.6 计算机网络的性能

1.6.1 计算机网络的性能指标

1、速率
比特意思是一个"二进制数字”。一个比特就是二进制数字中的一个1或者一个0。比特也是信息论中使用的信息量的单位。网络技术中的速率指的是数据的传送速率,它也称为数据率或比特率。

速率的单位是bit/s。 当速率较高时,就在bit/s的前面加上一个字母,例如K = 103 = 千, M = 106 = 兆, G = 109 = 吉。 T = 1012 = 太。

当提到网络的速率时,往往指的是额定速率或者标称速率,而并非网络实际上运行的速率。

2、带宽
(1) 带宽本来是指某个信号具有的频带宽度。型号的带宽是指该信号所包含的各种不同频率成分所占据的频率范围,这种意义的带宽的单位是

在过去很长的一段时间,通信的主干线路传送的是模拟信号。因此,表示某信道允许通过的信号频带范围就称为该信道的带宽(或通频带)

(2) 在计算机网络中,带宽用来表示网络中某通道传送数据的能力,因此网络带宽表示在单位时间内网络的某信道所能通过的“最高数据率”,这种意义的带宽的单位就是数据率的单位bit/s。

前者为频域称谓,而后者为时域称谓,其本质是相同的。一条通信链路的“带宽”越宽,其所能传输的“最高数据率”也越高。

3、吞吐量
吞吐量表示在单位时间内通过某个网络(或信道、接口)的实际数据量。吞吐量更经常地用于对现实世界中的网络的一种测量,以便知道实际上到底有多少数据量能够通过网络。显然,吞吐量受网络带宽或网络额定频率的限制。

4、时延
时延是指数据(一个报文或分组,甚至比特)从网络(或链路)的一端传送到另一端所需的时间。时延有时也称为延迟迟延

网络中的时延是由一下几个不同的部分组成的:
(1) 发送时延 发送时延是主机或路由器发送数据帧所需要的时间,也就是从发送数据帧的第一个比特算起,到该帧的最后一个比特发送完毕所需的时间,因此发送时延也叫作传输时延。

发送时延 = 数据帧长度 (bit) / 发送速率 (bit/s)

(2) 传播时延 传播时延是电磁波在信道中传播一定的距离需要花费的时间。
传播时延 = 信道长度(m)/电磁波在信道上的传播速率(m/s)

发送时延发生在机器内部的发送器中,与传输信道的长度(或信号传送的距离)没有任何关系
传送时延则发生在机器外部的传输信道媒体上,而与信号的发送速率无关。信号传送的距离越远,传播时延就越大。

(3) 处理时延:主机或路由器在收到分组时要花费一定的时间进行处理

(4) 排队时延:分组在经过网络传输时,要经过许多路由器。但分组在进入路由器后要现在输入队列中排队等待处理。
排队时延的长短往往取决于网络当时的通信量

总时延 = 发送时延 + 传输时延 + 处理时延 + 排队时延

对于高速网络链路,我们提高的仅仅是数据的发送速率而不是比特在链路上的传播速率。荷载信息的电磁波在通信线路上的传播速率取决于通信线路的介质材料,而与数据的发送速率并无关系。提高数据的发送速率只是减小了数据的发送时延。

5、时延带宽积
将传播时延和带宽相乘,就得到传播时延带宽积。
时延带宽积 = 传播时延 * 带宽
时延带宽积表示链路可容纳多少个比特。

链路的时延带宽积又称为以比特为单位的长度。

6、往返时间RTT
发送时间 = 数据长度/发送速率
有效数据率 = 数据长度/(发送时间 + RTT)

7、利用率
利用率有信道利用率和网络利用率两种。信道利用率指出某信道有百分之几的时间是被利用的(有数据通过)。
网络利用率则是全网络的信道利用率的加权平均值。
信道利用率并非越高越好,当某信道的利用率增大时,该信道引起的时延也就迅速增加。

当网络的通信量很少时,网络产生的时延并不大。但在网络通信量不断更大的情况下,由于分组在网络节点(路由器或节点交换机)进行处理时需要排队等候,因此网络引起的时延就会增大。
D0:网络空闲时的时延
D:网络当前的时延
设现在的网络利用率为U
D = D0 / (1 - U)
信道利用率或网络利用率过高就会产生非常大的时延。

1.6.2 计算机网络的非性能特征

(1) 费用
(2) 质量
(3) 标准化
(4) 可靠性
(5) 可扩展性和升级性
(6) 易于管理和维护

1.7 计算机网络体系结构

1.7.1 计算机网络体系结构的形成

相互通信的两个计算机系统必须高度协调工作才行,而这种“协调”是相当复杂的。
最初的ARPARNET设计时提出了分层的方法。“分层”可将庞大而复杂的问题转化为若干较小的局部问题,而这些较小的局部问题就比较易于研究和处理。

国际标准化组织ISO于1977年成立了专门机构研究该问题。他们提出一个试图使各种计算机在世界范围内互连成网的标准框架,即开放系统互连基本参考模型

1.7.2 协议与划分层次

为进行网络中的数值交换而建立的规则、标准或约定称为网络协议,网络协议也简称为协议
网络协议主要由一下三个要素组成
(1) 语法,即数据与控制信息的结构或格式
(2) 语义,即需要发出何种控制信息,完成何种动作以及做出何种反应。
(3) 同步,即事件实现顺序的详细说明。

分层能带来很多好处
(1) 各层之间是独立的
(2) 灵活性好
(3) 结构上可分割开
(4) 易于实现和维护
(5) 能促进标准化工作

计算机网络的各层及其协议的集合就是网络的体系结构。换言之,计算机网络的体系结构就是这个计算机网络及其构件所应完成的功能的精确定义。

体系结构是抽象的,而实现规则则是具体的,是真正在运行的计算机硬件和软件。

1.7.3 具有五层协议的体系结构

三种不同的体系结构

(该部分是未来学习的重点,下面所描述的读者现在只需稍微了解,留有印象即可)

(1) 应用层
应用层的任务是通过应用进程间的交互来完成特定网络应用。应用层协议定义的是应用进程间通信和交互的规则。这里的进程就是指主机中正在运行的程序。对于不同的网络应用需要不同的应用层协议。

(2) 运输层
运输层的主要任务就是负责两台主机中进程之间的通信,提供通用的数据传输服务。应用进程利用该服务传送应用层报文。

由于一台主机可同时运行多个进程,因此运输层有复用和分用的功能。复用就是多个应用层进程可同时使用下面运输层的服务,分用和复用相反,是运输层把收到的信息分别支付上面应用层中的相应进程。

运输层主要使用以下两种协议:
<1> 传输控制协议TCP——提供面向连接的、可靠的数据传输服务,其数据传输的单位是报文段
<2> 用户数据报协议UDP——提供无连接的尽最大努力的数据传输服务(不保证数据传输的可靠性),其数据传输的单位是用户数据报

(3) 网络层
网络层负责为分组交换网上的不同主机提供通信服务。在发送数据时,网络层把运输层产生的报文段或用户数据报封装成分组或包进行传送。在TCP/IP体系中,由于网络层使用IP协议,因此分组也叫做IP数据报,或简称为数据报

无论在哪一层传送的数据单元,都可笼统地用“分组”来表示。

网络层的具体任务有两个。第一个任务是通过一定的算法,在互联网上的每一个路由器上生成一个用来转发分组的转发表。第二个任务较为简单,就是每一个路由器在接收到一个分组时,依据转发表中指明的路径把分组转发到下一个路由器。这样就可以使源主机运输层所传下来的分组,能够通过合适的路由最终到达目的主机。

互联网是由大量的异构网络通过路由器相互连接起来的,互联网使用的网络层协议是无连接的网际协议IP和许多路由选择协议,因此互联网的网络层也叫做网际层IP层

(4) 数据链路层
数据链路层常简称为链路层,在两个相邻节之间传送数据时,数据链路层将网际层交下来的IP数据报组装成帧,在两个相邻节点节点间的链路上传送帧。每一帧包括数据必要的控制信息(如同步信息,地址信息,差错控制等)。

在接收数据时,控制信息使接收端能够知道一个帧从哪个比特开始和到哪个比特结束。这样数据链路层在收到一个帧后,就可从中提取出数据部分,上交给网络层。

控制信息还使接收端能够检测到所收到的帧中有无差错。如果发现差错,数据链路层就简单地丢弃这个出错的帧,以免继续在网络中传送下去,白白浪费网络资源。如果需要改正数据在数据链路层传输时出现的差错,那么就要采用可靠传输协议来纠正出现的差错。

(5) 物理层
在物理层上所传输数据报的单位是比特。因此物理层要考虑用多大的电压代表“1”或“0”,以及接收方如何识别出发送方所发送的比特。物理层还要确定连接电缆的插头应当有多少根引脚以及各引脚应如何连接。

在互联网所使用的各种协议中,最重要的和最著名的就是TCP和IP两个协议。现在提到的TCP/IP往往是TCP/IP协议簇

各层协议实际上就是在各个对等层之间传递数据时的各项规定。

在文献中也还可以看到属于**“协议栈”**。这是因为几个层次画在一起很像一个栈的结构。

1.7.4 实体、协议、服务和服务访问点

当研究开放系统中的信息交换时,往往使用实体这一较为抽象的名词表示任何可发送或接收信息的硬件或软件进程。

协议时控制两个对等实体(或多个实体)进行通信的规则的集合。协议的语法方面的规定定义了所交换的信息的格式,而协议的语义方面的规则就定义了发送者或接收者所要完成的操作。

在协议的控制下,两个对等实体间的通信使得本层能够向上一层提供服务。要实现本层协议,还需要使用下面一层所提供的服务。

首先,协议的实现保证了能够向上一层提供服务。使用本层服务的实体只能看见服务而无法看见下面的协议。也就是说,下面的协议对上面的实体是透明的。

其次,协议是“水平”的,即协议是控制对等实体之间通信的规则。但服务是**“垂直”**的,即服务是由下层向上层通过层间接口提供的。另外,并非在一个层内完成的全部功能都称为服务。只有那些能被高一层实体“看得见“的功能才能称之为”服务“。上层使用下层所提供的服务必须通过与下层交换一些命令,这些命令在OS中称为服务原语。

在同一系统中相邻两层的实体进行交互(即交换信息)的地方,通常称为服务访问点SAP,SAP实际上就是一个逻辑接口。OSI把层与层之间交换的数据的单位称为服务数据单元SDU,它可以与PDU不一样。

计算机网络的协议还有一个很重要的特点,就是协议必须把所有不利的条件事先都估计到,而不能假定一切都是正常的和非常理想的。

因此看一个计算机网络协议是否正确,不能只看在正常情况下是否正确,还必须非常仔细地检查协议是否能应付任何一种出现概率极小的异常情况。

1.7.5 TCP/IP的体系结构

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

总结

在本篇文章中,读者应须理解计算机网络的性能指标,速率、带宽、吞吐量,时延、时延带宽积、往返时间RTT、利用率。此外还需初步理解计算机网络体系结构,简单了解物理层,数据链路层,网络层,传输层,应用层。当读者读完序章的内容后,我们将重点对这五层进入深入的学习与探讨。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/488351.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

ChatExcel?

大家好&#xff0c;我是章北海mlpy 最近在浅学LangChain&#xff0c;在大模型时代&#xff0c;感觉这玩意很有前途。 LangChain是一个开源的应用开发框架&#xff0c;目前支持Python和TypeScript两种编程语言。 它赋予LLM两大核心能力&#xff1a;数据感知&#xff0c;将语言模…

5月1日起正式实施!图解《关键信息基础设施安全保护要求》

2023年5月1日&#xff0c;GB/T 39204-2022《信息安全技术 关键信息基础设施安全保护要求》将正式实施。作为我国第一项关键信息基础设施安全保护的国家标准&#xff0c;对于我国关键信息基础设施安全保护有着极为重要的指导意义。 《信息安全技术 关键信息基础设施安全保护要求…

Swift 技术 监听电话中断,音乐(用于恢复播放音乐)(源码)

一直觉得自己写的不是技术&#xff0c;而是情怀&#xff0c;一个个的教程是自己这一路走来的痕迹。靠专业技能的成功是最具可复制性的&#xff0c;希望我的这条路能让你们少走弯路&#xff0c;希望我能帮你们抹去知识的蒙尘&#xff0c;希望我能帮你们理清知识的脉络&#xff0…

【高烧39°考研上岸】23上交819考研经验分享

笔者来自通信考研小马哥23上交819全程班学员 一&#xff0c;基本情况介绍和考研经历 大家好&#xff0c;首先介绍一下我的基本情况。我本科毕业于东南大学&#xff0c;报考的是上海交通大学电子系电子与通信工程专业&#xff08;专业学位&#xff09;。我二战上岸&#xff0c…

Selenium:HTML测试报告

自动化测试过程中&#xff0c;获得用例的执行结果后&#xff0c;需要有具象化、简洁明了的测试结果&#xff0c;比如&#xff1a;用例执行时间、失败用例数、失败的原因等&#xff0c;这时候&#xff0c;就需要用到测试报告。 HTML测试报告是python语言自带的单元测试框架&…

等保各项费用支出明细

等保收费主要依据文件: 等保工作的定级指南文件_luozhonghua2000的博客-CSDN博客 Q7:做等级保护要多少钱? 答:开展等级保护工作主要包含:规划费用、建设或整改费用、运维费用、测评费用等,具体费用因各单位现状、保护对象承载业务功能、重要程度、所在地区等差异较大。 …

Input事件在应用中的传递(一)

Input事件在应用中的传递(一) hongxi.zhu 2023-4-25 前面我们已经梳理了input事件在native层的传递&#xff0c;这一篇我们接着探索input事件在应用中的传递与处理&#xff0c;我们将按键事件和触摸事件分开梳理&#xff0c;这一篇就只涉及按键事件。 一、事件的接收 从前面的…

Kubernetes(k8s)概念介绍

文章目录 1. k8s概述和特性2. k8s架构组件3. k8s核心概念 1. k8s概述和特性 K8s是一个开源的用于管理云平台中多个主机上的容器化的应用&#xff0c;k8s的目标是让部署容器化的应用简单并且高效&#xff0c;k8s提供了应用部署&#xff0c;规划&#xff0c;更新&#xff0c;维护…

R语言 | 程序的流程控制

目录 一、if语句 1.1 if语句的基本操作 1.2 if...else语句 1.3 if语句也可有返回值 1.4 if...else if...else if...else 1.5 嵌套式if语句 二、递归式函数的设计 三、向量化的逻辑表达式 3.1 处理向量数据if...else的错误 3.2 ifelse()函数 四、switch语句 五、for循…

塔望3W消费战略全案丨窄赛道,高增长 普麦尔知己精酿,掘金中国啤酒利基市场

普麦尔 知己精酿 客户&#xff1a;上海麦仕醇啤酒有限公司 品牌&#xff1a;普麦尔 purmalz beer 服务&#xff1a;3W消费战略 品牌全案 掘金中国啤酒利基市场 精酿啤酒(Craft Beer)的概念最早起源于美国。通常与传统的工业啤酒形成较大的反差&#xff0c;精酿最早的称呼 …

C learning_10 (函数的嵌套调用和链式访问、函数的声明和定义、函数递归)

目录 函数的嵌套调用和链式访问 嵌套调用 函数可以嵌套调用&#xff0c;可以嵌套定义吗&#xff1f; 链式访问 函数的声明和定义 声明 定义 函数递归 递归的两个必要条件 函数的嵌套调用和链式访问 嵌套调用 函数嵌套调用指的是在一个函数中调用另外一个函数&#xf…

OpenSSH升级版本

项目被扫出openssh有严重漏洞&#xff0c;因此要升级openssh到最新版本 1、为防止安装失败&#xff0c;无法用ssh做远程连接&#xff0c;因此先安装telnet防一手 yum -y install telnet*systemctl enable telnet.socketsystemctl start telnet.socket注&#xff1a;安全文件关…

【星戈瑞】脂溶性CY5.5马来酰亚胺Cyanine5.5 maleimide

脂溶性CY5.5马来酰亚胺是一种荧光染料&#xff0c;其分子中含有马来酰亚胺结构&#xff0c;结构中的共轭体系赋予其良好的光学性质。该染料在红外区域有较强的吸收峰&#xff0c;具有较高的荧光量子产率和较长的荧光寿命&#xff0c;因此被应用于细胞和生物分子的荧光标记和成像…

cleanmymac正式版mac电脑清理软件

电脑清理软件在我们的电脑使用过程中是非常实用便捷的清理软件.当电脑使用了一段时间内,电脑就会产生各种各样的垃圾文件,比如说残留的注册表或者无效的注册表,系统碎片以及毫无用处的文件等,这些的存在将会极大程度地拖慢电脑的运行速度,而你删除的话可能会删除本不能删除的文…

解锁新技能《Java绘制2D图形验证码方法》

一、常见的图形验证码有如下三种&#xff1a; 字母数字混合&#xff08;干扰线&#xff09;&#xff1b;纯数字&#xff08;干扰线&#xff09;&#xff1b;纯字母&#xff08;干扰线&#xff09;&#xff1b; 二、示例图如下&#xff1a; 三、案例代码 问题一&#xff1a;绘…

LC-2106. 摘水果(滑动窗口)

2106. 摘水果 难度困难78 在一个无限的 x 坐标轴上&#xff0c;有许多水果分布在其中某些位置。给你一个二维整数数组 fruits &#xff0c;其中 fruits[i] [positioni, amounti] 表示共有 amounti 个水果放置在 positioni 上。fruits 已经按 positioni 升序排列 &#xff0c…

C语言动态内存管理与文件操作:打造高效通讯录

本篇博客会讲解如何使用C语言实现一个通讯录。实现通讯录的过程中&#xff0c;会大量用到C语言的知识点&#xff0c;包括但不限于&#xff1a;函数、自定义类型、指针、动态内存管理、文件操作&#xff0c;这些知识点在我的其他博客中都有讲解过&#xff0c;欢迎大家阅读&#…

进程及进程管理

Linux基础 提示&#xff1a;个人学习总结&#xff0c;仅供参考。 一、Linux系统部署 二、服务器初始化 三、文件和用户管理 四、用户的权限 五、进程及进程管理 提示&#xff1a;文档陆续更新整理 进程及进程管理 Linux基础一、进程简介&#xff08;一&#xff09;进程三问…

面向万物智联的应用框架的思考和探索(上)

原文&#xff1a;面向万物智联的应用框架的思考和探索&#xff08;上&#xff09;&#xff0c;点击链接查看更多技术内容。 应用框架&#xff0c;是操作系统连接开发者生态&#xff0c;实现用户体验的关键基础设施。其中&#xff0c;开发效率和运行体验是永恒的诉求&#xff0c…

代码命名规范是真优雅呀!代码如诗

日常编码中&#xff0c;代码的命名是个大的学问。能快速的看懂开源软件的代码结构和意图&#xff0c;也是一项必备的能力。那它们有什么规律呢&#xff1f; Java项目的代码结构&#xff0c;能够体现它的设计理念。Java采用长命名的方式来规范类的命名&#xff0c;能够自己表达…