Wireshark中TCP会话和TCP流之间的关系


0

我读过了 对话 TCP流 但是如果它们在同一层上,我仍然有点不确定它们是如何相互关联的。

对于不同的层,我很清楚,例如IP会话可以包含多个TCP流。

TCP会话可以包含多个TCP流吗?相反,TCP流可以包含多个TCP对话吗?为什么?

Answers:


2

在这种情况下,A 会话 发生在TCP级别(传输),并且与两个端口之间的TCP连接同义。

在此上下文中的“TCP流”是在对话中传递的应用程序消息的聚合。例如,链接中的流显示运行a的内部主机 UPNP 有能力的程序,要求路由器为它转发端口5000,并且路由器响应。那么你实际上是TCP段的数据字段。出于这个原因,我认为它命名不佳。所有TCP信息都被剥离,只留下两台主机上的软件发送和接收的消息。他们可能是 HTTP GET和回应, FTP 放, SMTP MAIL或任何其他应用程序的本机命令语言。

就个人而言,我不确定我是否喜欢Wireshark在本文档中的术语,但它确实很好地服务于他们作为协议分析器的观点。无论底层协议如何,应用程序都会将两个端点之间的套接字连接视为IO流。

在旁注中,我会说我不同意IP有“对话”。 IP不携带维护虚拟电路所需的数据,并将其留在上层。 TCP处理严格的电路,UDP处理非常松散的电路,将订购,纠错和流量控制留给应用程序。


1

TCP 对话和TCP流 应该 处于同一级别,但是,至少在某些版本的Wireshark中,他们使用不同的代码来识别哪些数据包是会话/流的一部分,因此他们可能会给出不同的答案。

例如,其中一个可能会将两个端点(IP地址/端口对)之间的所有流量视为同一个会话/流的一部分,即使这两个端点之间的一个TCP连接关闭而另一个端点恰好在两个端点之间打开同一个捕获中相同的两个端点(不太可能,因为端口不会立即重用,但并非不可能),而另一个端点可能会识别连接关闭并将它们显示为单独的会话/流。

如果他们没有使用相同的代码,这可能是一个错误,但它可能是一个没有人修复的问题。

明显, IP “对话”,介于两者之间 IP 端点(两个IP地址)与TCP会话/流不同;如您所知,两个IP端点之间可能存在多个TCP对话,UDP对话等,因此可能存在多个TCP / UDP /等。同一IP对话中的对话。


0

只是查看您链接的页面上的示例,看起来这些术语在功能上并不相同。两者似乎都是单个网络连接的长度。

对话页面不总结多个连接,它实际上显示每个连接,具有时间长度和字节计数。流窗口只显示发送的实际数据的详细信息。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.