IP协议及相关特性

   IP协议负责地址管理和路由选择。它的组成为:

    接下来我们将对其中较重要的部分进行介绍。

     4位版本:这里的四位版本只有两个取值 分别为IPv4和IPv6,这两个额分别为不同的IP协议,但是现在主流的还是IPv4但是近年来IPv6在中国的普及率已经非常高了。

    4位首部长度:同TCP协议IP协议的报头也是可以变长的,报头长度是0~15实际上报头的上的是乘4的当为15时报头长度就是60。

    8位服务类型(TOS): 表示IP以哪种模式进行工作,其中3位优先字段已经被弃用,4位TOS字段和1位保留字段(必须置为0),4位TOS字段分贝表示:最小按时,最高可靠性,最小成本,最大吞吐量,这4者相互冲突,只能选择一个。

    16位总长度(字节数):IP数据报的长度,UDP也是16个字节但是只能传输64KB,但是IP则不同如果IP传输的数据超过了64KB,那么这个数据将会被拆分成许多很小的包,后续再进行组包。

    16位标识,3位版本,14位片偏移:这三个放在一起,主要是因为他们都是为了拆包组包做准备,16位标志就是将同一个包进行标记,是的进行组包的时候,,就可以判断哪一部分是不是同一份如果是同一份那么就可以进行组包,就是判断是否属于同一个包。3位标志中1位是查看当前是否需要组包,1位标识当前包是否是组包中的最后一个,还有一位就是没有什么作用,如果后续需要添加新的功能才会用到。13位位偏移,决定组包时候的先后顺序。

    8位生存空间(TTL):一个数据包在网络中最多生存多长时间,如果一个IP数据报的目的IP写错了,写成了不存在的IP就会消耗很多的网络资源,TTL(值32,64,128.....)约定了传送达到的次数(指的是经过路由器转发的次数),如果发送一个IP数据报TTL就会-1(经过交换机,不减)一旦TTL减到了0,此时这个数据包就会被当前路由器直接丢弃~~。

    8位协议:表示IP数据报中携带的是哪一种传输层网络协议,通过不同的数值感知接下来把数据交给TCP或UDP解析,还是其他协议。

    16位首部校验和:验证数据传输过程中是否出错(只针对首部IP报头)。

    32位源IP地址,32位目的IP地址:这两个是IP数据报中的最关键的信息,表示数据从哪里来到哪里去。IP地址也会出现不够用途的情况,自然也有解决方法:分别是动态分配IP地址,NAT网络地址转换,IPv6,接下来我们进行逐个介绍。

    动态分配IP地址:一个设备上网就分配不上网就不分配,但这只是权宜之计,不能很好的解决实际问题。

    NAT网络地址转换:使用一个IP代表一大波设备,IP地址分为两大类1,内网IP/私网IP 2,外网IP/公网IP。私网IP是由10.   172.16-172.31.*   和192.168.*开头的,要求公网IP必须是唯一的,但是私网IP允许是重复的(在不同的局域网中是允许重复的)。

    NAT网络地址转换发生情况,如果同一个局域网主机A访问主机B和公网上的设备A访问设备B都不会涉及到NAT,一个局域网中的主机A访问另一个局域网中主机B,NAT机制是不允许的,只有在局域网内部的设备访问公网上的设备BNAT机制主要就是针对这种情况进行生效的。

     IPv6:这个方案就简单粗暴了,直接更换IP协议,IPv4使用32位4个字节表示IP地址,IPv6使用128位16个字节表示IP地址,相当于IPv6的地址数比IPv4多了2^32*2^ 32*2^32个简单来说就是可以个地球上的每一粒沙子都分配上地址,IPv6的地址总数在地球上完全够用,根本不需要考虑用尽的情况。

    路由选择:路由选择是一个非常大的话题,我们只浅显的了解一下。网络是一个复杂的网状结构,因此从一个点到另一个点可能有很多条路,有花费时间长的,也有花费时间短的,这里的路由选择没办法找出最优解,只能找出较优解,这是因为,路由器都不知道我们整个网状结构的全貌,只能通过"问路"的方式,查找我们要去的节点路径,路由器的每一次问路都是比它自身大一级的路由器(认识的设备更广)进行问路,在通过路由控制表判断接下来该往哪里走,如果没有查到路由器有一个“默认的表项”进行下一跳(更高级的路由器),直到到达自己的目的地。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/427076.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【机器学习】OpenCV高级图像处理

