JAVA EE_网络原理_网络层
晨雾散尽,花影清晰。
----------陳長生.
❀主页:陳長生.-CSDN博客❀
📕上一篇:数据库Mysql_联合查询-CSDN博客
1.IP协议
1.1.基本概念
IP协议是网络层的核心协议,负责将数据从一端传送到另一端
主机:有IP标识,但没有路由选择
路由:既有IP标识也有路由选择
节点:图中的任意一个图形都为节点(即任意主机和路由器)
1.2.协议头格式
4位版本:指IP协议版本,标识IPv4,目前常用的有IPv4和IPv6。
4位首部长:以4字节为单位表示IP头部长度。
8位服务位:实际上只有4位服务位,分别是最大吞吐量(传输速率),最小延迟(发送和接受数据的时间),最高可靠性(减少丢包率),最小成本(对应时间内消耗最少),4个服务位具有唯一性,也就是同一时间只有有一个服务位进行。
16位总长度:长度为64kb的长度,当超过64kb就会进行数据分组。
16标识:会为分组后的数据包提供IP报头,便于后续重组数据。
13位片偏移:为传输的数据保证顺序性。
3位标志位:有一位不使用,有一位禁止分片,有一位作为数据传输的结束标志。
8位生存时间:数据在传输时,会经历多个路由点,我们将数据传送到下一个路由器位“下一条”,那么8位生存时间一般表示为32/64/128跳,如果超出了,那么就丢弃该数据包。
8为协议:描述当前的数据包应该使用哪种协议。
16位首部校验和:用于校验数据包是否正确,如JAVA EE_网络原理_UDP与TCP-CSDN博客中讲解的校验和相同。
2.地址管理
2.1.网络划分
可将网段划分为网络号和主机号
网络号:相同局域网中的网络号必须相同,不同局域网中的网络号必须不同。
主机号:相同局域网中的主机号必须不同(若相同会产生两个一样IP地址的主机,那么这两台主机就会竞争一个IP地址而导致上不了网),不用局域网中的主机号可以相同。
我们有可以将网络划分为3类
A类:8位网络号,24位主机号(大范围)
B类:16位网络号,16位主机号(中范围)
C类:24位网络号,8位主机号(小范围)
2.2.特殊的IP地址
网络号:主机位全为0,代表该段的整段子网
广播地址:主机位全位1,代表该段子网的广播IP,往这个IP上发送数据,该段子网的其他IP也能接收0到
环回地址:IP为127.0.0.1,可以自己发送数据自己接收,一般用于测试,例如:本地服务测试,网络协议验证,开发调试,安全隔离
2.3.私有IP地址和公网IP地址
2.3.1.私有IP地址
即局域网中使用的IP地址
地址范围可分为:
- 10.*
- 127.16.*~127.32.*
- 192.168.*
2.3.2.公网IP地址
除了私网中的范围其余都是公网IP地址
2.4.IP地址的数量和限制
目前最常用的为IPv4,它的数量为2^32 大约45亿左右,这个数量在早期的网络环境中是完全够用的,但随着网络越来越发达,IP地址愈发紧张,那么总有办法来缓解IP紧张的问题。
2.4.1.动态分配IP地址
因为地球不同的地方有时间差,就举例中国和美国,昼夜颠倒,当中国人晚上休息的时候,他们手机上的IP地址是空闲的,但因为时间差,美国这时候就就为白天,使用手机和电脑的人就多了,那么就可以将中国地区的IP地址暂时给美国地区的人使用,这便是动态分配IP。
这个办法在早期是有用的,但是人口越来越多,这种办法也没法有效缓解IP紧张的情况。
2.4.2.NAT机制(网络地址映射)
假设有A和B两个设备
- 在相同局域网中,A和B设备可以直接通信。
- 在不同局域网中,A和B不能直接通信。
- 若A为内网的IP,B为外网的IP,A可以访问B,B不能访问A(应为外网B是唯一的,但内外A不是唯一的,所以B不知道要访问哪个A),但是B可以通过A的访问路径来找到A
2.4.3.路由选择
路由选择是一种探索式,启发式的发送数据的方式,一个路由器不知道数据目的地的时候,会向相邻路由器发送数据,此时相邻的路由器也不知道数据目的地,于是又向相邻路由器发送数据,当发送次数超出最大限制时,就会停止发送,丢弃该数据。
以下面为例: 长生与小美是异地恋,都处于不同的位置,那么他们在网络上聊天的时候,数据就会从长生位置的路由器开始找对方位置,如果找不到,那么就会往更大的范围的路由器去找,依次到Y1省时,它知道小美在X1省,那么就会向X1省发送数据,此时依次向下路由器寻找,直到找到小美所在的区域。
相关文章:

JAVA EE_网络原理_网络层
晨雾散尽,花影清晰。 ----------陳長生. ❀主页:陳長生.-CSDN博客❀ 📕上一篇:数据库Mysql_联…...

森林生态学研究深度解析:R语言入门、生物多样性分析、机器学习建模与群落稳定性评估
在生态学研究中,森林生态系统的结构、功能与稳定性是核心研究内容之一。这些方面不仅关系到森林动态变化和物种多样性,还直接影响森林提供的生态服务功能及其应对环境变化的能力。森林生态系统的结构主要包括物种组成、树种多样性、树木的空间分布与密度…...

