计网体系结构
计算机网络的概述
概念
网络:网状类的东西或系统。
计算机网络:是一个将分散的、具有独立性功能的计算机系统,通过通信设备与线路连接起来,由功能完善的软件实现资源共享和信息传递的系统。即计算机网络是互连(通过通信链路互连互通)的、自治(无主从关系)的计算机集合。
功能
数据通信:即可以实现多台计算机之间的信息交流,例如发送邮件,接收资料等。
资源共享:同一个计算机网络上的其他计算机可使用某台计算机的计算机资源的行为,可共享硬件、软件、数据。
分布式处理:多台计算机各自承担同一份工作任务的不同部分,如 Hadoop平台。
提高计算机可靠性
实现负载均衡
发展
网络把许多计算机连接在一起,互联网(internet:interconnected network)则把许多网络连接在一起,因特网(Internrt)是世界上最大的互联网
-
初创阶段(1960年代初至1970年代末):
- ARPANET的建立: ARPANET是第一个分组交换网络,由美国国防部高级研究计划局(ARPA)于1969年建立。其目标是实现分布式、鲁棒性的通信系统,以应对军事上的网络故障。
- 包交换技术: 这个阶段的关键技术是包交换,它允许数据以离散的包的形式在网络中传输,而不是通过传统的电路交换。
-
分组交换网络的发展(1970年代末至1980年代初):
- TCP/IP协议: 1970年代末至1980年代初,TCP/IP协议套件的发展成为事实上的标准,它定义了数据如何在网络中传输和路由。
- LAN和WAN的发展: 开始出现各种局域网(LAN)和广域网(WAN)技术,如以太网和传输控制协议/互联网协议(TCP/IP)。
-
商用互联网的崛起(1980年代末至1990年代初):
- 商用化和ISP: 互联网逐渐从军事和学术用途发展为商业用途,商用互联网服务提供商(ISP)涌现,为企业和个人提供接入互联网的服务。
- 万维网的发明: 1990年,蒂姆·伯纳斯-李发明了万维网,引入了超文本标记语言(HTML)和统一资源定位符(URL)等概念,使互联网更加用户友好。
-
大众化和全球化(1990年代至2000年代初):
- 普及和多媒体: 互联网的使用普及,大量个人用户和企业加入网络。多媒体内容,如图像和音频,变得更加普遍。
- 宽带互联网: 宽带互联网的兴起提供了更高的带宽,支持更快速和高质量的数据传输。
-
移动互联网时代(2000年代至2010年代初):
- 移动互联网: 移动设备的普及推动了移动互联网的兴起,无线网络技术不断进步,包括3G和4G。
- 社交媒体和云计算: 社交媒体平台崛起,云计算成为一种主流的服务模式,使用户能够访问和分享存储在云中的数据。
-
物联网和5G时代(2010年代至今):
- 物联网(IoT): 物联网的概念变得更加突出,各种设备和传感器开始互联,共同构建智能化的环境。
- 5G技术: 5G技术的推出提供了更高的带宽和低延迟,支持更多复杂的应用,包括虚拟现实、增强现实和自动驾驶等。
组成
组成部分:硬件、软件、协议(一系列规则和约定的集合)
工作方式:
① 边缘部分:用户直接使用:C/S(或B/S)、P2P方式
C/S:Client/Server,客户端与服务器之间的请求方式,因为服务端数量的原因,当请求的机器越多,请求的速度越慢。
B/S:Browser/Server,浏览器与服务器之间的请求方式(本质上依然是C/S,只不过这里的客户端换成了浏览器)
P2P:Peer-to-Peer,对等的请求方式,没有固定的服务端和客户端,即每台机器都可以是客户端,也可以是服务器。当需要请求资源的时候为客户端,当有与其他客户端需要的请求资源时为服务端。即“我为人人,人人为我”的思想。当请求的机器越多,请求的速度就越快。
② 核心部分
功能组成:① 资源子网:实现数据通信
② 资源子网:实现资源共享/数据处理
分类
按分布范围分:广域网WAN(交换技术)、城域网MAN、局域网LAN(广播技术)、个人区域网PAN(蓝牙)
按使用者分:公用网、专用网
按交换技术分:电路交换、报文交换、分组交换
按拓扑结构分:
按传输技术分:① 广播式网络:共享公共通信信道
② 点对点网络:使用分组存储转发和路由选择机制
标准化工作
要实现不同厂商的硬、软件之间能够相互连通,必须遵从统一的标准。标准化对计算机网络至关重要。
法定标准
由权威机构制定的正式的、合法的标准,如OSI。
事实标准
某些公司的产品在竞争中占据了驻留,经过长时间的筛选,这些产品中的协议和技术便成了标准。如TCP/IP
标准形式
RFC(Request For Comments)——因特网标准的形式
RFC上升为因特网正式标准的四个阶段:
- 因特网草案(Internet Draft):该阶段还不是RFC文档。
- 建议标准(Proposed Standard):从这个阶段开始称为RFC文档。
- 草案标准(Draft Standard:于2011年取消该环节)
- 因特网标准(Internet Standard):交由IETF、IAB组织审核通过后正式成为因特网标准。
相关组织
国际标准化组织ISO:OSI参考模型、HDLC协议
国际电信联盟ITU:制定通信规则
国际电气电子工程师协会IEEE:学术机构、IEEE802系列标准、5G
Internet工程任务组IETF:负责因特网相关标准的制定
性能指标
速率
速率即数据率或称数据传输率或比特率,即连接在计算机网络上的主机在数字信道上传输数据位数的速率。
单位是b/s,kb/s,Mb/s,Gb/s,Tb/s