🌈个人主页: 鑫宝Code 🔥热门专栏: 闲话杂谈| 炫酷HTML | JavaScript基础 ​💫个人格言: "如无必要,勿增实体" 文章目录 OpenCV高级图像处理图像滤波线性滤波高斯滤波均值滤波双边滤波 非线性滤波中值滤…

移情别恋c++ ദ്ദി˶ー̀֊ー́ ) ——6.vector(模拟实现)

1.存储结构 https://cplusplus.com/reference/vector/vector/ namespace zone {template<class T> //需要模板class vector{public:private:iterator _start;iterator _finish;iterator _endofstorage;}; } 可见&#xff0c;vector内核是由三个指针实现的 2.默认成员函…

LabVIEW机械产品几何精度质检系统

随着制造业的发展&#xff0c;对产品质量的要求越来越高&#xff0c;机械产品的几何精度成为衡量其品质的重要指标。为了提高检测效率和精度&#xff0c;开发了一套基于LabVIEW的几何精度质检系统&#xff0c;该系统不仅可以自动化地进行几何尺寸的测量&#xff0c;而且能实时分…

高校宿舍电费管理怎么实现

1引言 在大学的象牙塔里&#xff0c;宿舍不仅是学子们休憩的港湾&#xff0c;更是青春记忆的重要载体。然而&#xff0c;随着科技的发展与生活习惯的改变&#xff0c;宿舍内的电器设备日益增多&#xff0c;电费管理成为了一个不可忽视的问题。本文将从高校宿舍电费管理的现状出…

ORA-28032 Your password has expired and the database is set to read only

做个记录。 non-cdb 处于只读状态&#xff0c;CDB创建到noncdb的dblink后产生的报错&#xff0c;dblink可以成功创建&#xff0c;但无法连接到non-cdb。 解决&#xff1a;一开始以为是cdb的密码不正确&#xff0c;mos上找到问题&#xff0c;non-cdb的密码过期了&#xff0c;并且…

【软件测试】测试的岗位有哪些?

求职入口有很多&#xff1a;相关企业官网、求职软件、校招、公众号等等。 下面就在某招聘网站上看看测试有哪些岗位吧&#xff01; 测试只是一个统称&#xff0c;在测试下面还有很多细分岗位。 但是测试的岗位主要分为以下俩个方面&#xff1a; 软件测试开发工程师&#xff…

3.ChatGPT在教育领域的应用:教学辅助与案例分享(3/10)

ChatGPT在教育领域的应用&#xff1a;教学辅助与案例分享 引言 在21世纪的教育领域&#xff0c;技术革新正以前所未有的速度改变着传统的教学和学习方式。随着人工智能&#xff08;AI&#xff09;的快速发展&#xff0c;教育技术&#xff08;EdTech&#xff09;领域迎来了新的…

Vm软件安装_链接相机

工业相机的驱动连接 下载安装MVS MVS 客户端支持安装在 Windows XP/7/10 32/64bit&#xff0c;Linux 32/64bits 以及MacOS64bits操作系统上。本文以 Windows 系统为例进行介绍。 具体操作步骤如下&#xff1a; 请从海康机器人官网&#xff08;www.hikrobotics.com&#xff0…

前端实战:使用JS和Canvas实现运算图形验证码(uniapp、微信小程序同样可用)

图形验证码是网站安全防护的重要组成部分&#xff0c;能有效防止自动化脚本进行恶意操作&#xff0c;如何实现一个简单的运算图形验证码&#xff1f;本文封装了一个简单的js类&#xff0c;可以用于生成简单但安全的图形验证码。它支持自定义验证码样式&#xff0c;包括字体大小…

硬件工程师笔试面试——保险丝

目录 10、保险丝 10.1 基础 保险丝原理图 保险丝实物图 10.1.1 概念 10.1.2 保险丝的工作原理 10.1.3 保险丝的主要类型 10.1.4 保险丝的选择和使用注意事项 10.2 相关问题 10.2.1 保险丝的额定电流和额定电压是如何确定的? 10.2.2 保险丝的熔断速度对电路保护有何…

