摘要: 结合传输层和应用层的分析推理 无论防火墙有多么神秘,它本质上是一种网络设备。既然是网络设备,那么它必然同样遵循我们知道的技术原理和网络规范。 这里传输层当然就是指 TCP/UDP,应用层就是问题表象,比如超时、报错之类。我们来看一个具体的例子。 内部的一个应用 A 访问应用 B 的时候,经常耗时过长 阅读全文
posted @ 2022-03-14 18:17 大胖猴 阅读(553) 评论(0) 推荐(0) 编辑
摘要: 我们经常看到Nginx 的日志里面,可能就有 connection reset by peer 这种报错。“连接被对端 reset(重置)”,这个字面上的意思是看明白了。但是,心里不免发毛: 这个 reset 会影响我们的业务吗,这次事务到底有没有成功呢? 这个 reset 发生在具体什么阶段,属于 阅读全文
posted @ 2022-03-14 17:41 大胖猴 阅读(4796) 评论(1) 推荐(1) 编辑
摘要: TCP 连接都是用 TCP 协议沟通的吗? 一般来说 TCP 连接是标准的 TCP 三次握手完成的: 客户端发送 SYN; 服务端收到 SYN 后,回复 SYN+ACK; 客户端收到 SYN+ACK 后,回复 ACK。 这里面 SYN 会在两端各发送一次,表示“我准备好了,可以开始连接了”。ACK 阅读全文
posted @ 2022-03-14 14:35 大胖猴 阅读(113) 评论(0) 推荐(0) 编辑
摘要: tcpdump tcpdump 可以工作在各种 Unix 类的操作系统上,包括 Linux、FreeBSD、macOS、Solaris 等,也是目前使用最为广泛的抓包工具之一。但是 tcpdump 要过滤报文的话,还要依赖一个底层能力:BPF。 BPF BPF 全称是 Berkeley Packet 阅读全文
posted @ 2022-03-14 11:11 大胖猴 阅读(525) 评论(0) 推荐(0) 编辑