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

网络层重点协议-IP协议(结构分析)

IP协议数据报格式

        一.4位版本号

        用来表示IP协议的版本,现有的IP协议只有两个版本IPv4和IPv6

        二.4位首部长度

        IP协议数据报报头的长度

        三.8位服务类型

        3位优先权字段(已经弃用),4位TOS字段,和1位保留 字段(必须置为0)。4位TOS分别表示:最小延时(转递一个数据报的时间尽可能短),最大吞吐量(一定时间内传输的数据量尽可能多),最高可靠性(在传输过程中最不容易丢包),最小成本(在传输过程中消耗的硬件资源最低)。 这四者相互冲突,只能选择一个。

        四.16位总长度

        IP数据报整体的长度,这里的总长度只是限制了一个IP数据报的长度,但IP协议自身支持拆包组包机制,当IP数据报需要携带比较长的数据时,IP协议会自动的把一个数据报拆分成多个数据报,接收方在接收时会将多个数据报合并成一个数据报

        由16位总长度和4位首部长度相减就可以得到IP数据报载荷的长度,即UDP/TCP数据报的长度

        五.16位标识

        由于IP协议自身支持拆包组包机制,接收方在合并数据报的时候就需要知道哪些数据报是一个数据报中的内容需要合并,可以通过16位标识这个属性判断

        16位标识相同的数据报就说明是一个数据报的内容,就可以进行合并

        六.3位标志字段

        第一位保留(保留的意思是现在不用,但是还没想好说不定以后要用到),还有一位表示是否允许拆包

        七.13位片偏移

        在合并数据报的时候要按先后顺序合并,13位片偏移这个属性就代表了包的先后顺序,前一个包的片偏移较小,后一个包的片偏移较大

        八.8位生存时间

        类似于一个计数器,表示数据报在网络中的最大转发次数,一般是64,避免数据报在网络中被无限的转发,每当数据报被转发一次就减一

        九.8位协议

        表示上层协议的类型

        十.首部校验和

        用于在传输IP数据报时校验IP数据报的报头是否传递正确,不用校验载荷,因为载荷是TCP/UDP数据报,里面有“校验和”属性,会自己检查传输是否正确,不需要IP协议检查

        关于TCP/UDP数据报推荐看TCP数据报结构分析(面试重点),UDP数据报结构分析(面试重点)

        十一.32位源IP地址

        表示发送方的IP地址

        十二.32位目的IP地址

        表示接收方的IP地址

        

http://www.lryc.cn/news/157297.html

相关文章:

  • windows使用vim编辑文本powershell
  • 学单片机有前途吗?
  • 【计算机网络】 子网划分
  • vscode ros配置
  • 【权限提升-Windows提权】-UAC提权之MSF模块和UACME项目-DLL劫持-不带引号服务路径-不安全的服务权限
  • 【C++】—— 特殊类设计
  • MFC删除Button控件具体操作
  • vue、js实现页面全屏
  • 从零开始探索C语言(四)----循环
  • JS 替换 JSON 数组中的指定字段名
  • WebSocket消息推送
  • 二维码智慧门牌管理系统:让城市管理更智能、便捷
  • React动态添加标签组件
  • [Linux]套接字通信
  • MySQL的故事——MySQL架构与历史
  • 手写Mybatis:第12章-完善ORM框架,增删改查操作
  • 【1】DDR---容量计算
  • YashanDB:潜心实干,数据库核心技术突破没有捷径可走
  • Talk | ICCV‘23南洋理工大学博士后李祥泰:面向统一高效的视频分割方法设计
  • 怎样把英语视频字幕翻译成中文
  • 智慧铁路:机车整备场数字孪生
  • ImageSharp.Web实战:轻松搭建高效图片服务
  • 端口扫描-安全体系-网络安全技术和协议
  • C# wpf 实现截屏框热键截屏功能
  • springboot + activiti实现activiti微服务化
  • c语言练习41:深入理解字符串函数strlen strcpy strcat
  • Vue3+Vue-i18n+I18N ALLY+VSCODE 自动翻译多国语言
  • idea意外退出mac
  • 百度智能云千帆大模型平台2.0来了!从大模型到生产力落地的怪兽级平台!!
  • k8s nfs-client 添加挂载参数 —— 筑梦之路