Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
现在我正在编写一个使用原始 TCP 套接字的程序。如果有任何 TCP 校验和错误的传入数据包,内核会将它们传递给程序还是丢弃它们?我想知道的原因是弄清楚我是否需要手动进行检查。
由于您自己编写 TCP(使用“IP”套接字/层)必须处理 TCP 校验和。下面的任何层或任何校验和都将由底层操作系统处理。
使用您拥有的 TCP/IP 堆栈(从下到上顺序)
关联
Internet <- Socket Here 此处和下方的任何内容都将被处理。本质上,您是在说我正在编写自己的传输协议,而它恰好是 TCP。
传输 <- TCP 这里
应用