这里写自定义目录标题
这个东西它不是那么简单的东西,严格来说有点复杂,可不是吃饭喝水那么简单。要有耐心。
这里只是TCP和UDP,要是想知道参数全过程,那就要熟悉掌握整个网络知识(你听过的那7大层-应用层…)
TCP和UDP只是运输层的东西。tcp是tcp/ip协议中的一个。
TCP 协议概述
TCP:
传输控制协议,是一种面向连接的可靠传输协议
。TCP为应用程序提供一种面向连接的、可靠的服务。(面向连接:传输前进行沟通和协商,确保互相可以/愿意发送数据)
- 我对这个东西的理解:一个拼多多购物流程,我买一个东西下单以后,
商家要打电话问一下我,我是不是要买这个东西,我说是,那他就可以准备发货了
。 - TCP不代表发货运输这一块,
它只是代表了我们打电话确认的一个操作
,所以是一个协议,商家必须打过我的电话,我必须同意后,才能开始送货。 - TCP:传输控制协议,是一种面向连接的可靠传输协议。
我的电脑打电话给你的电脑,你的电脑同意后我们才能远程连接,至于怎么连接、要传什么东西不归TCP管
。
TCP三次握手能够保证面向连接(
保证电话打得通而且对方同意
),面向连接是可靠的,并不能保证TCP传输是可靠的(TCP只保证电话打通了,可以送货,送不送得到、货是不是坏的,不归TCP管
)。
三次握手
是TCP传输之前的一个过程(就是TCP打电话,实际TCP要做的事
),那么如何保证TCP是可靠的:
- 面向连接的传输(
你下单了我们店的商品吗
) - 最大报文段长度(
一共是10件对吧
) - 传输确认机制((
打包后,确认是10件,不多发也不少发
) - 首部和数据的校验和(
是不是这10件,有没有拿成了不是你下单的商品
) - 重传输(
电话怎么没信号了,我下次再打一次过来
) - 重排序(
10件商品发的时候快递小哥打乱了,但是最后我们会排好顺序给你的
) - 流量控制(
对不起,10件太多了,我们不卖
)