news 2026/9/16 5:32:15

计算机网络基础核心知识:从TCP/IP到网络排错实战

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
计算机网络基础核心知识:从TCP/IP到网络排错实战

1. 计算机网络基础,到底在学什么

先把这个事情说透。计算机网络基础,不是让你背一堆协议名称和端口号就完事,它真正解决的是一个问题:数据怎么从一台设备,准确、高效、安全地到达另一台设备。就这么一句话,背后牵扯出传输介质、地址寻址、路由转发、流量控制、拥塞控制、差错校验、应用协议等等一堆东西。

我在实际带新人或者回复读者私信时发现,很多人把计算机网络基础学成了“背题库”,知其然不知其所以然。比如都知道TCP是可靠的、UDP是不可靠的,但问到“TCP怎么保证可靠”“UDP在什么场景下反而比TCP更合适”,就答不上来了。这就是典型的只记结论、不追过程。

这篇文章我打算换个思路带大家过一遍计算机网络基础。不按教材目录从物理层讲到应用层那么死板,而是从实际数据流动的视角,把核心知识点串起来。每讲一个知识点,我会说清楚“为什么是这样设计”“在实际工作或考试里怎么考”“踩坑点在哪”。同时,因为现在很多人是为了备考或者面试来补这块基础,我也会穿插一些典型题型和易错点,帮你在理解的基础上直接能答题、能排查问题。

2. 先搭骨架:两种分层模型必须刻进脑子里

2.1 OSI七层模型不是用来记的,是用来理解职责边界的

OSI七层模型,从上到下是应用层、表示层、会话层、传输层、网络层、数据链路层、物理层。很多人一背就混,我教你一个笨办法:把每一层想象成快递公司的不同岗位。

物理层就是运输货车和高速公路,负责把比特流从A运到B,不管车上拉的是什么。数据链路层是快递分拣中心,负责同一段路(同一链路)内的帧传输、差错检测,它关心的是MAC地址这种“本地门牌号”。网络层是总调度中心,负责跨区域路径规划,它关心的是IP地址和路由选择。传输层是快递单上的“配送协议”,负责端到端的可靠或不可靠投递。再往上,会话层管建立和维持通话,表示层管数据格式转换和加密,应用层就是用户真正在用的HTTP、FTP、SMTP这些服务。

OSI模型最大的价值,不是让你背书,而是让你在排查网络问题时能快速“定层”。一个网页打不开,你至少要先判断是物理层不通(网线松了)、网络层不通(IP配置错)、传输层被防火墙拦了,还是应用层服务器挂了。每层的职责边界清楚,排错思路就清楚。

2.2 TCP/IP四层模型才是实际在用的东西

OSI是理论参考模型,真正跑在互联网上的是TCP/IP四层模型:应用层、传输层、网络层、网络接口层。注意,它的应用层把OSI的应用层、表示层、会话层合到了一起,网络接口层把数据链路层和物理层合到了一起。

这个合并是有道理的。实际工程里,表示层和会话层的功能(加密、压缩、会话管理)大多由应用协议自己实现,比如TLS加密就跑在HTTP里面,没必要单独拆一层。而数据链路层和物理层在TCP/IP的视角里都属于“硬件相关”,交给具体的网卡和驱动程序去处理。

考试和面试里经常问“数据封装与解封装过程”,其实说的就是数据在这几层之间的传递。发送方从应用层产生数据,每往下一层就加一个头部(传输层加TCP或UDP头,网络层加IP头,网络接口层加帧头和帧尾),这叫封装;接收方从物理层收到比特流,每往上一层就去掉一个头部,这叫解封装。你只要理解了封装顺序,很多协议题都能迎刃而解。

3. 寻址与转发:IP地址、MAC地址、子网掩码这三个必须焊死

3.1 IP地址分类和子网划分,别只背A/B/C类范围

IP地址是网络层的核心,IPv4地址是32位二进制数,通常写成点分十进制。A类地址第一个字节范围是1到126,B类是128到191,C类是192到223。很多人在这里只记范围,不记背后的二进制逻辑。

其实你只要记住一个判断标准:看第一个字节的高位。A类地址最高位是0,B类最高两位是10,C类最高三位是110,D类组播是1110,E类保留是1111。理解了高位判断法,哪怕给你一个不常见的IP,也能立刻说出它的类别和默认子网掩码。

