在网络协议栈的第三层也就是网络层主要有三大组件,第一个组件是IP协议,包含着因特网中的编址和分组处理规则;第二个协议是选路组件,包含各种各样的选路协议;最后一个组件是ICMP协议,包含报告数据报中差错以及一些请求响应。首次可见IP协议在网络层中的重要性。
一、IP协议
IP是英文单词Internet Protocol的缩写,中文含义为网络中连接的协议,简称网际协议。网际协议也就是为计算机网络相互连接进行通信而设计的协议。在因特网中,它是能使连接到网上的所有计算机网络实现相互通信的一套规则,规定了计算机在因特网上进行通信时应当遵守的规则。任何厂家生产的计算机系统,只要遵守IP协议就可以与因特网互连互通。IP地址具有唯一性,根据用户性质的不同,可以分为5类。另外,IP还有进入防护,知识产权,指针寄存器等含义。IP协议目前有两个版本,IPv4与IPv6.
二、IPv4数据报格式
三、IPv4分片
网络层的数据包最后还是要到链路层中进行下一步传输的,由于针对不同的协议,在链路层的MTU有不同的值,导致可能一个IP的数据报太大,不能一次性传输,所以就要根据MTU来执行分片算法,然后交给链路层进行发送,最终的接收方再对分片进行重组,然后上传给上层协议。但是分片可能会引发Dos攻击,IPv6允许在源和目的路由器进行分片,而不允许在中间路由器执行分片,哪怕是丢弃。
四、IPv4编址
每个IPv4的地址的长度是32比特,一共可以有2^32这么多的ip地址,ip地址一般以点分十