windows xp vs 7,UDP接受规则有什么区别

时间:2012-10-10 00:41:22

标签: udp port rtp rule iocp

当我收到UDP数据包(特别是rtp)时,我有一个不同的现象。它发生在windows 7 professional K的Windows版本的差异。

UDP数据包通常没有在我的电脑上打开udp端口(我在wireshark上看到它)但是,在Windows XP SP3上,如果没有打开的udp端口,UDP数据包就不会出现。

正常到达一半数据包,但未达到其余数据包。所以,我的电脑制作了一个ICMP类型3(无法访问的端口错误)数据包并发送它。

我想知道具体是什么。

1 个答案:

答案 0 :(得分:1)

如果您正在运行Wireshark“(通常是如何运行它),您应该看到所有数据包(UDP / TCP / w / e else),无论本地防火墙设置如何以及端口是否为打开。正如您所注意到的,如果端口未打开,您的计算机将使用ICMP数据包进行响应,以告知源它无法在该端口上进行通信。然后,您不太可能看到来自该计算机的更多数据包,因为尝试通信的程序已被告知您不会接受该端口上的通信。但是,无论操作系统如何,在发送ICMP数据包之前,源无法知道端口是否打开,因此即使相应的端口处于打开状态,您也应该看到UDP数据包。

可能正在发生的事情是RTP库注意到您的计算机不接受数据包并停止发送它们。我的猜测是你启动了应用程序/服务,然后启动了Wireshark,此时ICMP数据包已经被发回。发送应用程序/服务缓存了一个事实,即您的计算机将不会收到此类数据包并停止发送到您的计算机。特别是,这可能是为了让您的计算机(以及多播环境中的任何其他计算机)不使用ICMP数据包向发件人发送垃圾邮件。