TCP与UDP区别:可靠连接和不可靠连接

细节:

一、连接性:

TCP:是面向连接的协议。通信双方在传数据前必须通过三次握手建立连接,在数据传输结束后会还需进行四次挥手断开连接。

UDP:是无连接的协议。发送数据之前不需要建立连接,直接将数据发出去。接收端从网络中接收数据,并从消息队列中读取数据段。

二、可靠性

TCP:可靠。通过序列号、确认号、重传机制等一系列技术,确保数据准确、准时、无错、不丢、不重复。当接收方一定时间内没收到数据会重新发。

UDP:不可靠。不保证数据能被对方收到,发送的数据可能丢失、重复、乱序,但他传输速度快,实时性强。

三、传输速率

TCP:由于需要建立连接、维护、确认、重传等操作,传输效率相对低,尤其对于小数据量。

UDP:没有一系列复杂机制,单纯发送,传输效率较高。

四、数据处理方式

TCP:面向字节流。将数据看成一连串无结构的字节流,在发送和接收时进行分片和重组操作。发送方将数据分成合适的报文段,接收方按照序列号重组报文。

UDP:面向报文。将应用层交下来的报文加上首部后直接向下交付,不合并不拆分。

五、通信模式

TCP:点对点通信,一条TCP连接只能在两个端点间进行数据传输。

UDP:支持一对一、一对多、多对一、多对多的通信模式,更加灵活。

六、首部开销

TCP:首部开销大,至少20字节。包含更多控制信息,如序列号、确认号、窗口大小、校验和等,以便实现可靠连接和流量控制

UDP:首部开销小,只有8字节。只包含源端口号、目的端口号、长度、校验和等基本信息。

七、应用场景

TCP:对数据传输可靠性要求高的应用。如文件传输、电子邮件、网页浏览等,不允许出现数据丢失或错误。

UDP:实时性要求高,接受一定的数据丢失和错误,如IPTV、视频会议、广播等。

点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部