计算机网络【第五章-传输层】

目录

一、传输层概述

传输层的寻址与端口

二、TCP协议

1、TCP数据报格式

2、TCP连接管理

1、连接建立(三次握手)

2、TCP连接释放(四次挥手)

3、TCP流量控制(局部性)

4、TCP拥塞控制(全局性)

拥塞控制的四种算法

三、UDP协议

UDP数据报格式


一、传输层概述

传输层的寻址与端口

端口:主机中的应用进程的唯一标识(端口号)

端口号:只有本地意义,不同计算机的相同端口没有联系;长度为16字节

套接字:主机IP地址+端口号,唯一标识网络中的一个主机的一个进程

二、TCP协议

1、TCP数据报格式

①序号:TCP将文件拆为字节流,每个字节一个标号,序号表示本报文段第一个字节的序号

②确认号:期望收到对方下一个报文段的第一个字节的序号

③数据偏移:表示首部长度,以4字节为单位

④紧急位URG=1时,表明报文段有紧急数据,有高优先级,不用排队

⑤确认位ACK=1时,确认号有效

⑥(不考)推送位PSH=1时,接收方优先交付该进程

⑦(不考)复位RST=1时,表明连接出错,须重新建立链接

⑧同步位SYN=1时,表明这是一个连接请求/连接接受报文

⑨终止位FIN=1时,表明此报文段发送方数据已发完,要求释放连接

⑩窗口:发送本报文段的一方的接收窗口,即现在允许对方发送的数据量

⑪紧急指针:URG=1时有意义,指出本报文段中紧急数据的字节数

2、TCP连接管理

1、连接建立(三次握手)

①客户端发送请求

客户端向服务器发送一个同步序列号(SYN)包,发起连接

②服务器回应并准备

服务器收到后,同时发送确认(ACK)和自己的同步(SYN)包作为回应

③客户端最终确认

客户端再次发送确认(ACK),双方成功建立可靠连接

💡SYN洪泛攻击

黑客伪造大量虚假IP,向服务器多次发送第一次握手的SYN,服务器会为每一个请求分配资源并回复第二次握手的SYN-ACK,然后等待永远不会到来的第三次握手的ACK

这些半开的连接会耗尽服务器的连接队列资源,导致无法响应合法用户的连接请求,造成服务拒绝

2、TCP连接释放(四次挥手)

① 客户端主动关闭

主动关闭的一方(通常是客户端)发送终止(FIN)包

② 服务器确认收到

服务器收到FIN后,发送确认(ACK)包,表明已收到关闭请求

③ 服务器被动关闭

服务器处理完剩余数据后,发送终止(FIN)包,表示准备关闭

④ 客户端最终确认

客户端收到服务器的FIN后,发送最终确认(ACK),服务器收到后,连接正式关闭

3、TCP流量控制(局部性)

1.TCP利用++滑动窗口++实现流量控制

2.接收方根据自己接收缓存大小,动态调整发送方的发送窗口大小(接收方用确认报文段将接收窗口大小通知给发送方,发送方的发送窗口取接收窗口和拥塞窗口的最小值)

3.(拥塞窗口由发送方根据所处网络情况设置)

4、TCP拥塞控制(全局性)

拥塞控制的四种算法

①慢开始和拥塞避免

②快重传和快恢复

三、UDP协议

UDP数据报格式

相关推荐
米高梅狮子1 天前
03.网络类服务实践
linux·运维·服务器·网络·kubernetes·centos·openstack
June`1 天前
网络编程时内核究竟做了什么???
linux·服务器·网络
原来是猿1 天前
腾讯云服务器端口开放完全指南
服务器·网络·腾讯云
你的保护色1 天前
【无标题】
java·服务器·网络
楼兰公子1 天前
RK3588 + Linux7.0.3 网络工程调试错误速查手册
linux·网络·3588
IpdataCloud1 天前
稳定的企业级IP数据接口怎么选?可用性指标+离线库高可用方案
运维·网络·tcp/ip
HMS工业网络1 天前
如何解决使用TwinCAT时EtherCAT网络出现“Sync Manager Watchdog”报错
网络·网络协议·网络安全
逸巽散人2 天前
【无标题】
网络
kaoa0002 天前
Linux入门攻坚——77、虚拟化技术基础原理-2
linux·服务器·网络
沪漂阿龙2 天前
面试题详解:大模型设计沙箱全攻略——LLM Sandbox、Agent 工具执行、代码沙箱、安全隔离、权限控制与工程落地
网络·数据库·人工智能·安全