默认子网掩码也是同一个逻辑:A类是255.0.0.0,B类是255.255.0.0,C类是255.255.255.0。子网掩码的作用是区分网络位和主机位。为什么要有子网划分?因为一个大网络(比如一个B类网络有6万多个主机地址)直接拿来用,广播域太大、管理太粗放,所以要把主机位再借出几位当作子网位,把一个大的网络切成多个小的子网。

3.2 子网划分的计算题,三步就能搞定

我在教读者做子网划分题时,发现大多数人不是不会算,而是步骤乱。你按这三步走,基本不会错。

第一步,确定需求。题目要划分几个子网,每个子网要容纳多少台主机。第二步,定子网掩码。根据主机数反推主机位位数:主机位n要满足2的n次方减2大于等于需要的主机数(减2是去掉网络地址和广播地址)。第三步,划分子网。从主机位的高位开始借位,计算每个子网的网络地址、广播地址、可用IP范围。

举个例子:一个C类网络192.168.1.0/24,需要划分4个子网。2的2次方等于4,所以要借2位主机位当子网位。原来24位网络位,现在变成26位,子网掩码是255.255.255.192。每个子网的主机位只剩6位,可用主机数是2的6次方减2等于62台。四个子网的网络地址分别是192.168.1.0、192.168.1.64、192.168.1.128、192.168.1.192,每个子网的广播地址就是下一个子网网络地址减1,可用IP范围就是网络地址加1到广播地址减1。

这里最容易犯的错有两个:一是忘了减2,直接把2的n次方当作可用主机数;二是把子网掩码写错,比如借了2位写成255.255.255.224。你只要记住,子网位每多一位,子网掩码最后一个字节就按128、192、224、240、248、252、254、255这个序列往后走,就不会错了。

4. 传输层双雄:TCP和UDP,理解差异才叫真会

4.1 TCP三次握手,每次握手在确认什么

TCP三次握手,我已经见过无数人画图背了,但很多人没想过:为什么非得三次,不能两次,不能四次?

三次握手的本质是双方确认彼此的收发能力都是正常的。第一次握手,客户端发送SYN包,服务端收到后知道“客户端的发送能力OK”。第二次握手,服务端回复SYN+ACK包,客户端收到后知道“服务端的发送和接收能力都OK,而且我的发送它收到了”。第三次握手,客户端回复ACK包,服务端收到后知道“客户端的接收能力OK”。这样双方都确认了对方的收发能力,连接才算建立。

如果改成两次握手,服务端无法确认客户端的接收能力是否正常。万一客户端的连接请求在网络中滞留,超时重传后又来一个,服务端光凭两次握手就建立连接,会白白浪费资源。三次握手就能通过第三次ACK的到达与否,判断客户端到底是不是“活着”的。

实际排错时你会遇到SYN洪水攻击,攻击者只发SYN不回复ACK,把服务端的半连接队列占满。这时候你会看到服务器CPU不高、内存也不高,但新连接就是建立不起来。正常的排查手段是限制半连接队列大小、启用SYN Cookie机制。考试里如果问“三次握手为什么不能改为两次”,你就从“确认双方收发能力”和“防止历史重复连接请求建立无效连接”两个角度答。

4.2 TCP四次挥手,TIME_WAIT为什么是2MSL

四次挥手的过程我就不赘述了,关键难点在最后:主动关闭方收到对方的FIN后会进入TIME_WAIT状态,持续2MSL(最大报文段生存时间),之后才彻底关闭。

为什么是2MSL?第一,保证主动关闭方最后发出的ACK能被对方收到。这个ACK丢失的话,对方会重传FIN,如果主动关闭方已经彻底关闭了,就收不到重传的FIN,对方就会一直处于LAST_ACK状态。等2MSL,就是为了给ACK留出足够的时间往返。第二,防止本次连接中的残留报文段出现在下一次连接中。2MSL足够让网络中所有属于本连接的老报文段全部消亡,避免污染新的连接。

面试里还常问“为什么TIME_WAIT状态多出现在服务端而不是客户端”。其实不是出现在服务端多,而是出现在主动关闭方身上。Web服务端通常主动关闭连接,所以TIME_WAIT多。你可以用netstat命令看到大量TIME_WAIT状态的连接,这本身不一定是坏事,但如果数量太大、资源耗尽,可以调整内核参数来缩短TIME_WAIT时间或者开启复用。

