• IP协议报文格式


    一: 报头格式

    在这里插入图片描述

    1.1 : 4位版本

    现在使用的也就只有IPv4,IPv6

    1.2 : 4位首部长度

    以 4字节为单位,所以IP报头最长就是64字节,最短就是20字节

    1.3 : 8位服务类型 :

    实际上只有4位有效, 而且这4位是互斥的,只有一位为1

    1. 最小延时 : 传输过程中.消耗的时间最短
    2. 最大吞吐量: 单位时间内,传输的数据尽可能多.
    3. 最高可靠性: 降低丢包的概率.
    4. 最小成本: 比较节省系统开销.

    1.4 : 16位总长度(字节数)

    指的是整个IP 数据包的长度: 报头+ 载荷
    总长度,去掉IP报头长度,就是IP载荷长度,而IP载荷是由TCP/UDP报头+ TCP/UDP载荷组成,所以去掉TCP/UDP报头长度,剩下的就是载荷长度了.
    16bit ,表示IP数据包最大64KB,如果超过64KB,怎么办?
    IP协自身实现了拆包,组包这样的功能,如果数据包的长度超过上限,IP数据包就会自动拆分成多个数据包,每个数据包携带一部分,发送到对方后,再拼接好.

    在这里插入图片描述

    在这里插入图片描述

    1.5 : 8位生存时间(TTL)

    IP 数据包在网络上转发,是由次数限制的,当转发的次数过多,接收方还未收到,这个数据包就要被丢弃.
    8位生存时间,就是限制一个数据包在网络上转发的最大次数.
    一个IP数据包,初始情况下,有一个TTL的值(32/64这样的整数),也是可以配置的.
    这个次数每经过一个路由器的转发,就要-1,减到0了,就要把这个数据包丢弃掉.

    1.6 : 8 位协议

    描述了载荷部分是哪种协议的数据包.
    一个数据包在分用的时候,要交给上层的哪个协议,都是有明确的声明的,
    传输层 ==> 应用层 : 通过端口号来区分

    网络层 ==> 传输层 : 报头中有这个8位协议字段,不同的取值就对应不同的传输层协议

    数据链路层 ==>网络层 : 报文中,类型字段,区分是IP数据包,还是其他的数据包

    1.7 : 32 位源IP / 32 位目的IP

    32位范围: 0 - 42亿9千万,原则上.IP地址应该是唯一的,不重复的,但32位仍然不够用,尤其是现在处于移动互联网的今天.
    32位IP地址不够用,如何解决?

    1. 动态分配 IP地址.
      某个设备,上网就分配 IP地址,不上网,就不分配,
      这样的机制,只能缓解,没办法从根本上解决问题,IP地址没有变多,只是跳过了IP地址的利用率.

    2. NAT机制 : 网络地址映射
      首先,把IP地址分为两类,
      1: 私网IP (局域网内部使用)
      10.x.x.x
      172.16 .x.x - 172.31.x.x
      192.168.x.x
      2: 公网IP(广域网使用): 私网IP以外的IP

    公网IP是唯一的,私网IP可以在不同的局域网中重复.

    == 引入私网IP,如何进行通信呢?==

    1. 同一个局域网内部, 设备之间的通信
      由于一个局域网内部的设备之间的IP是不能重复的,所以这些设备可以正常通信
    2. 广域网和广域网设备之间的通信
      广域网中的设备IP本身就是唯一的,所以也能正常交互.
    3. 局域网1 中的设备A尝试访问局域网2 中的设备B
      这种情况下是不允许进行访问的
    4. 局域网中的设备主动访问广域网设备,
      这个过程中,NAT机制就发挥作用了.
    5. 广域网主动访问局域网设备
      不允许进行访问

    因此, 如果需要进行上述的局域网和局域网设备之间的通信,往往需要广域网中的服务器进行数据转发.

  • 相关阅读:
    基于Java+SpringBoot+Thymeleaf+Mysql医院预约挂号系统设计与实现
    生命在于学习——Python人工智能原理(3.2)
    Python 自动化教程(2) : Excel自动化:使用pandas库
    【AIGC调研系列】Claude 3调研分析
    亚马逊秋季促销指南——如何更好的利用促销?
    群晖DS218+部署PostgreSQL(docker)
    leetcode第321场周赛
    5.nodejs--跨域、CORS、JSONP 、Proxy
    JS逆向实战9——cookies DES加密混淆
    Cy3 PEG N-羟基琥珀酰亚胺,荧光染料CY3标记聚乙二醇修饰N-羟基琥珀酰亚胺,Cy3-PEG-N-Hydroxy succinimide
  • 原文地址:https://blog.csdn.net/2302_77978695/article/details/139483936