【计算机网络】概述
📝本文介绍
本文为计算机网络的概述,会综合概述一下计算机网络
👋作者简介:一个正在积极探索的本科生
📱联系方式:943641266(QQ)
🚪Github地址:https://github.com/sankexilianhua
🔑Gitee地址:https://gitee.com/Java_Ryson
由于本人的知识所限,如果文章有问题,欢迎大家联系并指出,博主会在第一时间修正。
文章目录
- 📕信息时代的特征
- 📘网络
- 📖计算机网络
- 🔖Internet
- 🔖类别
- 📖性能
- 📖体系结构
- 📖其他一些概念
📕信息时代的特征
21世纪特征:
- 数字化
- 网络化
- 信息化
📘网络
📖计算机网络
🔖Internet
Internet又称因特网,互联网。
- 特点
- 连通性
- 资源共享
- 组成
- 边缘部分
- 用户直接使用的。这些设备都称为主机/端系统
- 核心部分
- 为用户提供服务
- 方式
- 客户-服务器方式(C/S)
客户端进程可以主动像服务器发起通信,所以客户端必须直到服务器的地址。
服务器可以同时处理多个远地或本地客户的请求。启动后不停地运行着.
所谓的客户和服务器本来都指的是计算机的进程,或者说软件。 - 对等连接方式(P2P)
也就是,一台机器,只要运行了P2P软件,就既可以做服务器也可以做客户端。当下载时为客户端,对方请求资源时为服务器。
- 客户-服务器方式(C/S)
- 交换方式
- 电路交换
电路交换会建立一条虚拟的电路(虚电路),也就是通知从发送方到接收方之间的路由器等要预留出相应的资源来,以保证通信的连贯。当通信结束之后,通知这些核心部件,从而断开连接。所以其需要经历建立连接,通信,断开连接3步骤。
其交换时,比特流会通过链路直达终点。并且其传输效率往往会较低。(因为传输往往是突发的,大部分时间不用于传输) - 分组交换
分组交换采用存储转发的方式。把要发送的整个数据(报文)分割成一个个更小的数据段,并加上必要控制信息组成对的首部,构成一个个分组。之后把一个个分组在网络中传输,到达终点之后,再组装起来。 - 报文交换
由上面的分组交换,我们也可以大致猜测到。报文交换实际上就是不进行分组,直接将整个报文进行传输。使用的同样是存储转发的技术。我们可以认为其只有一个大分组,将大分组在网络中直接地传输。
- 电路交换
- 边缘部分
🔖类别
- 按网络作用范围
- 广域网(WAN)也称远程网,大致距离为几十到几千公里
- 城域网(MAN)大致距离为5-50km,覆盖范围大致为1个城市
- 局域网(LAN)大致距离为1km以内
- 学校或企业一般拥有许多个互连的局域网,这样的网络称为校园网或企业网。
- 个人区域网(PAN)若是使用无线技术连接起来的网络称为无线个人区域网(WPAN)。大致范围为10m左右。
- 按网络使用者
- 公用网
电信公司(国有或私有)出资建立的大型网络。只要愿意按照电信公司的规定交纳费用的人都可以使用这种网络。 - 专用网
某个部门为满足本单位的特殊业务工作的需要而建造的大型网络。不向本单位以外的人提供。
- 公用网
- 特殊的网络
接入网,又称本地接入网或居民接入网。接入网就是本地ISP所拥有的网络。不算核心部分,也不算边缘部分。由某个端系统连接到本地ISP的第一个路由器(边缘路由器)之间的一些物理链路所组成。一般距离在几百米到几公里之间。
📖性能
速率
比特代表的是一个二进制数字,计算机信号的发送以数字形式。这里的速率指的是数据的传送速率(数据率)。使用bps或者bit/s来衡量,一般来说1bps=1bit/s,但对于baud来说就要看编码的方式来确定。当提到网络的速率时,往往指的是额定速率或标称速率。
带宽
有两层含义
在通信学中,往往指某个信号具有的频带宽度。其单位为赫,千赫,兆赫等。表示某信道允许通过的信号频带范围就称为该信道的带宽或通频带。
在计算机网路中,带宽用来表示网络中某通道传送数据的能力。因此,网络带宽表示单位时间内某信道能够通过的**“最高数据率”**。带宽的单位就是数据率的单位bit/s
吞吐量
吞吐量表示在单位时间额你通过某个网络(或信道,接口)的实际数据量。
时延
时延是指数据(一个报文或分组,甚至比特)从网络(链路)的一段传送到另一端所需的时间。也称延迟或迟延。总时延由以下四个时延组成:
- 发送时延
主机或路由器发送数据帧所需要的时间。也就是从发送第一个比特到最后一个比特所需的时间。也称传播时延。
发送时延= 数据帧长度( b i t ) 发送速率( b i t / s ) {数据帧长度(bit)\over 发送速率(bit/s)} 发送速率(bit/s)数据帧长度(bit)
-
传播时延
传播时延是电磁波在信道中传播一定的距离需要花费的时间。(与带宽无关)
传播时延= 信道长度( m ) 电磁波在信道上的传播速率( m / s ) {信道长度(m)\over 电磁波在信道上的传播速率(m/s)} 电磁波在信道上的传播速率(m/s)信道长度(m) -
处理时延
主机或路由器在收到分组时要花费一定时间进行处理。如:分析分组的首部,提取数据部分,差错检验,寻找转发表等。 -
排队时延
分组在经过路由器时,需要先在输入队列中排队等待处理。路由器确定转发接口之后,还要再输出队列中排队等待转发。排队时延的长短往往取决于网络当时的通信量。通信量很大时,可能会队列溢出,从而丢失分组。
注意:
所谓的高速链路,指的是提高数据的发送速率,减少发送时延。
时延带宽积
时延带宽积=传播时延×带宽
可以理解为,发送的第一个比特到达终点时,有多少比特发送完毕,正在链路上移动。
往返时间RTT
计算机通常都是双向交互,很少出现单向通信的情况。所以,RTT实际上就是一次双向交互的时间。也可以称为往返时延。
有效数据率= 数据长度 发送时间 + R T T {数据长度 \over 发送时间+RTT} 发送时间+RTT数据长度
利用率
利用率有信道利用率和网络利用率两种。
- 信道利用率:某信道有百分之几的时间是被利用的(有数据通过)。完全空闲的信道的利用率是0。
- 网络利用率是全网络的信道的利用率的加权平均值。
D= D 0 1 − U {D_0 \over 1-U} 1−UD0 (D:网络当前时延,D0:网络空闲时时延,U:现在网络利用率)
📖体系结构
分层次的体系结构(或架构)是最基本的。每一层之间的通信都有对应的协议。协议明确规定了所交换数据的格式以及有关的同步问题。网络协议由语法,语义,同步三要素组成。
三种体系结构:
| OSI七层体系结构 | TCP/IP体系结构 | 五层体系结构 |
|---|---|---|
| 应用层 | 应用层 | 应用层 |
| 表示层 | ||
| 会话层 | ||
| 运输层 | 运输层 | 运输层 |
| 网络层 | 网际层IP | 网络层 |
| 数据链路层 | 链路层(网际接口层) | 数据链路层 |
| 物理层 | 物理层 |
- 应用层
- 任务:通过应用层进程间的交互来完成特定网络应用。
- 定义的是应用进程间通信和交互的规则
- 数据单元:报文
- 运输层
- 任务:两台主机中进程之间的通信提供通用的数据传输服务。
- 协议:
- 传输控制协议TCP(Transmission Control Protocol) 提供面向连接的,可靠的数据传输服务,数据传输单位是报文段。
- 用户数据报协议UDP(User Datagram Protocol)提供无连接的尽最大努力的数据传输服务,数据传输单位是用户数据报
- 网络层
- 任务:为分组交换网上的不同主机提供通信服务。会将上层报文进行分组/包。
- 数据单元:IP数据报/数据报
- 数据链路层
- 任务:为链路两个相邻节点提供通信服务。
- 数据单元:帧
- 物理层
- 考虑电压,如何识别发送方的比特信息,确定连接电缆的插头,引脚及其他物理信息。
- 数据单元:比特
📖其他一些概念
- 协议数据单元PDU:对等层次之间传送的数据单位
- 实体:任何可以发送或接收信息的硬件或软件进程
- 协议:控制两个对等实体(或多个)进行通信的规则的集合
- 在协议的控制下,两个对等实体间的通信使得本层能够向上层提供服务。要实现本层协议,还需要使用下面一层所提供的服务。
- 层与层之间交换的数据的单位称为服务数据单元SDU
相关文章:
【计算机网络】概述
📝本文介绍 本文为计算机网络的概述,会综合概述一下计算机网络 👋作者简介:一个正在积极探索的本科生 📱联系方式:943641266(QQ) 🚪Github地址:https://github.com/sankexilianhua &…...
【Flink connector】文件系统 SQL 连接器:实时写文件系统以及(kafka到hive)实战举例
文章目录 一. 滚动策略:sink后文件切分(暂不关注)1. 切分分区目录下的文件2. 小文件合并 二. 分区提交1. 分区提交触发器 (什么时候创建分区)1.1. 逻辑说明1.2. 举例说明 2. 分区时间提取器 (用于partition-time情况下partition commit策略)2…...
RpcContext :提供了在 RPC 调用过程中访问当前调用信息的方法
在 Dubbo 中,RpcContext 是一个上下文对象,它提供了在 RPC 调用过程中访问当前调用信息的方法。RpcContext.getClientAttachment() 方法用于获取客户端设置的附件(Attachment)信息。这些附件信息通常是在 RPC 调用发起方ÿ…...
机器学习 - 提高模型 (代码)
如果模型出现了 underfitting 问题,就得提高模型了。 Model improvement techniqueWhat does it do?Add more layersEach layer potentially increases the learning capabilities of the model with each layer being able to learn some kind of new pattern in…...
数值代数及方程数值解:预备知识——二进制及浮点数
文章目录 二进制IEEE浮点数 本篇文章的前置知识:数学分析 二进制 命题:二进制转化为十进制 二进制的数字表示为 ⋯ b 2 b 1 b 0 . b − 1 b − 2 ⋯ \cdots b_2b_1b_0.b_{-1}b_{-2}\cdots ⋯b2b1b0.b−1b−2⋯这等价于十进制下的 ⋯ b 2 2 …...
新数字时代的启示:揭开Web3的秘密之路
在当今数字时代,随着区块链技术的不断发展,Web3作为下一代互联网的概念正逐渐引起人们的关注和探索。本文将深入探讨新数字时代的启示,揭开Web3的神秘之路,并探讨其在未来的发展前景。 1. Web3的定义与特点 Web3是对互联网未来发…...
算法——动态规划:01背包
原始01背包见下面这篇文章:http://t.csdnimg.cn/a1kCL 01背包的变种:. - 力扣(LeetCode) 给你一个 只包含正整数 的 非空 数组 nums 。请你判断是否可以将这个数组分割成两个子集,使得两个子集的元素和相等。 简化一…...
写作类AI推荐(二)
本章要介绍的写作AI如下: 火山写作 主要功能: AI智能创作:告诉 AI 你想写什么,立即生成你理想中的文章AI智能改写:选中段落句子,可提升表达、修改语气、扩写、总结、缩写等文章内容优化:根据全文…...
分寝室(20分)(JAVA)
目录 题目描述 输入格式: 输出格式: 输入样例 1: 输出样例 1: 输入样例 2: 输出样例 2: 题解: 题目描述 学校新建了宿舍楼,共有 n 间寝室。等待分配的学生中,有女…...
Spring 源码调试问题 ( List.of(“bin“, “build“, “out“); )
Spring 源码调试问题 文章目录 Spring 源码调试问题一、问题描述二、解决方案 一、问题描述 错误:springframework\buildSrc\src\main\java\org\springframework\build\CheckstyleConventions.java:68: 错误: 找不到符号 List<String> buildFolders List.of…...
Centos7安装RTL8111网卡驱动
方法一: // 安装pciutils # yum install -y pciutils // 查看pci设备信息 # lspci | grep -i Ethernet 09:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 03) // 上面看到是Re…...
吉时利KEITHLEY2460数字源表
181/2461/8938产品概述: Keithley 2460 高电流源表源测量单元 (SMU) 将先进的触摸、测试和发明技术带到您的指尖。Keithley 2460 将创新的图形用户界面 (GUI) 与电容式触摸屏技术相结合,使测试变得直观并最大限度地缩短学习曲线,从而帮助工程…...
数据库原理(含思维导图)
数据库原理笔记,html与md笔记已上传 1.绪论 发展历程 记住数据怎么保存,谁保存数据,共享性如何,独立性如何 人工管理阶段 数据不保存应用程序管理数据数据不共享数据不具有独立性 文件系统阶段 数据可以长期保存文件系统管…...
数据结构(六)——图
六、图 6.1 图的基本概念 图的定义 图:图G由顶点集V和边集E组成,记为G (V, E),其中V(G)表示图G中顶点的有限非空集;E(G) 表示图G中顶点之间的关系(边)集合。若V {v1, v2, … , vn},则用|V|…...
Android-AR眼镜屏幕显示
Android-AR眼镜 前提:Android手持设备 需要具备DP高清口 1、创建Presentation(双屏异显) public class MyPresentation extends Presentation {private PreviewSingleBinding binding;private ScanActivity activity;public MyPresentatio…...
蓝桥集训之货币系统
蓝桥集训之货币系统 核心思想:背包 #include <iostream>#include <cstring>#include <algorithm>using namespace std;const int N 30,M 10010;typedef long long LL;LL f[M];int w[N];int n,m;int main(){cin>>n>>m;for(int i1;i&…...
基于微信小程序的校园服务平台设计与实现(程序+论文)
本文以校园服务平台为研究对象,首先分析了当前校园服务平台的研究现状,阐述了本系统设计的意义和背景,运用微信小程序开发工具和云开发技术,研究和设计了一个校园服务平台,以满足学生在校园生活中的多样化需求。通过引…...
QT+Opencv+yolov5实现监测
功能说明:使用QTOpencvyolov5实现监测 仓库链接:https://gitee.com/wangyoujie11/qt_yolov5.git git本仓库到本地 一、环境配置 1.opencv配置 将OpenCV-MinGW-Build-OpenCV-4.5.2-x64文件夹放在自己的一个目录下,如我的路径: …...
【Python-Docx库】Word与Python的完美结合
【Python-Docx库】Word与Python的完美结合 今天给大家分享Python处理Word的第三方库:Python-Docx。 什么是Python-Docx? Python-Docx是用于创建和更新Microsoft Word(.docx)文件的Python库。 日常需要经常处理Word文档…...
吴恩达深度学习笔记:浅层神经网络(Shallow neural networks)3.6-3.8
目录 第一门课:神经网络和深度学习 (Neural Networks and Deep Learning)第三周:浅层神经网络(Shallow neural networks)3.6 激活函数(Activation functions)3.7 为什么需要非线性激活函数?(why need a non…...
Zustand 状态管理库:极简而强大的解决方案
Zustand 是一个轻量级、快速和可扩展的状态管理库,特别适合 React 应用。它以简洁的 API 和高效的性能解决了 Redux 等状态管理方案中的繁琐问题。 核心优势对比 基本使用指南 1. 创建 Store // store.js import create from zustandconst useStore create((set)…...
学校招生小程序源码介绍
基于ThinkPHPFastAdminUniApp开发的学校招生小程序源码,专为学校招生场景量身打造,功能实用且操作便捷。 从技术架构来看,ThinkPHP提供稳定可靠的后台服务,FastAdmin加速开发流程,UniApp则保障小程序在多端有良好的兼…...
如何理解 IP 数据报中的 TTL?
目录 前言理解 前言 面试灵魂一问:说说对 IP 数据报中 TTL 的理解?我们都知道,IP 数据报由首部和数据两部分组成,首部又分为两部分:固定部分和可变部分,共占 20 字节,而即将讨论的 TTL 就位于首…...
C++:多态机制详解
目录 一. 多态的概念 1.静态多态(编译时多态) 二.动态多态的定义及实现 1.多态的构成条件 2.虚函数 3.虚函数的重写/覆盖 4.虚函数重写的一些其他问题 1).协变 2).析构函数的重写 5.override 和 final关键字 1&#…...
R 语言科研绘图第 55 期 --- 网络图-聚类
在发表科研论文的过程中,科研绘图是必不可少的,一张好看的图形会是文章很大的加分项。 为了便于使用,本系列文章介绍的所有绘图都已收录到了 sciRplot 项目中,获取方式: R 语言科研绘图模板 --- sciRplothttps://mp.…...
【Veristand】Veristand环境安装教程-Linux RT / Windows
首先声明,此教程是针对Simulink编译模型并导入Veristand中编写的,同时需要注意的是老用户编译可能用的是Veristand Model Framework,那个是历史版本,且NI不会再维护,新版本编译支持为VeriStand Model Generation Suppo…...
Modbus RTU与Modbus TCP详解指南
目录 1. Modbus协议基础 1.1 什么是Modbus? 1.2 Modbus协议历史 1.3 Modbus协议族 1.4 Modbus通信模型 🎭 主从架构 🔄 请求响应模式 2. Modbus RTU详解 2.1 RTU是什么? 2.2 RTU物理层 🔌 连接方式 ⚡ 通信参数 2.3 RTU数据帧格式 📦 帧结构详解 🔍…...
快速排序算法改进:随机快排-荷兰国旗划分详解
随机快速排序-荷兰国旗划分算法详解 一、基础知识回顾1.1 快速排序简介1.2 荷兰国旗问题 二、随机快排 - 荷兰国旗划分原理2.1 随机化枢轴选择2.2 荷兰国旗划分过程2.3 结合随机快排与荷兰国旗划分 三、代码实现3.1 Python实现3.2 Java实现3.3 C实现 四、性能分析4.1 时间复杂度…...
从零手写Java版本的LSM Tree (一):LSM Tree 概述
🔥 推荐一个高质量的Java LSM Tree开源项目! https://github.com/brianxiadong/java-lsm-tree java-lsm-tree 是一个从零实现的Log-Structured Merge Tree,专为高并发写入场景设计。 核心亮点: ⚡ 极致性能:写入速度超…...
SQL进阶之旅 Day 22:批处理与游标优化
【SQL进阶之旅 Day 22】批处理与游标优化 文章简述(300字左右) 在数据库开发中,面对大量数据的处理任务时,单条SQL语句往往无法满足性能需求。本篇文章聚焦“批处理与游标优化”,深入探讨如何通过批量操作和游标技术提…...
