关于网络层你了解多少

来源:互联网 发布:人工智能的未来发展 编辑:程序博客网 时间:2024/04/29 08:57

网络层的设计思路:

网络层向上只提供简单灵活的,无连接的,尽最大努力交付的数据报服务。网络层不提供服务质量的承诺。由于传输网络不提供端到端的可靠传输服务,这就使网络中的路由器可以做的比较简单,而且相对价格低廉。


采用这种设计思路的好处:

网络的造价大大降低,运行方式灵活,能够适应多种应用


网际协议IP:

网际协议IP是TCP/IP体系中两个最重要的协议之一


与IP协议配套使用的还有以下三种协议:

地址解析协议:ARP

网际控制报文协议:ICMP

网际组管理协议:IGMP


没有一种单一的网络能够适应所有用户的需求,将网络互相连接起来要使用一些中间设备

(1)物理层:转发器

(2)数据链路层:网桥,桥接器

(3)网络层:路由器

(4)网络层以上:网关

当中间设备是转发器或者网桥时,这仅仅只是把一个网络扩大了,而从网络层的角度来看,这仍然是一个网络,一般并不称之为网络互连。现在我们讨论的网络互连时,都是只路由器进行的网络互连和路由选择。


互联网可以由很多异构网络互连组成:

互连起来的各种物理网络的异构性本来是客观存在的,但是我们利用IP协议就可以使这些性能各异的网络在网络层上看起来好像是一个统一的网络。


分组在网络中是如何传送的:



IP地址具有四种特点

(1)每一个IP地址都是由网络号和主机号两个部分组成。路由器仅根据目的主机所连接的网络号来转发分组,这样就可以使得路由表中的项目数大幅度减少,从而减小了路由器所占的存储空间以及查找路由表的时间。

(2)IP地址实际上就是标志一个主机(或路由器)和一条链路的接口。

(3)一个网络是指具有相同的网络号。具有不同的网络号的局域网必须使用路由器进行互连。

(4)在IP地址中,所分配到网络号的网络都是平等的。


图解:

(1)在同一个局域网上的主机或者路由器的IP地址中的网络号必须是一样的。

(2)路由器总是具有两个或者两个以上的IP地址。因为路由器连接的是两个或两个以上的不同的网络。

(3)当两个路由器直接相连时,在连接两端的接口处,可以分配也可以不分配IP地址。



IP地址和硬件地址的区别

IP地址放在IP数据报的首部

硬件地址放在MAC帧的首部



主机或路由器怎么知道应当在MAC帧的首部填入什么样的硬件地址?

答:是通过ARP地址解析协议解析出来的。IP协议使用了ARP协议,因此通常将ARP协议划归网络层。但实际上ARP的用途是从网络层使用的目的IP地址解析出数据链路层使用的硬件地址。每个主机都设有一个ARP高速缓存,里面有本局域网上各个主机和路由器的IP地址到硬件地址的映射表,这些都是该主机目前知道的一些地址。


ARP地址解析协议是如何工作的(工作原理)?

答:ARP是解决同一个局域网(注意是同一个)上的主机或路由器的IP地址和硬件地址的映射问题。

(1)ARP进程在本局域网上广播一个ARP请求分组。告知了自己的IP地址和硬件地址,并希望知道目的IP地址的硬件地址。

(2)在本局域网上的所有主机上运行的ARP进程都会收到这个ARP请求。

(3)如果主机B中的IP地址和ARP请求分组中要查询的IP地址是一致的,那么就收下这个ARP请求(如果不一致,那么丢弃),并向主机A发送ARP响应分组,并在这个响应分组里加入自己的硬件地址。

(4)主机A收到主机B的ARP响应分组后,就在自己的ARP高速缓存中写入主机B的IP地址到硬件地址的映射。


ARP中的高速缓存:

答:ARP将已经得到的地址映射保存在高速缓存中,这样就使得该主机下次再和具有同样目的地址的主机通信时,可以直接从高速缓存中找到所需要的硬件地址而不必再用广播方式发送ARP请求分组。ARP把保存在高速缓存中的每一个映射地址项目都设置了生存时间,凡超过生存时间的项目就从高速缓存中删除。


网络中是通过硬件地址找到目的主机的,那为什么还要有IP地址呢?

这是因为全世界存在着各式各样的网络,他们使用不同的硬件地址。要使这些异构的网络能够互相通信就必须进行非常复杂的硬件地址转换工作,因此由用户或用户主机来完成这个任务工作是几乎不可能的。他们之间的通信就像连接在同一个网络上那样简单方便,因为ARP的复杂过程都是计算机软件自动进行的,对用户来说是看不见这种调用的。所以,在虚拟的IP网络上用IP地址进行通信给广大的计算机用户带来了很大的方便。(如果你看不懂,请看我下一篇博客的解析)