AI大模型学习十八、利用Dify+deepseekR1 +本地部署Stable Diffusion搭建 AI 图片生成应用
一、说明 最近在学习Dify工作流的一些玩法,下面将介绍一下Dify Stable Diffusion实现文生图工作流的应用方法 Dify与Stable Diffusion的协同价值 Dify作为低代码AI开发平台的优势:可视化编排、API快速集成 Stable Diffusion的核心能力:高效…...

关于chatshare.xyz激活码使用说明和渠道指南!
chatshare.xyz和chatshare.biz是两个被比较的平台,分别在其功能特性和获取渠道有所不同。 本文旨在探讨它们的差异,以及提供如何获取并使用的平台信息。此外,还提及其他一些相关资源和模板推荐以满足用户需求。 主要区分关键点 1、chatshar…...
【Python-Day 12】Python列表进阶:玩转添加、删除、排序与列表推导式
Langchain系列文章目录 01-玩转LangChain:从模型调用到Prompt模板与输出解析的完整指南 02-玩转 LangChain Memory 模块:四种记忆类型详解及应用场景全覆盖 03-全面掌握 LangChain:从核心链条构建到动态任务分配的实战指南 04-玩转 LangChai…...
RAII是什么?
RAII(Resource Acquisition Is Initialization,资源获取即初始化)是C编程中的一项非常重要且经典的设计思想,也是现代C资源管理的基石。它主要解决资源的自动管理与释放问题,从而帮助程序员避免资源泄漏、悬空指针等常…...

Qt开发经验 --- 避坑指南(14)
文章目录 [toc]1 linux下使用linuxdeploy打包2 Qt源码下载3 QtCreator配置github copilot实现AI编程4 使用其它编程AI辅助开发Qt5 Qt开源UI库6 QT6.8以后版本安装QtWebEngine7 清除QtCreator配置 更多精彩内容👉内容导航 👈👉Qt开发经验 &…...
JavaScript 循环语句全解析:选择最适合的遍历方式
循环是编程中处理重复任务的核心工具。JavaScript 提供了多种循环语句,每种都有其适用场景和独特优势。本文将深入解析 JavaScript 的 6 种核心循环语句,通过实际示例帮助你精准选择合适的循环方案。 一、基础循环三剑客 1. for 循环 经典索引控制 ja…...

MIT 6.S081 2020 Lab3 page tables 个人全流程
文章目录 零、写在前面1、关于页表2、RISC-V Rv39页表机制3、虚拟地址设计4、页表项设计5、访存流程6、xv6 的页表切换7、页表遍历 一、Print a page table1.1 说明1.2 实现 二、A kernel page table per process2.1 说明2.2 初始化 / 映射相关2.3 用户内核页表的创建和回收2.4…...
Oracle 通过 ROWID 批量更新表
Oracle 通过 ROWID 批量更新表 在 Oracle 数据库中,使用 ROWID 进行批量更新是一种高效的更新方法,因为它直接定位到物理行位置,避免了通过索引查找的开销。 ROWID 基本概念 ROWID 是 Oracle 数据库中每一行的唯一物理地址标识符ÿ…...
webpack 的工作流程
Webpack 的工作流程可以分为以下几个核心步骤,我将结合代码示例详细说明每个阶段的工作原理: 1. 初始化配置 Webpack 首先会读取配置文件(默认 webpack.config.js),合并命令行参数和默认配置。 // webpack.config.js…...
tcpdump 的用法
tcpdump 是一款强大的命令行网络抓包工具,用于捕获和分析网络流量。以下是其核心用法指南: 一、基础命令格式 sudo tcpdump [选项] [过滤表达式]权限要求:需 root 权限(使用 sudo) 二、常用选项 选项说明-i <接口…...
Agent杂货铺
零散记录一些Agent相关的内容。不成体系,看情况是否整理 ReAct ReAct 是一种实践代理模型的高级框架,通过将大语言模型(LLMs)的推理和执行行动的能力结合起来,增强了它们在处理复杂任务时的决策能力、适应性和与外部…...