4.3 TCP可靠传输:滑动窗口和拥塞控制是要配合着看的

TCP的可靠传输不靠重传一个机制硬扛,而是靠序号、确认、重传、滑动窗口、拥塞控制这一整套配合。

滑动窗口解决的是流量控制问题,让接收方告诉发送方“我还能收多少”,发送方据此调整发送速率。注意,滑动窗口的大小是接收方根据自身接收缓冲区空闲量动态通告的,这是流量控制;而拥塞窗口(cwnd)是发送方根据网络拥塞程度自行维护的,这是拥塞控制。两者一起决定发送窗口的大小,实际发送窗口取min(接收窗口,拥塞窗口)。

拥塞控制的四个阶段——慢启动、拥塞避免、快重传、快恢复,考试喜欢考慢启动的阈值变化。慢启动阶段,拥塞窗口从1开始,每收到一个ACK就加1,指数增长;到达慢启动阈值(ssthresh)后进入拥塞避免,线性增长;一旦发生超时重传,ssthresh设置为当前拥塞窗口的一半,cwnd重置为1,重新慢启动;如果是收到三个重复ACK触发快重传,则ssthresh减半,cwnd也减半并进入快恢复,而不是回到1。我在实际调优时发现,理解这个阈值变化过程,比死记慢启动的“指数增长”四个字有用得多,因为线上排查丢包时,你看到抓包数据里窗口变化的曲线,能直接推断出网络当时经历了什么。

4.4 UDP简单但不可轻视

UDP没有连接建立、不可靠、没有拥塞控制、报文头部只有8字节,但这不代表它“低级”。恰恰因为无状态、低延迟、传输效率高,UDP才成了实时音视频、在线游戏、DNS查询这些场景的首选。

我举一个很实际的例子:视频通话。如果每帧画面都要TCP来保证可靠到达,一旦网络抖动丢了一个包,TCP就等着重传,视频就会卡住、延迟飙升,体验极差。UDP直接丢弃丢失的帧,接收方最多看到画面轻微卡顿或模糊,但整体流畅。所以“可靠”和“好用”是两码事,TCP的可靠是在牺牲实时性的前提下换来的。

考试里UDP的考点集中在:UDP头部结构(源端口、目的端口、长度、校验和)、与TCP的对比选择、以及基于UDP的典型协议(DNS使用UDP的53端口、DHCP使用67/68端口、TFTP使用69端口)。这里容易踩的坑是DNS,很多人以为DNS全部走UDP,其实DNS查询走UDP 53,但区域传送(zone transfer)走TCP 53,超过512字节的DNS响应也会走TCP。这种边角知识点,是我在真实网络排障时遇到过的,也是面试官喜欢挖坑的地方。

5. 应用层常见协议的底层逻辑

5.1 HTTP和HTTPS:从TCP到TLS到底多了什么

HTTP是应用层最典型的协议,默认80端口,基于TCP,请求响应模型。新版HTTP/2支持多路复用、头部压缩、服务器推送,HTTP/3直接跑在QUIC(基于UDP)上,解决了队头阻塞问题。

HTTPS不是在HTTP外面套了个“安全壳”那么简单,它是在TCP之上加了一层TLS/SSL协议。TLS握手阶段做三件事:协商加密算法和版本、身份认证(证书验证)、交换密钥。简单说,TLS用非对称加密解决密钥分发问题,用对称加密解决数据传输效率问题。你访问一个HTTPS网站,浏览器先拿到服务器的证书,用CA的公钥验证证书合法性,然后双方协商出一个会话密钥,后续数据都用这个会话密钥做对称加密传输。

这里有一个很容易被误解的点:HTTPS的“安全”不等于“网站可信”。它只保证传输过程中数据不被窃听和篡改,不保证网站本身不干坏事。钓鱼网站也可以部署HTTPS,浏览器地址栏的锁头只代表连接是加密的。我写这个是想提醒你,学网络基础不光是为了考试,更是为了建立正确的安全认知。

5.2 DNS解析流程:一次域名访问背后的完整链路

DNS是域名系统,它的核心作用是把人类好记的域名(比如example.com)转换成机器能用的IP地址。别小看这个看似简单的过程,它背后是一条完整的查询链路。

