一文读懂TCP、UDP协议区别和应用场景

TCP(Transmission Control Protocol,传输控制协议)和UDP(User Data Protocol ,用户数据报协议)都属于TCP/IP协议簇。TCP/IP协议集包括了超文本传输协议(HTTP)、文本传输协议(FTP)、远程登录协议(Telnet)、internet协议(IP)、internet控制信息协议(IMCP)等,而今天要讲的传输控制协议(TCP)和用户数据报协议(UDP)正是运行在协议簇的传输层。

一文读懂TCP、UDP协议区别和应用场景

OSI协议模型、TCP/IP协议模型

TCP和UDP的区别

连接性

TCP是面向连接的协议,在收发数据前必须和对方建立可靠的连接,建立连接的3次握手、断开连接的4次挥手,为数据传输打下可靠基础;UDP是一个面向无连接的协议,数据传输前,源端和终端不建立连接,发送端尽可能快的将数据扔到网络上,接收端从消息队列中读取消息段。

可靠性

TCP提供可靠交付的服务,传输过程中采用许多方法保证在连接上提供可靠的传输服务,如编号与确认、流量控制、计时器等,确保数据无差错,不丢失,不重复且按序到达;UDP使用尽可能最大努力交付,但不保证可靠交付。

报文首部

TCP报文首部有20个字节,额外开销大;UDP报文首部只有8个字节,标题短,开销小。

一文读懂TCP、UDP协议区别和应用场景

UDP报文结构

一文读懂TCP、UDP协议区别和应用场景

TCP报文结构

报文传输

TCP协议面向字节流,将应用层报文看成一串无结构的字节流,分解为多个TCP报文段传输后,在目的站重新装配;UDP协议面向报文,不拆分应用层报文,只保留报文边界,一次发送一个报文,接收方去除报文首部后,原封不动将报文交给上层应用。

吞吐量控制

TCP拥塞控制、流量控制、重传机制、滑动窗口等机制保证传输质量;UDP没有。

双工性

TCP只能点对点全双工通信;UDP支持一对一、一对多、多对一和多堆垛的交互通信。

TCP和UDP的编程步骤

一文读懂TCP、UDP协议区别和应用场景

TCP编程步骤

一文读懂TCP、UDP协议区别和应用场景

UDP编程步骤

从上面TCP、UDP编程步骤可以看出,UDP 服务器端不需要调用监听(listen)和接收(accept)客户端连接,而客户端也不需要连接服务器端(connect)。UDP协议中,任何一方建立socket后,都可以用sendto发送数据、用recvfrom接收数据,不必关心对方是否存在,是否发送了数据。

TCP和UDP的使用场景

为了实现TCP网络通信的可靠性,增加校验和、序号标识、滑动窗口、确认应答、拥塞控制等复杂的机制,建立了繁琐的握手过程,增加了TCP对系统资源的消耗;TCP的重传机制、顺序控制机制等对数据传输有一定延时影响,降低了传输效率。TCP适合对传输效率要求低,但准确率要求高的应用场景,比如万维网(HTTP)、文件传输(FTP)、电子邮件(SMTP)等。

UDP是无连接的,不可靠传输,尽最大努力交付数据,协议简单、资源要求少、传输速度快、实时性高的特点,适用于对传输效率要求高,但准确率要求低的应用场景,比如域名转换(DNS)、远程文件服务器(NFS)等。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
SIP(Session Initiation Protocol)是一种用于建立、修改和终止多媒体会话的网络通信协议。它是一种轻量级的协议,用于在IP网络上进行语音、视频、聊天和即时通信等多媒体应用的交互。 SIP协议是基于请求-响应模型的,它使用文本格式的消息进行通信。SIP消息分为请求消息和响应消息,请求消息用于请求执行某个动作,而响应消息则是对请求的响应。 SIP的基本功能包括:发起请求建立会话,邀请参与会话的用户,接受或拒绝邀请,修改会话参数,并终止或撤销会话。它允许用户进行注册和注销,以便在网络上发现对方,并提供一系列的功能和服务以增强会话的质量和效果。 SIP协议使用URI(Uniform Resource Identifier)来标识参与会话的用户和资源。它利用一个SIP服务器来处理请求,这个服务器可以进行注册、转发和路由。SIP还可以与其他应用协议如SDP(Session Description Protocol)和RTP(Real-time Transport Protocol)等配合使用,以实现媒体传输和会话控制。 SIP协议的优点在于其灵活性和可扩展性。它允许用户自己定义不同的请求方法和头部字段,以满足各种复杂的通信需求。此外,SIP还支持使用代理服务器和重定向来提高系统的可用性和可靠性。 总之,SIP协议是一种用于建立和管理多媒体会话的通信协议。通过使用请求-响应模型和文本消息格式,SIP实现了用户注册、会话发起、修改和终止等功能,提供了灵活、可扩展和与其他应用协议配合使用的特点。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值