网络层
网络层提供的两种服务
争论:
·网络层应该向运输层提供怎样的服务?面向连接还是无连接?
·在计算机通信中,可靠交付应当由谁来负责?是网络还是端系统?
2 种观点:
·面向连接的可靠交付。
·无连接的、尽最大努力交付的数据报服务,不提供服务质量的承诺。
一种观点:让网络负责可靠交付
·计算机网络模仿电信网络,使用面向连接的通信方式。
·通信之前先建立虚电路 VC (Virtual Circuit) (即连接),以保证双方通信所需的一切网络资源。
·如果再使用可靠传输的网络协议,可使所发送的分组无差错按序到达终点,不丢失、不重复。
虚电路服务
虚电路只是一条逻辑上的连接,分组都沿着这条逻辑连接按照存储转发方式传送,并不是真正建立了一条物理连接。
另一种观点:网络提供数据报服务
互联网采用的设计思路:
·网络层要设计得尽量简单,向其上层只提供简单灵活的、无连接的、尽最大努力交付的数据报服务。
·网络在发送分组时不需要先建立连接。
·每一个分组(即 IP 数据报)独立发送,与其前后的分组无关(不进行编号)。
·网络层不提供服务质量的承诺。即所传送的分组可能出错、丢失、重复和失序(不按序到达终点),也不保证分组传送的时限。
·由主机中的运输层负责可靠的通信。
数据报服务
虚电路服务与数据报服务的对比
网络层的两个层面
·不同网络中的两个主机之间的通信,要经过若干个路由器转发分组来完成。
·在路由器之间传送的信息有以下 2 大类:
·数据。
·路由信息(为数据传送服务)。
网络层的 2 个层面:
数据层面和控制层面
软件定义网络 SDN(Software Defined Network) 中的数据层面和控制层面
欢迎一起学习~