面向报文(UDP)和面向字节流(TCP)的区别

  • Post author:
  • Post category:其他


文章目录

* 1,TCP是面向连接(Connection oriented)的协议,UDP是无连接(Connection less)协议;

* 2,TCP无界,UDP有界;

* 3,TCP可靠,UDP不可靠;

* 4,TCP有序,UDP无序;

* 5,TCP有流量控制(拥塞控制),UDP没有;

* 6,TCP的头部比UDP大;

1,TCP是面向连接(Connection oriented)的协议,UDP是无连接(Connection less)协议;

以下举例进行说明:

对于面向连接的: 两个人打电话时,双方确认并建立连接后才能进行通信。

对于面向无连接的:在邮局寄信时,你只需要将信放在邮筒里,不需要给收件人通知,收件人也不知道你给他寄信了。

2,TCP无界,UDP有界;

TCP通过字节流传输,即TCP将应用程序看成是一连串的无结构的字节流。每个TCP套接口有一个发送缓冲区,如果字节流太长时,TCP会将其拆分进行发送。当字节流太短时,TCP会等待缓冲区中的字节流达到一定程度时再构成报文发送出去,TCP发给对方的数据,对方在收到数据时必须给矛确认,只有在收到对方的确认时,本方TCP才会把TCP发送缓冲区中的数据删除。

而UDP传输报文的方式是由应用程序控制的,应用层交给UDP多长的报文,UDP照样发送,既不拆分,也不合并,而是保留这些报文的边界,即



版权声明:本文为liuyanfeier原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。