首页 理论教育计算机网络技术基础:网络层设计与实现

计算机网络技术基础:网络层设计与实现

【摘要】:网络层描述主机与通信子网的关系。网络层为传输层提供的服务是通过网络层和传输层之间的接口来实现的,这个接口实质上是网络中的子网边界,除了服务质量外,该接口的服务与通信子网技术(介质)无关。设计一个基本的网络层必须解决数据传输单元分组在通信子网中的路由选择问题以及多个网络互联的问题,以完成对传输层的服务提供。

网络层描述主机与通信子网的关系。网络层以数据链路层提供的无差错传输为基础,为高层提供两个主机之间的数据传输服务。网络层为传输层提供的服务是通过网络层和传输层之间的接口来实现的,这个接口实质上是网络中的子网边界,除了服务质量外,该接口的服务与通信子网技术(介质)无关。也就是说必须屏蔽有不同传输特性和子网技术所引起的差异,保持网络服务的一致性。

设计一个基本的网络层必须解决数据传输单元分组在通信子网中的路由选择问题以及多个网络互联的问题,以完成对传输层的服务提供。

1.主要功能

(1)为传输层提供建立、维持和释放连接的手段,完成路由选择、拥塞控制、差错控制、顺序控制,向传输层报告未恢复的差错网络互联等功能。而这些对传输层来说完全透明。

(2)根据传输层要求选择网络服务质量。

(3)提供资源子网主机节点与通信子网间的接口。

2.服务类型

从OSI参考模型的角度来看,网络层提供两种服务方式:一种是面向连接的虚电路服务;另一种是面向无连接的数据报服务。

面向无连接服务在通信子网的工作是传输比特流,差错和流量控制就由主机来承担,网络层提供的是发送包原语、接收包原语和少量的其他服务原语。

在OSI标准中,面向连接的服务的标准要比面向无连接的服务标准更多一些。(www.chuimin.cn)

(1)虚电路服务。

虚电路是类似于电话系统建立的物理电路,它在通信子网的工作是应该提供简单的面向链接的服务。当建立连接时,从本地端机器到目的机器的路由作为连接建立的一部分加以保存,对发送的每一个分组不需要进行路由选择,当释放连接时,虚电路也随之取消。虚电路有两种:呼叫虚电路和永久虚电路。

(2)数据报服务。

数据报服务没有建立虚电路的过程,而是在每一个发出的分组都捎带有完整的目的地址信息。因此,每个分组都可以独立选择路由。先发出去的分组不一定先到达目的主机,也就是数据报不能按发送的顺序交付目的站。因此,必须对此采取一定的措施,例如在接收站把先到的分组放到缓冲区里,等到分组全部收到,再按顺序将它们交付主机。数据报服务多用于传输短报文的情况,一个或几个报文分组足以容纳所传送的数据信息,它十分类似邮政系统中的信件投递。每封信都标有收信人和发信人地址。传送信件独立,也不按投递顺序发送和接收。信件若意外丢失,邮局也不管重发,实际上由用户自己处理各种意外。根据实现服务功能的位置不同,网络层提供了面向无连接服务和连接服务两种。

(3)两者的比较。

从20世纪70年代起,关于虚电路服务和数据报服务的争论就很多。这两种服务各有所长,片面强调一种服务是不正确的,如果对它们的特点进行比较,了解其优缺点之后,就可以在不同的场合正确选择和使用这两种服务。

3.网络层的服务原语

OSI为面向连接制定了16条服务原语,对无连接提供了5条服务原语。在面向连接中用于建立和释放连接的服务原语有2组6条,用于数据传送的有3组6条,还有4条重建服务原语。这些服务原语可以归结为两类:需要证实的和不得证实的。