草庐IT

sockets - Easy Button to UDP 数据包 - 控制板术语

关闭。这个问题需要detailsorclarity.它目前不接受答案。想改进这个问题吗?通过editingthispost添加细节并澄清问题.关闭2年前。Improvethisquestion对于那些处理微Controller编程的人......我想要一个瞬时接触开关(假设是StaplesEasyButton,因为这是最有趣的瞬时接触开关),当它被按下时,通过网络发送广播UDP数据包(由.NET应用程序并从那里做各种有趣的事情)。到目前为止,我发现的最接近的东西是工业数据采集硬件接口(interface),但我正在寻找更多具有几个输入引脚和以太网输出的可编程单微Controller。这

networking - 读写 UDP 连接的套接字?

我们正在尝试让两个程序以类似游戏的方式相互通信。它们与中央服务器保持TCP连接以获取“控制”类型的信息,该中央服务器确保两个客户端都接收到这些信息。然后,这两个客户端使用sendto()和recvfrom()与udp服务器通信,后者仅将接收到的信息发送到连接的其他客户端。现在的问题是,如果你有家庭路由器或私有(private)办公网络,发往其他客户端的udp服务器sendto()将被防火墙过滤掉,除非你打开了一个端口,这更比我们希望客户做的还要多。但我不想失去UDP的好处—我不关心数据包丢失和顺序。我愿意自己管理所有这些。那么,我能否可靠地创建一个读写连接的UDP套接字?我记得在过去尝

http - 用于移动消息服务的 TCP 或 UDP?

我正在使用java为消息服务(P2P)开发移动应用程序,我仍处于早期阶段,并正在为此类应用程序寻找最佳和最合适的协议(protocol)。正如我所发现的。套接字编程优于网络服务。如您所知,它不需要为发送的消息添加额外的数据(开销),因此成本会更低。除了套接字和HTTP之外,还有第三种选择吗?套接字是使用TCP还是UDP的最佳选择?!这个问题对任何其他选项都是开放的,而不仅仅是这里提到的提前谢谢你 最佳答案 HTTP和TCP/UDP位于通信系统模型的不同层(最流行的两个模型是OSI模型和TCP/IP模型)。HTTP建立在套接字之上(这

C# 如何确保所需的 UDP 数据到达客户端/服务器?

我最近一直在为我用C#和XNA为PC制作的2D射击游戏编写一个UDP服务器,它将在需要时更新和发送世界数据、实体数据、聊天数据等。最近我在为玩家创造一种更换武器的方式时突然想到了一个问题;如果发送到服务器的请求更换武器的数据包丢失了,会发生什么情况?这个问题让我想到了另一个问题;我怎样才能让客户端和服务器确认收到某些数据包或数据block?所以,我想出了以下看起来简单的解决方案来解决这个问题:服务器发送需要确认的数据包。客户端接收数据包并发送确认数据包。服务器检查客户端是否确认了数据。如果客户端没有,重新发送数据。建议的解决方案看起来不错,但是如果确认包丢失或发生任何意外情况会怎样?解

python - 使用 python 创建用于发送 TCP 和 UDP 数据包的客户端和服务器程序

如果用户询问他是否愿意通过TCP或UDP发送,我必须使用python编写客户端和服务器程序。服务器只是发回数据,因为我想知道它需要多长时间(RTT)。服务器如何检测客户端发送的是TCP还是UPD数据?这仅用于教育目的,不能用于生产。到目前为止,我有以下代码:客户端.pyimportsocketnumerofpackets=int(raw_input("Howmanypacketsshouldbesent?\n>"))connectiontype=raw_input("TCPorUDP?\n>")hostname='localhost'i=0ifconnectiontype!="TCP"

http - 通用 TCP、UDP、HTTP 反向代理设置

我喜欢hipache,一个使用Redis的HTTP反向代理,但不支持(以我的经验)TCP。我真的很喜欢轻松地编写我的基本(例如HTTP)反向代理需求的脚本,但是缺少任何UDP或TCP反向代理会导致问题——我必须经常记住foo.com:49182是mysql,而不仅仅是使用mysql-test.foo.com.我能想到的唯一“解决方案”是在不同的端口(可能是8080)上设置一个TCP反向代理,并将其用于需要直接TCP代理的应用程序,例如mysql-test.foo.com:8080。UDP也类似。有没有更好的方法? 最佳答案 hipa

java - Android 音频流的 UDP 或 TCP

我的最终目标是将用户的语音输入流式传输到Android设备再到桌面应用程序。对于Android设备,显然会运行基于Java的Android应用程序。对于桌面应用程序,我正在考虑编写一个Java小程序来接受流。这些是维基百科解释的TCP和UDP的优点和缺点TransmissionControlProtocolisaconnection-orientedprotocol,whichmeansthatitrequireshandshakingtosetupend-to-endcommunications.Onceaconnectionissetup,userdatamaybesentbi-d

networking - 为什么 UDP 广播以比 TCP 低得多的速度阻塞路由器?

想法:我们有一个生成大约200-300Mb/s数据的成像系统,这些数据目前通过以太网电缆传输到计算机,计算机解压缩它们并显示实时图像。我们正试图通过让系统通过以太网电缆将数据包传递到路由器,然后路由器将udp数据包广播到计算机(或最终-多台计算机),从而使系统在LAN上无线化。在最高层看起来有点像这样:之前:成像设备->cat-5->计算机(在达到所需的300Mb/s时工作正常)之后:成像设备->cat-5->路由器->802.11ac无线->电脑(超过5Mb/s的巨大(50%+)数据丢失)-电脑:surfacepro3-路由器:BuffaloAirStationAC1750DD‑WR

networking - UDP 负载平衡使用自定义平衡方法, session ID 位于 UDP 主体内

我正在尝试设置一个能够对UDP流量进行负载平衡的负载平衡解决方案。就我而言,我有几个不同的服务器将UDP包发送到负载均衡器。在每个UDP包体中,都有一个MSG-ID字段。理想情况下,我想根据该MSG-ID将UDP流量负载平衡到一组服务器。换句话说,应该将两个具有相同MSG-ID的UDP包发送到同一台服务器(因为我想将两个具有相同MSG-ID的UDP包组装成一个完整的包以供进一步处理)。但如果不可能,那么基于源/发件人IP的解决方案可能就足够了。Haproxy不支持UDP,所以我正在检查nginx。但是似乎只有nginx-plus(不是免费的解决方案)允许您基于ip_hash方法进行负载

javascript - Node.js websockets 使用 UDP 或 TCP

如何知道在Nodejs上是哪种方法使用了websocket?UDP还是TCP?我该如何改变呢?还是取决于其他因素?我在node.js上使用服务器,在javascript上使用客户端。我不知道哪种类型的协议(protocol)使用我的连接。我想要UDP,因为这是游戏服务器。谢谢 最佳答案 Websockets是TCP。这是一个discussionofthisissue关于游戏。他在那里介绍了websockets、webrtc(UDP的可能选择,但很复杂)、quic(仅在谷歌浏览器中)和他的netcode.io.