IP协议整体模型
IP是网络层处理的内容。
IP的一些特征
数据报服务
当需要用IP发送信息的时候,IP会创建一个数据报,然后把数据封装在里面,数据报是独立的。看起来其实是有些想邮局发送邮件,IP发送时会将信息放入信封,然后通过路由器逐个传递直到目的地为止。
不可靠的
这其实和我当初想的不太一样,我一直以为IP的传输是一定可靠的,缺少至少会重发。但是目前看起来不是这样的,IP是无法对信息到达做出任何的保障的,就像新闻里偶尔会报道的快递物品丢失或者损毁一样。可能快可能慢,甚至是无序或者缺失。不过虽然这么说也不是说IP的的数据传输那么的不可靠,当数据在路由器之间的传输出现错误,或者拥挤时,这种问题才会发生,有点像udp,提供的方法是尽力到达。
为什么IP服务那么简单
降低维护成本和消耗,让他IP服务的发送尽可能的少的消耗资源。
IP服务模型的细节
会防止数据报的无限循环
当数据的传输出现问题的时候,IP服务会及时的阻止这种问题的发生,通过的是TTL的机制(Time to live),字面意思,IP服务为每一个数据报都给出了一个最大的传输次数,每一次路由器的跳转都会减少这个数字,当这个数字在传输的过程中被减小为0的时候,那么则判断该数据报的传递发生了错误,数据需要丢弃。
数据过长的时候会分片
就像写信一样,当信的厚度超过了一个信封所容纳的上限之后,这个数据报将被拆分为若干个片段,最终正确的发送。
用header的方式标记数据减少错误概率
既然IP服务无法保证绝对的准确到达,那么尽可能高的到达率无疑是非常重要的事情,毕竟市面上的绝大部分的软件依赖的都是正确和稳定的字节通讯。所以IP服务会在每个数据报的header部分添加信息,例如TTL,来源IP,目的IP等,这些信息在传递的过程中可以有效的减少信息的错误和丢失问题。
允许新的IP版本
IPV4因为其结构的问题,实际上已经被消耗殆尽,所以现在的新一代设备正在向ipv6过渡,IP服务器可以灵活的在header中设置相关信息,例如来源地址,目的地址等,协议的过度将会非常的方便和快捷。
允许向header内添加新的信息
RT,如果因为各种需要需要传递更多的信息的时候,不仅仅可以在数据包的内部进行数据的放入,同样的也可以对header部分进行信息的添加同样可以达到相似的目的。不过,这种做法破坏了原始的标准,有点得不偿失的感觉。