典型流程是这样的:本机浏览器先查本地DNS缓存,缓存没有就查hosts文件,都没有就发DNS请求给本地配置的DNS服务器(递归解析器)。这个递归解析器先查自己的缓存,没有的话就去问根域名服务器,根服务器会告诉它“你要找的.com域的权威服务器在哪”;再去问.com顶级域服务器,它告诉“example.com的权威服务器在哪”;最后去问example.com的权威服务器,拿到对应的IP地址。

这里常考的点有三个:一是递归查询和迭代查询的区别,本机到本地DNS服务器是递归查询,本地DNS服务器到根、顶级、权威服务器是迭代查询。二是DNS劫持,本地DNS服务器被恶意配置后,把域名解析到钓鱼网站的IP,这是实际工作中非常严重的安全威胁。三是DNS使用UDP 53端口,但响应报文超过512字节时会转成TCP。我在做网络排障时,遇到“域名解析慢”的问题,第一步就是查DNS服务器响应时间、查本地缓存命中率,然后再往上排查权威服务器的状态。

5.3 DHCP:自动分配IP的背后逻辑

DHCP(动态主机配置协议)解决了手工配置IP地址的麻烦。你连上路由器就自动获得IP,背后是DHCP发现(Discover)、提供(Offer)、请求(Request)、确认(ACK)四个过程,简称DORA。客户机先广播发Discover,DHCP服务器回Offer(提供候选IP),客户机再广播发Request(确认要用哪个IP),服务器回ACK确认。

注意,DHCP客户机和服务器在获取IP前都没有IP,所以Discover和Request都是广播,目标地址是255.255.255.255,源地址是0.0.0.0。而Offer和ACK可以是单播也可以是广播。

实际故障中,最常见的DHCP问题是IP地址冲突。比如你设置了一个静态IP 192.168.1.100,而DHCP地址池也包含了这个地址,就可能分给另一台设备,导致两台设备冲突、网络时断时续。这个在考试里容易考“如何避免IP冲突”,答案通常就是给特殊设备保留IP、缩小DHCP地址池范围、或配置DHCP Snooping。

6. 网络设备与拓扑:路由器、交换机、集线器到底哪儿不一样

6.1 从冲突域和广播域理解设备差异

理解网络设备,最高效的方式是站在“冲突域”和“广播域”两个概念上看。

集线器是纯物理层设备,所有端口都在同一个冲突域,任何时刻只能有一台设备发数据,否则就冲突;所有端口也都在同一个广播域。所以集线器连接的网络,设备越多效率越低。

交换机是数据链路层设备,它根据MAC地址表转发帧,每个端口独立冲突域,能同时多对通信;但默认情况下所有端口还在同一个广播域(VLAN可以把广播域切分成多个)。交换机是二层设备,看不懂IP地址,只认MAC地址。

路由器是网络层设备,每个接口属于不同的广播域,它根据IP路由表转发数据包,能隔离广播域,连接不同网络。这就是为什么家庭宽带入户后,光猫负责拨号和路由,路由器负责NAT和无线接入,交换机负责扩展有线端口。

网上经常有人问“我买了路由器,到底还要不要交换机”,答案很简单:路由器管跨网段转发,交换机管同网段内终端接入。家里设备数量少,路由器自带的交换口就够用;办公室几十台电脑,就需要交换机扩展端口了。

6.2 交换机MAC地址表和路由器的路由表,两张表都要会看

交换机能只把帧转发给目标端口,靠的是MAC地址表。它会学习源MAC地址和端口的对应关系:收到一个帧,记下源MAC和进来的端口;转发时查目标MAC,表里有就只往对应端口发,表里没有就广播到除源端口外的所有端口。这里有个细节:MAC地址表是有老化时间的,默认300秒,到期没数据就删除,这是为了适应设备移动或更换。

路由器转发数据包,靠的是路由表。路由表里有直连路由、静态路由、动态路由(由OSPF、RIP等协议生成)。排错时最常用的命令是看路由表(路由器的show ip route,Linux里是ip route),如果发现路由缺失,表现为“能ping通网关,但ping不通远端网络”。

