简单的说TCP与UDP的区别是有无连接状态。
TCP是有连接状态的,而UDP没有,所以TCP是一种比较安全的通讯协议,而UDP则比较方便

TCP 127.0.0.1:1026 0.0.0.0:0 LISTENING 
TCP 是传输协议 TCP是主动连接 网页什么的用TCP(貌似)
UDP也是传输协议 UDP迂回连接 QQ就用UDP (貌似)
127.0.0.1 是本地回环地址 
1026 是端口 
LISTENING 是监听

TCP 127.0.0.1:1026 0.0.0.0:0 LISTENING 
全意是 监听 TCP 1026端口 
0.0.0.0 是没有东西 为零 
0 端口就是没有。。。ING

TCP是面向连接的
UDP是面向无连接的

就是这种关系了

TCP(Transmission Control Protocol,传输控制协议)
UDP(User Datagram Protocol,用户数据包协议)
当IP包通过路由将数据传输到目的地时,会根据TCP或UDP包头中的源端口和目的端口信息,请求和获取不同的应用。也就是说,不管TCP还是UDP,都含有网络服务必须的源端口和目的端口信息,以建立和实现网络传输服务。这时,你的疑问就来了:既然都用于传输,为何要搞两个不同的协议呢?这就需要从网络中不同服务的需求来谈起。

在网络中,有些服务,如HTTP、FTP等,对数据的可靠性要求较高,在使用这些服务时,必须保证数据包能够完整无误的送达;而另外一些服务,如DNS、即时聊天工具等,并不需要这么高的可靠性,高效率和实时性才是它们所关心的。根据这两种服务不同的需求,也就诞生了面向连接的TCP协议,以及面向无连接的UDP协议。

这里的连接(Connection)和无连接(Connectionless)是网络传输中常用的术语,它们的关系可以用一个形象地比喻来说明,就是打电话和写信。

打电话时,一个人首先必须拨号(发出连接请求),等待对方响应,接听电话(建立了连接)后,才能够相互传递信息。通话完成后,还需要挂断电话(断开连接),才算完成了整个通话过程。写信则不同,你只需填写好收信人的地址信息,然后将信投入邮局,就算完成了任务。此时,邮局会根据收信人的地址信息,将信件送达指定目的地。

我们可以看到,这两者之间有很大不同。打电话时,通话双方必须建立一个连接,才能够传递信息。连接也保证了信息传递的可靠性,因此,面向连接的协议必然是可靠的。无连接就没有这么多讲究,它不管对方是否有响应,是否有回馈,只管将信息发送出去。就像信件一旦进了邮箱,在它到达目的地之前,你没法追踪这封信的下落;接收者即使收到了信件,也不会通知你信件何时到达。在整个通讯过程中,没有任何保障。因此我们常说,面向无连接的协议也是不可靠的。当然,邮局会尽力将右键送到目的地,99%的情况信件会安全到达,但在少数情况下也有例外。

面向连接的协议比面向无连接的协议在可靠性上有着显著的优势,但建立连接前必须等待接收方响应,传输信息过程中必须确认信息是否传到,断开连接时需要发出响应信号等,无形中加大了面向连接协议的资源开销。具体到TCP和UDP协议来说,除了源端口和目的端口,TCP还包括序号、确认信号、数据偏移、控制标志(通常说的URG、ACK、PSH、RST、SYN、FIN)、窗口、校验和、紧急指针、选项等信息,UDP则只包含长度和校验和信息。UDP数据报比TCP小许多,这意味着更小的负载和更有效的使用带宽。许多即时聊天软件采用UDP协议,与此有莫大的关系。

TCP---传输控制协议,提供的是面向连接、可靠的字节流服务。当客户和服务器彼此交换数据前,必须先在双方之间建立一个TCP连接,之后才能传输数据。TCP提供超时重发,丢弃重复数据,检验数据,流量控制等功能,保证数据能从一端传到另一端。 UDP---用户数据报协议,是一个简单的面向数据报的运输层协议。UDP不提供可靠性,它只是把应用程序传给IP层的数据报发送出去,但是并不能保证它们能到达目的地。由于UDP在传输数据报前不用在客户和服务器之间建立一个连接,且没有超时重发等机制,故而传输速度很快。 用TCP还是UDP,那要看你的程序注重哪一个方面?可靠还是快速?
 
TCP UDP是两个协议,简单的说,TCP连接要对方确认的,而UDP却不需要对方确认收到包,所以TCP连接更加安全,但是一般播放网络流媒体使用UDP协议
 
传输层协议一般有TCP和UDP,TCP为可靠传输,协议本身会保证数据传输的可靠,但为此会付出很多额外的网络开销。UDP为不可靠传输,所以传输效率比较高,本端只负责发送数据,不保证对端能否收到。对于UDP,可靠性可以在应用层实现