这与存储容量比较相似:1 Byte(字节) = 8Bit(比特)

带宽
“带宽”原本指的是某个信号具有的频带宽度,即最高频率与最低频率之差,单位是赫兹(Hz)。在计算机网络中,带宽用来表示网络的通信线路传送数据的能力,通常是指单位时间内从网络中的某一点到另一点所能通过的“最高数据率”,单位是“比特每秒”,b/s,kb/s,Mb/s,Gb/s。即网络设备所能支持的最高速度。
吞吐量
表示在单位时间内通过某个网络(或信道、接口)的数据量。单位b/s、kb/s、Mb/s等
吞吐量受网络的带宽或网络的额定速率的限制。
时延
指数据(报文/分组/比特流)从网络(或者链路)的一端传送到另一端所需要的时间。也叫做延迟或迟延,单位为s。
时延分为四种:发送时延(传输时延)、传播时延、排队时延、处理时延。
发送时延
从发送分组的第一个比特算起,到该分组的最后一个比特发送完毕所需要的时间。
计算公式:发送时延 = 数据长度 / 信道带宽(发送速率)
如上图,发送的数据长度为10b,则发送时延为1s。
传播时延
电磁波在信道上传播一定距离所花费的一定的时间,取决于电磁波传播速度和链路长度。
计算公式:传播时延 = 信道长度 / 电磁波在信道上的传播速率
排队时延
等待输出/入链路可用的等待时间。
处理时延
检查数据是否有错误,找到传出数据的通道口所花费的时间。
时延带宽积
时延带宽积又称为以比特为单位的链路长度,即“某段链路现在有多少比特”
往返时延RTT
从发送方发送数据开始,到发送方收到接收方的确定(接收方收到数据后立即发送确认),总共经历的时延。
举个最简单的例子,为了检测某个计算机是否已经联网,则可以直接打开cmd,然后在命令行输入ping www.baidu.com
看是否有数据返回回来。
上面的时间就是该计算机与百度网站的往返时延。RTT越大,在收到确认之前,可以发送的数据越多。
其中RTT包含两部分:① 往返传播时延 = 传播时延 * 2 ② 末端处理时间
利用率
信道利用率: 有数据通过时间 / (有 + 无)数据通过时间
网络利用率:信道利用率加权平均值
体系结构&参考模型
分层结构
实体:第n层中的活动元素被称为n层实体,同一层的实体叫对等实体。
协议:为进行网络中的对等实体数据交换而建立的规则、标准或约定称为网络协议(水平层面)。
协议中有三大要素:
- 语法:规定传输数据的格式
- 语义:规定所要完成的功能
- 同步:规定各种操作的顺序
接口(访问服务点SAP):上层使用下层服务的入口
服务:下层为相邻上层提供的功能调用(垂直层面)。第n层在向n+1层提供服务时,此服务不仅包含第n层本身的功能,还包含由下层服务提供的功能。仅仅在相邻层间有接口,且所提供服务的具体实现细节对上一层完全屏蔽。
将三到五层的结构抽取出来:
SDU服务数据单元:为完成用户所需求的功能而应传送的数据。
PCI协议控制信息:控制协议操作的信息。
PDU协议数据单元:对等层次之间传送的数据单位。
ISO/OSI参考模型