考试常考的静态路由配置是:ip route 目标网段 目标子网掩码 下一跳地址。很多人会写错成接口而不是下一跳,对于以太网链路,建议写下一跳地址而不要写出口接口,原因在于当你在路由器上写下一条为接口时,路由器仍然会对每一个目标IP做一次递归查找,效率不如直接给下一跳地址清晰。实际工作中我习惯写下一跳IP,排查路由黑洞问题也更直观。

7. 网络命令实测:用ping、tracert、netstat排查问题

7.1 ping和它的TTL返回值

ping是ICMP协议的应用,用来测试网络连通性和延迟。它发送ICMP Echo Request报文,收到Echo Reply就说明目标可达。ping的输出里有TTL(Time To Live)字段,这是排查操作系统的“指纹”之一。

TTL是IP包头里的字段,每经过一个路由器就减1,减到0就丢弃。Windows系统默认TTL是128,Linux系统默认TTL是64,Cisco设备默认TTL是255。所以当你ping通一台设备,看返回的TTL是54,说明起点是64减掉了10跳;如果TTL是118,说明起点是128减掉了10跳。这招在实际网络拓扑识别里很实用,虽然现在很多系统允许自定义TTL,但默认值仍然有参考意义。

注意,ping不通不一定是网络不通。很多时候是对方防火墙禁ping,或者中间设备限速ICMP。我遇到过一台服务器能正常访问网站,但ping不通,最后排查发现是云安全组禁了ICMP协议。所以ping通了说明链路通,ping不通只能说明ICMP不通,不能直接断定服务不可用。

7.2 tracert/traceroute的操作与解读

tracert(Windows)和traceroute(Linux)用来查看数据包从本地到目标经过的路径。它利用TTL字段的原理:发送一个TTL=1的UDP包,第一个路由器收到后TTL减为0,返回一个ICMP超时消息,本地就知道第一跳是谁;再发TTL=2的包,得到第二跳;依次递增,直到到达目标端口。

解读tracert输出时你会看到有的行返回的是星号,这不一定代表链路断了,很可能是中间路由器禁用了ICMP回复,或者只对限定的源IP返回信息。判断链路是否真的中断,要看最后一跳是否到达了目标IP,以及目标端口是否可达。我在排查跨省访问慢的问题时,就是靠traceroute定位到中间某跳延迟突然升高,然后联系对端运营商处理。这一招比盲目调服务器参数高效得多。

7.3 netstat和抓包工具的组合拳

netstat是查看本机网络连接状态的神器。netstat -an能看到所有TCP/UDP连接的本地地址、外部地址和状态;netstat -rn看路由表;netstat -ano在Windows上多一个PID,能结合任务管理器定位是哪个进程发起的连接。

抓包工具我推荐Wireshark,它能精确看到每个报文的详细内容。但很多人一打开Wireshark就懵,不知道从哪看起。我建议新手先学会三件事:第一,设置过滤条件,比如只抓HTTP流量就输入http,只抓某个IP就输入ip.addr == 192.168.1.100。第二,看TCP握手的三条报文,确认三次握手是否正常。第三,看TCP重传的红色标记,如果某个IP大量重传,基本可以判断网络丢包严重。抓包是排障的“终极手段”,前面的命令只能告诉你“哪里不对”,抓包能告诉你“到底发生了什么”。

8. 考试高频题型与真实案例复盘:从理论到实战的最后一公里

8.1 题库里最爱考的几类题,我帮你拆一下

因为计算机网络基础题很多是从题库里出的,我结合高频考点总结一下出题规律。

第一类是概念辨析题。比如“下列哪种协议属于传输层”“TCP和UDP的区别”。这类题纯靠理解,你能说出TCP是面向连接、可靠、有序、字节流,UDP是无连接、不可靠、无序、数据报,基本就能排除大多数错误项。

第二类是计算题。子网划分、可用主机数、CIDR表示法之间的转换。这类题没有技巧,就是多练。我建议你把2的0次方到2的10次方背熟,子网掩码从/24到/30对应的可用主机数算一遍,形成肌肉记忆。

第三类是流程题。三次握手、四次挥手、DNS解析过程、DHCP分配过程。这类题要求你画得出流程图、说得出每一步的报文类型和方向。考场上不需要你写得多花哨,但顺序一定不能错。

