第一节 引言
Ip是tcp/ip协议中最为核心的协议,所有的TCP,UDP,ICMP及IGMP数据都以ip数据报格式传输
不可靠的意思是它不可能保证ip数据报能成功到达目的地
无连接意思是ip并不维护任何关于后续数据报的状态信息。
第二节 Ip首部
服务类型TOS字段包括一个3bit的优先权字段,4bit的TOS子字段,1bit为未用位但必须设置为0.
4bit的TOS分别代表:最小时延,最大吞吐量,最高可靠性和最小费用。如果四个bit都为0,则为一般服务。
举例:Telnet/Rlogin作为交互应用,要求最小传输时延,ftp文件传输则要求最大的吞吐量。最高可靠性给snmp和路由选择协议。用户网络新闻(NNTP)是唯一要求最小费用的应用
现在大多数tcp/ip实现不支持tos特性,但是新的路由协议如OSPF,IS-IS都能根据这些字段值进行路由决策
尽管可以上传一个长达65535字节的IP数据报,但是大多数的链路层都会对它进行分片,而且主机也要求不能接受超过576字节的数据报。由于tcp把用户的数据分成若干片,因此一般来说这个限制不能接受超过576字节的数据报。大量使用udp的应用(RIP,TFTP,BOOTP,DNS,SNMP)都限制用户数据报长度512字节。但是实际上大多数实现(特别是NFS)允许超过8192字节的ip数据报
总长度字段是ip首部必要的内容,因为一些数据链路要填充一些数据以达到最小长度,尽管以太网的最小帧长46字节,但ip数据可能更短。
标识字段唯一标识主机发送的每一份数据报,通常每发送一份报文就加1
TTL设置了数据报可以经过的最多路由器数。一旦经过一个处理它的路由器,就减1
首部检验和字段根据ip首部计算检验和码。不对首部后面的数据进行计算,ICMP,IGMP,UDP,TCP在它们各自的首部都含有同时覆盖鼠标和数据检验和码。
为了计算一份数据报的ip检验和,首先把检验和字段置0,然后对首部中每个16bit进行二进制反码求和,结果存在检验和字段中。
任选项:
a) 安全和处理闲置
b) 记录路径
c) 时间戦
d) 宽松的原站选路
e) 严格的原站选路
第三节 Ip路由选择
ip层在内存中有一个路由表,当收到一份数据报进行发送时,它都要对该表搜索一次,当数据报来自某个网络接口时,ip首先检查目的ip地址是否为ip地址之一或者是ip广播地址。如果确实是这样,数据报就被送到由ip首部协议字段指定的协议模块进行处理。如果数据报目的不是这些地址,那么
(1) 如果ip层被设置为路由器功能,那么对数据报进行转发
(2) 否则,数据报被丢弃
路由表的信息:
1. 目的ip地址
2. 下一站路由ip地址
3. 标志,指明目的ip是网络地址还是主机地址,另一个标志指明下一站路由器是否为真正的路由器,还是一个直接相连的接口
4. 为数据报的传输指定一个网络接口
Ip路由选择的功能:
a) 搜索路由表,寻找能与目的ip地址完全匹配的表目(网络号和主机号都要匹配),如果找到,直接把报文发送给该条目指定 的下一站路由器或直接连接的网络接口。
b) 搜索路由表,寻找能与目的网络号匹配的表目。如果找到,则把报文发送给该表目指定的下一站路由器或直接连接的网络接口。目标网络上的所有主机可以通过这个表目来处理。这种方法必须考虑可能的子网掩码
c) 搜索路由表,寻找标为“默认“的表目,如果没有找到,则把报文发给该表目指定的下一站路由