应用层
即所有能和用户交互产生网络流量的程序。
经典的应用层服务:① 文件传输(FTP)、电子邮件(SMTP)、万维网(HTTP)…
表现层
用于处理在两个通信系统中交换信息的表示方式(语法和语义)
表示层有以下三个功能:
① 数据格式变换,将应用层传来的数据转换成机器码的形式(二进制)。
② 数据加密解密,将用户层传来的数据进行加密处理,对传出的数据进行解密处理。
③ 数据压缩和恢复,将传入数据进行适当的压缩,减少传输的压力。将传出的数据进行恢复。
会话层
向表示层实体/用户进程提供建立连接并在连接上有序地传输数据。会话即建立同步(SYN),会话之间一旦建立就彼此独立,互不影响。
功能:
① 建立、管理、终止会话。
② 使用校验点可使会话在通信失效时从校验点/同步点继续恢复通信,实现数据同步(适用于传输大文件)。
主要协议:ADSP、ASP
传输层
负责主机中两个进程的通信,即端到端的通信。传输单位是报文段或用户数据报。
功能:① 可靠传输(确认机制)、不可靠传输
② 差错控制(纠正错误的报文段)
③ 流量控制(控制数据发送的速度)
④ 复用分用(复用:多个应用层进程可同时使用下面运输层的服务;分用:运输层把收到的信息分别交付给上面应用层中相应的进程)
主要协议:TCP、UDP
网络层
把分组从源端传到目的端,为分组交换网上的不同主机提供通信服务。网络传输单位是数据报。
功能:① 路由选择(最佳路径)
② 流量控制
③ 差错控制
④ 拥塞控制(若所有结点都来不及接收分组而需要丢弃大量分组时,网络则会处于拥塞状态。因此要采取一定措施,缓解这种拥塞)。

主要协议:IP、IPX、ICMP、IGMP、ARP、RARP、OSPF
数据链路层
主要任务是将网络层传下来的数据报组装成帧。数据链路层/链路层的传输单位是帧。
功能:① 成帧(定义帧的开始和结束)
② 差错控制(帧错+位错)
③ 流量控制
④ 访问(接入)控制:控制对信道的访问
主要协议:SDLC、HDLC、PPP、STP
物理层
主要任务是在物理媒体上实现比特流的透明传输。传输单位是比特。
透明传输:指不管所传数据是什么样的比特组合,都应当能够在链路上传送。
功能:① 定义接口特性
② 定义传输模式
- 单工(Simplex):单工通信是指数据只能在一个方向上传输的通信方式。在单工通信中,通信的两个设备中只有一个设备能够发送信息,而另一个设备只能接收信息。这种通信方式类似于广播或单向广播,其中信息只能沿一个方向传播。
- 半双工(Half Duplex):半双工通信是指数据能够在两个方向上传输,但不能同时进行。在任何给定的时刻,通信的两个设备中只有一个设备能够发送信息,而另一个设备只能接收信息。对许多对讲机和无线电通信系统来说,半双工通信是常见的。
- 双工(Full Duplex):双工通信是指数据能够在两个方向上同时进行。通信的两个设备都能够同时发送和接收信息。这种通信方式常见于电话系统、互联网通信和许多其他实时通信应用中。典型的例子是电话对话,其中两个人可以同时说话而不必等待对方完成。
③ 定义传输速率
④ 比特同步
⑤ 比特编码
主要协议:Rj45、802.3
TCP/IP模型
尽管OSI模型是一个早期的理论框架,但TCP/IP模型在实际应用中更为成功,成为互联网通信的主要标准。TCP/IP模型最初的是TCP/IP协议栈

