TCP/UDP区别与联系

主要从应用层简要对TCP于UDP的区别进行说明

UDP协议:

UDP与TCP的主要区别在于UDP不一定提供可靠的数据传输。事实上,该协议不能保证数据准确无误的到达目的地。UDP在许多方面都非常有效。当某个程序的目标是尽快传输尽可能多的信息时(其中任意给定数据的重要性相对较低),可使用UDP。许多程序使用单独的TCP连接和单独的UDP连接。重要的状态信息随可靠的TCP连接发送,而主数据流通过UDP发送。

TCP协议:

TCP的目的是提供可靠的数据传输,并在相互进行通信的设备或服务之间保持一个虚拟连接。TCP的数据包接受无序、丢失或在交付期间被破坏时,负责数据恢复。它通过为其发送的每个数据包提供一个序号来完成恢复。记住,较低的网络层会将每个数据包视为一个独立的单元,因此,数据包可以沿完全不同的路径发送,即使他们是同一消息的组成部分。这种路由与网络层处理分段和重新组装数据包的方式非常相似,只是级别更高而已。为确保正确地接收数据,TCP要求在目标计算机成功接收到数据时发回一个确认(即ACK)。如果在某个时限内未收到相应的ACK,将重新传送数据包。如果网络拥塞,这种重新传送将导致发送的数据包重复。但是,接收计算机可使用数据包的序号来确定它是否为重复数据包,并在必要时丢弃它。

TCP与UDP的选择:

如果比较TCP包与UDP包的结构,很明显UDP包不具备TCP包复杂的可靠性与控制机制。与TCP协议不同,UDP的源端口数和目的端口数也都支持一台主机上的多个应用。一个16位的UDP包包含了一个字节长的头部和数据的长度,校验码域使其可以进行整体校验。

很明显,当数据传输的性能必须让位于数据传输的完整性、可控性和可靠性时,TCP协议时当然的选择。当强调传输性能而不是传输的完整性时,如:音频和多媒体应用,UDP是最好的选择。在数据传输时间很短,以至于此前的连接过程称为整个流量主体的情况下,UDP也是一个好的选择,如:DNS交换。把SNMP建立在UDP上的部分原因是设计者认为当发生网络堵塞时,UDP较低的开销使其有更好的机会传送管理数据。TCP丰富的功能有时会导致不可预料的性能低下,但我相信,在不远的将来,TCP可靠的点对点连接将会用于绝大多数的网络应用。

TCP协议和UDP协议特性区别总结

1. TCP协议在传送数据段的时候要给段标号;UDP协议不;
2. TCP协议可靠;UDP协议不可靠;
3. TCP协议是面向连接;UDP协议采用无连接;
4. TCP协议负载较高,采用虚电路;UDP采用无连接;
5. TCP协议的发送方要确认接收方是否收到数据段(3次握手协议);
6. TCP协议采用窗口技术和流控制。

