zoukankan      html  css  js  c++  java
  • TCP & UDP 的区别

    一、概念

    ① TCP(Transmission Control Protocol 传输控制协议)是一种面向连接的、可靠的、基于字节流的传输层通信协议。

    “面向连接”就是在正式通信前必须要与对方建立起连接。比如你给别人打电话,必须等线路接通了、对方拿起话筒才能相互通话。

    TCP协议能为应用程序提供可靠的通信连接,使一台计算机发出的字节流无差错地发往网络上的其他计算机,对可靠性要求高的数据通信系统往往使用TCP协议传输数据。

    建立连接:三次握手    1.客户端发送建立连接请求,并进入SYN_SEND状态,等待服务器确认

                              2.服务端确认连接请求,向客户端发送允许连接应答,此时服务器进入SYN_RECV状态

               3.客户端确认已经连接,向服务器发送确认,客户端和服务器进入通信状态,完成三次握手

    断开连接:四次握手   1.客户端发送请求停止TCP连接请求

                  2.服务端收到请求后将这一个socket关闭

                3.服务端发送反向请求客户端关闭socket连接

                  4.客户端确认服务端请求,关闭socket连接

    ② UDP (User Datagram Protocol 用户数据报协议) 是一种面向非连接的、一种无连接的传输层协议,提供面向事务的简单不可靠信息传送服务。

    “面向非连接”就是在正式通信前不必与对方先建立连接,不管对方状态就直接发送。这与现在风行的手机短信非常相似:你在发短信的时候,只需要输入对方手机号就OK了。

    UDP适用于一次只传送少量数据、对可靠性要求不高的应用环境

    UDP协议是面向非连接的协议,没有建立连接的过程。正因为UDP协议没有连接的过程,所以它的通信效果高;但也正因为如此,它的可靠性不如TCP协议高。

    二、区别

    1.TCP是面向连接的,UDP是面向非连接的

    2.TCP的传输性是可靠地,UDP的传输性不可靠

    3.TCP的传输速度缓慢,UDP的传输速度较快

    4.TCP主要应用于大量数据的传输,UDP适用于少量数据的传输(例如,QQ消息,短信)

  • 相关阅读:
    MSF 内网渗透笔记
    weblogic 安装部署详解
    获取指定ip段的所有存活主机的主机名和操作系统
    中间件安全加固之Jboss
    window下JBoss7 安装部署
    Window日志分析
    Apache安全配置基线指导
    dedeCMS解码
    日志分析技巧
    利用开源软件打造一个团队贡献平台
  • 原文地址:https://www.cnblogs.com/caohexin-Blog/p/4982292.html
Copyright © 2011-2022 走看看