没有一蹴而就的技术,只有被需求千锤百炼出的办法
那些年,我们靠 F5 和耐心上网
你有经历过 00 年那时的互联网吗?
那是一个带宽有限、基础设施尚不稳定的年代,
玩着开心网的小农场种地偷好友的菜,又或是刷论坛看资讯。
而最害怕的事情只有一个——卡在关键时刻。
每当页面卡顿,或加载停在半途,
就会想到被教会的第一个“上网技巧” F5刷新页面。
F5 的本质,是放弃当前卡住的状态,重新发起一次请求。
这是一种极其粗暴,却是在互联网刚兴起的时候最有效的方法,
丝滑程度堪比如今的 电脑遇到问题就重启 的方法。
而在 2025 年的今天,我们几乎已经很少会因为页面卡住而再主动刷新页面了。
这不仅是因为网络变快了,更是因为系统本身已经学会了如何 “在流动中解决问题”。
当你对着 AI 聊天框提问,看着文字像流水一样一个字一个字蹦出来时,你所感受到的“顺滑”,背后其实是一场静默的技术革命。
你是否有想过:
为什么你敲下一行字,几秒钟后,地球另一端的 AI 就能给你答案?
而且,甚至可能是同时给全球几千万个人答案?
我们不急着给出硬核的技术结论,
而是聚焦于这个过程,顺着一次最普通的操作,把网络中真实发生的交互过程,一层一层地拆开来看。
一切交互的起点:Client–Server 模型
既然我们讨论的是一次“交互”的过程,就需要先建立一个最基础的概念:
Client–Server Model(客户端–服务端模型) 。
简单来说,当你访问一个网页,或者在与 AI 对话时点击“发送”按钮,都会触发一次请求(request)。
发起请求的一方,是需求方——客户端(Client);
接收并处理请求的一方,则是供给方——服务端(Server)。
这个模型,并不是某一种具体技术,而是一种角色分工方式。
即使在 2025 年,它依然是绝大多数互联网交互的起点。
网络并不“聪明”,它只是可靠地搬运
当你通过某个软件或网页发起一次查询时,你是需求方,提供服务的软件或网站是供给方。
而网络,并不属于其中任何一方,它的角色只有一个——
连接你们之间的那条通道。
为了更直观地理解这一点,可以把它类比为现代的快递系统:
假设你作为顾客(Client),在某个商家(Server)订购了一件商品(Request)
商家会先准备好商品,并进行必要的处理和包装,然后把这个包裹交给一家可靠的快递公司。
快递公司并不关心包裹里是什么商品,也不参与交易本身,
它只负责几件事:
- 确认收件人是谁
- 确认要送到哪里
- 规划运输路径
- 把包裹安全送达
当包裹到达后,你取走快递、拆开包装,最终得到商品。
在整个过程中,快递公司只承担一个职责:
把东西从一端,可靠地送到另一端。
当请求多到失控:真正的挑战才刚开始
但这样一个看似日常的过程,背后并不是一条一成不变、轻松完成的既定流程。
试想一下,如果每分钟有数千万个“包裹”同时需要被投递,这家快递公司真的能应付得过来吗?
这些请求,又是如何在极短的时间内,被有序地送达各自的目的地的?
在理解这些问题之前,不妨先把视角拉回一切的起点——
当你点击“发送”的那一刻,这个请求是从哪里真正开始踏上网络旅程的?
答案并不在远端的服务器,而是在你的电脑内部。
在所有网络交互中,第一站并不是网络本身,而是那块长期被当作“插网线接口”的硬件——
网卡。
它是 CPU 与网络之间的桥梁,是请求走出本机的第一个出口。
在下一篇文章中,我们将展开讲讲网络发送请求的一整个过程是如何在电脑里运作的。同时从硬件入手,看看网卡,到底帮 CPU 做了什么事?
写在最后:这是一个从硬件到架构的系列
对网络系统知识感兴趣,或喜欢本栏目的读者,欢迎订阅本系列。
作者计划每周更新一篇文章,从底层硬件到上层架构,系统性地拆解网络“是如何炼成的”。
我们会尽量避免堆砌枯燥的专业名词,而是用工程视角与通俗的方式,讲清楚网络真正发生了什么。
如有错误也欢迎指出。