我有一个高带宽的应用程序,其中服务器将在千兆networking上产生〜300Mb / s的数据速率。 有没有一种方法可以通过一个可靠的传输机制组播到1到10个客户端? 这个应用程序非常类似于streamvideo,因为stream的连续性比可靠性更重要。 目前的应用程序有点慢,使用UDP与它自己的错误检查相结合,客户端知道丢弃数据块。 是否有任何硬件选项来获得可靠的TCP / IPstream到多个客户端? 有什么协议可以隧道的数据stream,并支持前向纠错? 这将是很好,如果服务器/客户端仍然可以把这当作一个正常的套接字。 只是想着要比推出自己的UDP多播解决scheme更好。 注意服务器和客户端可以在我的特定应用程序的同一个子网上。 虽然,我对所有的答案/选项感兴趣。 谢谢。
我有一个MS NLB群集(赢2003),其中包括只有两个主机。 群集configuration为使用多播操作模式(不是IGMP)。 出于某种原因,我看到了打算用于NLB群集的数据包 目的地:MS-NLB-VirtServer-Multicast_bd:1a:0f:04(03:ce:bd:1a:0f:04) 登陆局域网上的所有服务器。 这是正常的吗? 可以做些什么来摆脱它们? 我们不控制开关,但是如果我知道要问什么,我可以让他们调整它
一个CentOS 5系统似乎没有出现多播stream量的路由。 它似乎做的是使用默认路由,如果configuration。 换句话说,像这样的路由表: # netstat -rn Kernel IP routing table Destination Gateway Genmask Flags MSS Window irtt Iface 10.42.128.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0 169.254.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth0 0.0.0.0 10.42.128.1 0.0.0.0 UG 0 0 0 eth0 将与我的基于Java的多播客户端应用程序(或下面的testing用例)一起工作,该应用程序希望能够发送到站点本地多播地址。 这个设置工作。 如果我没有默认路由,例如 Destination Gateway Genmask Flags MSS Window irtt Iface 10.42.128.0 […]
美好的一天 我的应用程序主要使用组播数据包 ip = 224.8.0.1 我已经在普通的Wifi /以太网和托pipenetworking上进行了testing,这些都很好。 问题: 我的OpenVZ服务器运行OpenVPN:UDP。 我的应用程序应该允许组播数据包stream经VPN,并且可以被连接到VPN的任何其他客户端接收,但是它不会。 我在OpenVPN tun0适配器上做了一个tcpdump,没有发送多播stream量,但是在发送端,wireshark检测到发送的stream量。 经过研究,我遇到了这个post https://openvpn.net/archive/openvpn-devel/2004-04/msg00032.html 我会尝试切换到“开发水龙头”(无桥接),看看是否有帮助。 我确实看到一些关于multicast / igmp的旧报告不能在tun设备上工作,但也读过了“现在可以正常工作”的报告。 还要确保你已经禁用tun设备上的rp_filter,因为多播地址不能通过'rp_filter'检查(/ proc / sys / net / ipv4 / conf / * / rp_filter) 我不能切换到水龙头,因此我试图回声1> ../../rp_filter,但它是写保护。 基于另一篇文章,这里有3个可能的解决scheme : https://community.openvpn.net/openvpn/ticket/79 (1)让内核做路由。 这意味着在隧道的每一端回退到一个OpenVPN守护进程,如1.x. (2)在多客户端模式下使用OpenVPN 2.0中的tun接口。 这将像广播一样对待多播。 (3)使用组播隧道 – 这将通过封装在IP-in-IP容器中的OpenVPN隧道来传送组播数据包,该IP容器应该工作正常。 另一个[可能的] [3]解决scheme是: 您需要嗅探并拦截进入的IGMP报文,维护组播路由状态,并根据新引入的组播转发表复制组播报文。 选项(3)似乎是最合适的,但我不知道如何设置。 有人能帮助我吗? 为server.conf port 1025 proto udp […]
背景: 我在本地networking上运行Linux服务器,既充当networking服务器又充当中央通信服务器。 该服务器与系统中的多个节点进行通信。 节点初始化后,节点将其IP地址发送给中央通信服务器。 但是,为了知道发送该IP地址的目的地,节点需要知道服务器的IP地址。 为了解决服务器问题,我决定使用mDNS。 看来在服务器上安装avahi可以为Linux服务器组播。 sudo apt-get install avahi-daemon 然后,可以将服务器的主机名更改为多播将服务器的IP地址parsing到的位置 hostname.local 问题1: 为了使这个scheme起作用,节点是否还必须安装avahi-daemon? 如果是这样,有没有办法绕过这个,或以另一种方式启用节点的多播。 我很犹豫,因为我不确定微控制器是否有能力安装这个守护进程,因为ESP8226被用作WiFi模块。 (我知道ESP8226确实支持mDNS,我只是不知道如何)。 问题2: 如果用户试图访问Web服务器上的页面,他们是否可以在浏览器中inputmDNS名称来发出请求? 或者他们还必须安装avahi-daemon? 如果它是一个Windows计算机试图访问应用程序,我不能保证他们将内置此function。再次,如果需要,是否有办法解决没有守护进程? 更新:ESP8226确实支持mDNS,但是客户端mDNS不是内置的。然而,这里有ESP8226的客户端mDNS库: https : //github.com/mrdunk/esp8266_mdns
美好的一天! 我们需要通过Wi-Fi将STB设备连接到路由器。 STB仅使用多播。 使用udpxy是不可能的。 原始固件使用mac更改技术通过wi-fi转发多播。 即路由器将目的MAC地址从组播转换为组播单播用户的单播MAC地址。 在华硕路由器这个function被称为“无线组播转发(WMF)”。 在Mikrotik上它被称为“组播助手”。 所以,问题是:我可以使用ОpenWrt在TP-link wr741nd上启用它吗? 它在原始固件中工作。 它是如何实现的? 这是Wi-Fi芯片驱动程序或内核补丁或igmproxy补丁或其他东西的function吗?
TLDR:有没有办法使用“ip route”为多个NIC添加组播路由? 我们拥有使用两个多播组的软件,可以在两个独立的物理networking上与两组不同的设备进行通信。 除此应用程序外,一个networking上的设备无需通过我们的设备进行通信即可与另一个networking上的设备进行通信。 为此,该软件创build两个套接字。 每个绑定到单独的NICS的一个IP地址。 然后,该套接字join到该networking中存在的多播组,例如,套接字1绑定到192.168.0.2,并join到多播组233.255.10.1,而套接字2绑定到10.57.31.2,并join多播组239.255.100.1。 我们正在使用bash脚本(Linux内核3.14.39)在两个networking接口上使用路由来设置组播路由 route add -net 224.0.0.0 netmask 240.0.0.0 eth0 route add -net 224.0.0.0 netmask 240.0.0.0 eth1 并通过路由-n进行validation Destination Gateway Genmask Flags Metric Ref Use Iface 224.0.0.0 0.0.0.0 240.0.0.0 U 0 0 0 eth0 224.0.0.0 0.0.0.0 240.0.0.0 U 0 0 0 eth1 我最近读了这条路线已经过时/过时,我们应该使用ip路由,例如 ip route add 224.0.0.0/4 dev eth0 ip […]
我不敢问这个问题,因为我可能无法执行诊断步骤来查明是什么,但是: 我需要在学校重新塑造一个实验室,可能在上学时间。 我正在使用组播stream,因为服务器共享一个文件30次是没有意义的。 我调整速度的方式,所以会有空间,其余的networking应该是合理的不受影响。 我发现,这样做似乎把我们从广域网上砍掉了。 其他网站无法访问,因特网也是如此。 多播恢复正在运行时,学校无法从其他地方看到。 (多播本身工作正常)。 当我在不同的地点发生这种事情时,我和同事负责联系,并且不知道我们正在做什么会导致问题。 详细信息:我正在Mac OS X服务器上使用DeployStudio进行ASR多播恢复。 我们的大部分交换机都是思科设备。 我们有许多无线接入点(他们似乎是通过无线组播stream;不是最优的,但不一定是问题)。我把这个数据stream的速率设置为2 Mb / s(我认为这是兆比特,不是字节); 系统在8,有时甚至12 Mb / s(所以我知道有头部空间)恢复正常。 我更喜欢在networking上进行组播stream式传输,或者在夏季只有less数员工的情况下进行组播,但是我并没有那种奢侈的感觉。 什么可能解决这个问题?
我发布了这个StackOverflow ,并被告知这可能是更合适的。 我无法理解多播地址如何工作。 首先,如果我有N个客户端或对等设备在不同的networking上工作,它们都订阅相同的多播组,这个组允许任何源发送消息,这些对等体/主机可以通过这个互相通信组? (听起来像黑魔法!) 其次,我听说IANA控制/调节多播地址。 那么您是否必须向您的项目/公司请求/询问IANA是否有特定的多播地址? 这个怎么用? 我错了吗? 你能澄清我的组播networking吗? 非常感谢!
目前,一家小公司的防火墙正在阻塞其networking上的组播。 他们应该继续阻止多播吗? 是否有解除安全问题? 解除封锁有好处吗?