为什么 TCP 协议有性能问题 · Why's THE Design?

TCP 协议可以说是今天互联网的基石,作为可靠的传输协议,在今天几乎所有的数据都会通过 TCP 协议传输,然而 TCP 在设计之初没有考虑到现今复杂的网络环境,当你在地铁上或者火车上被断断续续的网络折磨时,你可能都不知道这一切可能都是 TCP 协议造成的。本文会分析 TCP 协议为什么在弱网环境下有严重的性能问题。 »

为什么 DNS 使用 UDP 协议 · Why's THE Design?

相信 DNS 使用 UDP 协议已经成为了软件工程师的常识,对计算机网络稍有了解的人都知道 DNS 会使用 UDP 协议传输数据,但是这一观点其实不是完全正确的,我们在这里就会详细分析『为什么 DNS 会使用 UDP 传输数据』以及『为什么 DNS 不止会使用 UDP 传输数据』两个问题,希望能够帮助各位读者理解 DNS 协议的全貌。 »

为什么 TCP 建立连接需要三次握手 · Why's THE Design?

TCP 协议是我们几乎每天都会接触到的网络协议,绝大多数网络连接的建立都是基于 TCP 协议的,学过计算机网络或者对 TCP 协议稍有了解的人都知道 —— 使用 TCP 协议建立连接需要经过三次握手(three-way handshake)。如果让我们简单说说 TCP 建立连接的过程,相信很多准备过面试的人都会非常了解,但是一旦想要深究『为什么 TCP 建立连接需要三次握手?』,作者相信大多数人都没有办法回答这个问题或者会给出错误的答案,这边文章就会讨论究竟为什么我们需要三次握手才能建立 TCP 连接? »