首页 > 代码库 > 《网络协议》端到端与点到点通信

《网络协议》端到端与点到点通信

        数据传输的可靠性是通过数据链路层网络层点对点传输层端对端保证的。端到端与点到点是针对网络中传输的两端设备间的关系而言的。


端到端通信

        端到端通信是针对传输层来说的,它是一个网络连接,因为网络之间的通信必须要建立连接,实现应用程序之间的通信,不需要知道底层是如何传输的。实际上它是一条逻辑链路,这条逻辑链路可能经过了很复杂的物理路线

        端到端通信指的是在数据传输前,经过各种各样的交换设备,在两端设备间建立一条链路(在这两端之间不管有多少其他设备都忽略),就像它们是直接相连的一样,链路建立后,发送端就可以发送数据,直至数据发送完毕,接收端确认接收成功。

        端到端的优缺点:

        ---优点是链路建立后,发送端知道接收设备一定能收到,而且经过中间交换设备时不需要进行存储转发,因此传输延迟小。

        ---缺点是直到接收端收到数据为止,发送端的设备一直要参与传输。如果整个传输的延迟很长,那么对发送端的设备造成很大的浪费。另一个缺点是如果接收设备关机或故障,那么端到端传输不可能实现。


点到点通信

        点到点通信是针对数据链路层或网络层来说的,点对点是基于 MAC 地址或者 IP 地址,是指一个设备发数据给另外一个设备,这些设备是指直连设备(即直接连接的设备)包括网卡,路由器,交换机。

        点到点通信指的是发送端把数据传给与它直接相连的设备,这台设备在合适的时候又把数据传给与之直接相连的下一台设备,通过一台一台直接相连的设备,把数据传到接收端。

        点到点的优缺点:

        ---优点是发送端设备送出数据后,它的任务已经完成,不需要参与整个传输过程,这样不会浪费发送端设备的资源。另外,即使接收端设备关机或故障,点到点传输也可以采用存储转发技术进行缓冲。

       ---缺点是发送端发出数据后,不知道接收端能否收到或何时能收到数据。 


总结

        例如:将数据从 A 传送到 E,中间可能经过 A->B->C->D->E,对于传输层来说他并不知道B,C,D 的存在,它只认为报文数据是从 A 直接到 E 的,这就叫做端到端通信。但是对于数据链路层或者网络层来说,数据报是要先从 A->B,再从 B->C,紧接着 C->D,D->E 按着顺序把数据报传输到目的端 E,这些传输过程 A->B,B->C,C->D,D->E实现的是两点之间直接相连接设备之间的通信,即为点到点通信。因此可以知道,端到端通信可能是多个点到点通信实现组成。

        在一个网络系统的不同分层中,可能用到端到端传输,也可能用到点到点传输。如Internet网,IP及以下各层采用点到点传输,IP层以上采用端到端传输。


《网络协议》端到端与点到点通信