【软考网络管理员】2023年软考网管初级常见知识考点(11)-TCP和UDP详解

news/2024/5/18 14:41:15 标签: tcp/ip, udp, 网络

涉及知识点

传输控制协议TCP是什么,三次握手的概念理解,用户数据报协议UDP是什么,软考网络管理员常考知识点,软考网络管理员网络安全,网络管理员考点汇总。
原创于:CSDN博主-《拄杖盲学轻声码》,更多考点汇总可以去他主页查看


文章目录

  • 涉及知识点
  • 前言
  • 一、传输控制协议TCP
    • 1.TCP主要特点
    • 2.TCP报文格式
    • 3.TCP三次握手
    • 4.TCP流量控制
    • 5.TCP拥塞控制
  • 二、用户数据报协议UDP


前言

更多考试总结可关注CSDN博主-《拄杖盲学轻声码》
TCP和UDP是什么,你又了解多少,今天来和大家做个内容详细介绍的分享哈,希望通过这篇文章大家对TCP和UDP有个全新的概念和理解。

一、传输控制协议TCP

传输控制协议TCP是为了在不可靠的互联网络上提供可靠的端到端字节流而专门设计的一个传输协议。

1.TCP主要特点

(1)面向连接的传输层协议。
(2)每一条TCP连接只能有两个端点:只能是点对点
(3)TCP提供可靠交付的服务:通过TCP连接传送的数据无差错、不丢失、不重复,并且按顺序到达。
(4)TCP提供全双工通信:TCP允许通信双方的应用进程在任何时刻都能发送数据。在TCP连接的两端都有发送缓存和接收缓存,用来临时存放通信的数据。
(5)面向字节流:TCP把应用进程交下来的数据彳成是一连串无结构的字节流。TCP并不关心应用进程一次把多长的报文发送到TCP的缓存中,而是根据对端给出的窗口值和当前网络拥塞的程度来决定一个报文段应包含多少个#节。

2.TCP报文格式

在这里插入图片描述

(1)源端口:该字段长度为2字节。TCP报文发送方使用的端口号。
(2)目的端口:该字段长度为2字节。TCP报文接收方使用的端口号。
(3)序列号(SequenceNumber,SEQ):该字段长度为4字节。序列号是本报文段的编号。序列号的初始值称为初始序列号,由系统随机产生。
(4)确认号(AcknowledgmentNumber,ACKNUM):该字段长度为4字节。确认号是目的端期望收到的下一个报文段的序列号。
(5)报头长度:该字段长度为4位。标识了TCP报头的结束和数据的开始。没有任何选项字段的TCP报头长度为20字节,最多可以有60字节。
(6)预留:该字段长度为6位。预留位默认为0。
(7)URG:该字段长度为1位。紧急标志,URG为1时,表明紧急指针字段有效
(8)ACK:该字段长度为1位。确认标志,ACK为1时,表明确认号字段有效。
(9)PSH:该字段长度为1位。推送标志,接收方收到PSH置1的报文段,会尽快交给应用进程,而不再等到整个缓存都填满后再交给应用进程
(10)RST:该字段长度为1位。复位连接标志,RST为1时,表明TCP连接出现严重差错,必须释放连接,并重建连接。
(11)SYN:该字段长度为1位。同步标志,SYN为1时,表示一个连接请求或连接接受。
(12)FIN:该字段长度为1位。释放连接标志,FIN为1时,表明发送端的数据发送完毕,要求释放连接。
(13)窗口:该字段长度为2字节。用来进行流量控制,单位为字节,这个值是本端期望一次接收的字节数,并通知对方。
(14)校验和:该字段长度为2字节。对TCP报头和TCP数据部分进行校验和计算,并由目标端进行验证。
(15)紧急指针:该字段长度为2字节。它是一个偏移量,与序号字段值相加表示紧急数据最后一个字节的序号。
(16)选项:可包括窗口扩大因子、时间戳等选项,长度可变。
(17)数据部分:应用层数据,长度可变。

3.TCP三次握手

建立连接的过程如图所示。
在这里插入图片描述

第一步,客户端发出连接请求。
TCP数据为:SEQ=X,SYN=loSEQ=X表示A发送序列号为X的报文段;SYN=1表示客户端请求建立连接。
第二步,服务器确认请求,同意建立连接。
服务器收到连接请求,发送TCP数据为:SEQ=Y,ACKNUM=X+1,ACK=1,SYN=1。SEQ=Y表示服务器发送序列号为Y的报文段;ACKNUM=X+1,ACK=1表示B确认已经正确收到客户端发送的序列号为X的报文段;SYN=1表示服务器同意建立连接。
第三步,客户端确认,连接建立。
TCP使用三次握手来建立连接。例如,有客户端主机和B主机,客户端向服务器发出连接请求,建客户端发出连接请求SEQ=X,SYN=1客户端确认,连接建立SEQ=X+1,ACKNUM=Y+1,ACK=1TCP数据为:SEQ=X+1,ACKNUM=Y+1,ACK=1„SEQ=X+1表示A发送序列号为X+1的报文段;ACKNUM=Y+1,ACK=1表示A确认已经正确收到服务器发送的序列号为Y的报文段。至此客户端完成连接,最后一步服务器收到确认信息,也完成连接,客户端与服务器可以通信来传输数据。
而TCP连接释放过程比较复杂,采用的是四次挥手机制。

