Linux:ip和ip协议的初步认识-ip协议的报头

时间:2024-04-04 16:31:05

在这里插入图片描述
对于ip协议的理解,必然要涉及到两个问题,这里先进行第一个问题:

1. 报头和有效载荷如何进行分离?

结论是固定长度和自描述字段,这个和TCP协议其实是一样的,这里就不过多进行说明了

2. 报文如何进行交付?

结论是使用8位协议,具体的使用如下所示

下面对于ip协议的协议字段进行理解

8位生存时间

这个字段是什么意思呢?下面我给出这样的一个场景:当一个ip的报文被发送出去之后,那么这个报文就会在网络当中进行转发,假如现在这个目标主机已经离线了,或者有其他原因,反正是处于不可应答的状态了,那么就会导致这个报文会被一直转发,在网络中自然是不会允许这样的情况出现的,所以就会提前设置好对应的8位生存时间这样的概念,使得最终这个报文在路由器的跳数是固定的,如果接受到一个跳数为0的报文,说明这个报文已经没用了,此时就把这个报文直接丢弃掉就可以,所以这个其实就是一个计数器

8位协议

那这个字段是做什么的呢?一句话来说,8位协议就是指的是要把报文交付给上层的哪一个协议,这个字段的作用就是用来表示要交付的协议,比如下面要发送给传输层,那么这个里面就要填写的是TCP协议,表示下一步要交付给传输层

32位源ip地址和32位目的ip地址

在进行TCP协议的学习中有源端口和目的端口,而在ip协议当中存放的是源ip地址和目标ip地址,在报文进行传输的时候是经过路由器进行传输的,而路由器的传输实际上是只会在ip层进行传输的