Arthas thread(查看当前JVM的线程堆栈信息)

文章目录 二、命令列表2.1 jvm相关命令2.1.2 thread&#xff08;查看当前JVM的线程堆栈信息&#xff09;举例1&#xff1a;展示[数字]线程的运行堆栈&#xff0c;命令&#xff1a;thread 线程ID举例2&#xff1a;找出当前阻塞其他线程的线程 二、命令列表 2.1 jvm相关命令 2.…

USB摄像头视频流转RTSP流

一、VLC查看USB摄像头视频流原理&#xff1a; USB摄像头的工作原理与VLC播放其他视频文件类似&#xff0c;主要区别在于视频流的来源是实时捕获的&#xff0c;而不是预先录制的文件。如果使用VLC将USB摄像头的视频流作为RTSP服务器广播&#xff0c;需要进一步配置 二、VLC查看…

【machine learning-六-supervise learning之线性回归模型】

监督学习之线性回归模型 线性回归模型线性模型回归模型 如何使用线性模型实现智能化预测呢寻找数据训练模型输入、特征、目标、预测值、模型代价函数 线性模型是人工智能监督学习中最广泛的应用&#xff0c;所以有必要先学习一下这个基础模型&#xff0c;做好基石。 线性回归模…

Reactor介绍,如何从简易版本的epoll修改成Reactor模型(demo版本代码+详细介绍)

目录 Reactor demo​​​​​​​ 引入 比喻 修改代码 connection tcp_server ET模式 主逻辑 处理事件 运行结果 代码 完善功能 读取数据 运行结果 ​编辑 代码 处理数据 回指指针 如何处理写事件 引入 循环内 处理对写事件的关心 异常处理 代码 se…

C# 携手 7-Zip 命令行:大文件压缩的终极武器?

前言 嗨&#xff0c;大家好&#xff01; 今天咱们来聊聊如何用 C# 调用 7-Zip 命令行来压缩大文件&#xff0c;这是个既高效又稳定的好办法&#xff0c;亲测有效&#xff01; 在实际工作中&#xff0c;压缩文件几乎是家常便饭&#xff0c;但可惜的是&#xff0c;许多常用的方…

【科技论文写作与发表】论文分类

目录 一、实验性论文特点写作结构适用学科方向 二、报道性论文特点写作结构适用学科方向 三、理论性论文特点写作结构适用学科方向 一、实验性论文 通过科学实验获得的数据和结果进行详细阐述和分析&#xff0c;检验某一科学理论或假说。 特点 详细描述实验目的、实验设计、实…

ORM框架详解:为什么不直接写SQL?

想象一下&#xff0c;你正在开发一个小型的在线书店应用。你需要存储书籍信息、用户数据和订单记录。作为一个初学者&#xff0c;你可能会想&#xff1a;“我已经学会了SQL&#xff0c;为什么还要使用ORM框架呢&#xff1f;直接写SQL语句不是更简单、更直接吗&#xff1f;” 如…

Uniapp的alertDialog返回值+async/await处理确定/取消问题

今天在使用uniui的alertDialog时&#xff0c;想添加一个确定/取消的警告框时 发现alertDialog和下面的处理同步进行了&#xff0c;没有等待alaertDialog处理完才进行 查询后发现问题在于 await 关键字虽然被用来等待 alertDialog.value.open() 的完成&#xff0c;但是 alertDi…

前端mock了所有……

目录 一、背景描述 二、开发流程 1.引入Mock 2.创建文件 3.需求描述 4.Mock实现 三、总结 一、背景描述 前提&#xff1a; 事情是这样的&#xff0c;老板想要我们写一个demo拿去路演/拉项目&#xff0c;有一些数据&#xff0c;希望前端接一下&#xff0c;写几个表格&a…

vs code 跳转很慢

查看结构体、接口等非常之慢。c/c语言服务功能使用了智能引擎所致&#xff0c;设置为模糊检索即可。 修改如下&#xff1a; 1.打开"文件"&#xff0c;选"首选项"&#xff0c;"设置" 2.弹出的窗口中搜索 "C_Cpp.intelliSenseEngine" …