zoukankan      html  css  js  c++  java
  • 什么是tcp, udp 以及它们的区别

    什么是TCP
    TCP(Transmission Control Protocol传输控制协议)是一种面向连接的,可靠的,基于字节流的传输通信协议。
    1、tcp(Transmission Control Protocol传输控制协议)
    2、传输层协议
    3、原因:应用层需要可靠的连接,但是IP层没有这样的流机制
    4、面向连接,即在客户端和服务器之间发送数据之间,必须先建立连接
    
    5、位于应用层和IP层之间
    6、连接需要建立三次握手、四次挥手断开连接
    
    7、传输数据时可靠的
    
    TCP连接建立——使用三次握手建立连接
    1、客户端发送请求【寻址请求】
    2、服务器端收到报文请求,回应客户端【确认请求】
    3、客户端收到服务端的报文进行回应。【连接请求】
    三次握手完成,TCP客户端和服务端成功地建立连接,可以传输数据。
    
    TCP终止一个连接——四次握手
    1、数据验证请求码
    2、传输结束标记
    3、确认结束标记
    4、连接断开标记
    
    UDP(User Datagram Protocol用户数据报协议)
    1、UDP(User Datagram Protocol用户数据报协议)
    2、传输层协议
    3、无连接的数据报协议
    4、不能提供数据报分组,组装和不能对数据报进行排序
    5、主要用于不要求分组顺序到达的传输中,分组传输顺序的检查和排序有应用层完成。
    6、提供面向事务的简单不可靠传递服务。
    7、UDP协议使用端口分别运行在同一台设备上的多个应用程序
    8、功能:为了在给定的主句上能识别多个目的的地址,同时允许多个应用程序在同一台主句上工作并能够独立地进行数据包的发送和接受,设计用户数据报协议UDP
    
    TCP、UDP两者的区别
    1、TCP是面向连接的(在客户端和服务器之间传输数据之前要先建立连接),UDP是无连接的(发送数据之前不需要先建立连接)
    2、TCP提供可靠的服务(通过TCP传输的数据。无差错,不丢失,不重复,且按序到达);UDP提供面向事务的简单的不可靠的传输。
    3、UDP具有较好的实时性,工作效率比TCP高,适用于对高速传输和实时性比较高的通讯或广播通信。随着网速的提高,UDP使用越来越多。
    4、每一条TCP连接只能是点到点的,UDP支持一对一,一对多和多对多的交互通信。
    5、TCP对系统资源要去比较多,UDP对系统资源要求比较少
    6、UDP程序结构更加简单
    7、TCP是流模式,UDP是数据报模式
    
  • 相关阅读:
    【hihocoder 1477】闰秒
    【codeforces 768F】Barrels and boxes
    【codeforces 767E】Change-free
    【codeforces 810A】Straight «A»
    【codeforces 810B】Summer sell-off
    【codeforces 810C】Do you want a date?
    【codeforces 757E】Bash Plays with Functions
    【codeforces 749D】Leaving Auction
    Java数据结构与算法(5)
    使用Xshell远程连接管理Linux实践
  • 原文地址:https://www.cnblogs.com/nyist-xsk/p/12942642.html
Copyright © 2011-2022 走看看