【网络原理】网络层ip协议总结

1.IP协议格式

IP协议格式:
在这里插入图片描述

4位版本号(version):指定IP协议的版本,对于IPv4来说,就是4。

4位头部长度(header length):IP头部的长度是多少个32bit,也就是 length * 4 个字节数。4bit表示最大的数字是15,因此IP头部最大长度是60字节。

8位服务类型(Type Of Service):3位优先权字段(已经弃用),4位TOS字段,和1位保留字段(必须置为0)。4位TOS分别表示:最小延时,最大吞吐量,最高可靠性,最小成本。
这四者相互冲突,只能选择一个。对于ssh/telnet这样的应用程序,最小延时比较重要;对于ftp这样的程序,最大吞吐量比较重要。

16位总长度(total length):IP数据报整体占多少个字节(头+载荷)。 这个长度减去前面的 IP 报头长度,剩下的就是 载荷长度,一个完整的TCP / UDP数据报长度。

16位标识(id):唯一的标识主机发送的报文。如果IP报文在数据链路层被分片了,那么每一个片里面的这个id都是相同的。

3位标志字段:第一位保留(保留的意思是现在不用,但是还没想好说不定以后要用到)。
第二位置为1表示禁止分片,这时候如果报文长度超过MTU,IP模块就会丢弃报文。
第三位表示"更多分片",如果分片了的话,最后一个分片置为1,其他是0。类似于一个结束标记。

13位分片偏移(framegament offset):是分片相对于原始IP报文开始处的偏移。其实就是在表示当前分片在原报文中处在哪个位置。实际偏移的字节数是这个值 * 8 得到的。因此,除了最后一个报文之外,其他报文的长度必须是8的整数倍(否则报文就不连续了)。

8位生存时间(Time To Live,TTL):数据报到达目的地的最大报文跳数。一般是64。每次经过一个路由,TTL = 1,一直减到0还没到达,那么就丢弃了。这个字段主要是用来防止出现路由循环。

8位协议:描述了当前载荷部分内容是属于哪个协议的(TCP / UDP)。

16位头部校验和:使用CRC进行校验,来鉴别头部是否损坏。

32位源地址和32位目标地址:这个是 IP 协议中,最重要的部分,表示发送端和接收端。 此处看到的是 32 位的整数,而日常见到的 IP 则是一串数字 ,例如: 192.168.1.1 。这是使用点分十进制进行表示的。

选项字段:(不定长,最多40字节)。

2.解决IP地址不够用的问题

32位的 IP 地址,只能表示 42亿9千万个数字, 期望这个表示全世界所有的上网设备,不太可能完成~~

为了解决 IP 地址不够用的问题,想了很多办法~

  1. 动态分配 IP 地址,此时就可以剩下一批 ip 地址了, 这个方案没有从根本上增加 IP 地址,只是提高了利用率,治标不治本。

  2. NAT网络地址转换,本质是使用一个 IP 代表一批设备
    在 NAT 背景下,把IP地址分为两个大类

    1. 内网 IP (私有 IP) 以 10.* / 172.16.* -172.31.* / 192.168.* 开头的。
    2. 外网 IP (公网 IP) 剩下的是公网 IP

    NAT 要求,公网 IP 必须唯一,私网 IP 可以在不同的局域网中重复出现。

    如果某个私网里的设备想访问公网的设备,就需要对应的 NAT 设备(路由器), 把 IP 地址进行映射,从而完成网络访问。

NAT机制能有效的解决 IP 不够用的问题,但是带来的副作用就是网络环境更加复杂了~

  1. IPV6 [ 根本上解决了 IP 不够用的问题]
    IPV6 使用16个字节表示 IP 地址, 16字节表示的地址的个数 为 42亿42亿42亿*42亿 =>天文数字。
    说白了,这些数字给地球上的每一粒砂子分配一个 IPV6地址,都够用!!
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值