网络中的TCP协议与UDP协议

在互联网中,存在着各种不同的协议,它们分别的功能也是不同的,是网络中计算机或设备之间进行通信的一系列规则的集合。今天我们就来聊一聊传输层中的TCP协议与UDP协议。

先来看下传输层,它是TCP/IP协议中四个层级结构的其中之一,另外的三个是链路层、网络层以及应用层。这些是因特网最基本的协议也是国际互联网的基础,主要解决异种计算机网络的通信问题,使网络在互连时把技术细节隐藏起来,为用户提供一种通用的、一致的通信服务。每个层级都有各自的作用,而传输层主要为两台主机上的应用程序提供端到端的通信。在TCP/IP协议族中,有两个互不相同的传输协议:TCP协议和UDP协议。

TCP,传输控制协议,是一种可靠的面向连接的传送服务,通过三次握手建立连接过程。由于TCP数据传输是分段进行,主机交换数据必须建立一个会话。TCP用比特流通信,即数据被作为无结构的字节流,通过为每个由其传输的字段指定顺序号获得可靠性。如果一个分段被分解成几个小段,接收主机会知道是否所有小段都已收到。对于发送的每一个分段,接收主机必须在一个指定的时间内返回一个确认信息(Acknowledgement),用于表明收到了数据,如果发送者未收到确认(ACK),数据就会被重新发送。例如,收到的数据包已被损坏,主机就会丢弃它,并且不发送ACK。于是,发送者需要重新发送分段。

简单来讲就是:TCP负责发现传输数据,传输过程中有问题就发出错误信号,要求重新进行数据传输,直到所有数据安全及正确地传输到目的地;仅支持单项传输;允许双方的通信应用程序随时都可以发送数据。

再来看下UDP协议,全称是用户数据报协议,在网络中也是用于处理传输的数据包,但是UDP提供的是无连接的数据包服务,该服务提供了不可靠的、“尽力而为”的初步传送,这意味着数据包的到达和传送包的正确顺序不能被保证,属于无连接的协议,处于IP协议的上一层。UDP的不可靠性在于不会对其数据包分组、组装、排序,换言之,当报文发送完成之后,是无法获悉此数据包是否是安全完整到达的也不会备份数据。不过这也使得它在其他方面具有优势:

UDP适用于无须应答,并且通常一次只传送少量数据的应用 。当应用层的数据到达传输层UDP协议时,数据只会被增加标识是UDP协议,发送给网络层,网络层再将数据传输到传输层后去除UDP协议发给应用层,这期间不会对数据报文做任何拆分和拼接的操作;另外,UDP具有多功能,支持一对一,一对多,多对多,多对一;UDP不会被拥塞控制,一般会议稳定的速度发送数据,如果网络不好时,会自动调整发送率,不会有丢包出现。因此,UDP适用于无须应答、并且通常一次只传送少量数据的应用方面。

TCP与UDP两个虽说是同属与传输层的协议,但是具有各自的特点。我们可以根据自身业务的实际情况来确定适用的协议。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值