赵涛 / ZhaoTao

赵涛 / ZhaoTao

百度,软件开发工程师,云基础服务方向。做四层网关(L4 负载均衡)和 DNS 的开发与维护。

十年里我基本在做同一件事的不同侧面:把 DNS 从协议实现到数据面性能重做一遍。运营商的递归缓存、京东云的外网权威、京东云的内网权威与转发缓存、百度云的外网权威及控制系统——四套系统,后三套是基于 DPDK 的自研数据面,做到千万级 QPS、微秒级处理延迟,主力语言 C。2024 年起转向四层网关,开始做软硬协同。

  • DNS:10 年。 权威(外网 / 内网)、递归与缓存、协议处理、限速、CNAME 拉平、IPv6、一致性监控。
  • 四层网关:2 年。 基于 DPDK 的接入接出网关,VXLAN、均衡算法优化。
  • 数据面: DPDK、收发包性能、NIC 适配。
  • 软硬协同: 用 NPL 在 TD5 上实现导流,把一部分转发决策下沉到可编程交换芯片。
  • 在追的方向: AI 网关与推理网关——调度、缓存、健康检查、上下文压缩。这是我认为未来几年流量入口最大的结构性变化。

语言:C(主力)、Go、C++、NPL。

联系:zhaotao19860@qq.com


几件具体的事

从零设计一套云上外网权威 DNS(京东云 ADNS,2018–2020) 我负责整个系统的设计与开发,三个面一起做:数据面处理 DNS 协议与安全,控制面下发配置,统计分析面对运营出报表。基于 DPDK 的数据面做到千万级 QPS、微秒级处理延迟。但难点不在单点性能,而在三个面之间的状态一致——数据面为了性能必须把配置缓存在本地,一旦控制面下发和数据面生效之间出现偏差,用户看到的解析结果就是错的,而这种错误不会报警,只会被投诉发现。

内网权威与外网权威是两个不同的问题(京东云 vpcdns,2020–2021) 做完外网权威再做内网(VPC 内),我原以为是同一套东西换个部署位置。实际上内网的核心矛盾完全不同:外网的敌人是攻击流量和缓存投毒,内网的敌人是租户隔离与转发链路——同一个域名在不同 VPC 里必须解析出不同结果,而缓存和转发让这件事很容易串味。

把配置下发和一致性校验做成可依赖的(百度云 DUDNS/MDNS,2021–2024) 高性能数据面的代价是配置生效链路变长。MDNS 这一侧我用 Redis + MySQL 把下发做到秒级——MySQL 保证配置的持久与事务,Redis 承担扩散,让数据面能快速拉到最新状态。

另一半是校验。多节点权威集群里,”配置已下发”和”每个节点都在返回正确答案”之间有很大的空隙,落在里面的是静默的数据不一致:没有错误日志,没有告警,只有部分用户拿到错答案。我做的一致性监控主动向每个节点发查询、比对应答,把问题发现时间从天级压到分钟级。这套东西平时看不见,价值只在事故里体现。

把转发决策下沉到交换芯片(百度 BGW/BNAT,2024– ) 四层网关的性能天花板最终落在 CPU 上。我们探索软硬协同:用 NPL 编程 TD5,把导流这一层交给可编程交换芯片,CPU 只处理需要状态的部分。取舍很直接——芯片上能表达的逻辑有限,换来的是数量级的转发能力,代价是灵活性和调试难度。


我在写什么

DNS(分类 → DNS) 解析全流程、三大系统(存根 / 递归 / 权威)、DNSSEC、DNS Flag Day、缓存投毒与劫持的各种形态、可观测性。另有一个日更的中文公众号,覆盖 CVE、RFC 与行业事故复盘。

数据面与网关(分类 → DPDK / Libs) DPDK 交叉编译与网卡适配、发包工具架构比较、基于 DPDK 的 DNS-TCP 方案。

AI 网关(分类 → AI-Gateway / AI-Agent) AI 网关与推理网关的分层、EPP 的边界、多 region 推理部署要不要跨机房七层调度、推理路径上的三层缓存实际能省多少钱。


履历

时间 单位
2021.05–至今 百度时代网络技术(北京)有限公司 · 软件开发工程师
2018.04–2021.05 北京京东尚科信息技术有限公司 · 软件开发工程师
2015.12–2018.04 北京柠檬微趣科技有限公司 · 软件开发工程师
2011.07–2015.12 亚信科技(南京)有限公司 · 软件开发工程师

苏州大学 计算机应用技术 硕士(2008–2011)· 泰山学院 信息与计算科学 本科(2004–2008)


GitHub:zhaotao19860