Internet协议

Created at 2018-04-07 Updated at 2018-06-04 Category Study Tag TCP/IP

写在开头:

埋头学习也差不多半个月了,达到了这半个月每天都会去图书馆的目标。确实挺忙的,不管在学习上,部门社团上,党建上。有时候为了多学一些总是会挤掉了其他事情的一些时间。但是自己时刻提醒着自己不要太过激进了,做好自己的本职工作,生活还是要继续的,协调好彼此之间的关系。希望自己还是像以前那样开心就好了。

加油!

Internet协议

IP是TCP/IP协议族中的核心协议。IP提供了一种尽力而为无连接的数据报交付服务。

尽力而为的含义是不保证IP数据报能成功到达目的地。任何的可靠性必须靠上层(例如TCP)提供

无连接意味着IP不维护网络单元(即路由器)中数据报相关的任何链接状态,这也就意味着IP数据报可不按照顺序交付,每个数据报可以独立路由,通过不同的路径,并且有可能较靠后发送的数据报提前到达


网络字节序

一个32位值的4字节按以下顺序传输:首先是 0 ~ 7 位,然后8~15位,16~23,23~31位。这就是所谓的高位有限字节序,又称网络字节序。它是TCP/IP头部中所有二进制整数在网络中传输时所使用的字节顺序。


下面给出IPv4头部细节

字段 作用
版本 包含IP数据报的版本字段
IHL 长4位,表示IPv4头部中32位的数量,即IHL值为x,头部长度就为32*x
DS 区分服务字段
ECN 显式拥塞通知
总长度字段 表示IPv4数据报的总长度,通过它和IHL就可以知道数据报的数据部分的位置
标识 表示IPv4主机发送的数据报,能够避免数据报分片混淆
生存期TTL 用于设定一个数据报可经过的路由器的数量上限
协议 表示数据报有效载荷部分的数据类型。,常见的有17(UDP)\6(TCP)
头部校验和 注意它仅计算IPv4的头部
源IP地址和目的IP地址 通常标识一台计算机的一个接口

TTL:生存期,发送方发送时会将它设位一个值,每次经过一台路由器就会减一,显然当这个值等于0的时候,数据报就会被丢弃。这样就可以避免了数据报有可能在路由器的环路中无限循环下去的问题。


Internet校验和

Internet校验和是一个16位的数字和。


IP转发

我们知道,IP协议可以接收到一个来自自己主机或者网络接口的数据报。IP层包括了一些位于内存中的信息,通常称为路由表或者转发表

转发数据的时候,IP模块会先检查数据报的地址是不是自己的IP地址(这个地址可以很多,比如组播,广播地址),是的话就给上头(数据报头部指定的协议模块),不是的话:

  • 如果IP层被设置成路由器,就查找转发表,转发到下一跳
  • 否侧就扔了

转发表里有下面几样东西:

  • 目的地
  • 掩码
  • 下一跳:下一个IP的地址~
  • 接口:即下一跳的网络接口

IP转发只是提供数据报发送的下一跳实体的IP地址,它假设下一跳比执行转发的系统更接近目的地。


附上畅畅酱关于这个章节的地址

愿你是你所期待的样子

愿你还是你所期待的样子

Hide