计算机网络的基础知识
网络的性能指标:网络速率,bps=bit/s;
时延包括四个组成部分:发送时延、传播时延、排队时延、处理时延;
网络各个层次结构设计的基本三原则:各个层次之间是相互独立的,每一个层之间有足够的灵活性,各个层次之间完全解耦;
往返时间Round-Trip Time (RTT):数据报文在端到端通信中的来回一次的时间;
数据报文:数据报文,是网络中交换与传输的数据单元,即:站点一次性要发送的数据块。报文包含了将要发送的完整的数据信息,其长短很不一致,长度不限,而且是可以变化的。其中,报文也是网络传输的单位,在传输的过程中会不断的封装成组、包、帧,来进行传输。封装的方式,就是添加一些信息段,即是报文头以一定格式组织起来的数据。包含,报文类型、报文版本、报文长度、报文实体等信息。完全与系统定义,或者自定义的数据结构同义。在数据发送的时候,由上层向下层封装。四层,首先,协议层传输的是数据报文,主要是协议格式;三层,网络层传输的是数据包,包含数据报文,并且增加传输使用的IP地址等三层信息;二层,数据链路层传输的是数据帧,包含数据包,并且增加相应的MAC地址与二层信息。数据接受的时候,下层向上层解封装。
物理层
物理层的作用:物理层,连接不同的物理设备,传输比特流。物理层为上层协议提供了一个传输数据的可靠的物理媒体,简单的来说,物理层确保原始的数据可以在各种物理媒体上进行传输。
物理层的设备:1.中继器,Repeater,也叫放大器。同一个局域网的再生信号,两端口的网段必须是同一协议;5-4-3规程,10BASE-5以太网中,最多串联4个中继器,5段中只能有3个连接主机;
信道的基本概念:信道是往一个方向传输信息的媒体,一条通信电路包含一个发送信道和一个接受信道;
单工通信信道:只能一个方向通信,没有反方向反馈的信道;
半双工通信信道:双方都可以发送和接受信息,但是不能同时发送也不能同时接受;
全双工通信信道:双方都可以同时发送和接收。
数据链路层:数据链路层在物理层提供的服务的基础上,向网络层提供服务。其,最基本的服务是将源自网络层来的数据可靠地传输到相邻节点的目标机网络层。数据链路层在不可靠的物理介质上,提供可靠的传输。
数据链路层的作用:物理地址寻址,数据的成帧,流量控制,数据的检错,重发等。
有关数据链路层的重要知识点:
1,数据链路层为网络层提供可靠的数据传输。
2,数据链路层的基本数据单位是帧。
3,数据链路层的主要的协议是,以太网协议。
4,两个重要的设备是,网桥和交换机。
封装成帧的概念:“帧”是数据链路层数据的基本单位;
每层的基本单位:
1,物理层,数据单位是bit,用于将数字信号转换为物理信号,进行传输,例如电缆和光纤等。
2,数据链路层,基本单位是帧,用于实现点到点的数据传输,例如以太网,数据局域网等。
3,网络层,基本单位是包,用于实现网络互连和寻址,例如IP,ICMP等。
4,传输层,数据的基本单位是段,用于可靠的数据传输,例如TCP,UDP等等。
5,会话层,数据传输的基本单位是会话,用于建立、管理和中指会话。
6,数据层,基本单位是数据格式,用于定义数据的格式和表示方式。
7,应用层,基本单位是报文,用于应用程序之间的数据交换,例如HTTP协议等。
数据链路层的差错监测:1,奇偶校验码,2,循环冗余校验码CRC;
奇偶校验码的局限性,当出错两位时,检测不到错误;
循环冗余检测码,根据传输或者保存的数据,而产生固定位数的校验码;
最大传输单元MTU(Maximum Transmission Unit),数据链路层的数据帧不是无限大的,数据帧长度受MTU限制;
路径MTU:由链路中MTU的最小值决定。
以太网协议,
MAC地址:每一个设备都拥有唯一的MAC地址,共48位,使用十六进制表示;
以太网协议:是一种使用广泛的局域网技术,是一种应用于数据链路层的协议,使用以太网可以完成相邻设备的数据帧传输;
相关文章:
计算机网络的基础知识
网络的性能指标:网络速率,bpsbit/s; 时延包括四个组成部分:发送时延、传播时延、排队时延、处理时延; 网络各个层次结构设计的基本三原则:各个层次之间是相互独立的,每一个层之间有足够的灵活…...
QT-Http post 同步请求
在 Qt 中,你可以使用 QNetworkAccessManager 对象的 sendCustomRequest 方法来发送同步的 HTTP 请求。以下是一个演示如何使用该方法发送同步 HTTP POST 请求的示例代码: #include <QCoreApplication> #include <QNetworkAccessManager> #i…...
【JVM】StringTable 字符串常量池
参考:javaGuide 字符串常量池 是 JVM 为了提升性能和减少内存消耗针对字符串(String 类)专门开辟的一块区域,主要目的是为了避免字符串的重复创建 String的不可变性 1.通过字面量的方式(区别于new)给一个…...
Unity中URP实现水体(水的焦散)
文章目录 前言一、原理1、 通过深度图,得到 对应像素 在 世界空间下的Z值2、得到模型顶点在 观察空间 下的坐标3、由以上两点得到 深度图像素 对应的 xyz 值4、最后,转化到 模型本地空间下,用其对焦散纹理采样 二、实现1、获取深度图2、在顶点…...
vue构建版本
完整版:同时包含编译器和运行时的版本。 编译器:用来将模板字符串编译成为 JavaScript 渲染函数的代码。 运行时runtime:用来创建 Vue 实例、渲染并处理虚拟 DOM 等的代码。基本上就是除去编译器的其它一切。 UMD:UMD 版本可以…...
Docker挂载镜像到本地(日常记录)
Docker挂载镜像到本地 1、进入jar包文件夹 cd docker-publish/2、编写DockFile文件 #使用Jdk8环境作为基础镜像,如果镜像不在本地则会从DockerHub进行下载 #FROM openjdk:8-jdk-alpine FROM openjdk:11 #VOLUME 指定了临时文件目录为/tmp。其效果是在主机 /var/l…...
【Elasticsearch查询】精确查询
文章目录 复合查询constant_score querybool querydis_max queryfunction_score queryboosting query单层嵌套双层嵌套 词项查询term query(词项查询)数字的精确查询文本的精确查询查询优化 terms query(多词项查询)terms_set que…...
小狐狸chat2.7.2免授权修复版可用版
小狐狸chat2.7.2免授权修复版可用版 在网络上面找了好几个版本不能使用,今天发布这个仔细测试正常使用 主要功能:独立版无限多开支持分销会员充值自己APP打包小程序万能创作MJ绘图多个国内接口 国外很火的ChatGPT,这是一种基于人工智能技术…...
通过QScrollArea寻找最后一个弹簧并且设置弹簧大小
项目原因,最近需要通过QScrollArea寻找其中最后一个弹簧并且设置大小和策略,因为无法直接调用UI指针,所以只能用代码寻找。 直接上代码: if (m_scrollArea){int iScrollWidth m_labelSelectedTitle->width();m_scrollArea-&g…...
為什麼使用海外動態代理IP進行網路爬蟲?
網路爬蟲作為獲取網路數據的重要工具,其重要性不言而喻。但隨著網站反爬策略的日益嚴格,爬蟲任務變得愈發困難,不過海外動態代理IP可以很好地解決這一問題。本文將詳細闡釋動態代理IP在爬蟲中的應用,以及如何使用動態代理IP提升爬…...
LeetCode 热题100 刷题笔记
一:哈希表 一般哈希表都是用来快速判断一个元素是否出现集合里。 直白来讲其实数组就是一张哈希表,哈希表中关键码就是数组的索引下标,然后通过下标直接访问数组中的元素。 1.两数之和 题目链接:. - 力扣(LeetCode…...
veridata安装
GoldenGate Veridata是GoldenGate中用于比较数据库间数据同步效果的一个对比软件。Veridata基于Web,支持大据量的数据对比,能够在不停止数据同步的情况下就可以比较数据。 1、安装veridata前我们都会先安装 middleware infrastructure 这时我们会添加几个…...
面试笔记系列三之spring基础知识点整理及常见面试题
目录 如何实现一个IOC容器? 说说你对Spring 的理解? 你觉得Spring的核心是什么? 说一下使用spring的优势? Spring是如何简化开发的? IOC 运行时序 prepareRefresh() 初始化上下文环境 obtainFreshBeanFactory() 创建并…...
面试笔记系列四之SpringBoot+SpringCloud+计算机网络基础知识点整理及常见面试题
目录 Spring Boot 什么是 Spring Boot? Spring Boot 有哪些优点? SpringBootApplication注解 Spring Boot 的启动流程 Spring Boot属性加载顺序 springboot自动配置原理是什么?(*) 如何理解springboot中的start…...
Kernel[Device Tree] - 1. 设备树的由来
内核代码中,arch文件夹下,是各个架构相关的代码,arm也在里面。 arm子文件夹下,有mach-xxx的目录,就是针对各个芯片类型的,比如mach-imx就是imx系列的芯片。 再里面就是具体的芯片或SOC,比如ma…...
第十四天-网络爬虫基础
目录 1.什么是爬虫 2.网络协议 OSI七层参考模型 TCP/IP模型 1.应用层 2.传输层 3.网络层 3.HTTP协议 1.介绍 2.http版本: 3.请求格式 4.请求方法 5.HTTP响应 状态码: 6.http如何连接 4.Python requests模块 1.安装 2.使用get/post 3.响…...
Linux系统安装
Linux系统安装 安装包链接 链接:https://pan.baidu.com/s/1FdP7TH90UvKUQuiL2yeGCA 提取码:c49n安装包内容 虚拟机执行文件 详细安装教程 虚拟机密钥 Ubuntu 安装步骤 先点击虚拟机的.EXE文件安装,打开安装教程,有详细的说明。...
springboot-基础-thymeleaf配置+YAML语法
备份笔记。所有代码都是2019年测试通过的,如有问题请自行搜索解决! 目录 配置thymeleafthymeleaf举例参数设置yaml基础知识YAML语法报错:Expecting a Mapping node but got 其他语法 spring boot不推荐使用jsp。thymeleaf是一个XML/XHTML/HTM…...
深入理解分库、分表、分库分表
前言 分库分表,是企业里面比较常见的针对高并发、数据量大的场景下的一种技术优化方案,所谓"分库分表",根本就不是一件事儿,而是三件事儿,他们要解决的问题也都不一样,这三个事儿分别是"只…...
Oracle中序列
1. Sequence 定义 在Oracle中可以用SEQUENCE生成自增字段。Sequence序列是Oracle中用于生成数字序列的对象,可以创建一个唯一的数字作为主键。 2. 为什么要用 Sequence 你可能有疑问为什么要使用序列? 不能使用一个存储主键的表并每次递增吗…...
STM32 串口 FIFO 与 DMA 高效数据流设计
1. 为什么需要FIFODMA的串口方案 第一次用STM32做串口通信时,我天真地以为直接调用HAL_UART_Receive_IT()就能搞定所有问题。结果在工业现场调试时,当传感器以115200波特率连续发送数据时,系统直接卡死——这就是典型的数据淹没问题。后来发现…...
大模型赛道香?转行工程师掏心窝子告诉你4个血泪真相!避坑指南
本文是一位成功转行大模型算法工程师的分享,揭示了大模型赛道的机遇与挑战。文章分析了数据、平台、应用、部署四大方向,强调数据敏感度和工程能力的重要性,并指出SFT/RLHF并非适合所有人的路径。同时,提供了入行建议和不同学历背…...
从多模态到模型之争:Java开发者的AI认知升级与转型指南
写在前面“多模态是什么?ChatGPT和DeepSeek到底有什么区别?在现在AI浪潮的冲击下,我作为一个Java后端开发者,到底要不要学AI?”这是很多Java开发者正在面对的困惑。AI领域日新月异,概念层出不穷,…...
从模块整合到数据持久化:第九届蓝桥杯单片机省赛核心功能实现剖析
1. 赛题核心模块解析 第九届蓝桥杯单片机省赛题目看似简单,实则暗藏玄机。题目要求整合数码管、LED、按键、ADC和EEPROM五大模块,实现一个具备参数设置、模式切换、亮度调节和数据掉电保存的完整系统。这五大模块就像乐高积木,单独使用都不难…...
剪映专业版教程:制作画卷开合效果
前言 今天教大家一个画卷开合效果。这种效果模拟画卷从中间向上下两边展开,停留片刻后缓缓合拢,配合四季主题诗词和朗读,适合古风视频、诗词鉴赏、传统文化展示等场景。 效果预览:画卷从中间向上下翻开,露出四季风景…...
基于滑膜控制的3车协同自适应巡航控制技术:理论与实践的全面解析
基于滑膜控制smc的3辆协同自适应巡航控制,上层滑膜控制器产生期望加速度,下层通过油门和刹车控制车速,实现自适应巡航控制。 个人觉得从结果图中看出基于滑膜控制的效果非常好,不亚于模型预测控制mpc!!&…...
别再死磕卡尔曼滤波了!用RBPF粒子滤波搞定机器人SLAM建图(附避坑指南)
粒子滤波实战:用RBPF突破SLAM建图瓶颈的工程指南 当你在ROS中运行gmapping节点时,是否遇到过地图突然扭曲变形的情况?或是发现粒子群在重采样后迅速退化,导致定位完全失败?这些正是传统卡尔曼滤波方法在复杂环境中暴露…...
Matlab if语句从入门到精通:新手必看的实用指南
文章目录一、if语句的基本结构:最基础也是最核心的用法1.1 单个if的用法1.2 if...else:满足或不满足的双向选择1.3 if...elseif...else:多条件分支判断二、常见的坑点:这些错误你一定要避免2.1 条件表达式必须是标量逻辑值2.2 逻辑…...
【Anaconda+PyCharm+PyTorch】从零到一:手把手搭建深度学习开发环境
1. 环境准备:从零开始的深度学习之旅 刚接触深度学习的新手常常会被复杂的开发环境劝退,我自己刚开始的时候也踩过不少坑。今天我就用最直白的语言,带你一步步搭建一个稳定、可复现的PyTorch开发环境。整个过程就像搭积木一样简单,…...
Unity与佳能单反深度集成:拍照控制与实时数据流处理实战
1. 为什么需要Unity与佳能单反集成? 在开发互动应用时,我们经常需要高质量的图像输入。手机摄像头虽然方便,但在画质、光学变焦、景深控制等方面与专业单反相机存在明显差距。我做过一个AR试衣间项目,最初用iPhone摄像头ÿ…...