第四类是应用场景题。比如“视频直播用TCP还是UDP,为什么”“局域网内IP地址不够用怎么办”。这类题考查你能否把原理用于实际。我在题库里见过一道“公司网络经常瘫痪,排查发现有人在局域网内发大量广播包,应该怎么解决”的题,答案本质就是划分VLAN来缩小广播域。

8.2 一个真实排查案例:网页能打开但视频加载极慢

我拿一个自己实际处理过的案例收尾。某天同事反馈,办公区域有台电脑网页能正常打开,但视频会议卡得没法用。

我的排查思路:先ping网关,延迟正常;ping外网,延迟也正常。然后用tracert观察路径,发现目标地址最后几跳延迟异常高,但还没到超时的程度。这时候我判断不是基础链路问题,可能是拥塞或限速。再用netstat看本机连接,发现视频会议软件占用了大量连接。最后抓包确认,视频数据流时不时出现重传和乱序,丢包率不高但延迟抖动很大。定位到问题出在办公网络的出口带宽被占满,其他设备的大量下载流量把视频流量挤得很难受。处理方案是给视频会议流量做QoS优先级保障,同时限制P2P下载速率。

这个案例想说明的是,计算机网络基础的每一个知识点都不是孤立的。IP寻址帮你确认目标在哪,路由帮你理解路径怎么走,TCP的拥塞控制帮你解释为什么卡,QoS是应用层和网络层协同解决质量问题的思路。你把这些串起来,面对一个模糊的“网络卡”问题,就不会无从下手。

我个人在实际操作中的体会是:学计算机网络基础,千万别只盯着题库刷,刷题只能验证你对概念的记忆,不能验证你的理解。最好的方式是每学一个协议,就打开Wireshark抓一次包,亲眼看一看报文长什么样;每配一个功能,就在Cisco模拟器或真机上敲一遍命令。把这些基础动作练成本能,后面不管是考证、面试还是做运维,你都会非常稳。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/16 5:31:38

AI时代职场竞争力:人机协作效率提升9倍

1. 为什么说我们真正的对手是自己?上周和一位设计师朋友聊天时,他提到最近特别焦虑:"现在AI一分钟能出几十张设计稿,我们这些做视觉的是不是要失业了?"这让我想起去年接触Midjourney时的类似恐慌。但经过半年…

作者头像 李华
网站建设 2026/9/16 5:30:32

eGDR指标革新:从代谢研究到临床应用的突破

1. 上交大研究团队如何用eGDR指标冲击一区Top期刊最近上海交通大学医学团队在顶级期刊(影响因子10.6)发表的研究成果引起了学界广泛关注。这项研究创新性地提出了"潜力代谢指标eGDR"作为核心评价体系,为代谢性疾病研究开辟了新视角…

作者头像 李华
网站建设 2026/9/16 5:29:45

Django与微信小程序构建服装商城全渠道销售系统

1. 项目概述与核心价值这个基于Django和微信小程序的服装商城销售管理平台,本质上是一个打通线上线下销售场景的全渠道解决方案。我在去年为一家本土服装品牌实施类似系统时,发现传统电商平台存在两个致命痛点:一是平台抽成高达15%-20%&#…

作者头像 李华
网站建设 2026/9/16 5:29:00

T-S模糊神经网络函数逼近:Matlab可解释建模实战

简介:本资源是一套基于Matlab实现的模糊神经网络函数逼近源码,面向计算机、电子信息工程及数学等专业的本科生,适用于课程设计、期末大作业或毕业设计中的智能算法实践环节。资源聚焦模糊逻辑与神经网络的融合建模,帮助学习者理解…

作者头像 李华
网站建设 2026/9/16 5:28:14

Flutter路由与导航:核心机制与高级实践

1. Flutter路由与导航的核心价值在移动应用开发中,页面跳转是最基础也最频繁的用户交互场景。Flutter作为跨平台开发框架,其路由系统设计直接影响着用户体验和应用性能。与传统Native开发不同,Flutter的路由管理需要同时考虑跨平台一致性、动…

作者头像 李华
网站建设 2026/9/16 5:27:48

WebSocket 快速入门:从轮询到长连接的全链路实战

第一次把 WebSocket 跑通的那天,我在浏览器控制台盯着一行connected看了很久。在此之前,我做消息推送用的是轮询:前端setInterval每 3 秒发一次请求,后端告诉你有没有新消息。这套东西能用,但它的本质是寄信——你想知…

作者头像 李华