网络层几种主要的协议以及层次关系如下:
1 网络层提供的服务
负责在不同网络之间尽力转发数据包,基于数据包的IP地址转发;不管丢失重传;不管数据包到达的顺序。实现这些功能的设备是路由器。
2 计算机通信之前做了哪些准备工作?
在OSI参考模型中,计算机从上往下一层一层地准备。
应用层:应用程序准备好要传输的文件;
传输层:将文件分段,并编号,添加传输层首部如端口号等;
网络层:添加IP数据包首部,包括目标IP地址和源IP地址等;
数据链路层:添加帧头帧尾,包括下一跳MAC地址和源MAC地址等。发送方先使用自己的子网掩码判断自己在哪个网段;再使用自己的子网掩码判断目标地址在哪个网段。如果是同一个网段就直接用ARP协议广播解析目标IP地址的MAC地址。如果不是同一个网段就用ARP协议广播解析网关的MAC地址,然后把数据包给网关。
物理层:透明地传输比特流。
问:集线器、交换机、路由器能否中病毒?
答:不能。病毒是应用层程序。病毒在网上传输时需要进行分段。分段后的病毒不具有完整病毒功能。
3 ARP协议
3.1 原理
ARP协议负责把IP地址解析成对应的MAC地址。(MAC地址就是硬件地址)
不管网络层使用的是什么协议,在实际网络的数据链路层上传送数据帧时,最终还是必须使用硬件地址。
每一个主机都设有一个ARP高速缓存,里面有所在的局域网上的各主机和路由器的IP地址到硬件地址的映射表。(查看ARP映射表命令:arp -a
)
当主机A欲向本局域网上的某个主机B发送IP数据报时,就先在其ARP高速缓存中查看有无主机B的 IP 地址。如有,就可查出其对应的硬件地址,再将此硬件地址写入MAC帧,然后通过局域网将该MAC帧发往此硬件地址。若没有,则主机A在该局域网上(只能在本网段的局域网内广播)发送ARP广播请求B的MAC地址。
ARP是解决同一个局域网上的主机或路由器的IP地址和硬件地址的映射问题。如果所要找的主机和源主机不在同一个局域网上,那么就要通过ARP找到一个位于本局域网上的某个路由器(网关)的硬件地址,然后把arp请求发送给这个路由器,让这个路由器把请求转发给下一