TCP和UDP

本文介绍了TCP和UDP这两种传输层协议。UDP是无连接、不可靠传输,常用于对效率要求高但可靠性不重要的场景。TCP则提供有连接、可靠传输,通过确认应答、超时重传、连接管理(三次握手和四次挥手)等机制保证数据的正确传输。TCP还涉及滑动窗口、流量控制和拥塞控制以平衡效率与可靠性。TCP和UDP各有适用场景,如TCP适合文件传输,UDP适合视频传输等。在某些情况下,可以通过在应用层模拟TCP特性实现基于UDP的可靠传输。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


前言

目前我们比较常用的计算机网络的体系结构为TCP/IP五层网络结构从上而下为应用层,传输层,网络层,数据链路层,物理层,今天介绍的TCP和UDP就是传输层的两种协议,传输层来负责端到端的数据传输,传输层是通过操作系统内核实现的.

一、UDP

首先UDP是传输层的一种协议,先说特点:无连接不可靠传输 (不知道数据发送成功与否,和安全没关系),面向数据报(传输的基本单位是数据报,一个数据报由若干个字节组成)

首先我们先了解一下UDP报头的结构:
在这里插入图片描述
可以看到UDP报文结构,第一个为源端口号能表示的范围为(0~65535),
第二个为目的端口号,UDP通过二进制把端口号表示出来了,
接下来是UDP的长度,UDP的长度就是整个UDP数据报的长度,用两个字节表示,能表示的数字范围为0 ~ 65535
字节,所以说数据部分的长度应该是65535-8-20(ip报头大小)约等于65507字节,大概就是64Kb的数据,所以说UDP传输的数据大小比较小,
最后一个也是UDP检验和也是两个字节,验证数据准确无误,不能一定能检验出错误

可以看出UDP是一种简单的协议,由于自身的限制(不可靠,传输文件小)等在实际开发使用中并不常见,很多场景都是需要可靠传输,但是UDP也是有优点的,就是(1)传输速率快,(2)能够支持广播
应用场景:对效率要求高,但是对可靠性要求不高等

二、TCP

首先TCP是传输层的协议,特点是有连接可靠传输面向字节流
先了解TCP的报文结构
在这里插入图片描述
报文结构我们不需要全部了解,掌握重点的就可以了,
32位序号用来确保数据之间的先后顺序,
4位首部长度单位是4个字节,能表示的数据范围是0~15,如果是15,则表示TCP首部长度就是60个字节
TCP的六个标志位,每个标志位是1个bit 后面会介绍重要的几个

TCP的核心机制

2.1确认应答

确认应答机制是确保TCP可靠性的核心机制,
TPC将每一个字节的数据进行了编号,当主机A向主机B发送数据时,主机B回复一个确认收到的响应(ACK),当发送方收到应答数据时,如果应答报文的确认序号为1001,这时候发送方就知道了 1—1000的数据已经顺利抵达,并且接下来发送的数据就是从1001开始,但是可能会发生丢包情况,等待一点时间后,进行重传(超时重传)ÿ

评论 14
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值