UDP 数据报与套接字全解析
1. TCP 与 UDP 概述
在网络数据传输领域,TCP(传输控制协议)和 UDP(用户数据报协议)是两种常用的协议。TCP 旨在实现数据的可靠传输。当数据在传输过程中丢失或损坏时,TCP 会确保数据被重新发送;若数据包乱序到达,TCP 会将它们重新排序;若数据传输速度过快,导致连接不堪重负,TCP 会降低传输速度,以避免数据包丢失。因此,使用 TCP 的程序无需担心接收到乱序或错误的数据。然而,这种可靠性是以牺牲速度为代价的。建立和拆除 TCP 连接可能需要相当长的时间,特别是对于像 HTTP 这样需要进行大量短传输的协议来说,这一问题更为明显。
UDP 则是一种通过 IP 发送数据的替代协议,它速度极快,但不可靠。当你发送 UDP 数据时,你无法知道数据是否到达,更无法确定不同的数据片段是否按发送顺序到达。不过,那些成功到达的数据通常能快速抵达。
2. UDP 协议的应用场景
 既然 UDP 不可靠,为什么还会有人使用它呢?实际上,并非所有应用场景都对数据的准确性有严格要求,在很多情况下,原始速度比确保每一位数据的正确性更为重要。以下是一些具体的应用场景: 
 -  实时音频和视频  :在实时音频或视频传输中,丢失或交换的数据包可能只会表现为杂音或画面卡顿,这种情况是可以容忍的。但如果使用 TCP,当它请求重传数据或等待丢失的数据包时,会导致音频流出现令人难以接受的停顿。 
 -  应用层可靠性测试  :在某些应用中,可以在应用层实现可靠性测试。例如,客户端向服务器发送一个短 UDP 请求,如果在规定时间内没有收到响应,就可以假设数据包丢失。域
 
                       
                           
                         
                             
                             
                           
                           
                             超级会员免费看
超级会员免费看
                                         
                   订阅专栏 解锁全文
                订阅专栏 解锁全文
                 
             
       
           
                 
                 
                 
                 
                 
                
               
                 
                 
                 
                 
                
               
                 
                 扫一扫
扫一扫
                     
              
             
                   1295
					1295
					
 被折叠的  条评论
		 为什么被折叠?
被折叠的  条评论
		 为什么被折叠?
		 
		  到【灌水乐园】发言
到【灌水乐园】发言                                
		 
		 
    
   
    
   
             
            


 
            