4.TCP流量控制

如果发送方把数据发送得过快,接收方可能会来不及接收,这就会造成数据的丢失。所谓流量控制就是让发送方的发送速率不要太快,要让接收方来得及接收。流量控制指点对点通信量的控制,是端到端的问题。流量控制所要做的就是抑制发送端发送数据的速率,以便使接收端来得及接收。利用可变大小的滑动窗口机制可以很方便地在TCP连接上实现对发送方的流量控制。

5.TCP拥塞控制

拥塞指的是对资源的需求超过了可用的资源。St网络中许多资源同时供应不足,网络的性能就要明显变坏,整个网络的吞吐量随着负荷的增大而下降。网络拥塞往往是由许多因素引起的。TCP几种拥塞控制方法包括:慢开始、拥塞避免、快重传和快恢复。

二、用户数据报协议UDP

UDP是一种简号的畐向数据报的传输协议,实现的是不可孕、无连接的数据报服务,通常用于不要求可靠传输的场合,可以提高传输效率,减少额外开销。使用UDP传输时,应用进程的每次输出均生成一个UDP数据报,并将其封装在一个IP数据报中发送。UDP没有拥塞控制,所以网络出现的拥塞不会让源主机的发送速率降低。这对于某些实时应用是很重要的。很多实时的应用(例如IP电话、实时视频会议)要求源主机以恒定的速率发送数据,并且允许在网络拥塞情况下丢失一些数据,但却不允许数据有太大的时延,UDP正好适合这种要求。

#涨薪支持区
期待大家能通过这篇文章学到更多,而且薪资一年更比一年猛!
喜欢博主的话可以上榜一探究竟,博主专设涨薪皇榜给大家查阅,喜欢的可以点击此处查看哟。
在这里插入图片描述


#总结
更多备考资料大家可以关注csdn博主-《拄杖盲学轻声码》

以上就是今天要讲的内容,本文主要介绍了备考软考网络管理员的常见知识点(11)TCP和UDP的详解,也期待大家逢考必过哈,2023年一起加油!!!


http://www.niftyadmin.cn/n/467935.html

相关文章

央企数字化转型的案例、难题与剖析

转型价值目标不清晰、价值效益不易显现 问题表现 国有企业是我国经济发展核心竞争力的体现,肩负着强国建设的重大使命,数字化转型价值效益不仅体现在生产运营优化上,更体现在产品服务创新和新赛道布局上。目前绝大多数国有企业主要聚焦在通…

tinykv project4总结

主要目标 实现mvcc和2pc, Percolator partA 将存储分为三个独立的部分,lock(管理锁记录) default(存储数据),write(提交的记录),提高并行性 对于lock存储,只要存储一份(因为一个行同时只能有…

Java反射机制以及应用

Java反射机制以及应用 1、Java反射 在运行状态中,对于任意一个类,都能够获取到这个类的所有属性和方法,对于任意一个对象,都能够调用它的任意一个方法和属性(包括私有的方法和属性),这种动态获取的信息以及动态调用对…

Learning to cluster in order to transfer across domains and tasks (ICLR 2018)

Learning to cluster in order to transfer across domains and tasks (ICLR 2018) 摘要 这篇论文提出一个进行跨域/任务的迁移学除了习任务,并将其作为一个学习聚类的问题。除了特征,我们还可以迁移相似度信息,并且这是足以学习一个相似度…

Python基础三

目录 一、Python数据类型--字符串 1.字符串的下标 2.访问字符串中的值 3.字符串更新 4.字符串内的转义字符 5. 字符串运算符 6.字符串格式化 7.三引号引出的字符串 8.f-string 9.Unicode 方式存储字符串 二、Python内置函数--字符串相关 一、Python数据类型--字符串…

常见的前端性能优化手段和优化方式以及其优化效果

1. 图片懒加载:指在页面滚动到图片位置时,才开始加载图片;而在未滚动到图片位置时,先显示占位图或者不显示图片。这样可以避免在页面初次加载时一次性加载全部图片的性能问题。 2. 路由懒加载:指将 SPA(单…

Java 解决重复提交问题和表单唯一标识的 Redis 缓存实现

概述: 在开发 Web 应用程序时,重复提交和表单唯一标识是常见的问题。重复提交可能导致数据重复插入或重复操作,而表单唯一标识则用于确保每个表单提交都是唯一的。本文将介绍如何使用 Java 来解决这些问题,并结合 Redis 缓存提供…

Spring入门【一】

Spring 一、spring的概述 1. spring 的 开源的轻量级框架 2. spring的两大核心:IOC ,AOP二、spring的EJB的区别 1. EJB可以说像是一个Web Service,但也不完全是,比如EJB将编写好的业务组件放置在EJB容器上,然后提供…