【Java EE初阶十九】网络原理(四)
4. 数据链路层
数据链路层也有很多种协议,其中一个比较常见常用的,就是“以太网协议”(通过网线/光纤, 来通信所使用的协议叫做以太网协议,以太网是横跨数据链路层 + 物理层);
4.1 以太网数据帧格式
帧头 + 载荷(IP 数据报)+ 帧尾,以太网数据帧格式如下图所示:

如上图所示:
目的地址:6字节
源地址:6字节
这里的6 个字节,不是 IP 地址,而是网络中的另一套地址体系,mac 地址(物理地址)
由于最开始搞网络的时候,网络层协议和数据链路层协议,是各自独立的,所以地址这个东西就被搞了两份出来, 故此这俩地址就被用到了不同的场景中, mac 地址由于是 6 个字节,能表示的范围,比IP 地址大了6w 多倍。
IP 地址虽然早都不够用了,但是 mac 还是够用的。目前来说,每个设备都是有唯一的 mac 地址(网卡出厂的时候,就写死的,一般来说也不能修改,mac 也可以作为一台网络设备的身份标识)
q1:IP 地址和 Mac 地址各自的用途是什么?
IP 协议立足于全局,完成整个通信过程的路径规划工作。
以太网则是关注于局部,即相邻两个设备之间的通信过程。类型:
描述载荷数据是一个啥样的数据,关于ip数据报的相关知识如下所示:
像交换机这样的设备,收到以太网数据帧的时候,就需要进行转发,(这个转发过程就需要能够根据 mac 地址,判定出数据要走哪个网口),这里的网口是"物理意义"上插网线的口(IP 协议,路由器,走哪个网络接口,其实是抽象的概念,最终还是要在数据链路层才能决定是走哪个网口...)
q2:具体如何转发?
交换机内部也有一个数据结构"转发表”,和前面说的路由表有点像,但其实还是有一系列差别;转发表是一个简单的像 hash 这样的映射,转发表主要就是通过 arp 协议来生成的;
5. DNS 域名解析系统
使用 IP 地址,来描述设备在网络上的位置,IP 地址不适合进行宣传,所以引入了“域名"这样的方式来解决上述问题,将ip地址换成单词如:www.bilinili.com,所以需要有一套自动的系统,把域名翻译成 IP 地址(将域名和IP 想象成一组键值对);
最早的域名解析系统,是通过一个简单的文件来实现的-->hosts 文件,如下图所示:
hosts 文件来维护域名和ip 的映射关系,,非常不方便,于是就搭建了一套 DNS 系统(一组服务器),把上述这样的映射关系都保存到这个服务器中了;如果你想访问某个域名,就先给这个 DNS 服务器发起请求,查询一下当前域名对应的 ip, 然后再访问目标网站
每时每刻都有很多设备需要进行 DNS 的请求,这一组服务器能抗住这么多的访问嘛?
首先一个服务器硬件资源是有限的(CPU,内存,硬盘,网络带宽...),服务器处理每个请求,肯定都是要消耗一定的资源的。如果单位时间内,请求太多,消耗的总资源超过了机器本身的资源上限,这样机器就挂了,这种所谓的"高并发" 问题,我们有两种核心思路,如下所示:
1.开源;搭建DNS系统的大佬,就开始号召各个网络运营商都可以自己搭建一组"DNS 镜像服务器",镜像服务器的数据, 都从他们这边来同步,当用户向DNS服务器发出请求时,此时用户就会优先访问离自己最近的镜像服务;
2、节流.;让请求量变少,即让每个上网的设备都搞本地缓存。如果我的电脑 1min 之内要访问 10 次 www.bilibili.com,只是让第一次请求 DNS 即可,把请求得到的结果保存到本地;后面9次请求都使用第一次的结果即可;
一般进行 DNS 解析,访问的都是就近的运营商的镜像;
运营商的镜像服务器,经常会出现,"QQ 能用,网页打不开”的问题,这时候就需要修改电脑上的 DNS 服务器的地址。
ps:本次的内容就到这里了,如果大家感兴趣的话就请一键三连哦!!!
相关文章:
【Java EE初阶十九】网络原理(四)
4. 数据链路层 数据链路层也有很多种协议,其中一个比较常见常用的,就是“以太网协议”(通过网线/光纤, 来通信所使用的协议叫做以太网协议,以太网是横跨数据链路层 物理层); 4.1 以太网数据帧格式 帧头 载荷(IP 数据…...
12.23 校招 实习 内推 面经
绿*泡*泡VX: neituijunsir 交流*裙 ,内推/实习/校招汇总表格 1、社招&校招 | 轻舟智航 社招 & 2024校招 社招&校招 | 轻舟智航 社招 & 2024校招 2、校招 | 成都精灵云科技2024校园招聘补录 校招 | 成都精灵云科技2024校园招聘补录 …...
FPGA转行ISP的探索之一:行业概览
ISP的行业位置 最近看到一个分析,说FPGA的从业者将来转向ISP(Image Signal Process图像信号处理)是个不错的选择,可以适应智能汽车、AI等领域。故而我查了一下ISP,对它大致有个概念。 传统的ISP对应的是相机公司&…...
Linux系统之部署网页小游戏合集网站
Linux系统之部署网页游戏合集网站 一、项目介绍1.1 项目介绍1.2 自定义配置方法二、本次实践介绍2.1 环境规划2.2 本次实践介绍三、检查本地环境3.1 检查操作系统版本3.2 检查当前yum仓库四、安装httpd软件4.1 检查yum仓库4.2 安装httpd软件4.3 启动httpd服务4.4 查看httpd服务…...
【白嫖8k买的机构vip教程】python(2):python_re模块
python之re模块 一、正则表达式 re模块是python独有的匹配字符串的模块,该模块中提供的很多功能是基于正则表达式实现的,而正则表达式是对字符串进行模糊匹配,提取自己需要的字符串部分,他对所有的语言都通用。注意…...
【CSS】display:flex和display: inline-flex区别
flex:将对象作为弹性伸缩盒显示 inline-flex:将对象作为内联块级弹性伸缩盒显示 DOM结构 <div class"main"><div></div><div></div><div></div><div></div></div>flex .main{…...
rpm安装gitlab
1.1 下载gitlab安装包 使用rpm包安装命令安装gitlab的rpm包,下载地址为https://packages.gitlab.com/gitlab/gitlab-ce社区版本; 推荐使用清华大学镜像:https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab安装包详见࿱…...
图论之dfs与bfs的练习
dfs--深度优选搜索 bfs--广度优先搜索 迷宫问题--dfs 问题: 给定一个n*m的二维迷宫数组其中S是起点,T是终点,*是墙壁(无法通过), .是道路 问从起点S出发沿着上下左右四个方向走,能否走到T点&a…...
Vue练习5:图片的引入
后续会补充 1.require引入 src -> asstes <template><img :src"url"> </template><script> export default {name: App,data(){return{url: require("./assets/logo.png"),}} } </script> 2.import引入 src…...
SpringBoot+Kafka
文章目录 一、依赖二、配置文件三、API1、生产者2、消费者 一、依赖 <!-- spring-kafka(与kafka的版本一致) --> <dependency><groupId>org.springframework.kafka</groupId><artifactId>spring-kafka</artifactId>…...
世界顶级名校计算机专业,都在用哪些书当教材?(文末送书)
目录 01《深入理解计算机系统》02《算法导论》03《计算机程序的构造和解释》04《数据库系统概念》05《计算机组成与设计:硬件/软件接口》06《离散数学及其应用》07《组合数学》08《斯坦福算法博弈论二十讲》参与规则 清华、北大、MIT、CMU、斯坦福的学霸们在新学期里…...
蓝桥杯刷题--python-8(2023 填空题)
0幸运数 - 蓝桥云课 (lanqiao.cn) res=0 for i in range (1,100000000):l_n=[]for j in str(i):l_n.append(int(j))if len(l_n) % 2 ==0:cur =len(l_n)>>1if sum(l_n[:cur])==sum(l_n[cur:]):res+=1 print(res) 0有奖问答 - 蓝桥云课 (lanqiao.cn) dfs def bfs(score, q…...
Eclipse - Reset Perspective
Eclipse - Reset Perspective 1. Window -> Perspective -> Reset Perspective2. Reset Perspective -> YesReferences 1. Window -> Perspective -> Reset Perspective 2. Reset Perspective -> Yes References [1] Yongqiang Cheng, https://yo…...
1.5v的电池电压低于多少v等于没电
对于1.5V的电池,电压低于一定值时就不再适合使用了。具体的电压值取决于电池的类型和使用设备的需求。一般来说, 对于接收设备(如收音机、BB机、遥控机等),每节电池电压一般到1.2V以下就认为没电了。有些电动玩具、剃…...
LabVIEW智能监测系统
LabVIEW智能监测系统 设计与实现一个基于LabVIEW的智能监测系统,通过高效的数据采集和处理能力,提高监测精度和响应速度。系统通过集成传感器技术与虚拟仪器软件,实现对环境参数的实时监测与分析,进而优化监控过程,提…...
代码随想录刷题第34天
第一题是柠檬水找零https://leetcode.cn/problems/lemonade-change/,感觉并没有特别靠近贪心算法,可供讨论的情况非常少,5元收下,10元返5元,20元返15元,对各种找零情况讨论一下即可。 class Solution { pu…...
AMD FPGA设计优化宝典笔记(5)低频全局复位与高扇出
亚军老师的这本书《AMD FPGA设计优化宝典》,他主要讲了两个东西: 第一个东西是代码的良好风格; 第二个是设计收敛等的本质。 这个书的结构是一个总论,加上另外的9个优化,包含的有:时钟网络、组合逻辑、触发…...
14. Qt 程序菜单实现,基于QMainWindow
目录 前言: 技能: 内容: 一、ui中直接添加控件实现 二、 完全通过代码实现菜单 参考: 前言: 基于QMainWindow,两种方式实现菜单:通过直接添加ui控件快速添加菜单和完全通过代码实现菜单&a…...
如何利用SpringSecurity进行认证与授权
目录 一、SpringSecurity简介 1.1 入门Demo 二、认证 编辑 2.1 SpringSecurity完整流程 2.2 认证流程详解 2.3 自定义认证实现 2.3.1 数据库校验用户 2.3.2 密码加密存储 2.3.3 登录接口实现 2.3.4 认证过滤器 2.3.5 退出登录 三、授权 3.1 权限系统作用 3.2 授…...
如何简单上手清华AutoGPT并搭建到本地环境
一、准备工作 安装Docker:确保你的本地机器上已经安装了Docker。如果还没有安装,请访问Docker官方网站并按照指引进行安装。--点击进入Docker官网 获取清华AutoGPT的Docker镜像:清华AutoGPT团队可能已经提供了一个Docker镜像,方便…...
AMD Ryzen硬件调试神器:5分钟掌握SMU Debug Tool核心技巧
AMD Ryzen硬件调试神器:5分钟掌握SMU Debug Tool核心技巧 【免费下载链接】SMUDebugTool A dedicated tool to help write/read various parameters of Ryzen-based systems, such as manual overclock, SMU, PCI, CPUID, MSR and Power Table. 项目地址: https:/…...
BabelDOC:解决学术文档翻译三大痛点的智能PDF翻译工具
BabelDOC:解决学术文档翻译三大痛点的智能PDF翻译工具 【免费下载链接】BabelDOC Yet Another Document Translator 项目地址: https://gitcode.com/GitHub_Trending/ba/BabelDOC 你是否曾经面对一份重要的英文科研论文,需要快速理解却苦于语言障…...
基于随机森林与形态学参数预测星系外生恒星质量分数
1. 项目概述与核心目标在星系天文学领域,一个长期困扰我们的核心问题是:我们如何仅凭一张遥远星系的“照片”,就能解读它波澜壮阔的成长史?星系中的恒星,有些是“土生土长”的原位形成,有些则是通过“吞并”…...
机器学习增强恒电位分子动力学:原子尺度模拟锂枝晶生长机制
1. 项目概述:当机器学习“遇见”分子动力学,我们如何看清锂枝晶的生长?在锂金属电池的研究中,锂枝晶的生长问题就像一个挥之不去的幽灵,它直接关系到电池的安全性和循环寿命。我们总在说“枝晶刺穿隔膜导致短路”&…...
RePKG架构深度解析:解密Wallpaper Engine资源处理的核心技术
RePKG架构深度解析:解密Wallpaper Engine资源处理的核心技术 【免费下载链接】repkg Wallpaper engine PKG extractor/TEX to image converter 项目地址: https://gitcode.com/gh_mirrors/re/repkg 在数字内容创作领域,资源打包与纹理处理是图形应…...
避开这些坑,你的孟德尔随机化分析结果才可靠:以口腔癌研究为例的实操避雷指南
孟德尔随机化分析实战避坑指南:从数据陷阱到稳健结论当你在深夜盯着屏幕上那个意义不明的0.6940093乘数,或是当MR-PRESSO分析结果始终无法收敛时,是否怀疑过自己的分析流程存在致命缺陷?孟德尔随机化(MR)作…...
非参数贝叶斯聚类与核主成分分析:从原理到工程实践
1. 项目概述:从数据分组到降维的工程实践在数据科学和机器学习的日常工作中,我们常常面临两大核心挑战:一是如何从一堆看似杂乱无章的数据点中,发现其内在的、有意义的组别结构;二是当数据维度高到令人眼花缭乱时&…...
行列式点过程:从统计独立到负依赖的机器学习范式跃迁
1. 项目概述:从统计独立到负依赖的范式跃迁在机器学习和统计学的工具箱里,统计独立性长期以来扮演着基石的角色。从朴素贝叶斯分类器的特征条件独立假设,到蒙特卡洛方法中独立同分布的采样点,再到随机梯度下降中独立的小批量数据&…...
Gradio模型部署全攻略:从Hugging Face Spaces到AWS EC2实战
1. 项目概述与部署价值当你花了几周甚至几个月时间,终于训练出一个效果不错的机器学习模型,比如一个能识别猫狗图片的分类器,或者一个能生成诗歌的文本模型,接下来的问题往往不是技术上的,而是工程上的:怎么…...
机器学习势函数结合DFT:揭示缺陷如何降低半赫斯勒化合物晶格热导率
1. 项目概述与核心问题在热电材料的研究领域,半赫斯勒化合物一直是个“明星选手”,它们拥有不错的电学性能,但一个长期困扰研究者的难题是:理论计算出的晶格热导率总是比实验测量值高出一大截。这可不是个小问题,晶格热…...



