OSI参考模型&TCP/IP模型 二三事

计算机网络的学习离不开OSI参考模型&TCP/IP模型

对各层功能与任务的了解就是学习的主要内容

其二者的区别也是我们应该了解的

其中 拥塞控制和流量控制 就是各层功能中 两个易混淆的概念

  • 流量控制(Flow Control) :解决的是发送方接收方 之间速度不匹配 的问题。它是一个端到端(点对点)的问题。

  • 拥塞控制(Congestion Control) :解决的是整个网络 (如路由器、链路)承载能力不足 的问题。它是一个全局性的问题。

深度解释一下就是:

流量控制是由接收方控制收发速度的,具体而言,在TCP中的实现机制就是,接收方会在ACK确认报文中告诉发送方自己的窗口大小,发送方则会根据这个接收窗口的大小调整发送的数据量,保证不出现超额现象,从而避免了丢包,重传等浪费。

形象点说,流量控制就是有1个人丢大饼,另一个人接大饼,丢的人速度太快了,接的人就会说"哎呀你慢点!!!",避免饼被丢地上

拥塞控制呢,有关网络的承载能力,是一种机制,防止过多的数据注入网络,导致路由器或者链路过载,出现网络拥塞。同样在TCP中,通过拥塞窗口,慢开始算法,拥塞避免算法,快重传,快恢复等手段协调全局。这里是由发送方驱动,它会根据网络反馈调整速度。

拥塞就好比堵车,网络就像一个共享的公路系统。如果所有车辆(数据包)同时涌入一条公路(网络链路),就会造成拥堵(路由器缓冲区爆满),导致所有车辆的通行速度都变慢(网络延迟增加),甚至发生交通事故(数据包被丢弃)。

了解以上内容便可以知道,拥塞控制只会出现在网络层(OSI)/ 网际层(TCP/IP)。因为它与路由器有关系

而流量控制在OSI的数据链路层,网络层,传输层都有,却只在TCP/IP模型的传输层有

那么你可能会问:为什么TCP/IP模型的网际层没有流量控制功能?

答案就牵扯到了这两个模型的不同之处。

TCP/IP模型的设计思想是 "傻网络,智能终端" ,主张网络内部(核心设备,如路由器)应该保持简单和"愚蠢",只负责尽可能高效地转发数据包("尽力而为",Best-Effort Delivery)。而复杂的智能功能(如可靠性保证、流量控制、拥塞控制)应该放在网络的边缘,即通信的终端主机上。

类比 邮政系统。邮局(网际层)只负责尽最大努力分拣和投递信件,它不关心信的内容、也不保证一定送到(尽管大多数时候可以)。保证可靠送达(如挂号信、要求回执)是寄信人和收信人(传输层)之间需要协商和负责的事情。

所以这个功能就交由传输层实现,省去网际层的麻烦。

相关推荐
慢半拍iii19 小时前
CANN算子开发实战:手把手教你基于ops-nn仓库编写Broadcast广播算子
人工智能·计算机网络·ai
Trouvaille ~20 小时前
TCP Socket编程实战(三):线程池优化与TCP编程最佳实践
linux·运维·服务器·网络·c++·网络协议·tcp/ip
JoySSLLian21 小时前
手把手教你安装免费SSL证书(附宝塔/Nginx/Apache配置教程)
网络·人工智能·网络协议·tcp/ip·nginx·apache·ssl
!chen1 天前
LabVIEW TCP Server端工具TCP通信
网络·tcp/ip·labview
郝学胜-神的一滴1 天前
深入解析C/S模型下的TCP通信流程:从握手到挥手的技术之旅
linux·服务器·c语言·网络·网络协议·tcp/ip
释怀不想释怀1 天前
Linux网络基础(ip,域名)
linux·网络·tcp/ip
Trouvaille ~1 天前
【Linux】TCP Socket编程实战(一):API详解与单连接Echo Server
linux·运维·服务器·网络·c++·tcp/ip·socket
三水不滴1 天前
计网:输入网址到网页显示
经验分享·笔记·计算机网络
科技块儿1 天前
利用IP查询在智慧城市交通信号系统中的应用探索
android·tcp/ip·智慧城市
极新1 天前
智启新篇,智创未来,“2026智造新IP:AI驱动品牌增长新周期”峰会暨北京电子商务协会第五届第三次会员代表大会成功举办
人工智能·网络协议·tcp/ip