百度校招网络研发岗笔试题解析:TCP/IP与高并发编程核心考点

发布时间:2026/8/28 22:17:50
百度校招网络研发岗笔试题解析:TCP/IP与高并发编程核心考点 1. 岗位画像与这套题背后的考察逻辑先聊一个很多人容易忽略的背景。2018年那会儿百度对“核心网络研发工程师”这个岗位的定义其实已经和传统意义上的网络工程师分道扬镳了。传统网工的核心工作是配交换机、调路由器、拉专线而校招笔试题里真正要筛的是能写代码、能改协议、能调内核、能扛住海量流量冲击的研发型人才。说白了这个岗位更接近“网络方向的系统研发”考察重点不是“你会不会配BGP”而是“你懂不懂BGP为什么这么设计、出了问题你怎么定位、让你优化你怎么动手”。这套题是第三批整体风格延续了百度校招技术岗的一贯路数——基础题量大、覆盖面广、深水区藏在细节里。笔试时间一般是90到120分钟题型以选择题、填空题、简答题和编程题为主。选择题考的是知识面简答题考的是理解深度编程题则直接验证你的代码功底。如果你只是背过几本面经没真正啃过TCP/IP协议栈、没在Linux环境下抓过包、没写过网络编程代码这套题做起来会非常难受。我在复盘这套题的时候最大的感受是百度要的不是“知道答案的人”而是“能解释清楚为什么是这个答案的人”。比如TCP三次握手几乎所有面试者都能背出状态流转但题目里稍微换个场景——客户端同时发起大量连接、服务器accept队列溢出、SYN Flood攻击——很多人就懵了。这套题的核心逻辑就是把你从“背答案”的舒适区里拽出来扔进真实的网络场景里看你能不能从底层原理出发推导出正确的结论。这篇文章我会按照这套题的考察方向把核心考点、典型题型、答题策略拆开揉碎来讲。无论你是正在准备校招的应届生还是工作几年想跳槽到基础架构方向的工程师这篇文章都能给你一个清晰的复习框架。2. TCP/IP协议栈考点不只是三次握手那么简单2.1 三次握手与四次挥手的隐藏考点TCP的连接管理是必考内容但百度这套题几乎不会直接问“三次握手的过程是什么”而是会给你一个异常场景。比如客户端发送SYN后一直没有收到SYN-ACK会发生什么很多人答“重传SYN”这没错但不够完整。完整的答案要包含重传次数的默认值Linux下tcp_syn_retries默认是6次、每次重传的退避时间指数退避从1秒开始翻倍最终约127秒、以及当重传耗尽后connect调用返回的错误码。再比如四次挥手的TIME_WAIT状态。题目可能会问服务器主动关闭连接为什么会有大量TIME_WAIT这种问题看似简单实际上考的是你对TCP状态机的理解是否扎实。TIME_WAIT存在两个原因一是确保最后一个ACK能让对方收到如果丢了对方会重发FIN二是让旧连接的数据包在网络中自然消亡避免污染新连接。在生产环境中TIME_WAIT过多会导致端口耗尽常见的优化手段是开启tcp_tw_reuse仅在客户端场景有效或者调整tcp_max_tw_buckets但如果你答“直接关掉TIME_WAIT”那就暴露了实战经验的欠缺。这块还有一个高频考点是半连接队列和全连接队列。backlog参数很多人知道但真正理解SYN队列半连接和accept队列全连接关系的人不多。当accept队列满时内核会丢弃新到达的ACK包导致客户端以为握手还没完成而重发。这类问题百度考过变形题问的是“nginx配置了高并发为什么客户端连接大量超时”排查方向就是这两个队列的长度和溢出计数。2.2 拥塞控制从Reno到BBR拥塞控制是网络研发岗位笔试的必考大题。百度这套题里至少有一道选择题和一道简答题会涉及拥塞控制算法。基础的Reno算法要掌握慢启动、拥塞避免、快速重传、快速恢复的完整流程尤其是cwnd拥塞窗口在不同阶段的增长曲线慢启动阶段每收到一个ACKcwnd加1实际上是指数增长达到ssthresh后进入拥塞避免每个RTT只加1。但如果你只答到这里顶多算及格。百度这种体量的公司内部早就把TCP的短板摸透了——传统拥塞控制在丢包率超过1%的高效链路下带宽利用率会直线下降。所以这道题的高分答案是从BBR算法出现的原因讲起——基于丢包的拥塞控制无法区分“链路拥塞”和“随机丢包”BBR通过探测带宽和最小RTT来建模网络管道直接控制发送速率在有一定丢包率的长肥链路上能显著提升吞吐。2016年Google把BBR开源后百度内部也在CDN和存储集群中做过大规模验证这个考点放在2018年非常应景。顺便说一个容易被考到的细节快重传的触发阈值是收到3个重复ACK而不是2个也不是4个。为什么是3因为乱序到达时可能产生1到2个重复ACK取3是为了把乱序和真正丢包区分开。这个“为什么”比“是什么”更能拉开分差。2.3 HTTP/1.1、HTTP/2与QUIC到了2018年HTTP/2已经规模化落地QUIC也在Chrome和Google服务中大面积启用。百度的笔试题敏锐地捕捉到了这个趋势出现了不少与HTTP语义相关的考题。我印象比较深的是一道简答题“一个页面加载100个静态资源HTTP/1.1和HTTP/2的差异是什么请从连接模型和队头阻塞两个角度分析。”HTTP/1.1的痛点在于队头阻塞——同一个TCP连接上的请求必须串行处理浏览器为了提速只能开6个左右的并行连接不同浏览器限制不同但连接数太多会加剧服务端压力。HTTP/2引入了多路复用一个TCP连接上可以同时交错传输多个流stream从应用层解决了请求级别的队头阻塞。但HTTP/2有个容易被忽略的软肋TCP层面依然存在队头阻塞。只要一个TCP包丢失后续所有已经到达的数据都要等在缓冲区里即使它们是来自不同流的数据。QUIC就是在这样的背景下被设计的——它把TCP的连接语义、TLS的加密握手、HTTP/2的流多路复用全部搬到UDP之上实现了真正意义上的“无队头阻塞”。百度在2018年已经在移动端网络加速场景中做过QUIC的预研和灰度所以这道题其实暗合了公司实际的技术方向。答题的时候如果能把“HTTP/2解决了应用层队头阻塞但TCP层的队头阻塞依然存在QUIC通过独立流UDP解决了这个问题”这个逻辑链条讲清楚面试官基本就能判断你是真的在写网络而不是只会调接口。3. 路由与交换数据中心网络的底层思维3.1 BGP与OSPF常考但容易答空路由协议是网络研发工程师绕不开的坎。百度的笔试题里BGP和OSPF出现的概率几乎接近100%但它们考察的深度和CCIE考试截然不同——笔试不考你背AS号范围、不考你要点对点帧中继怎么配而是考你对协议设计逻辑的理解。BGP的核心考点之一是路径选择顺序本地优先级local-pref AS路径长度 起源类型 MED eBGP优于iBGP IGP度量值 Router-ID。这个顺序很多网络工程师能背但题目会换个角度问“为什么local-pref比AS路径长度优先级更高”这个问题的答案在于local-pref是AS内部的策略属性而AS路径长度是全局的属性一个网络管理员希望本AS的流量出口可控就必须把本地策略放在最前面。从这个角度去答比单纯默写优先级列表高出一个维度。OSPF则常考区域设计和LSA类型。比如“骨干区域为什么必须是0”——因为OSPF要求所有非骨干区域必须与骨干区域直连非骨干区域之间的路由必须经过骨干区转发这样才能避免环路和路由黑洞。还有一类高频题是“OSPF邻居卡在EXSTART/EXCHANGE状态可能的原因是什么”答案是MTU不一致这是所有排错题里最经典的一个坑。百度内部的数据中心交换机集群也用OSPF做underlay路由所以这类问题不是纯理论是真实场景的经验沉淀。3.2 数据中心网络CLOS架构与VXLAN大型互联网公司自建数据中心网络架构上和传统企业网有本质区别。2018年正是SDN软件定义网络和数据中心网络重构的爆发期百度在这一年发布了自研的SDN控制器所以笔试题里出现CLOS架构和VXLAN的题目一点都不意外。CLOS架构的核心思想是“无阻塞”——通过leaf叶和spine脊两层结构让任意两个叶节点之间的路径数量与spine数量相同从而实现多路径负载均衡。传统三层网络核心-汇聚-接入在东西向流量激增后会遇到瓶颈而CLOS架构天然适合数据中心高带宽、低延迟的要求。题目如果考到这里你要能说出来leaf-spine的横向扩展性加spine节点可以提升整体带宽加leaf节点可以增加接入端口数。VXLAN则是解决大规模租户隔离问题的关键。传统VLAN只有12位最多4094个在公有云场景下远远不够。VXLAN通过24位的VNIVXLAN Network Identifier把隔离空间扩展到1600万同时利用UDP封装让二层报文能穿越三层网络。有一道真题大概是“VXLAN封装后内层MAC地址和外层IP地址分别承担什么角色”这题考的就是你理解不理解“overlay不感知underlay”——内层MAC是租户虚拟网络中的地址外层IP是物理网络的寻址地址两者解耦这才是VXLAN能支撑大规模多租户的核心原因。3.3 负载均衡与网络高可用负载均衡是互联网公司面试的常客百度这套题同样没有放过。常见的考点包括四层负载均衡LVS、DPVS和七层负载均衡Nginx、BFE的区别一致性哈希是如何解决后端节点扩缩容时的缓存失效问题健康检查的机制和探测间隔设置等等。这道题如果展开考通常会给出一个具体场景“某服务有10台后端使用轮询负载均衡其中一台响应变慢但未宕机客户端大量超时如何定位和解决”这是一个非常经典的生产事故题。最佳答案不是“换掉那台机器”而是从两个层面入手第一负载均衡层开启主动健康检查用TCP连接探测和HTTP状态码探测结合设置合理的失败阈值比如连续3次失败就摘除节点第二引入加权轮询或者最少连接数算法降低慢节点的权重。更进一步可以提到熔断和降级机制——在RPC框架层面比如百度的BRPC也有类似的节点状态管理负载均衡器和大规模微服务架构的容错逻辑本质上是一脉相通的。4. Linux网络栈与高性能网络编程4.1 数据包在内核中的完整旅程“一个网络数据包从网卡到用户态进程经历了哪些环节”这是核心网络研发岗的必考题而且几乎每年都有。这个问题的完整答案链条非常长但每一步都不能遗漏。第一步是网卡接收数据通过DMA把数据写入内存中的环形缓冲区ring buffer然后向CPU发起硬中断。第二步是硬中断处理程序ixgbe的ixgbe_poll等把数据从ring buffer中取出放入sk_buff然后屏蔽当前CPU的硬中断触发软中断NET_RX_SOFTIRQ。第三步是软中断处理调用NAPI的poll方法从队列中批量取包交给协议栈处理——IP层的路由查找、netfilter钩子iptables/nftables、TCP层的四次元组查找、放入socket接收队列。最后用户态进程通过read/recv系统调用从socket队列中拷贝数据。这个过程涉及中断上下文的切换、内核态与用户态的切换、以及zero-copy相关优化任何一个环节展开都能出多个选择题。这套题里有一个非常经典的变体多队列网卡和RSSReceive Side Scaling的作用。单队列网卡在高并发下会遭遇“单CPU软中断瓶颈”因为所有包都交给同一个CPU处理其他CPU处于空闲状态。RSS通过哈希通常是四元组哈希把数据流分布到不同的队列每个队列绑定不同的CPU实现并行收包。百度的服务器网卡基本都是多队列的而且会在中断绑核上做精细调优这道题考的就是你懂不懂“网络性能瓶颈不在带宽而在CPU处理能力”。4.2 从C10K到C1000K高并发网络架构演进高并发是互联网公司研发岗的通用考点网络方向尤其看重。经典的C10K问题是2001年提出的到了2018年单机百万连接已经不是神话但这中间的演进逻辑值得好好捋一遍。早期的Apache采用“一个进程处理一个连接”的模型进程创建和上下文切换的开销巨大撑到几千连接就到了极限。后来出现了select和poll用一次系统调用监听多个fd但每次调用都要遍历整个fd集合复杂度是O(n)。再后来Linux引入了epoll有三个关键特性O(1)的事件通知复杂度、基于回调而非轮询、支持水平触发LT和边缘触发ET两种模式。如果你只是说“epoll比select快”那只能得一半分。你要能讲清楚epoll_ctl把fd注册到内核事件表epoll_wait只返回发生就绪事件的fd避免了全量遍历——这才是“知其所以然”。百度的笔试里这道题经常和Reactor模式绑定出现。题目可能会问“基于epoll写一个高并发网络服务如何设计事件处理模型”最佳实践是主线程负责epoll_wait获取就绪事件工作线程池负责业务逻辑处理。如果业务是纯IO密集型可以每个CPU核绑定一个线程各自跑一个epoll实例利用SO_REUSEPORT实现内核级负载均衡。这个话题如果展开足够面试官追问半小时笔试答得好坏基本决定了你后面的面试走向。4.3 DPDK与内核旁路技术到了2018年DPDK已经火了几年百度在自研的四层负载均衡BFE的流量接入层、DDoS防护系统、以及部分存储网关中都有DPDK的应用。所以这年的笔试题里出现了“与传统内核协议栈相比DPDK为什么能大幅提升网络性能”这样的简答题。回答这个问题的关键是要点出DPDK的三大杀招第一用户态驱动网卡收包绕过内核协议栈直接通过mmap把数据映射到用户态中断处理也从“每包中断”变成“批量收包”第二大页内存hugepage减少了TLB miss第三无锁队列ring buffer和CPU亲和性绑定避免了核间竞争和线程切换。但有一个非常重要的踩坑点DPDK并不适合所有场景。它放弃了内核协议栈的所有能力TCP协议栈、socket API、Netfilter过滤全部失效你必须自己在用户态实现协议栈逻辑。所以百度笔试如果考到“DPDK的适用场景”你要能说出它是用于纯数据转发类、对延迟极度敏感的场景而不是拿来替代通用网络编程接口。这套题里还有一道和内核旁路相关的题XDPeXpress Data Path与DPDK的区别。XDP是Linux 4.8引入的它让你在网卡驱动层、sk_buff分配之前就用BPF程序处理数据包相比DPDK的好处是不需要完全旁路内核不需要独占网卡可以和其他内核网络功能共存。这个知识点在2018年还比较新能答上来的考生不多但如果你答得清楚绝对是一个巨大的加分项。5. 真题类型速览与答题方法论5.1 选择题覆盖面广陷阱藏得深选择题基本上覆盖了网络知识全景ISO七层模型、TCP/UDP报文格式尤其是首部长度、校验和覆盖范围、IP地址与子网划分、公有云VPC网络、CDN调度策略、DNS解析流程、IPv6地址表示等等。题型不难但陷阱很多。举一个典型的例子“TCP校验和覆盖的范围是什么”很多人会答“TCP报文段”但正确答案是“TCP伪首部TCP首部TCP数据”。伪首部是从IP层临时借用过来的12字节包含源IP、目的IP、协议号和TCP长度字段目的是让TCP校验和能感知到IP层的信息防止报文被错误投递。如果你只记住了TCP首部校验和覆盖TCP数据这道题就丢了分。做这类选择题的通用策略是看到熟悉的考点先想“有没有反直觉的地方”尤其是报文字段、状态码、计时器、默认参数这些硬知识必须精确到数值。5.2 简答题结构化的三步答题法简答题是整个笔试的大头也是最能拉开差距的部分。我的经验是这类题一定要用“结论先行、原理随后、例子收尾”的结构来答。举个例子题目问“TCP粘包问题是什么如何解决。”第一步先给出结论TCP是字节流协议不保留应用层的消息边界粘包是应用层问题。第二步讲原理TCP只保证接收方收到的字节顺序和发送方一致不保证一次recv的数据正好对应一次send高频发送小数据块时接收方可能一次读到多个消息。第三步给方案常用的有定长消息、长度前缀headerbody、特殊分隔符如\r\n或自定义三种方式以及对应的优缺点。这样答下来阅卷人扫一眼就能判断你的思路是否清晰。还有一个非常高频的简答题“从输入www.baidu.com到页面显示发生了什么”这道题你一定要答全流程浏览器缓存检查DNS缓存、HTTP缓存→ 系统hosts文件 → 本地DNS解析器 → 根DNS服务器/顶级域DNS/权威DNS逐级递归 → 获得IP → TCP三次握手 → TLS握手 → HTTP请求 → 负载均衡调度 → 后端处理 → 响应返回 → 浏览器解析渲染。每个环节都可以单独追加追问但简答题层面你要保证链路完整、节点无遗漏。5.3 编程题除了算法还会考socket编程百度校招的网络研发岗编程题一般会出两道一道纯算法通常是LeetCode中等难度一道和网络相关。网络编程题的高频考法是让你实现一个简单的TCP服务器/客户端、HTTP请求解析、或者端口扫描器。一道让我印象很深的变体题是“给定一个端口号列表检测哪些端口是开放的要求高效完成。”暴力做法是依次connect但考官想要考察的是你懂不懂非阻塞connect epoll并发检测。实现思路先把所有socket设置为非阻塞调用connect此时connect会立即返回EINPROGRESS然后把所有fd注册到epoll中等待可写事件一旦某个fd可写判断SO_ERROR是否为0如果为0则端口开放。这样单线程可以同时检测上万个端口效率远高于串行超时等待。这道题既能看出你的C/C功底又能看出你对网络API的理解深度是笔试中的“综合大题”。我记得2018年有一道网络编程题是“用C或C实现一个支持并发echo的TCP服务端要求正确使用epoll处理边缘触发模式。”如果只在LT模式下写至少能拿一半的分但ET模式下需要循环读取直到返回EAGAIN这个细节很多人会漏掉。笔试题对工程细节的考察之细致由此可见一斑。6. 高频知识盲区与易错点盘点6.1 网络层细节TTL、分片与PMTUIP层的知识点里TTL是最基础但最容易出错的一个点。题目往往会问“TTL的作用是什么为什么每经过一个路由器要减1”答案是防止数据包在路由环路中无限循环。常见的默认值是64Linux和128Windows如果ping一个地址发现TTL是50说明经过了14跳。分片和PMTUPath MTU Discovery是另一个高错误率考点。IP分片的规则是如果数据报长度大于出口链路的MTU路由器会把数据报分片目标端重组但TCP传输层感知不到IP分片。当TCP报文段大于MTU时IP层分片会导致“一个TCP包丢失所有分片全部无效”的糟糕情况所以TCP通常启用MSS协商来避免分片。还有“DF标志位”的作用——设置为1时不允许分片如果中间链路MTU不够路由器会返回ICMP Fragmentation Needed报文源端据此调整发送大小这就是PMTUD的机制。如果运维中遇到“大包不通但小包能通”的问题第一排查方向就是PMTUD或中间设备禁用了ICMP。6.2 UDP看似简单坑比TCP还多很多基础不好的考生把精力全放在TCP上结果UDP相关的题目一到就丢分。UDP是面向报文的保留消息边界不存在粘包问题但它也不提供可靠性、顺序性、流量控制。百度笔试里有一道经典的UDP题“UDP校验和是可选的IPv4下可以不填为什么”答案是IPv4的UDP校验和字段全0表示不使用校验和但IPv6强制要求UDP必须使用校验和因为IPv6不支持IP层校验和必须依赖上层提供完整性验证。还有一个高频场景题游戏或音视频通话场景为什么选用UDP而不是TCP你需要从实时性角度回答——TCP遇到丢包会重传重传带来的延迟增量可能远超丢包本身的代价UDP虽然会丢包但发送方的数据始终以最新状态往下传接收方可以容忍偶发丢失却无法忍受延迟抖动。如果题目再深挖一层问“如何用UDP实现可靠传输”你可以提到RUDP、KCP、或者QUICKCP在百度内部也有游戏加速场景的使用。6.3 安全和DDoS大厂必考不能回避核心网络研发和网络安全是强相关的。2018年百度的笔试中出现了大量DDoS相关的题目比如“SYN Flood攻击的基本原理是什么如何防护”SYN Flood的原理很简单攻击者发送大量SYN包但不完成握手服务器的半连接队列被塞满后续正常的SYN请求无法处理导致服务不可用。防护手段要答出几个维度一是内核层调大syn_queue、开启tcp_syncookies当半连接队列满时用SYN Cookie对握手信息做无状态编码二是网络层用ACL过滤源IP、限速三是流量清洗把攻击流量牵引到清洗设备上过滤后再回注业务流量。百度具有大规模的DDoS防护系统这道题的答案事实上覆盖了从操作系统调优到流量调度架构的完整链路能答得全面的人至少在安全视角上是合格的。6.4 网络编程API的细节bind、listen、accept这道题考得很细但特别能检验实战水平。“调用listen之后内核做了什么”——把socket从CLOSED状态迁移到LISTEN状态为这个socket分配半连接队列和全连接队列开始接受外部SYN并建立握手。还有“accept返回的socket和listen的socket为什么不是一个fd”——监听socket只负责接受新连接每个已建立的TCP连接由一个新的socket fd表示可以让多个线程分别处理不同连接。更细的考点包括socket bind失败时提示EADDRINUSE但你可能在TIME_WAIT状态下重用端口需要设置SO_REUSEADDRclient端connect到本地一半端口不可达时可能会看到ECONNREFUSED而不是超时recv返回0表示对端关闭非阻塞模式下recv返回-1且errno为EAGAIN/EWOULDBLOCK表示暂时无数据。这些经验型知识点平时不写代码根本遇不到但笔试的考察点恰恰就落在这里。我的建议是考前把《UNIX网络编程》卷一中最基础的socket API示例亲手敲一遍比看十遍书都有用。7. 项目经历与简历准备笔试之外的加分项虽然本文聚焦笔试题但我必须说一句百度的招聘流程中简历筛选、笔试、面试是环环相扣的。笔试成绩决定你能否拿到面试机会但简历上的项目经历会在面试中被深度挖掘。核心网络研发岗的面试官几乎必然会问你参与过的网络相关项目然后从项目细节中挑出他们关注的技术点层层追问。如果你是应届生没有真实的大规模网络项目经验建议尽早做一些有深度的个人项目。比如写一个基于epoll的高并发HTTP服务器用DPDK写一个简单的数据包转发程序对Linux内核的TCP/IP收发路径做一次源码分析并输出文档或者搭一个Kubernetes集群把CNI网络插件Calico或Flannel的底层原理吃透。这些项目不需要多么宏大但一定要展示出你对网络底层机制的“控制力”——能说清楚你做了什么选型、遇到什么问题、如何定位和解决、每一步背后的原因是什么。简历上的描述也要避免“参与了XX系统的开发”这种空话。更好的写法是“负责XX模块的高性能TCP接入层开发基于epoll多线程模型实现了单机10万并发连接通过调整内核网络参数和应用程序缓冲策略将P99延迟从150ms优化至80ms。”这种描述有量化结果有技术链路有性能优化面试官看一眼就知道你肚子里有货。8. 备考资料与复习路径建议最后按我自己的备考经验整理一份实操性很强的资料清单和复习路径。如果你距离笔试还有三到六个月完全可以按这个计划推进。第一阶段约2周基础理论整体过一遍。推荐《计算机网络自顶向下方法》Kurose和《TCP/IP详解 卷1》。不需要逐字逐句读重点是建立完整的知识框架把每层协议的核心机制记清楚。这个阶段结束你应该能流畅画出TCP三次握手、四次挥手的状态迁移图。第二阶段约3周深入Linux网络编程。先把《UNIX网络编程 卷1》Stevens的前16章读完然后动手写代码TCP回显服务器、并发多线程版本、select/poll/epoll版本、非阻塞IO版本。每写一个版本都对比一下性能和代码复杂度记录自己的思考。同时把《Linux高性能服务器编程》游双中的Linux网络内核相关章节收包流程、epoll实现、定时器精读一遍。第三阶段约2周考前刷题与真题训练。资料上首选牛客网和LeetCode上近三年的网络方向笔试真题尤其是百度、腾讯、阿里、字节这类一线大厂。刷题时不要求多但要求精每道题做完后把相关知识点在思维导图中扩展一遍。同时搜集近两年的面经整理出高频考点清单分模块强化。第四阶段考前一周查漏补缺回归基础。这时候不要再碰难题了把TCP状态图、三次握手和四次挥手、BGP路径选择、DNS解析流程、epoll事件模型、Linux收包路径这些硬核知识点再过一遍确保随时可以准确画出。同时背诵几个常用端口、协议默认值、内核参数名避免在选择题上丢基础分。备考资料的具体版本可以按你手头条件灵活选择但大方向是理论基础教材 动手实践编码 真题训练刷题三者缺一不可。只背书不写代码编程题必然翻车只写代码不补理论简答题必然露馅。如果你时间紧张只剩两周左右优先做两件事一是把所有真题中的选择题全部刷完并弄清每个选项的对错原因二是把网络编程题常见的几种模式epoll并发服务器、非阻塞connect、HTTP解析亲手实现一遍。这两件事做完笔试的基本盘就能保住。核心网络研发岗的笔试本质上考的不是死记硬背而是你有没有建立起“以底层原理推导上层行为”的思维习惯。这种习惯一旦养成不只是应付考试对你后续做网络调优、故障排查、架构设计都会产生深远的影响。