IP 协议

IP协议格式

在这里插入图片描述

四位版本号

用来表示IP协议的版本,现有的IP协议只有两个版本,IPv4,IPv6,其他版本只在实验室中存在,没有大规模商用

四位首部长度

设定和TCP一样,IP报头是可变长的,IP报头又是带有选项(可以有,可以没有)的,这里的单位也是4个字节,也就是最大有16*4=64个字节的长度

8位服务类型

真正只有四位才有效果,类似于模式切换:
最小延时,传输一个数据报的时间尽量短
最大吞吐量,一定时间内传输的数据尽量多
最高可靠性,在传输过程中最不容易丢包
最小成本,在传输过程中消耗的硬件资源最低
四种形态互斥,只能切换一种情况

16位总长度

IP报头+载荷的长度
总长度-IP报头的长度=载荷长度=TCP报文的总长度
TCP报文总长度-TCP报头长度=TCP载荷长度
这里的16总长度,确实也涉及到64kb的问题
但是IP协议,自身是支持"拆包组包"机制
这里的64kb只是约束了一个ip数据报,如果我们要携带一个比较长的数据报的时候,IP协议会自动的把一个数据报拆分为多个数据报,接收方在进行分用的时候,也会把多个数据报合并成一个数据报

16位标识符,3位标志位,13位片偏移

这三个标志描述了整个IP数据报拆包租包的过程
当IP数据报需要携带比较长的TCP数据的时候就在IP协议这一层触发拆包操作
把一个大包拆分成多个小包
多个小的IP数据报都会携带有IP报头,载荷是TCP数据报的几个部分
在这里插入图片描述
16位标识:拆出的这几个包,16位标识符是相同的
13位片偏移:不同的,前一个包,片偏移更小,后一个更大,通过片偏移就可以区分拆分包的顺序
3位标志位:其中有一位是不用的,还有一位表示是否允许拆包,显然上面这里是1,剩下一位表示"结束标记"标识当前的包是否是最后一个,这一位为0就表示当前是最后一个包了

8位生存时间TTL

单位是次
初始情况下TTL会有个数值(32/64/128)
每次经过一个路由器转发,TTL就会-1,减到0了就会被丢弃
正常来说,TTL足以支持数据到达网络的任意一个位置,如果确实出现0了,基本可以认为目标IP不可到达

8位协议

描述了传输层是使用了哪种协议

16位首部校验和

校验数据是否正确的机制,这里只需要校验首部即可,因为载荷是TCP和UDP数据报,而它们自己可以校验自己

32位源地址 32位目的地址

IP协议中最重要的部分,数据报从哪来,到哪去??
网络上有很多主机,需要有办法去描述主机的具体位置
IP地址就是解决这个问题的关键,所谓的IP地址,其实就是一个32位的整数(4字节)
点分十进制:由于按照32位的方式表示,会使得这个数字变得很大,很难理解记忆,一般都会把IP地址,按照点分十进制的方式来表示(使用三个.把32位分成四个部分,每个部分就是8位,也就是一个字节,每个字节的范围是0-255(不带符合))
比如:192.168.22.56
但是,32位表示的数据是有限的,差不多是42亿九千万,既然是地址,原则上是不能重复的,每个设备的IP得不相同,但是实际上是世界上能上网的设备,早就超过了这个数值,那么问题来了,IP地址不够用了该怎么办呢?
1.动态分配IP(DHCP)
设备不会一直需要上网,需要上网,就分配IP,不需要上网就先不分配IP
这个方案,只能缓解,不能根治
2.NAT机制(网络地址转换)(理解网络结构的关键要点)
把IP地址分为两大类:
1].内网IP;不同的局域网内的设备,内网IP可以重复,同一个局域网内的设备,内网IP不能重复
内网IP有三类:
10.*
172.16.*-172.31. *
192.168. *
2].外网IP:外网IP不能重复
1)局域网内部的设备之间的通信,是可以的(局域网内部的内网IP都是唯一的)
2)A局域网中的设备,想和B局域网中的设备进行通信,和可能会有IP冲突的情况,因此,这里的规则是禁止不同的局域网之间进行通信.想要通信,就需要有一个带有外网IP的设备进行中转
3)局域网内部的设备访问带有外网IP的设备
我们平时使用的电脑,平板,手机,都是在局域网内部使用的,它们会有一个内网IP
还有一类设备,是"服务器",服务器可以有外网IP
在这里插入图片描述
路由器配有自己的外网IP,用来与服务器的外网IP进行交互
当客户端给服务器发送请求的过程中,途径路由器的时候,就会触发NAT机制,路由器在转发数据的时候,就会使用自己的外网IP替换掉当前客户端发来的IP数据报中的源IP,当这个数据报到达服务器之后,服务器不知道这个数据报是来自原本的源IP的,只知道来源于路由器这里的外网IP地址
NAT机制下,意义在于说,一个外网IP代表的不一定是一个设备了,而是很多设备
那么服务器怎么把响应返回给客户端呢
在这里插入图片描述
服务器在返回IP数据报的时候,会先到达路由器,
对于NAT设备(路由器)来说,会在触发NAT机制的时候,维护一个映射表(抓换表),里面包含了替换前后的源IP,以及源端口
在返回响应的途中经过路由器之后,就会通过查表,把IP给替换回来
NAT的缺点很明显:
(1).效率不高
(2).非常繁琐
(3).不方便直接访问局域网内的设备
但是NAT是一个纯软件实现的方案,这个优点足以使得NAT一统天下
3.IPv6,从根本上解决IP不够用的问题
IPv4是4个字节,32位表示IP地址
IPv6是16个字节,128位表示IP地址
其实IPv6的诞生时间和NAT差不多,为什么NAT能成功,而IPv6发展起来举步维艰呢?
这是因为IPv4和IPv6不兼容,想要升级IPv6,就需要更换路由器设备=>花钱
相比之下,NAT方案,只需要路由器开发商开发出新版本的软件(路由器固件),升级软件,即可直接支持,成本非常低

