计算机网络(3)网络层

计算机网络(3)网络层

网络层


一、IP特性

不可靠:不保证能传到目的地

无连接:每一次的路由选择可能不一样,IP数据可以不按顺寻发送

二、IP报文格式注意点

1.为什么IP首部总有总长度字段?

以太网需要填充数据达到最小长度(46个字节)

2.为什么有生存时间TTL?

TTL经过一个路由器减一,目的是防止数据报在选路时无休止地在网络中波动。

3.如何校验?或者与TCP、UDP校验有何区别?

区别:IP只计算首部,其他都是首部+数据

核心:方法相同,都是先将校验和字段置为0,然后对首部(或者首部+数据)每个16比特位进行反码求和放入检验和字段中,当收到IP数据包后,如果最后结果全为1,则正确,否则丢弃该数据包(不产生差错报文)

4.IP路由选择的过程和特性

根据最长匹配原则【1】,找到条目,发送到指定的路由器【2】,否则404(网络不可达或者主机不可达)

一般特性:1.IP路由逐条进行的(不知道完整路径)

2.为一个网络指定一个路由器

SP:如果路由表中没有默认项,也没有找到匹配项,如果数据包是本机产生的,就会404(网络不可达或者主机不可达),如果被转发的数据包,就发送ICMP主机不可达的差错报文。

注:【1】当路由器收到一个IP数据包时,会将数据包的目的IP地址与自己本地路由表中的表项进行bitbybit的逐位查找,直到找到匹配度最长的条目,这叫最长匹配原则

【2】IP搜索路由表的步骤:主机地址-》网络地址-》默认选项

ICMP


ICMP产生的原因

由于互联网之间通讯会涉及很多网关和主机,为了能够报告数据错误,所以产生了 ICMP协议。也就是说 ICMP 协议就是为了更高效的转发 IP数据报和提高交付成功的机会。

ICMP重定向

主机发送IP数据包给A,因为主机的默认路由下一跳为A,

A收到数据包检查路由表,发现B是数据报的下一跳,发现发送的接口与接受的端口一样时,会发送一个ICMP重定向给主机,A接收到重定向报文后,接下来的数据包就发送给B

SP:重定向报文只能由路由器生成为主机使用

ping命令(包含ARP、ICMP协议)


1.作用

检验是否超时,是否延迟太高

2.ICMP数据部分构成

ICMP数据部分由类型、代码、校验和构成

3.具体过程

A 电脑发起 ping请求, ping电脑B

A 电脑通过广播发起 ARP请求,查询电脑B的MAC(物理地址)。

B 电脑应答 ARP请求,向 A电脑发起单向应答,告诉 A电脑自己的 MAC地址

知道了 MAC地址后,开始进行(A电脑的物理地址),所以就可以根据源 MAC地址进行响应了。

总结:ping(ARP广播,应答物理地址,4次ping请求,4次响应,B电脑发送ARP请求,A应答)

为什么B电脑也要发送ARP请求呢?由于 ARP有缓存机制,为了防止 ARP过期,结束后重新更新下 ARP缓存,保证下次请求能去往正确的路径,如果 ARP过期就会导致出现一次错误,从而影响测试准确性。

发布了104 篇原创文章 · 获赞 165 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/weixin_43914278/article/details/104172268