网络:什么叫做TCP流
发布日期:2022-03-16 03:25:44 浏览次数:19 分类:技术文章

本文共 660 字,大约阅读时间需要 2 分钟。

在一些技术文档中,特别是wireshark相关的文档中,“TCP流"是一个很常见的词汇。它是什么意思呢?为什么叫做”流“呢?

其实,这里的TCP流,就是TCP Stream。Stream这个词有”流“的意思,也有”连续的事件“这一含义,所以它是有前后、有顺序的,这也正对应了TCP的特点。

跟Stream相对的一个词是Datagram,它是指没有前后关系的数据单元,比如UDP和IP都属于Datagram。在 Linux 网络编程里面,TCP 对应的 socket 类型是SOCK_STREAM,而 UDP 对应的,就是 SOCK_DGRAM 了。显然,DGRAM 就是

Datagram 的简写。

在具体的网络报文层面,一个TCP流,对应的就是一个五元组:传输协议类型、源IP、源端口、目的IP、目的端口

(TCP, your_ip, your_port, target_ip, target_port)

一个IP报文,包含了所有的这五个元素,所以wireshark在解析抓包文件时,自然就能够通过五元组知道每个报文所属的TCP流了。这也是为什么我们可以在 Wireshark 里,用Follow TCP Stream 的方法,找到报文所在的 TCP 流。

不过有时候,也会有四元组的说法,其实它跟五元组大体上是一致的,只是四元组没有区分传输层协议类型型(TCP 或者 UDP)。但是如果我们都清楚地知道应用类型,比如知道应用是 HTTP 协议的,那它的传输层协议默认就是 TCP,这一元是否算在里面,已经不重要了。

转载地址:https://blog.csdn.net/zhizhengguan/article/details/123372398 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:一笔画:五环,python-turtle。画圆圈
下一篇:C/C++编程:图床项目部署

发表评论

最新留言

网站不错 人气很旺了 加油
[***.192.178.218]2024年04月25日 20时26分18秒