YouTube(例如)可以发送一次视频文件并让多个用户流式传输吗?或者,即使所有用户都居住在同一地区,YouTube 是否需要将文件单独发送给每个人?
如果是第二种情况,除了P2P之外,还有什么方法可以让ISP处理并行性或类似的事情吗?
(编辑)除了 YouTube 之外,是否可以发送一次文件,然后多次下载,可能同时(实时)。我的意思是,我们可以将一个文件发送到多个 IP,而只需要上传一次吗?(这里不讨论云服务)
我正在使用 tcpdump 来捕获多播数据包,并且必须编写一个自定义程序来加入多播源,以便 tcpdump 将“看到”数据包。只是想知道 netcat 或任何其他应用程序是否可以执行此功能?
我知道谷歌说它不支持。有没有人使用 Chromecast 与不同子网上的客户端通话?我有一个 OpenWRT 路由器连接到我的互联网提供商路由器(父路由器)。OpenWRT 网络是一个不同的子网,处理 DHCP 等。 OpenWRT 网络 (192.168.1.0/24) 和父网络 (192.168.11.0/24)
chromecast 在父网络上,我希望 OpenWRT 网络上的客户端使用 Chromecast。
我已启用 igmp_snooping,在反射器模式下运行 igmpproxy 和 avahi-daemon。我可以在 bonjour 资源管理器中看到 Chromecast(来自 OpenWRT 网络上的机器),但 Chromecast 应用程序无法连接。
我也尝试过增加 OpenWRT 路由器上的 TTL
iptables -t mangle -A PREROUTING -i eth0 -d 239.255.255.250 -j TTL --ttl-inc 1
iptables -t mangle -A PREROUTING -i wlan0 -d 239.255.255.250 -j TTL --ttl-inc 1
Run Code Online (Sandbox Code Playgroud)
使用wireshark我可以看到,chromecast和计算机正在通过子网通话......但它仍然无法连接。
我还可以从子网络 ping chromecast。
有人做过这个吗?任何指针?
从我收集到的 UDP 多播/通过 WiFi 广播不会产生人们想象的速度。WiFi上的UDP单播怎么样?谁能确认后者的速度正常吗?
我有一个带有 3 个节点(VM)的基本网络。
一个节点发布一个事件,其他节点监听它并在收到时打印一些东西。它曾经是一对一的(因此节点将事件分别提供给其他节点),但我想实现多播。
作为一个快速实验,我想在网络上进行基本的“广播”,但一直无法找出正确的 IPv6 地址。使用IPv4广播地址工作,两个节点都打印一些东西然后节点1的地址是:inet addr:192.168.56.101 Bcast:192.168.56.255 Mask:255.255.255.0 inet6 addr:fe80::a00:27ff:fef7:30 64 范围:链接
节点2:inet addr:192.168.56.102 Bcast:192.168.56.255 Mask:255.255.255.0 inet6 addr:fe80::a00:27ff:fe56:a2f7/64 Scope:Link
节点3:inet addr:192.168.56.103 Bcast:192.168.56.255 Mask:255.255.255.0 inet6 addr: fe80::a00:27ff:fe82:ae4a/64 Scope:Link
因此 IPv6 没有广播,而是使用多播。这些多播地址总是以 ff 开头。然后你得到了标志,默认情况下,分配的 mlc 为 0,瞬态的为 1。然后是范围。想要做一个基本的广播等效,我尝试了 ff01::1 它应该到达所有节点和 ff01::2 所有路由器。但这不起作用。我也试过 ff02、ff05 和 ff0e。我在这里误解了一些东西,当节点 1 发布事件时,到达节点 2 和节点 3 的正确多播/广播 ipv6 地址是什么?
编辑:
经过一些实验,我发现我什至无法 ping 通 inet6 地址,但可以 ping 通 ipv4 地址!有什么线索吗?
我有一台运行 linux 的计算机,它通过一些简单的规则集激活了 ufw。它通过 wifi 连接到华硕 4G-N12 路由器。几天前,当我查看 ufw 日志时,结果发现它阻止了一些连接。今天我检查日志,我再次在日志文件中有许多新的(与以前相同的)条目:
[UFW BLOCK] IN=my_laptop_wifi_interface OUT= MAC=01:00:5e:00:00:01:my_router_MAC_address:08:00 SRC=192.168.1.1 DST=224.0.0.1 LEN=28 TOS=0x00 PREC=0x00 ID=6828 原型=2
我不是专家,但如果我理解正确,这意味着我的家庭 wifi 路由器做了一些奇怪的事情。在互联网上搜索并检查我的路由器后,我发现此条目的含义如下:
MAC=01:00:5e:00:00:01:my_router_MAC_address:08:00
意味着连接来自路由器,并且(如果我理解正确的话)尝试通过 IPv4 协议(08:00 指 EtherType IPv4)达到一些用于多播的标准 MAC(01:00:5e:00:00:01);
源代码=192.168.1.1
是我在本地网络中的路由器 IP;
夏令时=224.0.0.1
是所有主机组播组地址的标准 IP - 同一网段上的所有主机。
LEN=28 TOS=0x00 PREC=0x00
可能以某种方式指的是数据包内容;
TTL=1
是分组生存时间;
编号=6828
可能是ufw内部编号,每次都不同,您可以看到其中有很多;
原型=2
可能是指互联网组管理协议(IGMP),所以它又与多播有关;
这些连接已被阻止,因为我的防火墙安全规则之一规定应拒绝所有传入连接。我不是网络专家,所以这可能是正常情况,路由器有时会发送这样的消息来检查与路由组成员身份或其他相关的内容。但是,据我所知,我的路由器上没有使用这种通信方法运行的服务,所以如果我有这个权利,它就不应该产生这样的流量。除此之外,我很确定当我上次检查 dmesg 日志时,没有这样的条目,现在它们是。另一方面,从那时起,很多事情都发生了变化,例如我升级了我的路由器固件,也可能更改了一些设置(我的路由器和笔记本电脑)。
这是我的问题:
为什么路由器会做那些奇怪的事情?(这很奇怪吗?)
有什么可担心的吗?(我知道我的个人计算机上的连接被阻止,所以它是相当安全的,但是我的本地网络是否可能存在某种安全违规,例如路由器是否可能已被某些攻击者拥有?)
为了诊断目的,我想在 Windows 上完全禁用 TCP/IP 堆栈对多播的支持。我该怎么做呢?
我希望在 Windows XP 上执行此操作,但如果无法提供,也可以接受其他版本的说明(服务器和客户端 SKU、所有变体、跨版本)。
我正在我的计算机上尝试发送方和接收方多播 C# 程序。如何检查我的路由器是否阻止多播?即组成员是否收到来自 224.0.0.1 的数据包。
我有一台 Windows 10 服务器,它使用 Wake On Lan 运行良好有一段时间了。Realtek 适配器设置为启用魔包唤醒和禁用模式匹配唤醒。同样,Windows 设置为“仅在 Magic Packet 上唤醒”。这通常在我的家庭网络上运行良好:我有几个 WoL 客户端,每个客户端都可以在需要时唤醒服务器,并且服务器在不再需要时会立即休眠。
最近我在家庭路由器上启用了IGMP 代理以支持 IPTV 应用程序。但是,现在,一旦服务器休眠,它就会在几秒钟内再次唤醒,由网络适配器的唤醒信号触发。关闭 IGMP 代理,它停止唤醒。
我相当确信是某种多播数据包触发了唤醒。我已经使用 Wireshark 来嗅探导致唤醒的数据包,但我找不到罪魁祸首:唤醒时没有魔术数据包,但有很多多播数据包。
发生什么了?为什么适配器会唤醒似乎不是魔术的数据包?我该如何解决?
更新:
我已经进行了一个数据包捕获(只有 28 个数据包),它跨越了服务器上从睡眠到唤醒的时间段,因此应该包含有问题的数据包。我注意到没有一个帧包含服务器的 MAC 地址(就像魔术包一样),但大多数是 UDP -> RTTP -> ISO/IEC 13818-1 -> DVB-EIT 数据包,其中包含很多“ FF”填料(就像魔术包一样)。
还有 1 个 ICMP v6 数据包和 2 个 STP 帧。我不认为这些是这样做的,因为我认为我已经看到没有它们的唤醒捕获 - 但我可能是错的。
但是,请注意数据包捕获是通过交换机进行的。所以它会看到任何广播的魔法数据包(就像我故意发送的那样),但它不会捕获直接发送到服务器 MAC 的假设魔法数据包。另一方面,当我在服务器上捕获时(在它唤醒的条件下,但当它唤醒时 - 当然)我看不到任何类似于指向其 MAC 地址的魔术数据包。
NIC 是 Realtek 8168 PCI GbE 适配器,随附在我的 Asus P 8Z77-V LX 主板上,带有来自此处的最新驱动程序。
更新了更精确的症状
因此,IGMP 不是直接原因。我可以在不使用多播的情况下相当可靠地重现该问题。如果我只是将特定的 UDP …
我找不到有关如何为 RHEL / CentOS 7 中默认防火墙的 firewalld 启用多播的文档。有人可以启发我吗?仅供参考:我知道如何使用 iptables 来做到这一点。
我有一个 Apple AirPort Extreme Rev C (2011),我需要设置手动多播速率。虽然我可以设置手动多播速率,但我只能选择低、中和高。
在之前版本的 Apple AirPort Extreme 中,您可以选择 1mbps、2mbps、4mbps、6mbps 和 12mbps。
你如何获得这些选项?我需要将多播速率设置为 6mbps,而不是低、中和高的模糊范围......
我在我的小家庭局域网上做了一个简单的测试。
我已启用广播 ICMP 回声响应
sysctl net.ipv4.icmp_echo_ignore_broadcasts=0
Run Code Online (Sandbox Code Playgroud)
仅在单个主机上,然后 ping 多播地址以查看该主机的响应。往返时间始终在2-3 毫秒左右。
--- 224.0.0.1 ping statistics ---
1000 packets transmitted, 1000 received, 0% packet loss, time 1000322ms
rtt min/avg/max/mdev = 1.956/3.666/163.318/10.781 ms
Run Code Online (Sandbox Code Playgroud)
但是,直接通过其 IP 地址单播 ping 对等方的测量时间为0.7-1.5毫秒。
--- 192.168.8.23 ping statistics ---
1000 packets transmitted, 1000 received, 0% packet loss, time 999270ms
rtt min/avg/max/mdev = 0.498/2.459/227.312/12.608 ms
Run Code Online (Sandbox Code Playgroud)
为完整起见,LAN 具有与主机之间的 100Mbit 以太网桥接的 wifi 链接。
那么,解释是什么?会不会是软件问题?广播理论上是否意味着传输延迟的增加?如何?
multicast ×12
networking ×4
router ×2
udp ×2
windows ×2
chromecast ×1
internet ×1
ipv6 ×1
isp ×1
linux ×1
mdns ×1
netcat ×1
security ×1
upnp ×1
wake-on-lan ×1