当前位置: 首页 > news >正文

【JavaEE初阶】网络层-IP协议

目录

IP协议

IP协议的报文结构

IP协议/网络层做的工作是什么

IP协议的各部分的含义和作用

4位版本

4位首部长度

8位服务类型(TOS)

16位总长度(字节数)

拆包组包功能是如何实现的

8位生存时间(TTL)

TTL是64bit够用吗?

什么是“六度空间”?

8位协议

16位首部检验和

32位源IP地址和32位目的IP地址

那IP地址不够用了咋办?


IP协议

IP协议的复杂程度和TCP差不多

日常开发的时候,最多是用到传输层就够了,关于网络层,除非你是专门开发路由器的工程师,否则一般不会涉及

IP协议的报文结构

IP协议/网络层做的工作是什么

  • 地址管理:使用IP地址来标识网络上的某个设备的位置
  • 路由选择,在两个通信节点之间,规划出一个合理的路径

IP协议的各部分的含义和作用

4位版本

  • 标识了IP协议的版本号,开发阶段主要使用IPv4
  • IPv6是最近几年才多起来的
  • IPv6是大规模商用的版本

4位首部长度

  • IP协议的报头长度(也有“选项”以供扩充长度)
  • 以4字节为基本单位
  • 四位 最多可以表示 1111 -> 换算成十进制->15,说明4位首部长度最多可表示 15*4=60 字节的长度

8位服务类型(TOS)

  • 决定了IP协议的工作方式
  • 8位服务类型:3位优先字段(已弃用),4位TOS字段,和1位保留字段(必须置为0),4位TOS分别为
  • 最小延时(A->B花时尽可能短)
  • 最小成本(系统开销低)
  • 最大吞吐量(单位时间传输最多)
  • 最高可靠性(可靠性传输优先)
  • 这四者相互冲突,只能选择一个,当前的系统要最优先保证哪个性能
  • IP协议可以切换工作状态↑

16位总长度(字节数)

  • 一个IP报头+载荷的长度->一个IP数据包的长度
  • 最大长度为64KB
  • IP协议内置了拆包组包功能
  • 比如,IP要携带一个比较大的TCP数据报,IP协议就会自动拆成多个,通过多个IP数据报共同传输一个TCP数据报
拆包组包功能是如何实现的

  • 16位标识的作用:拆包:把拆出来的多个包,设为相同的标识、组包:把标识相同的数据包组合到一起
  • 3位标志:其中一个标志位,表示是否触发了拆包操作,还有一个表示当前包是否是最后一个
  • 13位片偏移:表述了数据报的先后顺序,偏移量小的放前面,偏移量大的放后面

【面试题】如果基于UDP实现传输超过64KB的数据,要怎么设计?

  • 可以参考IP协议
  • 在应用层协议中,程序员自己手动写代码来实现 “标识符”、“标志位”、“片偏移”

8位生存时间(TTL)

  • 一个IP数据报在网络上传输的最大“次数”
  • IP数据报每经历一次路由器的转发,TTL值就-1,TTL减到0,就说明包到不了,这个包就会被丢掉
  • 比如发了一个错误的数据包(目的IP写错了),是注定不可能达到的,这个包也不能无限传输啊,不仅占宽带还没有用~
  • 通过cmd指令查看TTL的情况:ping+想要访问的域名
TTL是64bit够用吗?
  • 当64步还不能到达目的ip时,TTL还可以自动设置为更大的值->128
  • 其实网络中还有一个“六度空间”理论->两个设备之间,不需要经历这么多次转发
什么是“六度空间”?
  • 每个路由器虽然只认识与它相邻 的设备,但是路由器可以发动朋友(相邻的路由器)/朋友的朋友去找目的设备
  • 每层朋友都会竭尽全力地去找
  • 一般来说,最多经过六层“朋友”,就能找到目的设备

8位协议

  • 标识了传输层使用了哪种协议
  • 数据链路层到网络层=>也有一个类似的协议编号
  • 网络层到传输层=>8位协议
  • 传输层到应用层=>端口号

16位首部检验和

  • 只检验首部
  • 而载荷部分是由TCP、UDP进行校验

32位源IP地址和32位目的IP地址

  • 是IP协议最关键的部分
  • IP地址本质上是通过32位的整数来表示的
  • 由于32位整数不方便阅读,于是通常会通过点分十进制的方式来表示IP地址
  • 用三个点,分出四部分
  • 每个部分的取值范围是 0-255
  • 32位IP地址,只能表示42亿9千万个不同的IP
  • 随着移动互联网时代开启。物联网时代开启(冰箱空调等)
  • 现在看来,IP地址的分配已经捉襟见肘了

那IP地址不够用了咋办?

方案一:动态分配IP

  • 上网的分配,不上网的不分配

方案二:NAT机制 网络地址转换【当前世界的最主要方式】

  • 把所有的IP分为两类:公网IP和外网IP

关于NAT机制,下节会进行详细解说~

太棒了!你居然耐心地看完了这些知识!

有这个毅力你做什么都能成功的!(๑•̀ㅂ•́)و✧

下节再见✿✿ヽ(°▽°)ノ✿~

http://www.dtcms.com/a/601598.html

相关文章:

  • tomcat/idea打包部署报错,RUN 可以 DEBUG 不行
  • 地方网站还有得做吗永嘉做网站
  • 防滑齿位置与牙根断裂风险的相关性分析
  • Lua学习记录(1) --- Lua中的条件分支语句和循环语句
  • 铸铁实验平台概述
  • 微电网的“智能大脑”:ACCU-100M如何实现光储充一体化协调控制?
  • 算法 day 52
  • seo优化排名易下拉试验2022年seo还值得做吗
  • (Mysql)MySQL 查询执行顺序总结
  • Plaxis自动化建模与Python应用全解:从环境搭建到高级案例实战
  • 网络推广网站排名免费的行情软件网站不用下载
  • 建设网站困难的解决办法推荐营销型网站建设
  • 护航青春心 ——VR青少年心理健康体验系统的温柔守护
  • 20251112给荣品RD-RK3588开发板跑Rockchip的原厂Android13系统时适配gmac0
  • 网站支付页面怎么做的咸宁手机网站建设
  • 石油钻井、HDD、采矿:不同工况下,如何抉择您的陀螺定向短节?
  • MySQL: 体系结构与插件式存储引擎架构详解
  • 滨海做网站哪家好手机如何制作网站源码
  • k8s上seatunnel 可视化部署
  • 空中之眼:RTMP推流平台EasyDSS在无人机推流直播安防监控中的创新应用
  • SVN冲突的解释
  • 无人机中继信号稳定传输技术要点
  • 天猫官方网站首页可口可乐搜索引擎营销案例
  • 论文解读 - 大型多模态模型中现实世界个性化基准测试
  • 培训学校网站建设要点做一个网站最低多少钱
  • 企业网站备案 过户网上询价
  • 现代Java Web应用部署全栈实战:Tomcat集群+JDK17+Spring Boot+Nginx负载均衡
  • 东莞网站建设公司口碑排名网站开发怎么让别人看到
  • 网站备案要烟台网站制作工具
  • 医疗电子发票真伪查验API-财政票据查验-接口技术解析