点击 上方蓝色小字 “ 小菜学编程 ” , 关注我们?
掌握网络层基本工作原理后,是时候来认识网络层中的最重要的 IP 协议了。
IP 是 互联网协议 ( internet protocol ) 的简称,是 TCP/IP 协议栈中的网络层协议。IP 协议在发展的过程中,衍生出 IPv4 和 IPv6 两个不同版本。其中,历史版本 IPv4 目前仍广泛使用;后继版本 IPv6 世界各地正在积极部署。
IP 协议的通信单元是 IP 包 ( packet ),同样分为 IPv4 和 IPv6 两个版本,本节重点研究 IPv4 包结构。虽然我们对 IPv4 包结构仍一无所知,但经过网络层的学习,我们可以大致猜测一下:它应该分为头部和数据两大部分;其中头部应该包含源地址、目的地址以及数据类型等字段。
IPv4包
废话不多说,直接开门见山。一个 IPv4 包的结构是这样的:
我们猜得没错,IP 包也分为 头部 ( header ) 和 数据 ( data )两大部分,其中头部也可称为 首部 。虽然我们猜到了头部中的几个关键字段,头部却远比我们想象中的要复杂。
接下来,我们简要介绍一下 IP 头部各个字段。一开始看得一头雾水也没有关系,先有个大概印象即可,具体细节后续