TCP和UDP的常用场景

两种协议都是传输层协议,为应用层提供信息载体。TCP协议是基于连接的可靠协议,有流量控制和差错控制,也正因为有可靠性的保证和控制手段,所以传输效率比UDP低;UDP协议是基于无连接的不可靠协议,没有控制手段,仅仅是将数据发送给对方,因此效率比TCP要高。

基于上述特性,不难得到结论,TCP协议适用于对效率要求相对低,但对准确性要求相对高的场景下,或者是有一种连接概念的场景下;而UDP协议适用于对效率要求相对高,对准确性要求相对低的场景。

好了,现在回到你的问题,举几个应用的例子。TCP一般用于文件传输(FTP HTTP 对数据准确性要求高,速度可以相对慢),发送或接收邮件(POP IMAP SMTP 对数据准确性要求高,非紧急应用),远程登录(TELNET SSH 对数据准确性有一定要求,有连接的概念)等等;UDP一般用于即时通信(QQ聊天 对数据准确性和丢包要求比较低,但速度必须快),在线视频(RTSP 速度一定要快,保证视频连续,但是偶尔花了一个图像帧,人们还是能接受的),网络语音电话(VoIP 语音数据包一般比较小,需要高速发送,偶尔断音或串音也没有问题)等等。

作为知识的扩展,可以再说一些其他应用。比如,TCP可以用于网络数据库,分布式高精度计算系统的数据传输;UDP可以用于服务系统内部之间的数据传输,因为数据可能比较多,内部系统局域网内的丢包错包率又很低,即便丢包,顶多是操作无效,这种情况下,UDP经常被使用。
时间: 2024-08-02 14:50:59

TCP和UDP的常用场景的相关文章

理解TCP和UDP协议

目录 TCP 协议 UDP协议 TCP和UDP的区别 TCP和UDP的使用场景 一 TCP协议 1.TCP的头部格式 理解TCP协议,首要的就是TCP协议的头部格式 ·        Source Port和Destination Port:分别占用16位,表示源端口号和目的端口号:用于区别主机中的不同进程,而IP地址是用来区分不同的主机的,源端口号和目的端口号配合上IP首部中的源IP地址和目的IP地址就能唯一的确定一个TCP连接: ·        Sequence Number:用来标识从T

【转】HTTP学习---TCP和UDP协议的区别与应用

[原文]https://www.toutiao.com/i6592813624689951239/ 概述 ⊙TCP/IP是个协议组,可分为三个层次:网络层.传输层和应用层. 在网络层有IP协议.ICMP协议.ARP协议.RARP协议和BOOTP协议. 在传输层中有TCP协议与UDP协议. 在应用层有FTP.HTTP.TELNET.SMTP.DNS等协议. ⊙TCP(Transmission Control Protocol),又叫传输控制协议:TCP 是面向连接的,并且是一种可靠的协议,在基于

服务器租用---常用网络协议:TCP和UDP的区别简析

服务器租用---常用网络协议:TCP和UDP的区别简析及TCP与UDP区别 TCP---传输控制协议,提供的是面向连接.可靠的字节流服务.当客户和服务器彼此交换数据前,必须先在双方之间建立 一个TCP连接,之后才能传输数据.TCP提供超时重发,丢弃重复数据,检验数据,流量控制等功能,保证数据能从一 端传到另一端. UDP---用户数据报协议,是一个简单的面向数据报的运输层协议.UDP不提供可靠性,它只是把应用程序传给IP层的 数据报发送出去,但是并不能保证它们能到达目的地.由于UDP在传输数据报

java:网络编程(InetAddress,InetSocketAddress,URL,TCP(Socket与SeverSocket),TCP与UDP的区别)

InerAddress: /**IP地址:在网络上唯一标示一台计算机 * 端口号:标示计算机上不同的应用程序 * java.net.InetAddress类:此类表示互联网协议 (IP) 地址. * 常用方法: * getByName(String host) 在给定主机名的情况下确定主机的 IP 地址. * getHostName() 获取此 IP地址的主机名. * getHostAddress()返回 IP 地址字符串(以文本表现形式). * getLocalHost() 返回本地主机. *

Internet 套接字(TCP、UDP) 基础概念

个人博客首页(点击查看详情)-- https://blog.51cto.com/11495268个人微信公众号(点击查看详情)-- https://blog.51cto.com/11495268/2401194???? 1.简介 ????这个世界上有很多种套接字(socket)-- 如 DARPA Internet 地址(Internet 套接字).本地节点的路径名(Unix套接字).CCITT X.25地址(X.25 套接字)等:Internet 套接字 是最具代表性的,也是最经典最常用的(我

基于socket的TCP和UDP编程

一.概述 TCP(传输控制协议)和UDP(用户数据报协议是网络体系结构TCP/IP模型中传输层一层中的两个不同的通信协议. TCP:传输控制协议,一种面向连接的协议,给用户进程提供可靠的全双工的字节流,TCP套接口是字节流套接口(STream socket)的一种. UDP:用户数据报协议.UDP是一种无连接协议.UDP套接口是数据报套接口(datagram Socket)的一种. 二.TCP和UDP介绍 1)基本TCP客户—服务器服务器 服务器是指在网络环境下运行相应的应用软件,为网上用户提供

TCP 和 UDP

有两种类型的互联网协议(IP, Internet Protocol),一种是TCP(Transmission Control Protocol, 传输控制协议),一种是UDP(User Datagram Protocol, 用户数据传输协议). TCP是面向连接的,一旦建立连接,数据可以双向发送: UDP是一种更简单,无连接的互联网协议,多个消息使用UDP作为数据包以块的形式发送.   TCP UDP 全名称 传输控制协议 用户数据报协议(或通用数据报协议) 连接 面向连接的协议 无连接协议 适

TCP、UDP、IP 协议分析

本文转载自:http://blog.chinaunix.net/uid-26833883-id-3627644.html草根老师博客 互连网早期的时候,主机间的互连使用的是NCP协议.这种协议本身有很多缺陷,如:不能互连不同的主机,不能互连不同的操作系统,没有纠错功能.为了改善这种缺点,大牛弄出了TCP/IP协议.现在几乎所有的操作系统都实现了TCP/IP协议栈. TCP/IP协议栈主要分为四层:应用层.传输层.网络层.数据链路层,每层都有相应的协议,如下图 所谓的协议就是双方进行数据传输的一种

9 Differences between TCP and UDP Protocol-Java Network Interview Question-译文

原文:http://www.javacodegeeks.com/2014/07/9-differences-between-tcp-and-udp-protocol-java-network-interview-question.html?utm_source=tuicool TCP和UDP两种传输层的协议,它被广泛地用于在互联网发送一个主机之间的数据到另一个.很好的了解TCP和UDP的工作方式是任何程序员必不可少的.这就是为什么TCP和UDP之间的差异是一个流行的Java编程面试问题.我已经看