2.5 计算机网络
声明:文章参考的《系统架构设计师教程(第二版)》,如有侵权,本人将立即修改和删除。
利用通信线路将地理上分散的、具有独立功能的计算机系统和通信设备按不同的形式连接起来,并依靠网络软件以及通信协议实现资源共享和信息传递的系统。
一、网络的基本概念
1、发展
(1)诞生
20世纪60年代,以单个计算机为中心的远程联机系统,以传输信息为目的
(2)形成
20世纪60年代-70年代,多个主机通过通信线路互联,以能够相互共享资源为目的
(3)互通互联
20世纪70年代末-90年代,具有统一的网络体系结构,并遵守国际标准的开放式和标准化网络。这个时期产生两个重要体系结构:TCP/IP体系结构和国际标准化组织的OSI体系结构。
(4)高速发展
20世纪90年代-至今,局域网成熟,出现光纤及高速网络技术,发展以因特网为代表的互联网
2、功能
(1)数据通信(主要功能)
依照一定的通信协议,利用数据传输技术在两个通信结点之间传递信息的一种通信方式。传递的信息均以二进制数据形式表示。特点:与远程信息处理相联系。
PS:三大通信业务:电报、电话、计算机网络
(2)资源共享(主要目的)
硬件资源、软件资源、数据资源的共享
(3)管理集中化
管理信息系统
(4)实现分布式处理
大任务分成小任务由不同计算机处理后集中解决。
(5)负荷均衡
指工作负荷被均匀地分配给网络上得各台计算机系统。网络中心负责分配和监测,某台计算机负荷过重时,系统自动转移到负荷较轻得计算机系统。
3、有关指标
(1)性能指标
-
速率(数据率/比特率,最重要得性能指标之一,单位b/s(比特每秒))
连接在计算机网络上得主机或通信设备在数字信道上传送数据的速率。
-
带宽(两个含义)
1)指一个信号具有的频道宽度。信号的带宽表示一个信号所包含的各种不同频率成分所占据的频率范围。单位是赫兹(千赫、兆赫、吉赫等)
2)计算机网络:带宽表示网络的通信线路传送数据的能力。网络带宽表示单位时间内从网络中一个结点到另一个结点所能通过的“最高数据率”。单位:比特每秒,b/s
-
吞吐量
单位时间内通过某个网络(或信道、接口)的数据量。受网络带宽或网络额定速率所限制。
有时吞吐量还可以用每秒传送的字节数或帧数来表示。
-
时延(延迟/迟延,重要性能指标)
数据(一个报文、分组甚至比特)从网络(链路)的一端到另一端所需的时间。
分为:发送时延、传播时延、处理时延、排队时延等。
-
往返时间(RTT,重要性能指标)
从发送方发送数据开始,到发送方收到来自接收方的确认(接收方收到数据后便立即发送确认)所经历的时间。
-
利用率
信道利用率:信道被利用的概率(有数据通过),以百分数表示。完全空闲的信道利用率是零。
网络利用率:全网络的信道利用率的加权平均值。
(2)非性能指标
-
费用
-
质量
-
标准化
-
可靠性
-
可扩展性和可升级性
-
易管理和维护性
4、应用前景
仅次于全球电话网的世界第二大网络
二、通信技术(计算机网络基础)
1、信道
信息传输:信源和信宿通过信道收发信息的过程。
(1)分类
(2)信息传输处理过程
1)信道是信息传输的通道
2)发送机接收到信源发送的信息,进行编码和调制,将信息转化为适合在信道上传输的信号,发送到信道。
3)收信机负责从信道上接收信息,进行解调和译码,将信息恢复出来给宿主。不是所有的频率的信号都可以通过信道传输。频率范围大小是信道的带宽。
(3)香农公式
计算信道容量:信道的最大传输速率
C=B*log2(1+S/N)
C:信道容量,b/s
B:信号带宽,Hz
S:信号平均功率,W
N:噪声平均功率,W
S/N:信噪比,dB(分贝)
提升信道容量,可以用较大带宽,降低信噪比;或较小带宽,提高信噪比。
2、信号变换
发信机信号处理:信源编码、信道编码、交织、脉冲成形、调制。
收信机信号处理:解调、采样判决、去交织、信道译码、信源译码。
(1)信源编码
模拟信号-模数转换-压缩编码(去除冗余信息)-数字信号
(2)信道编码
通过增加冗余信息以便在接收端进行检错和纠错。
(3)交织
为解决连续误码导致的信道译码出错问题,交织将信道编码之后的数据顺序按照一定规律打乱,接收端译码之前通过交织将数据顺序复原。
(4)脉冲成形
为减小带宽需求,将发送数据转化成合适的波形。
(5)调制
将信息承载到满足信号要求的高频载波信号的过程。
3、复用技术
同时传递多路数据需要用复用和多址技术。
指一条信道上同时传输多路数据的技术。
(1)TDM时分复用
(2)FDM频分复用
(3)CMD码分复用
4、多址技术
在一条线上同时传输多个用户数据的技术,在接收端把多个用户的数据分离。
(1)TDMA时分多址
(2)FDMA频分多址
(3)CMDA码分多址
5、5G通信网络特征
三、网络技术
1、局域网(LAN)
在有限的地理范围内将若干计算机通过传输介质互联成的计算机组(即通信网络)。局域网是封闭型。
(1)网络拓扑
-
星状结构
以中心结点(控制中心)为中心,通过连接线与中心相连。一个节点传输数据必经中心结点。
优点:传输速度快(任意两结点通信只需两步)、网络结构简单、建网容易、便于控制和管理
缺点:可靠性低、网络共享能力差、一旦中心结点瘫痪全网瘫痪
-
树状结构(分级的集中式网络)
特点:网络成本低结构简单。任意两个结点之间不产生回路,每个链路都支持双向传输,节点扩充方便、灵活、便于巡查链路路径。
缺点:任何一个非叶子结点链路故障,都会影响整个网络系统。
-
总线结构
各个结点设备和一根总线相连。所有结点设备通过总线进行信息传输。
总线故障将影响每个结点的通信。
-
环形结构
各结点通过一条首尾相连的通信链路连接,形成闭环。
各个设备地位相等,信息按照固定方向单向流动。
任意结点故障导致物理瘫痪,不利于扩充,系统响应延时长,信息传输效率低。
-
网状结构
任意结点彼此之间均存在一条通信链路。任何结点故障不影响其他结点。
布线繁琐、建设成本高、控制方法复杂
(2)以太网技术(最普遍的局域网技术)
-
以太网帧结构
以太帧:以太网链路上的数据包,结构如下:
DMAC | SMAC | Length/Type | DATA/PAD | FCS |
DMAC:目的终端的MAC地址
SMAC:源MAC地址
Length/Type:2字节,值大于1500,数据帧的类型;小于1500代表长度
DATA/PAD:具体数据,不小于64字节(少于需增加填充内容)
FCS:帧校验字段
-
最小帧长(64个字节)
目的/原因:为了避免发送某结点已经将一个数据包的最后一个bit发送完毕,但第一个还未传送到距离较远的结点。误认为线路空闲而发送数据,导致链路上数据发送冲突。
-
最大传输距离
无严格限制,但受线路质量、信号衰减程度等影响
-
流量控制
作用:防止在设备堵塞情况下丢帧。
2、无线局域网(WLAN)
(1)WLAN拓扑结构
-
点对点型
-
HUB型
一个中心结点(HUB)和若干外围结点组成。集中控制式通信。
-
全分布型
无具体应用。
3、广域网(WAN)
城市、国家或国家之间
广域网由通信子网(由通信结点设备和连接这些设备的链路组成)或资源子网(网络中实现资源共享功能的设备及其软件的集合)组成
(1)相关技术
(2)特点
1)面向数据通信服务,支持用户使用计算机进行远距离的信息交换;
2)覆盖范围广,通信的距离远,广域网没有固定拓扑结构
3)由电信部门或公司负责组件、管理和维护,向全社会提高面向通信的有偿服务。
(3)分类
-
公共传输网络
-
专用传输网络
-
无线传输网络
4、城域网(MAN)
单个城市建立的网络
3个层次:核心层、汇聚层和接入层
5、移动通信网
四、组网技术
1、网络设备及其工作层级
(1)集线器
最简单的网络设备,从一个端口收到的数据被转送到所有其他端口,无论与端口相连的系统是否准备好。有一个端口被指定为上联端口,可用于连接其他集线器或路由设备。
(2)中继器
局域网互连设备,位于OSI体系的物理层。
(3)网桥
OSI体系的数据链路层。
(4)交换机
OSI的数据链路层。为接入交换机的任意两个网络结点提供独享的转发通道。具备自动寻址和交换功能、避免端口冲突、提高网络吞吐的能力。
(5)路由器
OSI的网络层。通常用于广域网或广域网与局域网的互联。
(6)防火墙
硬件防火墙:防火墙程序做到芯片中。
2、网络协议
(1)开放系统互连模型(OSI/RM)
由低层到高层:物理层、数据链路层、网络层、传输层、会话层、表示层和应用层
同层之间提供协议,上下层提供服务
(2)OSI协议集
(3)TCP/IP协议集
TCP/IP协议族:因特网协议IP、传输控制协议TCP、用户数据报协议UDP、虚拟终端协议TELNET、文件传输协议FTP、电子邮件传输协议SMTP、网上新闻传输协议NNTP、超文本传输协议HTTP
(4)ISO/OSI模型与TCP/IP模型对比
ISO/OSI模型 | TCP/IP模型 |
应用层 | 应用层 |
表示层 | |
会话层 | |
传输层 | 传输层 |
网络层 | 网际层 |
数据链路层 | 网络接口层 |
物理层 | 硬件层 |
3、交换技术
(1)交换机功能
集线功能;中继功能;桥接功能;隔离冲突域功能
(2)基本交换原理
交换机是基于MAC地址识别,能完成封装转发数据包功能的网络设备。
转发路径学习;数据转发;数据泛洪;链路地址更新
(3)交换机协议
生成树协议(STP):解决链路环路问题
4、路由技术
(1)路由原理
接收来源于一个网络接口的数据包,根据此数据报的目的地址决定待转发的下一个地址。
(2)路由器协议
路由协议:指定数据包转送方式的协议
分类:
- 内部网关协议TGP
自治系统AS内运行的路由协议
- 外部网关协议EGP
AS之间的路由协议
五、网络工程
1、网络规划
包括:网络需求分析、可行性分析、对现有网络的分析(对现有网络优化升级时)
2、网络设计
设计一个能解决用户问题的方案。包括:网络总体目标确定、总体设计原则确定、通信子网设计、设备选型、网络安全设计等。
3、网络实施
包括:工程实施计划、网络设计验收、设备安装和调试、系统试运行和切换、用户培训等。
相关文章:

2.5 计算机网络
声明:文章参考的《系统架构设计师教程(第二版)》,如有侵权,本人将立即修改和删除。 利用通信线路将地理上分散的、具有独立功能的计算机系统和通信设备按不同的形式连接起来,并依靠网络软件以及通信协议实现…...
同三维T80004ESL编码器视频使用操作说明书:高清HDMI编码器,高清SDI编码器,4K超清HDMI编码器,双路4K超高清编码器
同三维T80004ESL编码器视频使用操作说明书:高清HDMI编码器,高清SDI编码器,4K超清HDMI编码器,双路4K超高清编码器 同三维T80004ESL编码器视频使用操作说明书:高清HDMI编码器,高清SDI编码器,4K超清…...

「ETL趋势」分区支持PostgreSQL、Greenplum、Gauss200, 定时任务支持Kettle
FineDataLink作为一款市场上的顶尖ETL工具,集实时数据同步、ELT/ETL数据处理、数据服务和系统管理于一体的数据集成工具,进行了新的维护迭代。本文把FDL4.1.9最新功能作了介绍,方便大家对比:(产品更新详情:…...

vue 前端项目调用后端接口记录
axios中不同的类型的请求附带数据使用的关键字 请求类型关键字示例GETparamsaxios({ method: get, url: example.com, params: { key: value } })POSTdataaxios({ method: post, url: example.com, data: { key: value } })PUTdataaxios({ method: put, url: example.com, dat…...
4.10、matlab生成脉冲序列:pulstran()函数
1、matlab生成脉冲序列简介 MATLAB生成脉冲序列通常涉及到使用MATLAB中的函数或编程来创建具有特定时间间隔和幅度的脉冲信号。脉冲序列通常用于数字信号处理、通信系统测试等应用中。 生成脉冲序列可以采用以下方法之一: 使用MATLAB中的函数,例如square()函数生成方波信号…...

【JAVA poi-tl-ext 富文本转word】
富文本转word 环境使用poi-tl-ext的原因富文本转word代码 环境 jdk 1.8 <dependency><groupId>io.github.draco1023</groupId><artifactId>poi-tl-ext</artifactId><version>0.4.16</version> </dependency>poi-tl-ext已经包…...
uniapp 小程序注册全局弹窗组件(无需引入,无需写标签)
由于uniapp没有开放根节点,所以一般情况下通过app.components注册,在需要的页面直接写组件标签,但是如果每个页面都需要的话,再每个都加的话会非常的麻烦 网上的思路都不咋地: 1.通过写一个透明弹窗页面来实现&#…...
python 语法学习 day 7
错题反思 1.九九乘法表 第一次提交的答案是:先把所有输入值放在列表里面 EOF,输入后产生异常-->>捕获异常,结束输入 3. 题意:统计单词的种类以及数量(忽略大小写),最终以降序输出(出现次数相同的单词根据单词的…...

【高中数学/幂函数】比较a=2^0.3,b=3^0.2,c=7^0.1的大小
【问题】 比较a2^0.3,b3^0.2,c7^0.1的大小 【解答】 a2^0.32^3/10(2^3)^1/108^1/10 b3^0.23^2/10(3^2)^1/109^1/10 c7^0.17^1/10 由于yx^1/10在x正半轴是增函数,底数大的得数就大。 因为9>8>7,所以b>a>c 【图像】 在图像上绘出曲线yx^1/10&…...

双向带头循环链表
一、概念 何为双向:此链表每一个节点的指针域由两部分组成,一个指针指向下一个节点,另一个指针指向上一个节点,并且两头的节点也是如此,头节点的下一个节点是尾节点,尾节点的上一个节点是头节点;…...
探索TASKCTL和 DataStage 的ETL任务调度协同
在复杂多变的企业环境中,高效、准确的数据处理是支撑业务决策与运营的核心。本文将深入探讨任务调度平台TASKCTL与ETL工具DataStage的深度融合,通过详尽的代码示例、结合细节以及实际案例的具体描述,展示这两个工具如何携手打造企业数据处理生…...
Facebook软体机器人与机器人框架:创新社交互动的未来
随着人工智能技术的不断进步,Facebook正通过软体机器人和先进的机器人框架,重新定义社交互动的未来。这些创新不仅提升了用户体验,也为开发者提供了强大的工具来构建下一代社交应用。 一、Facebook软体机器人:智能化的社交伙伴 …...
掌握音视频转换的艺术:用FFmpeg解锁多媒体的无限可能
在数字时代,音视频内容无处不在,从在线课程、娱乐视频到专业会议,它们都是信息传播的关键载体。然而,随着多媒体格式的不断演进,我们常常会遇到格式不兼容的问题,这成为了享受或处理这些内容的一大障碍。幸…...

C基础day9
一、思维导图 二、课后练习 1> 使用递归实现 求 n 的 k 次方 #include<myhead.h>int Pow(int n,int k) {if(k 0 ) //递归出口{return 1;}else{return n*Pow(n,k-1); //递归主体} }int main(int argc, const char *argv[]) {int n0,k0;printf("请输入n和k:&…...
32. 小批量梯度下降法(Mini-batch Gradient Descent)
在深度学习模型的训练过程中,梯度下降法是最常用的优化算法之一。我们前面介绍了批量梯度下降法(Batch Gradient Descent)和随机梯度下降法(Stochastic Gradient Descent),两者各有优缺点。为了在计算速度和…...

MySQL第八次作业
一、备份与恢复作业: 创库,建表: CREATE DATABASE booksDB; use booksDB; CREATE TABLE books ( bk_id INT NOT NULL PRIMARY KEY, bk_title VARCHAR(50) NOT NULL, copyright YEAR NOT NULL ); CREATE TABLE authors …...

【合集】临时邮箱网站 临时邮箱API(持续更新)
众所周知,在注册一些账户时,比较常见的验证方式就是邮箱,但是在进行一些小众和不知名网站注册时,邮箱的泄露可能预示着不休止的邮件推送。尤其是当我们只是想临时使用邮箱这种情况,第二种,批量注册账号的情…...
职场新人感受
互联网职场感受 阶段介绍 24届6月底毕业生,之前从未实习过。 岗位是后端开发(JAVA),目前已经上班三周(前两周看文档和做了半个简单需求,第三周脱产新人培训)。 职场体验 职场和想象中的工作…...
Window 下Mamba 环境安装踩坑问题汇总及解决方法 (无需绕过selective_scan_cuda)
导航 Mamba 及 Vim 安装问题参看本人之前博客:Mamba 环境安装踩坑问题汇总及解决方法Linux 下Vmamba 安装教程参看本人之前博客:Vmamba 安装教程(无需更改base环境中的cuda版本)Windows 下 VMamba的安装参看本人之前博客…...

前端项目本地的node_modules直接上传到服务器上无法直接使用(node-sasa模块报错)
跑 jekins任务的服务器不能连接外网下载依赖包,就将本地下载的 node_modules直接上传到服务器上,但是运行时node-sass模块报错了ERROR in Missing binding /root/component/node_modules/node-sass/vendor/linux-x64-48/binding.node >> 报错信息类…...

Unity3D中Gfx.WaitForPresent优化方案
前言 在Unity中,Gfx.WaitForPresent占用CPU过高通常表示主线程在等待GPU完成渲染(即CPU被阻塞),这表明存在GPU瓶颈或垂直同步/帧率设置问题。以下是系统的优化方案: 对惹,这里有一个游戏开发交流小组&…...

Swift 协议扩展精进之路:解决 CoreData 托管实体子类的类型不匹配问题(下)
概述 在 Swift 开发语言中,各位秃头小码农们可以充分利用语法本身所带来的便利去劈荆斩棘。我们还可以恣意利用泛型、协议关联类型和协议扩展来进一步简化和优化我们复杂的代码需求。 不过,在涉及到多个子类派生于基类进行多态模拟的场景下,…...
pam_env.so模块配置解析
在PAM(Pluggable Authentication Modules)配置中, /etc/pam.d/su 文件相关配置含义如下: 配置解析 auth required pam_env.so1. 字段分解 字段值说明模块类型auth认证类模块,负责验证用户身份&am…...
Golang dig框架与GraphQL的完美结合
将 Go 的 Dig 依赖注入框架与 GraphQL 结合使用,可以显著提升应用程序的可维护性、可测试性以及灵活性。 Dig 是一个强大的依赖注入容器,能够帮助开发者更好地管理复杂的依赖关系,而 GraphQL 则是一种用于 API 的查询语言,能够提…...

全球首个30米分辨率湿地数据集(2000—2022)
数据简介 今天我们分享的数据是全球30米分辨率湿地数据集,包含8种湿地亚类,该数据以0.5X0.5的瓦片存储,我们整理了所有属于中国的瓦片名称与其对应省份,方便大家研究使用。 该数据集作为全球首个30米分辨率、覆盖2000–2022年时间…...

MMaDA: Multimodal Large Diffusion Language Models
CODE : https://github.com/Gen-Verse/MMaDA Abstract 我们介绍了一种新型的多模态扩散基础模型MMaDA,它被设计用于在文本推理、多模态理解和文本到图像生成等不同领域实现卓越的性能。该方法的特点是三个关键创新:(i) MMaDA采用统一的扩散架构…...
解决本地部署 SmolVLM2 大语言模型运行 flash-attn 报错
出现的问题 安装 flash-attn 会一直卡在 build 那一步或者运行报错 解决办法 是因为你安装的 flash-attn 版本没有对应上,所以报错,到 https://github.com/Dao-AILab/flash-attention/releases 下载对应版本,cu、torch、cp 的版本一定要对…...
Spring Boot+Neo4j知识图谱实战:3步搭建智能关系网络!
一、引言 在数据驱动的背景下,知识图谱凭借其高效的信息组织能力,正逐步成为各行业应用的关键技术。本文聚焦 Spring Boot与Neo4j图数据库的技术结合,探讨知识图谱开发的实现细节,帮助读者掌握该技术栈在实际项目中的落地方法。 …...
聊一聊接口测试的意义有哪些?
目录 一、隔离性 & 早期测试 二、保障系统集成质量 三、验证业务逻辑的核心层 四、提升测试效率与覆盖度 五、系统稳定性的守护者 六、驱动团队协作与契约管理 七、性能与扩展性的前置评估 八、持续交付的核心支撑 接口测试的意义可以从四个维度展开,首…...

有限自动机到正规文法转换器v1.0
1 项目简介 这是一个功能强大的有限自动机(Finite Automaton, FA)到正规文法(Regular Grammar)转换器,它配备了一个直观且完整的图形用户界面,使用户能够轻松地进行操作和观察。该程序基于编译原理中的经典…...