UDP

✍ dations ◷ 2025-11-26 01:35:03 #UDP
用户数据报协议(英语:User Datagram Protocol,缩写:UDP;又称用户数据包协议)是一个简单的面向数据报的通信协议,位于OSI模型的传输层。该协议由David P. Reed(英语:David P. Reed)在1980年设计且在RFC 768中被规范。典型网络上的众多使用UDP协议的关键应用在一定程度上是相似的。在TCP/IP模型中,UDP为网络层以上和应用层以下提供了一个简单的接口。UDP只提供数据的不可靠传递,它一旦把应用程序发给网络层的数据发送出去,就不保留数据备份(所以UDP有时候也被认为是不可靠的数据报协议)。UDP在IP数据报的头部仅仅加入了复用和数据校验字段。UDP适用于不需要或在程序中执行错误检查和纠正的应用,它避免了协议栈中此类处理的开销(英语:Overhead (computing))。对时间有较高要求的应用程序通常使用UDP,因为丢弃数据包比等待或重传导致延迟更可取。由于UDP缺乏可靠性且属于无连接协议,所以应用程序通常必须容许一些丢失、错误或重复的数据包。某些应用程序(如TFTP)可能会根据需要在应用程序层中添加基本的可靠性机制。一些应用程序不太需要可靠性机制,甚至可能因为引入可靠性机制而降低性能,所以它们使用UDP这种缺乏可靠性的协议。流媒体,实时多人游戏和IP语音(VoIP)是经常使用UDP的应用程序。 在这些特定应用中,丢包通常不是重大问题。如果应用程序需要高度可靠性,则可以使用诸如TCP之类的协议。例如,在VoIP中延迟和抖动是主要问题。如果使用TCP,那么任何数据包丢失或错误都将导致抖动,因为TCP在请求及重传丢失数据时不向应用程序提供后续数据。如果使用UDP,那么应用程序则需要提供必要的握手,例如实时确认已收到的消息。由于UDP缺乏拥塞控制,所以需要基于网络的机制来减少因失控和高速UDP流量负荷而导致的拥塞崩溃效应。换句话说,因为UDP发送端无法检测拥塞,所以像使用包队列和丢弃技术的路由器之类的网络基础设备会被用于降低UDP过大流量。数据拥塞控制协议(DCCP)设计成通过在诸如流媒体类型的高速率UDP流中增加主机拥塞控制,来减小这个潜在的问题。许多关键的互联网应用程序使用UDP,包括:音频、视频、在线游戏流量通常使用UDP传输。 实时视频流和音频流应用程序旨在处理偶尔丢失、错误的数据包,因此只会发生质量轻微下降,而避免了重传数据包带来的高延迟。 由于TCP和UDP都在同一网络上运行,因此一些企业发现来自这些实时应用程序的UDP流量影响了使用TCP的应用程序的性能,例如销售、会计和数据库系统。 当TCP检测到数据包丢失时,它将限制其数据速率使用率。由于实时和业务应用程序对企业都很重要,因此一些人认为开发服务质量解决方案至关重要。某些VPN应用(如OpenVPN)使用UDP并可以在应用程序级别实现可靠连接和错误检查。UDP报头包括4个字段,每个字段占用2个字节(即16个二进制位)。在IPv4中,“来源连接端口”和“校验和”是可选字段(以粉色背景标出)。在IPv6中,只有来源连接端口是可选字段。 各16bit的来源端口和目的端口用来标记发送和接受的应用进程。因为UDP不需要应答,所以来源端口是可选的,如果来源端口不用,那么置为零。在目的端口后面是长度固定的以字节为单位的长度域,用来指定UDP数据报包括数据部分的长度,长度最小值为8byte。首部剩下地16bit是用来对首部和数据部分一起做校验和(Checksum)的,这部分是可选的,但在实际应用中一般都使用这一功能。当UDP运行在IPv4之上时,为了能够计算校验和,需要在UDP数据包前添加一个“伪头部”。伪头部包括了IPv4头部中的一些信息,但它并不是发送IP数据包时使用的IP数据包的头部,而只是一个用来计算校验和而已。当UDP运行于IPV6之上时,校验和是必须的,其计算方法位于RFC 2460: .mw-parser-output .templatequote{margin-top:0;overflow:hidden}.mw-parser-output .templatequote .templatequotecite{line-height:1em;text-align:left;padding-left:2em;margin-top:0}.mw-parser-output .templatequote .templatequotecite cite{font-size:small}任何包含来自IP头地址的传输层或其他上层协议,其校验和的计算必须被修改,以适应IPv6的128位ip地址。IPv6伪头部是生成校验和所用的数据。

相关

  • 流感病毒甲型流行性感冒病毒属(Influenzavirus A) 乙型流行性感冒病毒属(Influenzavirus B) 丙型流行性感冒病毒属(Influenzavirus C)流行性感冒病毒,简称流感病毒,是一种造成人类及动
  • 地球科学地球科学是指一切研究地球的科学,是行星科学的专门分支。各学科通常会以物理、地理、地质、气象、数学、化学、生物的角度研究地球。它和人类的生活息息相关,人们手上所戴的黄
  • 城邦城邦(古希腊语:πολις,古希腊语:,英语:Polis,复数形为πόλεις,,poleis),希腊文的字面意思是城市。它也代表了公民以及公民组成的群体。是古希腊一种政治共同体,以城市为单位形
  • 词形词形(英文word form)泛指词语的书写形式,是书面语言的主要元素之一。词形的具体含义在不同语言中有很大的区别。例如:在英语中,词形变化指同一单词在不同语境下,由于人称、时态和
  • 民权运动民权运动,是一个广泛的世界性的法律之前人人平等,争取平等公民权利的社会政治运动,它发生在1950年代至1980年代间,并在1960年代发展在高峰。许多情形下它是非暴力抵抗的民众抵抗
  • 阿尔泰边疆区阿尔泰边疆区 (俄语:Алта́йский край,罗马化:Altaysky kray)是位于俄罗斯西伯利亚联邦管区的一个边疆区,位于西西伯利亚南部与哈萨克斯坦接壤,面积167,996平方千米,是
  • 比尔阿克姆桥比尔阿克姆桥(Pont de Bir-Hakeim),旧称帕西桥(Pont de Passy)是一条位于法国巴黎的钢制拱桥,连接巴黎十五区和巴黎十六区,横跨塞纳河以及河道中央的天鹅岛。桥梁长237米,宽24.7米,于
  • 挪威克朗挪威挪威克朗(货币代码:NOK,挪威语:krone,kroner,简写为Kr)是挪威的法定货币。一克朗可分为一百个欧尔(书面挪威语:øre)(øre)。但所有欧尔的货币已于2012年5月遭淘汰。该词源自瑞典语k
  • 卡尔·尼尔森卡尔·奥古斯特·尼尔森(丹麦语:Carl August Nielsen,1865年7月9日-1931年10月3日),丹麦作曲家和指挥家。卡尔·尼尔森出生于欧登塞南部小村庄Sortelung的一个贫穷画家和油漆匠之
  • 布莱恩·劳德鲁普布莱恩·劳德鲁普(Brian Laudrup,1969年2月22日-),前丹麦足球运动员,与他的兄长米歇尔·劳德鲁普等都是丹麦足球黄金一代中最杰出的人物之一。他于2003年被球王贝利评为FIFA 100成