【软考】传输层协议TCP与UDP

目录

          • [1. TCP](#1. TCP)
            • [1.1 说明](#1.1 说明)
            • [1.2 三次握手](#1.2 三次握手)
          • [2. UDP](#2. UDP)
          • [3. 例题](#3. 例题)
            • [3.1 例题1](#3.1 例题1)
1. TCP
1.1 说明
  • 1.TCP(Transmission Control Protocol,传输控制协议)是整个 TCP/IP 协议族中最重要的协议之一。
  • 2.它在IP提供的不可靠数据服务的基础上为应用程序提供了一个可靠的、面向连接的、全双工的数据传输服务。
  • 3.最主要和最重要的是TCP采用了重发(Retransmission)技术。
  • 4.在 TCP 传输过程中,发送方启动一个定时器,然后将数据包发出,当接收方收到了这个信息时就给发送方一个确认(Acknowledgement)信息。
  • 5.如果发送方在定时器到点之前没有收到这个确认信息,就重新发送这个数据包。
  • 6.利用 TCP 在源主机和目的主机之间建立和关闭连接操作时,均需要通过三次握手来确认建立和关闭是否成功。
  • 7.三次握手方式如图所示,它通过"序号/确认号"使得系统正常工作,从而使它们的序号达成同步。
1.2 三次握手
  • 1.源主机发送一个 SYN(同步)标志位为1的 TCP 数据包,表示想与目标主机进行通信,并发送一个同步序列号(如 SEQ=200)进行同步。
  • 2.目标主机同意进行通信,则响应一个确认(ACK 位置 1),并以下一个序列号为参考进行确认(如 201)。
  • 3.源主机以确认来响应目标主机的 TCP 包,这个确认中包括它想要接收的下一个序列号(该帧可以含有发送的数据)。至此连接建立完成。
  • 4.同样,关闭连接也进行三次握手。
2. UDP
  • 1.用户数据报协议(User Datagram Protocol,UDP)是一种不可靠的、无连接的协议,可以保证应用程序进程间的通信。
  • 2.与同样处在传输层的面向连接的TCP 相比,UDP是一种无连接的协议,它的错误检测功能要弱得多。
  • 3.可以这样说,TCP有助于提供可靠性;而 UDP有助于提高传输的高速率性。
  • 4.必须支持交互式会话的应用程序(如FTP 等)往往使用 TCP;而自己进行错误检测或不需要错误检测的应用程序(如 DNS、SNMP 等)往往使用 UDP。
  • 5.UDP 协议软件的主要作用是将 UDP 消息展示给应用层,它并不负责重新发送丢失的或出错的数据消息,不对接收到的无序 正 数据报重新排序,不消除重复的IP数据报,不对已收到的数据报进行确认,也不负责建立或终止连接。
  • 6.这些问题是由使用 UDP 进行通信的应用程序负责处理的。
  • 7.TCP 虽然提供了一个可靠的数据传输服务,但它是以牺牲通信量来实现的。
  • 8.也就是说,为了完成同样一个任务,TCP需要更多的时间和通信量。
  • 9.这在网络不可靠的时候通过牺牲一些时间换来达到网络的可靠性是可行的,但在网络十分可靠的情况下,则可以采用 UDP,通信量的浪费就会很小(减小开销)。
3. 例题
3.1 例题1
  • 1.题目

    1.相比于TCP,UDP的优势为()。
    A.可靠传输
    B.开销较小
    C.拥塞控制
    D.流量控制

  • 2.分析

    TCP与UDP区别:
    1、TCP面向连接(如打电话要先拨号建立连接):UDP是无连接的,即发送数据之前不需要建立连接;
    2、TCP提供可靠的服务。也就是说,通过TCP连接传送的数据,无差错,不丢失,不重复,且按序到达;
    UDP尽最大努力交付,即不保证可靠交付;
    3、TCP面向字节流,实际上是TCP把数据看成一连串无结构的字节流:UDP是面向报文的;
    UDP没有押塞控制,因此网络出现拥不会使源主机的发送速率降低(对实时应用很有用,
    如IP电话,实时视频会议等);
    4、每一条TCP连接只能是点到点的;UDP支持一对一,一对多,多对一和多对多的交互通信;
    5、TCP首部开销20字节;UDP的首部开销小,只有8个字节;6、TCP的逻辑通信信道是全双工的可靠信道,
    UDP则是不可靠信道,整体来看UDP开销较小

相关推荐
架构师Wu老七18 小时前
【软考】系统架构设计师-信息系统基础
系统架构·软考·系统架构设计师·信息系统基础
萨达大1 天前
23种设计模式-模板方法(Template Method)设计模式
java·c++·设计模式·软考·模板方法模式·软件设计师·行为型设计模式
架构师Wu老七2 天前
【软考】系统架构设计师-信息安全技术基础
网络·安全·web安全·软考·系统架构设计师
萨达大2 天前
23种设计模式-备忘录(Memento)设计模式
java·c++·设计模式·软考·备忘录模式·软件设计师·行为型设计模式
萨达大2 天前
23种设计模式-访问者(Visitor)设计模式
java·c++·设计模式·软考·访问者模式·软件设计师·行为型设计模式
it技术分享just_free3 天前
软考教材重点内容 信息安全工程师 第 4 章 网络安全体系与网络安全模型
网络安全·信息安全·软考·网络安全模型
萨达大3 天前
23种设计模式-状态(State)设计模式
c++·设计模式·状态模式·软考·软件设计师·行为型设计模式
架构师Wu老七4 天前
【软考】系统架构设计师-数据库设计基础
数据库·软考·系统架构设计师
架构师Wu老七5 天前
【软考】系统架构设计师-计算机系统基础(4):计算机网络
计算机网络·系统架构·软考·系统架构设计师
架构师Wu老七6 天前
【软考】系统架构设计师-计算机系统基础(2):操作系统
系统架构·操作系统·软考·系统架构设计师