草庐IT

multicast

全部标签

javascript - chrome.socket 如何用于广播或多播?

我想创建一个仅用于LAN的Chrome打包应用程序,其中一个实例用作服务器(session主机),其他实例必须发现服务器并加入session。这可以用chrome.socket实现吗??我是这样设置服务器的:varsocket=chrome.socket||chrome.experimental.socket;socket.create('udp',{},function(createInfo){varpublish_socket=createInfo.socketId;socket.bind(publish_socket,'225.0.0.42',42424,function(res

c++ - 多播基础 - 丢失数据

如果您的应用程序不处理,它是读取组播数据的基本原则吗?下一个数据报先于另一个数据报进来第一个本质上是覆盖?我做了一些实验,增加receive_buffer大小没有效果关于我所描述的。换句话说,Windows操作系统或NIC卡软件似乎没有对多播数据报进行低级排队。我的理解正确吗?或者是否有一些套接字选项或控件可以帮助解决这个问题? 最佳答案 WindowsXP有一个8KB的默认套接字缓冲区,Vista和更高版本有一个64KB的默认套接字缓冲区。您可以使用SO_RCVBUF覆盖它,建议永远不要设置为0,这与使用IOCP时用于零拷贝的SO

windows - 如何从 Windows 接收 MPEG-TS 多播

我们目前有一个系统,该系统将实时视频编码为MPEG-TS多播流,由带机顶盒的电视接收。除了电视,我们还想将视频嵌入到我们的Windows应用程序中。我知道VLC会接收流,但我更喜欢一种可以嵌入现有应用程序而无需玩窗口移动游戏的解决方案,以及一种没有许可问题的解决方案。我意识到这可能意味着我没有在寻找免费的解决方案,这很好,在合理范围内。有人知道这方面的好产品吗?要么是易于使用的东西,要么是WMP的插件。 最佳答案 您需要开发一个简单的DirectShow过滤器,它在给定端口上监听并传递它收到的每个数据包。我手边没有示例,但它真的很简

java - 为什么 java 多播接收器无法在 Windows XP 上接收数据包?

我在java中有一个MulticastReceiver和MulticastSender,IP为224.2.2.3,端口为8888。当我在WindowsXP上运行接收器时,我无法接收数据包。我所有的Linux接收器都按预期接收数据包。当我的发件人在Windows上时,一切都很好。我已经关闭了XP上的防火墙。我已将接口(interface)绑定(bind)到我希望数据包到达的套接字。我的所有机器都在同一个网络上。还有什么需要调整的吗? 最佳答案 如果您的接收器有多个网卡(例如安装了VirtualBox),请降低第二个以太网卡的优先级。S

windows - 让我的应用程序使用一些端口 - 防火墙问题

我的应用程序将几个端口用于多播和其他目的。默认情况下,Windows防火墙会阻止此操作(我使用的是Windows7)。我看到可以通过API控制防火墙:WhatAPIcallsareinvolvedinopeningaportintheWindowsFirewall?但我的应用程序通常没有以管理权限运行,所以我想我无法在运行时使用它。让我的应用“正常运行”而无需用户手动添加防火墙规则的推荐方法是什么?我应该只在安装时添加防火墙规则吗?为了让我的应用程序“正常工作”,我还应该考虑其他什么吗?顺便说一句,我只关心Windows7和Windows2008R2,64位版本,如果这有什么不同的话。

windows - Windows 上通过 QUdpSocket 的链路本地多播

我正在尝试使用链路本地多播发送UDP报文。我正在使用提供QUdpSocket的Qt。我能够在Linux上执行此操作,但无法让代码在Windows上运行。我的第一个代码是这样的:udp.writeDatagram(QByteArray("helloworld"),QHostAddress("FF02::1"),4321);它适用于Linux但不适用于Windows。我什至尝试以管理员权限运行该应用程序。writeDatagram()返回两个系统上电报的大小。我找到的唯一建议是在特定网络接口(interface)上发送电报。我的这种方法代码:foreach(constQHostAddres

java - 如何使用机器本身作为访问点从 Windows 机器进行多播?

我已经编写了一个基本代码,使用这个link在Java中从Windows机器多播UDP数据包。.接收器是几部安卓手机,它们运行同一链接中给出的接收器代码。这是发件人代码:intmcPort=4446;StringmcIPStr="225.4.5.6";InetAddressgroup=InetAddress.getByName(mcIPStr);DatagramSocketudpSocket=newDatagramSocket();byte[]c="SENT".getBytes();DatagramPacketpacket=newDatagramPacket(c,c.length,gro

windows - 在多宿主 Windows PC 上接收多播消息

我正在基于multicast/udp在具有多个网络接口(interface)的PC上开发诊断工具。用户可以选择一个NIC,应用程序创建套接字,将它们绑定(bind)到这个NIC并将它们添加到特定的多播组。多播消息的发送工作正常。但是,只有当我将套接字绑定(bind)到我PC的特定NIC时,消息接收才会成功。它几乎看起来像是在Windows中有一个用于接收多播消息的“默认”NIC,它始终是GetAdapterInfo函数返回的第一个NIC。我用Wireshark监控网络,发现“IGMPJoinGroup”消息不是从我绑定(bind)套接字的NIC发送的,而是由这个“默认”NIC发送的。如

windows - Windows 7 上的多播套接字

此代码在Linux和WindowsXP上运行良好,但它总是无法在Windows764位和WindowsServer2008上添加多播成员。usesClasses,Sockets,{$IFDEFMSWINDOWS}Windows,Winsock,{$ELSE}BaseUnix,UnixType,{$ENDIF}Sysutils;typeTIP_mreq=packedrecordimr_multiaddr:in_addr;//IPmulticastaddressofgroupimr_interface:in_addr;//localIPaddressofinterfaceend;varAS

windows - 监听 UDP 多播数据包

我的AutoIt脚本应该接收发送到239.255.250.250:9131的UDP多播数据包.但它不起作用,我看不到指定UDPmulticastaddress的选项对于UDPBind().UDPBind()在下面的代码中返回error10049(invalidaddress):UDPStartup()UDPBind("239.255.250.250",9131)While1$msg=UDPRecv($recv,512)If$msg""ThenConsoleWrite($msg)EndIfSleep(100)WEnd如何监听UDP多播包? 最佳答案