电脑知识 | TCP通俗易懂详解 <一>

目录

一、👋🏻前言

二、🚍什么是TCP/TCP协议

三、🧍‍♂为什么TCP可靠

1.🥰关于可靠

2.🤠哪里可靠

3.🎓️图片的三次握手,四次挥手

4.📚️知识点总结

四、📰TCP每次传的信息

1.🐘信息大小限制

2.报文和字节流


一、👋🏻前言

大家好,我是菌菌巧乐兹~这篇文章是从简单到深入的详细讲解TCP

二、🚍什么是TCP/TCP协议

建议先别看这段

传输控制协议(TCP,Transmission Control Protocol)是为了在不可靠的互联网络上提供可靠的端到端字节流而专门设计的一个传输协议。
TCP是电脑传递信息的一种可靠方式。

类比解释:顺丰快递是我们发东西的一种方式,相对其他快递比较安全**(可靠)**,反正我个人如果发比较重要的东西,就会选择顺丰。


当你把东西地址填好,按照要求打包好,下了单,把东西交给快递员,它会自己把快递送到对方手上。你其实是不清楚中间是怎么运作的,你不知道走了几个站点,不知道中间怎么分拣,但东西就是过去了。

所以,TCP就是电脑的顺丰快递,TCP协议就是这个顺丰快递具体的运作规章制度。
现在回过头去看第一段

传输控制协议(TCP)【顺丰快递】 是为了在不可靠的互联网络上*【大马路上】* 提供可靠的端到端字节流*【把东西从一个人手里送到另一个人手里】* 而专门设计的一个传输协议*【顺丰这个企业具体的运送规章制度】*。

三、🧍‍♂为什么TCP可靠

1.🥰关于可靠

可不可靠这件事是比较出来的,班里30个人,因为有人考100,有人考20,才会有所谓的优等生和后进生,要是全世界就一个人,就没得比了

所以TCP的可靠,也是相比较其他的方式,比如UDP**【不懂也没关系,就是另一个快递】**

2.🤠哪里可靠

相比于UDP,它哪里可靠了?

有很多,我们讲最重要的
UDP送信息就直接扔到目的地,你在不在,收不收到,和它没关系


但TCP送东西前,会先和你联系:


"嗨~你在吗?"

"在的"

"那我给您送过去了哦"

开始送东西【聊三句才送】


送完东西了也会继续服务:


"我东西都送完了,您有东西寄就继续发,我等你"

"好的"

你把要寄的继续给他

"我也送完了"

"好的,拜拜~"

【聊四句才走】


结论: 这就是所谓的TCP三次握手【过来】,四次挥手【离开】

3.🎓️图片的三次握手,四次挥手

这样起码能保证东西都传完了,对方都接到了。

4.📚️知识点总结

TCP传输的三个阶段

  • 建立连接
  • 数据传输
  • 释放连接
    建立一次TCP连接可以传输多个报文**【信息】**

四、📰TCP每次传的信息

1.🐘信息大小限制

虽然可以一直传东西,但传之前,他们会互相约定好,每次最大的信息是多大,不能超过这个数,如果超过了,就开拆。同样和快递一样,假如你要寄10万个砖来盖房子,我们可以约好,一次寄2000块。

这个协商的大小官方名称:MSS(Maximum**【最大】** Segment**【段】** Size**【大小】**)

例:商量好,每次传1000B,那么MSS=1000B

2.报文和字节流

报文: 根据上面的例子,我想寄的10万个砖,就是报文**【一次想寄的所有东西】**

字节流: 根据上面的例子,拆分出来的每一组砖,就是字节流**【一次寄不完,拆出来的每个包裹】**

备注:TCP是面向字节流的**【我不管你砖头拼起来是什么,我负责把每组砖头送到】**

五、🏁结语

我是菌菌巧乐兹~希望用通俗易懂的语言来讲解程序知识~

如果觉得写的还行,请点个赞💛再走吧~

相关推荐
wanhengidc14 小时前
云手机和网盘之间的关系
网络·游戏·智能手机·架构·云计算
それども15 小时前
本地怎么远程调试服务器
运维·服务器
歪歪10017 小时前
Http与WebSocket网络通信协议的对比
网络·websocket·网络协议·计算机网络·http·网络安全·信息与通信
ningmengjing_17 小时前
爬虫逆向——RPC技术
网络·网络协议·rpc
zybsjn17 小时前
【实战】理解服务器流量监控中的“上行”和“下行”
运维·服务器
David WangYang17 小时前
便宜的自制 30 MHz - 6 GHz 矢量网络分析仪
开发语言·网络·php
铭哥的编程日记18 小时前
【Linux】Ext系列文件系统
linux·服务器
霖.2418 小时前
四种常用SVC(service)及其与Ingress协作方式
linux·服务器·云原生·kubernetes·k8s
njxiejing18 小时前
网桥(交换机)地址学习与转发流程案例分析(一文掌握)
网络
dragoooon3419 小时前
[Linux基础——Lesson2.Linux的基本指令使用]
linux·运维·服务器