(原文链接:http://www.52im.net/thread-580-1-1.html)

时间: 2024-10-16 06:06:04

TCP/UDP区别与联系的相关文章

TCP连接的三次握手,TCP/UDP区别联系,socket连接和http连接的区别

TCP连接的三次握手 1.第一次握手:客户端发送SYN + J包(syn = j)到服务器,并进入SYN_SEND状态,等待服务器确认: 2.第二次握手:服务器收到syn包,必须确认客户的SYN(A出口= j+1),同时自己也发送一个SYN+K包(syn =k),即SYN +ACK包,向服务器发送确认包ACK(ack = k+1),此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手, TCP/UDP区别联系 1.TCP的全称是传输控制协议,这种协议可以提供面向连接的,可靠地

python 网络通信协议/TCP,UDP区别

一.osi七层协议 互联网协议按照功能不同分为osi七层或tcp/ip五层或tcp/ip四层 协议具体内容 各层的功能简述: [1]物理层:主要定义物理设备标准,如网线的接口类型.光纤的接口类型.各种传输介质的传输速率等.它的主要作用是传输比特流(就是由1.0转化为电流强弱来进行传输,到达目的地后在转化为1.0,也就是我们常说的数模转换与模数转换),这一层的数据叫做比特. [2]数据链路层:定义了如何让格式化数据以进行传输,以及如何让控制对物理介质的访问,这一层通常还提供错误检测和纠正,以确保数

TCP UDP区别

TCP和UDP区别 TCP UDP 是否连接 面向连接 面向非连接 传输可靠性 可靠的 不可靠的 应用场合 传输大量的数据 少量数据 速度 慢 快 1. TCP协议可靠,UDP协议不可靠 2. TCP协议面向连接,UDP协议采用无连接:TCP协议的发送方要确认接收方是否收到数据段(3次握手协议),UDP不需要 3. 当强调数据传输的完整性.可控制性和可靠性时,TCP协议是当然的选择.当强调传输性能而不是传输的完整性时,如:音频和多媒体应用,UDP是最好的选择,比如:包总量较少的通信(DNS/SN

TCP/UDP区别(不定期增加内容)

1:UDP可以发送字节为0的数据报,但是TCP不可以!UDP的recvfrom可以接受长度为0的数据包,这是一个只包含IP首部和一个8字节UDP首部的没有数据的IP数据报! 2:TCP  read返回0时候表示对端已经关闭连接. 3:recvfrom和sendto也可以用于TCP,但是没有理由这样做! 4:UDP是无连接的,所以没有关闭一个UDP连接的说法. 5:TCP 不支持广播,UDP可以经过设置后广播. 6:有很多方法来获取和设置影响套接字的选项 getsockopt()和setsocko

OSI七层模型与 TCP/IP五层模型 TCP/UDP的区别

转自:http://blog.chinaunix.net/uid-22166872-id-3716751.html OSI七层模型OSI 中的层            功能                                                        TCP/IP协议族 应 用层                 文件传输,电子邮件,文件服务,虚拟终 端         TFTP,HTTP,SNMP,FTP,SMTP,DNS,Telnet 表示层          

UDP和TCP的区别(转)

TCP协议与UDP协议的区别    首先咱们弄清楚,TCP协议和UCP协议与TCP/IP协议的联系,很多人犯糊涂了,一直都是说TCP/IP协议与UDP协议的区别,我觉得这是没有从本质上弄清楚网络通信!TCP/IP协议是一个协议簇.里面包括很多协议的.UDP只是其中的一个.之所以命名为TCP/IP协议,因为TCP,IP协议是两个很重要的协议,就用他两命名了.TCP/IP协议集包括应用层,传输层,网络层,网络访问层.其中应用层包括:超文本传输协议(HTTP):万维网的基本协议.   文件传输(TFT

TCP;UDP的定义与区别

TCP和UDP是OSI模型中的运输层中的协议.TCP提供可靠的通信传输,而UDP则常被用于让广播和细节控制交给应用的通信传输. UDP(User Datagram Protocol) UDP不提供复杂的控制机制,利用IP提供面向无连接的通信服务.并且它是将应用程序发来的数据在收到的那一刻,立刻按照原样发送到网络上的一种机制. 即使是出现网络拥堵的情况下,UDP也无法进行流量控制等避免网络拥塞的行为.此外,传输途中如果出现了丢包,UDO也不负责重发.甚至当出现包的到达顺 序乱掉时也没有纠正的功能.

TCP/IP协议栈与数据包封装+TCP与UDP区别

ISO制定的OSI参考模型的过于庞大.复杂招致了许多批评.与此对照,由技术人员自己开发的TCP/IP协议栈获得了更为广泛的应用.如图2-1所示,是TCP/IP参考模型和OSI参考模型的对比示意图. TCP/IP参考模型的层次结构 TCP/IP协议栈是美国国防部高级研究计划局计算机网(Advanced Research Projects Agency Network,ARPANET)和其后继因特网使用的参考模型.ARPANET是由美国国防部(U.S.Department of Defense,Do

浅谈Get和Post方法的区别与TCP与UDP区别

Get和Post方法的区别 Get方法主要用于获取服务器资源,而Post方法除了能获取资源外,还可以向服务器上传数据. Get方法会把请求的数据附在URL后面,而Post不会. Get方法传输小数据,而Post方法主要用来传递大数据或比较隐私的数据,因此Post方法的安全性高一点. TCP与UDP区别 TCP是面向连接的,发送数据前必须建立可靠的连接:而UDP是无连接的,不需要建立连接 TCP传输可靠,能保证数据正确性:而UDP是不可靠的,传输时可能丢包 TCP用于传输大量数据(流模式):UDP