IP协议的特点,属性:
IP是tcp/ip协议中最核心的协议。所有的tcp,udp,icmp以及igmp数据都以ip数据报格式传输。
IP协议是不可靠的。如果发生某些错误,ip会简单将数据包丢弃,然后发送icmp消息报比信号源端。可靠性有上层来保证(例如tcp的超时重发机制)。
IP协议是无连接的。每个数据报的处理是相互独立的。ip数据接收可以不按照发送顺序接收。因为不同数据包的路由选路不同,各个线路的拥挤情况不同。
最大传输单元MTU,ip数据报最长可达65535字节。但是大多数链路层得链路层会对它进行分片。而且主机也要求不能接收576字节的数据包(这个值参考tcp/ip卷一)。udp,tcp的应用(rip,tftp,dns)都限制用户数据报长度为512字节。但是有个例外,网络文件系统如NFS允许超过8192字节的ip数据包。
IP路由选择:
ip层在内存维护着一张路由表,当收到一份数据报并进行发送时,它都对表搜索一次。检查ip地址是否本机ip地址或者ip广播。是就送到ip协议类型指定的上层协议处理,否则1)如果ip层被设置为路由功能就进行转发,否则2)丢弃
路由表究竟长啥样?
1.目的ip地址。可以是主机地址,也可以是网络地址。
2.下一站的路由ip地址,或者有直连的网络ip地址。下一站路由器可以转发数据,最终通过一系列转发到达目的地址。
3.为数据报的传输指定一个网络接口。
4.其中一个标志指明ip地址是网络地址还是主机地址,另一个标志指明下一站路由器是否真正的下一站路由器,还是一个直接相连的接口。
路由表有啥功能?
1.寻找与目标ip地址完全匹配的条目。
2.寻找与目的网络号相匹配的条目。
3.寻找彪为“默认”的条目。如果找到就发送给该条目的路由。
优先级为 主机地址>网络号>默认
例子 主机访问外网的一个服务器
外网的服务器与主机没有直接相连,而是通过若干路由器转发最终才访问到服务器。
首先,主机搜索路由表,并没有发现服务器主机地址或者网络地址相匹配的条目,因此只能用默认条目转发,注意此时目的地址的mac地址并不是广播地址,而是下一站路由器的mac地址(arp请求得到),ip仍然为原来的目的地址(一直不变),用这种策略一直搜索到服务器,传送数据报。
所以主机是不可以得到也不需要知道服务器的mac地址。