网络层设计问题有哪些?
网络层的设计问题包括为传输层提供服务、在子网上路由数据包、拥塞控制以及多个网络的互连。
网络层的设计问题如下:
网络层的目标是为连接到多个网络的多个用户提供逻辑服务。因此,提供的服务应独立于底层技术。这样,客户端使用服务时无需了解网络的物理实现即可发送消息。
主机上的传输层不需要知道如何建立到目标主机的通信连接。
必须有一些统一的网络位置寻址方案。
通信类型主要有两种:
面向连接的服务
在面向连接的服务中,每个数据包都与源/目标连接相关联。这些数据包沿一条称为虚拟电路的相同路径路由。因此,它为用户提供端到端连接以进行可靠的数据传输。它按顺序传输数据,没有并行或丢失的信息。它不会造成传输介质和接收设备缓冲区的拥塞。
在面向连接的服务中,用户在连接持续时间内占用网络的带宽和资源,因此需要更多的开销。即使在连接期间没有传输数据,此服务也会维护相关的网络资源。
无连接的服务
在无连接的服务中,路由器独立地处理每个数据包。数据包通过网络的不同路径路由,根据路由器的决策进行路由。
在无连接的服务中,网络或通信信道不保证主机到目标主机的数据交付。要传输的记录被分割成数据包。这些独立的数据包类似于电报中的数据报。数据包包含目标设备的地址。
服务质量 (QOS)
每种服务都可以通过其服务质量来区分。
这些服务可以分为以下两种类型:
可靠服务
可靠服务是指从不丢失数据的服务。通常通过让接收方确认每个消息的接收来实现可靠服务。因此,发送方可以确保消息到达。例如,远程登录需要可靠的服务。但是,确认会引入开销和延迟,这在某些情况下是不希望的。
不可靠服务
不可靠服务会丢失少量数据或位或图像的像素,但这对结果没有显着影响。例如,移动用户偶尔听到线路上的噪音或错误的单词,而不是等待确认而造成延迟。
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP