05-网络传输方式

目标

  • 能够说出面向连接面向无连接的区别
  • 知道 UDP 网络传输方式的特点

image-20181107235741556

1. 网络传输方式

网络通信中根据数据发送方法进行多种分类. 分类方法主要分为两种:

  • 面向有连接型.
  • 面向无连接型.

面向无连接型

面向无连接型不要求建立和断开连接. 发送端可于任何时候自由发送数据. 反之, 接收端也永远不知道自己会在何时从那里接收到数据. 因此, 面向无连接的情况下, 接收端需要时常确认是否收到了数据.

image-20180626000803955

在面向无连接的通信中, 不需要确认对端是否存在. 即使接收端不存在或无法接受数据, 发送端也能将数据发送出去.

image-20180625005010297

UDP (User Datagram Protocol )不提供复杂的控制机制, 如果传输过程中出现丢包, UDP 也不负责重发. 甚至当出现包到达顺序乱掉时候也没有纠正的功能. 由于 UDP 面向无连接, 它可以随时发送数据. 再加上 UDP 本身的处理既简单又高效, 因此常用于以下几个方面:

  • 包总量较少的通信(DNS).
  • 视频、音频等多媒体通信(即时通信).
  • 限定于 LAN 等特定网络中的应用通信.
  • 广播通信(广播、多播)

面向有连接型:

面向有连接型中, 在发送数据之前, 需要在收发主机之间建立一条连接通信线路. 面向连接就好像我们平时打电话, 输入完对方的电话号码拨出之后, 只有对方拿起电话确认连接才能进行真正的通话, 通话结束后将电话机扣上就如同切断电源。因此在面向有连接的方式下, 必须在通信传输前后, 专门进行建立和断开连接的处理.

image-20180626192953396

TCP 提供一种面向连接的通信服务, 只有在确认通信对端存在时才会收发数据, 从而可以控制通信流量的浪费. TCP 提供了数据传输时的各种控制功能, 丢包时可以进行重发控制, 还可以将次序乱掉的分包进行顺序控制.

image-20180625004943513

TCP 协议, 传输控制协议(英语:Transmission Control Protocol,缩写为 TCP)是一种面向连接的、可靠的、基于字节流的传输层通信协议.

两者区别

  • TCP提供的是面向连接的、可靠的数据流传输;

UDP提供的是非面向连接的、不可靠的数据流传输。

  • TCP提供可靠的服务,通过TCP连接传送的数据,无差错、不丢失,不重复,按序到达

UDP尽最大努力交付,即不保证可靠交付。

  • TCP面向字节流;

UDP面向报文。

  • TCP连接只能是点到点的;

UDP支持一对一、一对多、多对一和多对多的交互通信。

2. UDP传输方式

UDP 协议全称是用户数据报协议, 在网络中它与TCP协议一样用于处理数据包, 是一种无连接的协议.

选择 UDP 必须要谨慎, 在网络质量令人十分不满意的环境下, UDP协议数据包丢失会比较严重. 但是由于UDP的特性: 它不属于连接型协议, 因而具有资源消耗小, 处理速度快的优点. 所以通常音频、视频和普通数据在传送时使用 UDP 较多,因为它们即使偶尔丢失一两个数据包, 也不会对接收结果产生太大影响.