计算机网络(7): 传输层TCP和UDP以及TCP的工作方式
2024-08-29 22:31:47
UDP:无连接;不保证可靠;面向报文的;
TCP:面向连接;提供可靠交付;面向字节流(把应用层的数据分包,每个包装一些字节;不关心应用层给的包多大,而是根据网络状况,窗口大小决定)
TCP报文:
序号:原数据中的第几个字节
确认号(ack):到第几个字节都收到
窗口:我的窗口(接受窗口)有多大
ACK:1用于一般的数据包,0用于握手确认
选项:MSS(最大数据报文)+ 首部=数据包,MSS可以尽量大,但是在IP层不被分片
滑动窗口——以字节为单位
超时重传时间的选择
TCP流量控制
零窗口探测报文:探测对方的窗口是0之后是否有所恢复
TCP的传输效率:Nagle算法,糊涂窗口综合症
TCP拥塞控制
用来控制整个网络的负载均衡,发送窗口的上限 = min(rwnd,cwnd)rwnd是对方的接受窗口,cwnd是用腮控制得到的
TCP 三次握手四次分手:
由图:握手的第一轮不能携带数据,并且一定要消耗一个序号(发送方和接收方都要消耗1个序号)
注:图片来源:《计算机网络第7版》,谢希仁
本人对图片不保留任何版权!
最新文章
- 基于Microsoft Azure、ASP.NET Core和Docker的博客系统
- Tuning 简介
- Java——各种日期的获取(来自别人分享)
- 第二百一十五、六天 how can I 坚持
- 【转】MSSQL获取指定表的列名信息,描述,数据类型,长度
- [C# 网络编程系列]专题十:实现简单的邮件收发器
- 条形码/二维码之开源利器ZXing图文介绍(转)
- MariaDB10自动化安装部署
- mysql新手入门随笔2
- 排序算法以及其java实现
- mysql 创建用户、设置权限
- (PMP)解题技巧和典型题目分析(0903-2班)
- laravel 关联查询
- shell编程学习笔记(七):Shell中将指定内容输出到文件中
- POJ 1743 Musical Theme(后缀数组 + 二分)题解
- ccf-20171203 Crontab问题
- 把myeclipse的自动验证和自动构建都关掉
- android AysncTask使用
- luoguP4709 信息传递 置换 + 多项式exp
- 319. Bulb Switcher