后面对每一块进行分层,就变成了现在的TCP/IP参考模型

相同点
两个模型都采用的了分层的形式,都是基于独立的协议栈的概念。可以实现异构网络的互联。
不同点
OSI定义三点:服务、协议、接口
OSI先出现,参考模型先于协议发明,不偏向特定协议
TCP/IP设计之初就考虑到异构网互联问题,将IP作为重要层次。
ISO/OSI参考模型 | TCP/IP模型 | |
---|---|---|
网络层 | 无连接+面向连接 | 无连接 |
传输层 | 面向连接 | 无连接+面向连接 |
面向连接分为三个阶段,第一是建立连接,在此阶段,发出一个建立连接的请求。只有在连接成功建立之后,才能开始数据传输,其为第二阶段,当数据传输完毕后,必须释放连接。而面向无连接没有这么多阶段,它可以直接进行数据传输。
相关文章:

计网体系结构
计算机网络的概述 概念 网络:网状类的东西或系统。 计算机网络:是一个将分散的、具有独立性功能的计算机系统,通过通信设备与线路连接起来,由功能完善的软件实现资源共享和信息传递的系统。即计算机网络是互连(通过通信链路互连…...

linux系统zabbix工具监控web页面
web页面监控 内建key介绍浏览器配置浏览器页面查看方式 监控指定的站点的资源下载速度,及页面响应时间,还有响应代码; web Scenario: web场景(站点)web page :web页面,一个场景有多…...

VMware虚拟机网络配置
VMware虚拟机网络配置 桥接模式NAT网络 桥接模式 桥接模式其实就是借助你宿主机上的网卡进行联网和通信,所以相当于虚拟机和宿主机平级,处于同一个网段中。 配置要点: 注意选择正确的宿主机网卡 查看宿主机的网络信息,这些信息指…...

代码随想录算法训练营DAY18 | 二叉树 (5)
一、LeetCode 513 找树左下角的值 题目链接:513.找树左下角的值https://leetcode.cn/problems/find-bottom-left-tree-value/ 思路一:递归回溯全局变量比深度。 class Solution {int Max_depth 0;int result 0;public int findBottomLeftValue(TreeNo…...
企业微信自动推送机器人的应用与价值
随着科技的快速发展,企业微信自动推送机器人已经成为了企业数字化转型的重要工具。这种机器人可以自动推送消息、执行任务、提供服务,为企业带来了许多便利。本文将探讨企业微信自动推送机器人的应用和价值。 一、企业微信自动推送机器人的应用 企业微信…...

Matplotlib plt.plot:从入门到精通,只需一篇文章!
Matplotlib plt.plot:从入门到精通,只需一篇文章! 利用Matplotlib进行数据可视化示例 🌵文章目录🌵 📊 1. 引言:为什么Matplotlib在数据可视化中如此重要?📊✨ 2. plt.pl…...

Linux中sigaction函数和SIGCHLD信号的使用
sigaction函数: 函数说明:注册一个信号处理函数 函数原型:int sigaction(int signum, const struct sigaction *act, struct sigaction *oldact); 函数参数: signum:捕捉的信号act:传入参数,…...

【MySQL】操作库 —— 表的操作 -- 详解
一、增加表 1、创建表 mysql> create database [if not exists] table_name ( -> field1 datatype, -> field2 datatype, -> field3 datatype -> ) character set 字符集 collate 校验规则 engine 存储引擎; 注意 :最后一行也可以写成&#x…...

ZigBee学习——在官方例程实现组网
✨Z-Stack版本:3.0.2 ✨IAR版本:10.10.1 ✨这篇博客是在善学坊BDB组网实验的基础上进行完善,并指出实现的过程中会出现的各种各样的问题! 善学坊教程地址: ZigBee3.0 BDB组网实验 文章目录 一、基础工程选择二、可能遇…...
ES实战--wildcard正则匹配exists过滤字段是否存在
wildcard 通配符中的 * 表示任意数量的字符 ?表示任意单个字符 #正则匹配 GET /wildcard-test/_search {"query": {"wildcard": {"title": {"wildcard": "ba*n"}}} } #响应:"hits": {"total": {"…...
C++学习:二分查找
二分查找的前提 库函数只能对数组进行二分查找。 对一个数组进行二分查找的前提是这个数组中的元素是单调的。 一般为单调不减,当然如果是单调不增也可以(需要修改比较函数) 例如: [1,5,5,9,18]是单调的 [1 , 9, 9,…...

语言与科技创新(大语言模型对科技创新的影响)
1.语言因素对科技创新的影响 科技创新中的语言因素至关重要,具体体现在以下几个方面: 科技文献交流: 英语作为全球科学研究的通用语言,极大地推动了科技成果的国际传播与合作。在国际上,科学家们在发表论文、报告研究…...

【C语言】简单贪吃蛇实现保姆级教学!!!
关注小庄 顿顿解馋૮(˶ᵔ ᵕ ᵔ˶)ა 新年快乐呀小伙伴 引言: 小伙伴们应该都有一个做游戏的梦吧?今天让小庄来用C语言简单实现一下我们的童年邪典贪吃蛇,顺便巩固我们的C语言知识,请安心食用~ 文章目录 贪吃蛇效果一.游戏前工作…...
rtt设备io框架面向对象学习-uart设备
目录 1.uart设备基类2.uart设备基类的子类3.初始化/构造流程3.1设备驱动层3.2 设备驱动框架层3.3 设备io管理层 4.总结5.使用 1.uart设备基类 此层处于设备驱动框架层。也是抽象类。 在/ components / drivers / include / drivers 下的serial.h定义了如下uart设备基类 struc…...
Innodb下修改事务工作流程(buffer pool、redo log、undolog)
1、在Buffer Pool中读取数据:当InnoDB需要更新一条记录时,首先会在Buffer Pool中查找该记录是否在内存中。如果没有在内存中,则从磁盘读取该页到Buffer Pool中。 2、记录UndoLog:在修改操作前,InnoDB会在Undo Log中记…...

redis为什么使用跳跃表而不是树
Redis中支持五种数据类型中有序集合Sorted Set的底层数据结构使用的跳跃表,为何不使用其他的如平衡二叉树、b树等数据结构呢? 1,redis的设计目标、性能需求: redis是高性能的非关系型(NoSQL)内存键值数据…...

【matalab】基于Octave的信号处理与滤波分析案例
一、基于Octave的信号处理与滤波分析案例 GNU Octave是一款开源软件,类似于MATLAB,广泛用于数值计算和信号处理。 一个简单的信号处理与滤波分析案例,说明如何在Octave中生成一个有噪声的信号,并设计一个滤波器来去除噪声。 首…...

Elasticsearch:特定领域的生成式 AI - 预训练、微调和 RAG
作者:来自 Elastic Steve Dodson 有多种策略可以将特定领域的知识添加到大型语言模型 (LLM) 中,并且作为积极研究领域的一部分,正在研究更多方法。 对特定领域数据集进行预训练和微调等方法使 LLMs 能够推理并生成特定领域语言。 然而&#…...

HarmonyOS—UI 开发性能提升的推荐方法
开发者若使用低性能的代码实现功能场景可能不会影响应用的正常运行,但却会对应用的性能造成负面影响。本章节列举出了一些可提升性能的场景供开发者参考,以避免应用实现上带来的性能劣化。 使用数据懒加载 开发者在使用长列表时,如果直接采用…...

84 CTF夺旗-PHP弱类型异或取反序列化RCE
目录 案例1:PHP-相关总结知识点-后期复现案例2:PHP-弱类型对比绕过测试-常考点案例3:PHP-正则preg_match绕过-常考点案例4:PHP-命令执行RCE变异绕过-常考点案例5:PHP-反序列化考题分析构造复现-常考点涉及资源…...

家政维修平台实战20:权限设计
目录 1 获取工人信息2 搭建工人入口3 权限判断总结 目前我们已经搭建好了基础的用户体系,主要是分成几个表,用户表我们是记录用户的基础信息,包括手机、昵称、头像。而工人和员工各有各的表。那么就有一个问题,不同的角色…...

04-初识css
一、css样式引入 1.1.内部样式 <div style"width: 100px;"></div>1.2.外部样式 1.2.1.外部样式1 <style>.aa {width: 100px;} </style> <div class"aa"></div>1.2.2.外部样式2 <!-- rel内表面引入的是style样…...
大模型多显卡多服务器并行计算方法与实践指南
一、分布式训练概述 大规模语言模型的训练通常需要分布式计算技术,以解决单机资源不足的问题。分布式训练主要分为两种模式: 数据并行:将数据分片到不同设备,每个设备拥有完整的模型副本 模型并行:将模型分割到不同设备,每个设备处理部分模型计算 现代大模型训练通常结合…...

UR 协作机器人「三剑客」:精密轻量担当(UR7e)、全能协作主力(UR12e)、重型任务专家(UR15)
UR协作机器人正以其卓越性能在现代制造业自动化中扮演重要角色。UR7e、UR12e和UR15通过创新技术和精准设计满足了不同行业的多样化需求。其中,UR15以其速度、精度及人工智能准备能力成为自动化领域的重要突破。UR7e和UR12e则在负载规格和市场定位上不断优化…...
基于Java Swing的电子通讯录设计与实现:附系统托盘功能代码详解
JAVASQL电子通讯录带系统托盘 一、系统概述 本电子通讯录系统采用Java Swing开发桌面应用,结合SQLite数据库实现联系人管理功能,并集成系统托盘功能提升用户体验。系统支持联系人的增删改查、分组管理、搜索过滤等功能,同时可以最小化到系统…...

浪潮交换机配置track检测实现高速公路收费网络主备切换NQA
浪潮交换机track配置 项目背景高速网络拓扑网络情况分析通信线路收费网络路由 收费汇聚交换机相应配置收费汇聚track配置 项目背景 在实施省内一条高速公路时遇到的需求,本次涉及的主要是收费汇聚交换机的配置,浪潮网络设备在高速项目很少,通…...

【从零学习JVM|第三篇】类的生命周期(高频面试题)
前言: 在Java编程中,类的生命周期是指类从被加载到内存中开始,到被卸载出内存为止的整个过程。了解类的生命周期对于理解Java程序的运行机制以及性能优化非常重要。本文会深入探寻类的生命周期,让读者对此有深刻印象。 目录 …...
【学习笔记】erase 删除顺序迭代器后迭代器失效的解决方案
目录 使用 erase 返回值继续迭代使用索引进行遍历 我们知道类似 vector 的顺序迭代器被删除后,迭代器会失效,因为顺序迭代器在内存中是连续存储的,元素删除后,后续元素会前移。 但一些场景中,我们又需要在执行删除操作…...
Oracle11g安装包
Oracle 11g安装包 适用于windows系统,64位 下载路径 oracle 11g 安装包...

Unity中的transform.up
2025年6月8日,周日下午 在Unity中,transform.up是Transform组件的一个属性,表示游戏对象在世界空间中的“上”方向(Y轴正方向),且会随对象旋转动态变化。以下是关键点解析: 基本定义 transfor…...