TCP\UDP链接的异同的更多相关文章

  1. tcp/udp socket编程异同

    一.TCP与UDP的区别 基于连接与无连接 对系统资源的要求(TCP较多,UDP少) UDP程序结构较简单 流模式与数据报模式 TCP保证数据正确性,UDP可能丢包 TCP保证数据顺序,UDP不保证 ...

  2. 为什么基于TCP UDP服务的一些简单服务端口号都是奇数

    TCP是有NCP(网络控制协议)派生出来的,NCP是单工的,通信需要两个链接,所以会预留奇偶端口号.当TCP/UDP成为传输层协议,每个程序只是用一个端口号,且使用奇端口号.

  3. HTTP,FTP,TCP,UDP及SOCKET

    一.TCP/IP协议简析TCP/IP是个协议组,可分为三个层次:网络层.传输层和应用层:网络层:IP协议.ICMP协议.ARP协议.RARP协议和BOOTP协议传输层:TCP协议与UDP协议应用层:F ...

  4. TCP/UDP端口列表

    http://zh.wikipedia.org/wiki/TCP/UDP%E7%AB%AF%E5%8F%A3%E5%88%97%E8%A1%A8 TCP/UDP端口列表     本条目可通过翻译外语维 ...

  5. 基于tcp/udp的协议

    使用TCP协议的常见端口主要有以下几种: (1) FTP:定义了文件传输协议,使用21端口.常说某某计算机开了FTP服务便是启动了文件传输服务.下载文件,上传主页,都要用到FTP服务. (2) Tel ...

  6. [原]TCP/UDP使用细节备忘

    body { font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI ...

  7. UC编程之网络通信(TCP/UDP)

    网络常识 OSI 7层模型(人机交互) 物理层.数据链路层.网络层.传输层.会话层.表现层.应用层 常见协议: tcp/udp/ip/ftp/http... IP地址--就是计算机在网络中的地址,是一 ...

  8. SOCKET,TCP/UDP,HTTP,FTP

    (一)TCP/UDP,SOCKET,HTTP,FTP简析 TCP/IP是个协议组,可分为三个层次:网络层.传输层和应用层: 网络层:IP协议.ICMP协议.ARP协议.RARP协议和BOOTP协议 传 ...

  9. [网络] SOCKET, TCP/UDP, HTTP, FTP

    (一)TCP/UDP,SOCKET,HTTP,FTP简析 TCP/IP是个协议组,可分为三个层次:网络层.传输层和应用层: 网络层:IP协议.ICMP协议.ARP协议.RARP协议和BOOTP协议 传 ...

随机推荐

  1. 60秒找到最对的size?为服饰电商提供尺寸匹配解决方案的True Fit获1500万美元融资 | 36氪

    60秒找到最对的size?为服饰电商提供尺寸匹配解决方案的True Fit获1500万美元融资 | 36氪 60秒找到最对的size?为服饰电商提供尺寸匹配解决方案的True Fit获1500万美元融 ...

  2. Lost's revenge - HDU 3341 (自动机+DP)

    题目大意:先给你一些子串,然后给你一个母串,母串里面的字母可以任意调换位置,问最多这个母串经过一些位置变动最多能包含多少个子串.   分析:可以比较明显的看出来的DP,先求出来ATGC分别有多少,然后 ...

  3. Git配置和一些常用命令

    Git:常用命令.... git clone <repo> git config –list git diff –staged add后,commit前的撤销:git rm –cached ...

  4. VMware vSphere 服务器虚拟化之二十五 桌面虚拟化之终端服务池

    VMware vSphere 服务器虚拟化之二十五 桌面虚拟化之终端服务池 终端服务池是指由一台或多台微软终端服务器提供服务的桌面源组成的池.终端服务器桌面源可交付多个桌面.它具有以下特征: 1.终端 ...

  5. [Angular 2] Validation

    Define a filed should has validation: export class DemoFormSku { myForm: ControlGroup; sku: Abstract ...

  6. rabbitmq Clustering Guide--官方

    官方文档地址:http://www.rabbitmq.com/documentation.html A RabbitMQ broker is a logical grouping of one or ...

  7. Understanding Extension Class Loading--官方

    http://docs.spring.io/spring-amqp/docs/1.3.6.RELEASE/reference/html/sample-apps.html#d4e1285 http:// ...

  8. 解决XCode 4.x SVN无法连接的问题

    XCode升级到4.X版本后,确实好用了不少.但普通都存在SVN无法连接的问题.XCode4.x Source Control功能迁移到了File - Source Control目录下,也出现了一些 ...

  9. SPOJ 3943 - Nested Dolls 最长不下降子序列LIS(二分写法)

    现在n(<=20000)个俄罗斯套娃,每个都有宽度wi和高度hi(均小于10000),要求w1<w2并且h1<h2的时候才可以合并,问最少能剩几个. [LIS]乍一看跟[这题]类似, ...

  10. android studio上代码编译调试中遇到的一些异常记录

    下面是记录的在平时代码编写或编译时的一些异常,答案有自己摸索出来的,也有参考其他程序猿朋友的,参考文章过多,就不一一贴出来了. ① E/JavaBinder: !!! FAILED BINDER TR ...