IP地址的组成

IP地址分为两个部分,网络号和主机号
网络号:标识网段(局域网),保证相互连接的两个网段具有不同的标识;
主机号:标识主机,同一网段内,主机之间具有相同的网络号,但是必须有不同的主机号;
IP地址,可以自动分配(家用设备,网络环境简单)
也可以手动分配(企业设备,网络环境复杂,需要网管来配置)
一个IP地址,哪些部分是网络号,哪些部分是主机号呢?
通过子网掩码来识别
子网掩码和IP地址一样,也是四字节,32位的整数
左侧必须是连续的1,右侧必须是连续的0
1的范围就对应了网络号的范围,0的范围则是对应了主机号的范围
一般家用路由器上的子网掩码是255.255.255.0
除此之外,上古时期,还有一种方案,
在这里插入图片描述

特殊的IP地址

在这里插入图片描述
此处广播,在传输层只能使用UDP,不能使用TCP,因为TCP不能针对广播地址进行三次握手,建立连接的操作

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

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

LaTex打出上大下小的公式

想要在latex中打出如下word公式 首先使用 \atop符号 使用如下语句 d_{H(A,B)} max\{{sup\, inf \atop {a \in A\,b \in B}}\,d(a,b), {sup\, inf\,\atop {b\in B\,a\in\,A}}d(b,a)\}. ![在这里插入图片描述](https://img-blog.csdnimg.cn/0c842594716a4693b1124523d53bfcad…

AIGC绘本——海马搬家来喽

随着ChatGPT的快速发展,人工智能领域也发生了翻天覆地的变化。今天,我们迎合科技潮流,利用AIGC的强大能力,可以创作很多精彩的作品,比如这样一本名为《海马搬家》的绘本(注:此绘本根据同名儿童故…

基于微信小程序的食堂订餐系统设计与实现(源码+lw+部署文档+讲解等)

文章目录 前言运行环境说明具体实现截图用户小程序端的主要功能有:商家的主要功能有:管理员的主要功能有:详细视频演示为什么选择我自己的网站自己的小程序(小蔡coding)有保障的售后福利 代码参考论文参考源码获取 前言…

verilog学习笔记(1)module实例化

兜兜转转又回来学硬件了,哎,命啊! 我的答案(有bug): module top_module ( input a, input b, output out );wire w1;wire w2;wire w3;mod_a mod_a_inst1(.in1(w1),.in2(w2),.out(w3) );assign w1 a…

全球第4大操作系统(鸿蒙)的软件后缀.hap

system exe 2022-12-01 04:38:38 首页 > 操作系统 145|0条评论 鸿蒙OS兼容已有安卓程序:这事不稀奇。 其实一个系统兼容另外系统的可执行程序并非新鲜事,比如linux下的wine和crossover可以兼容许多win系统的.exe程序。 作为回应,Wind…

Docker部署Nginx+FastDFS插件

文章目录 一、部署FastDFS二、部署Nginx(带FastDFS插件)三、FastDFS上传文件Nginx访问验证 一、部署FastDFS 1、准备工作 docker pull qinziteng/fastdfs:5.05 Pwd"/data/software/fastdfs" mkdir ${Pwd}/{storage,tracker} -p2、创建TEST容器,将fastdf…

可转债实战与案例分析——成功的和失败的可转债投资案例、教训与经验分享

实战与案例分析——投资案例研究 股票量化程序化自动交易接口 一、成功的可转债投资案例 成功的可转债投资案例提供了有价值的经验教训,以下是一个典型的成功案例: 案例:投资者B的成功可转债投资 投资者B是一位懂得风险管理的投资者&#…

Jumpserver堡垒机

一、堡垒机概述 1、堡垒机的基本概念 堡垒机也是一台服务器,在一个特定的网络环境下,为了保障网络和数据不受来自外部和内部用户的入侵和破坏,而运用各种技术手段实时收集、监控网络环境中每一个组成部分(服务器)的系…

Web ui自动化测试框架总结

【软件测试面试突击班】如何逼自己一周刷完软件测试八股文教程,刷完面试就稳了,你也可以当高薪软件测试工程师(自动化测试) 实施过了web系统的UI自动化,回顾梳理下,想到什么写什么,随时补充。 首…

vulhub打靶第三周

第三周 靶机下载地址:https://www.vulnhub.com/entry/chronos-1,735/ 环境折磨导致做晚了,再加上期末的考试多耽搁下来了,然后就是辗转反侧打比赛,拖了这么久,时隔三个月重新开打 因为陆陆续续打了两次,所…

视频剪辑软件Premiere Pro 2022 mac(pr2022) v22.6.2中文版

Premiere Pro 2022 mac不仅可以帮助用户对各种视频进行剪辑、旋转、分割、合并、字幕添加、背景音乐等基础的处理,pr2022 mac还能帮助用户进行视频颜色校正、颜色分级、稳定镜头、调整层、更改片段的持续时间和速度、效果预设等操作,功能强大。 ​Premie…

洛谷刷题入门篇:分支结构

今天又来了,刷题刷题,我爱刷题,题单链接如下: https://www.luogu.com.cn/training/101#problems 一、【深基1-2】小学数学 N 合一 题目如下:https://www.luogu.com.cn/problem/P2433 题目描述 问题 1 请输出 I lov…

greenhills compiler 2021.1.4 for x86 Linux

greenhills compiler 2021.1.4 for x86 Linux 2692407267qq.com,更多内容请见http://user.qzone.qq.com/2692407267/

【2023全新保姆级教图文教程】三分钟快速安装好Anacaonda3+Pycharm运行Python

😎 作者介绍:我是程序员洲洲,一个热爱写作的非著名程序员。CSDN全栈优质领域创作者、华为云博客社区云享专家、阿里云博客社区专家博主、前后端开发、人工智能研究生。公粽号:程序员洲洲。 🎈 本文专栏:本文…

Linux chmod命令——修改权限信息

我们可以使用chmod命令,修改文件、文件夹的权限信息。注意,只有文件、文件夹的所属用户或root用户可以修改。 chmod [-R] 权限 文件或文件夹 -R,对文件夹内的全部内容应用同样的操作 例如: chmod urwx,grx,ox hello.txt &…

2023华为杯数模C题——大规模创新类竞赛评审方案研究

B题——大规模创新类竞赛评审方案研究 思路:采用数据分析等手段改进评分算法性能 完成情况(1-2问已经完成) 代码下载 问题一 在每个评审阶段,作品通常都是随机分发的,每份作品需要多位评委独立评审。为了增加不同评审专家所给成绩之间的可比…

vue3+ts+java使用WebSocket传输数据

一、环境 系统:win11 IDE:vscode 框架:electron22.0.0vite2vue3typescript4.8.4springboot2.2.5jdk1.8 二、websocket介绍 2.1 由来 WebSocket未出现之前,浏览器和服务器之间的通信是通过Web的poll技术进行通信,就…

20230924清远博物馆和图书馆

为了漂流来清远,但是一个城市,想快速了解她的年龄,不就得去博物馆图书馆吗,云想衣裳花想容,春风拂槛露华浓。若非群玉山头见,会向瑶台月下逢。 学校她也曾因历史而不断迁移。 清远她呀,原来已…

计算机二级python简单应用题刷题笔记(一)

计算机二级python简单应用题刷题笔记(一) 1、词频统计:键盘输入一组我国高校所对应的学校类型,以空格分隔,共一行。2、找最大值、最小值、平均分:键盘输入小明学习的课程名称及考分等信息,信息间…

【计算机网络笔记一】网络体系结构

IP和路由器概念 两台主机如何通信呢? 首先,主机的每个网卡都有一个全球唯一地址,MAC 地址,如 00:10:5A:70:33:61 查看 MAC 地址: windows: ipconfig / alllinux:ifconfig 或者 ip addr 同一个网络的多…