【计算机网络】传输层协议TCP与UDP

传输层

传输层位于OSI七层网络模型的第四层,主要负责端到端通信,可靠性保障(TCP),流量控制(TCP),拥塞控制(TCP),数据分段与分组,多路复用与解复用等,通过TCP与UDP协议实现。

端到端通信

传输层通过端口号(Port)来区分不同进程。端口号为16位数字(0-65535),用于标识主机上具体的应用程序,比如HTTP服务通常使用80端口,HTTPS通常使用443端口。

可靠性保障(TCP)

传输层可以提供可靠的数据传输服务,确保数据能够完整、有序地到达接收端。这主要通过TCP协议实现,它使用确认应答(ACK) 、超时重传 、滑动窗口等机制来保证数据的可靠性。

流量控制(TCP)

传输层可以调节发送端和接收端之间的数据流量,避免发送端发送过多数据导致接收端无法处理。TCP通过滑动窗口机制实现流量控制。

拥塞控制(TCP)

传输层可以感知网络的拥塞情况,并根据网络状态动态调整发送速率,避免网络拥塞加剧。TCP协议提供了拥塞控制机制,如慢启动 、拥塞避免 、快速重传等。

数据分段与重组

传输层可以将应用层的大型数据分割成较小的数据段(TCP)或数据报(UDP),在网络层传输后再进行重组。

多路复用与解复用

传输层允许多个应用进程同时使用网络资源。它通过端口号将不同应用的数据复用到同一个传输连接中,并在接收端将数据正确地分发到对应的应用进程。

TCP

TCP(传输控制协议)是一种面向连接的 、可靠的 、基于字节流的传输层协议,主要用于需要高可靠性和完整性的应用场景。

TCP的特点

**面向连接:**发送数据前后,分别通过"三次握手"和"四次挥手"进行建立连接和关闭连接

可靠性:

**确认和重传:**接收方收到数据后会发送ACK给发送方,若发送方未收到ACK则会重传数据

流量控制: 接收方通过滑动窗口(循环数组)机制告诉发送方可接受数据大小

拥塞控制: 发送方通过慢启动 、拥塞避免 、快速重传和恢复 等机制动态调整发送速率

**有序性:**接收方根据序列号重新组装数据,保证数据顺序正确

**超时重传:**发送端若未在超时时间内收到ACK,就会重传数据

头部开销大: 报文头部包含++确认号(ACK)++ 、++序列号++ 、++窗口大小++等

**全双工通信:**允许通信双方同时进行数据的发送和接收

TCP的三次握手
TCP的四次挥手
TCP应用场景

文件传输:FTP

网页浏览:HTTP/HTTPS

电子邮件:SMTP/POP3

数据库通信

UDP

UDP是一种无连接的、不可靠的传输层协议,主要用于对速度和实时性要求较高的场景。

UDP的特点

**无连接性:**无连接,数据包互相独立

**简单和轻量:**头部开销小,适合网络通信受限情景

**高性能:**无复杂机制,延迟低,适用于实时性高应用:视频通话,网络游戏

不可靠性:

丢包风险

不保证数据顺序

无确认和重传

无流量控制和拥塞控制

相关推荐
YumiProxy2 小时前
流媒体区域内容访问:代理IP的技术原理、检测机制与稳定性优化
服务器·网络·网络协议·tcp/ip·ip
yeflx4 小时前
Ubuntu22.04下通过Wireshark抓取相机IP
tcp/ip·测试工具·wireshark
木子n15 小时前
车载以太网与SOME/IP服务化通信实战-05.UDP 还是 TCP:连接管理与超时账、队头阻塞的 200 ms 罚单与 198 节点重连风暴
单片机·tcp/ip·udp·车载以太网·some/ip
一条泥憨鱼5 小时前
【计算机网络】| 详解链路层:MAC 地址与VLAN
网络·学习·计算机网络
Novproxy_Z6 小时前
爬虫任务被拦截:区分 IP 封禁、设备封禁、账号封禁
爬虫·网络协议·tcp/ip
隐擎fox7 小时前
解密 BGP Anycast 边缘路由与跨国链路质量检测:多租户网络出口的低时延与防丢包架构实战
网络·python·网络协议·tcp/ip·网络安全·架构·tcpdump
闲云自留地7 小时前
从零造一台 Ubuntu 24.04:虚拟机、装系统、配 IP 到 root 远程登录一篇通
数据库·tcp/ip·ubuntu
是真的小外套21 小时前
第9章:网络层安全协议 IPSec 学习笔记
网络·网络协议·tcp/ip
中屹指纹浏览器svip1 天前
静态 IP和动态 IP,搭配指纹浏览器该怎么选?
网络·网络协议·tcp/ip·中屹指纹浏览器
ITxiaobing20231 天前
选型不踩坑:IPinfo 之外,IP 地址定位服务还有哪些可选项
网络·网络协议·tcp/ip