【Redis】Redis的主从复制
文章目录 1. 单点问题2. 主从模式2.1 建立复制2.2 断开复制 3. 拓扑结构3.1 三种结构3.2 数据同步3.3 复制流程3.3.1 psync运行流程3.3.2 全量复制3.3.3 部分复制3.3.4 实时复制 1. 单点问题 单点问题:某个服务器程序,只有一个节点(只搞一个…...

第04章—技术突击篇:如何根据求职意向进行快速提升与复盘
经过上一讲的内容阐述后,咱们定好了一个与自身最匹配的期望薪资,接着又该如何准备呢? 很多人在准备时,通常会选择背面试八股文,这种做法效率的确很高,毕竟能在“八股文”上出现的题,也绝对是面…...

Quantum convolutional nerual network
一些问答 1.Convolution: Translationally Invariant Quasilocal Unitaries 理解? Convolution(卷积): 在量子信息或量子多体系统中,"卷积"通常指一种分层、局部操作的结构,类似于经典卷积神经网…...

RL之ppo训练
又是一篇之前沉在草稿箱的文章,放出来^V^ PPO原理部分这两篇就够了: 图解大模型RLHF系列之:人人都能看懂的PPO原理与源码解读人人都能看懂的RL-PPO理论知识 那些你或多或少听过的名词 actor-critic: actor表示策略,critic表示价值…...
AI云防护真的可以防攻击?你的服务器用群联AI云防护吗?
1. 传统防御方案的局限性 静态规则缺陷:无法应对新型攻击模式(如HTTP慢速攻击)资源浪费:固定带宽采购导致非攻击期资源闲置 2. AI云防护技术实现 动态流量调度算法: # 智能节点选择伪代码(参考群联防护…...

Docker封装深度学习模型
1.安装Docker Desktop 从官网下载DockerDesktop,安装。(默认安装位置在C盘,可进行修改) "D:\Program Files (x86)\Docker\Docker Desktop Installer.exe" install --installation-dir"D:\Program Files (x86)\Do…...

11、参数化三维产品设计组件 - /设计与仿真组件/parametric-3d-product-design
76个工业组件库示例汇总 参数化三维产品设计组件 (注塑模具与公差分析) 概述 这是一个交互式的 Web 组件,旨在演示简单的三维零件(如带凸台的方块)的参数化设计过程,并结合注塑模具设计(如开模动画)与公…...
4.4 os模块
os模块: chdir:修改工作路径 --- 文件所在位置的标识 getcwd():返回当前路径,如果修改了则显示修改后的路径 curdir:获取当前目录的表示形式 cpu_count():返回当前cpu的线程数 getppid(): 获取当前进程编号 getppid():获取当前进程的父进…...

OpenAI 30 亿收购 Windsurf:AI 编程助手风口已至
导语: 各位开发者同仁、产品经理伙伴们,从2024年起,一场由AI驱动的研发范式革命已然来临。Cursor等AI代码编辑器凭借与大语言模型的深度集成,正以前所未有的态势挑战,甚至颠覆着IntelliJ、VS Code等传统IDE的固有疆域。根据OpenRouter的API使用数据,Anthropic的Claude 3.…...
材料创新与工艺升级——猎板PCB引领高频阻抗板制造革命
在5G通信、AI服务器和自动驾驶的推动下,高频电路对信号完整性的要求日益严苛。猎板PCB作为国内高端PCB制造的标杆企业,通过材料创新与工艺革新,实现了阻抗控制的突破性进展,为行业树立了新标杆。 1. 高频材料的突破 传统FR-4基材…...
协议路由与路由协议
协议路由”和“路由协议”听起来相似,但其实是两个完全不同的网络概念。下面我来分别解释: 一、协议路由(Policy-Based Routing,PBR) ✅ 定义: 协议路由是指 根据预设策略(策略路由࿰…...

【linux】倒计时小程序、进度条小程序及其puls版本
小编个人主页详情<—请点击 小编个人gitee代码仓库<—请点击 linux系列专栏<—请点击 倘若命中无此运,孤身亦可登昆仑,送给屏幕面前的读者朋友们和小编自己! 目录 前言一、知识铺垫1. 回车换行2. 缓冲区 二、倒计时小程序1. 实现 三、进度条小…...
HTML难点小记:一些简单标签的使用逻辑和实用化
HTML难点小记:一些简单标签的使用逻辑和实用化 jarringslee 文章目录 HTML难点小记:一些简单标签的使用逻辑和实用化简单只是你的表象标签不是随便用的<div> 滥用 vs 语义化标签的本质嵌套规则的隐藏逻辑SEO 与可访问性的隐形关联 暗藏玄机的表单…...
FastAPI实现JWT校验的完整指南
在现代Web开发中,构建安全的API接口是开发者必须面对的核心挑战之一。随着FastAPI框架的普及,其异步高性能特性与Python类型提示的结合,为开发者提供了构建高效服务的强大工具。本文将深入探讨如何基于FastAPI实现JWT(JSON Web To…...

物流无人机结构与载货设计分析!
一、物流无人机的结构与载货设计模块运行方式 1.结构设计特点 垂直起降与固定翼结合:针对复杂地形(如山区、城市)需求,采用垂直起降(VTOL)与固定翼结合的复合布局,例如“天马”H型无人机&am…...
Linux 常用命令集合
以下是一份 Linux 常用命令集合,涵盖文件操作、系统管理、网络管理、权限管理、进程管理等常见任务,并附上代码示例: 1. 文件与目录操作 命令作用示例ls列出目录内容ls -l(详细列表) ls -a(显示隐藏文件&a…...
LoRA(Low-Rank Adaptation)原理详解
LoRA(Low-Rank Adaptation)原理详解 LoRA(低秩适应)是一种参数高效微调(Parameter-Efficient Fine-Tuning, PEFT)技术,旨在以极低的参数量实现大模型在特定任务上的高效适配。其核心思想基于低秩分解假设,即模型在适应新任务时,参数更新矩阵具有低秩特性,可用少量参…...