草庐IT

tcp - 标准聊天应用程序

快速提问:大多数聊天应用程序(即AIM、Skype、Oovoo)是否使用点对点UDP交换与其他用户交谈或与服务器的回显TCP连接?或者两者之间的某种组合? 最佳答案 传统上,大多数应用程序使用类似TURN的解决方案(即通过服务器进行通信)来克服NAT穿越问题。由于聊天不会占用太多带宽,服务器可以支持数千次通信。但是现在P2P已经发展并且NAT遍历问题现在已经很清楚了,一些使用直接UDP通信,前提是用户的NAT允许这样做(即,类似于STUN的通信)。他们仍然需要一个中央服务器来打洞。当需要传输大量数据时,直接通信也很有用。我相信可以公

tcp - ns-3 wlan grid TCP 在 UDP 运行时不工作

我正在尝试在ns-3中设置多跳AdHoc802.11g网络。首先,我使用了示例“wifi-simple-adhoc-grid.cc”。示例使用UDP,但我想使用TCP。所以我换了TypeIdtid=ns3::UdpSocketFactory::GetTypeId();PtrrecvSink=Socket::CreateSocket(c.Get(sinkNode),tid);InetSocketAddresslocal=InetSocketAddress(Ipv4Address::GetAny(),80);recvSink->Bind(local);recvSink->SetRecvCa

tcp - 无法使用 Live555 代理服务器流式传输 RTSP

我正在将Live555流媒体用于记录和重新流式传输来自IP摄像机的RTSP流的应用程序。为此,我使用openRTSP进行录制,使用live555代理服务器重新流式传输摄像机流。对于一些摄像头,我们面临一个奇怪的问题,即摄像头录制成功,但live555代理服务器无法为同一摄像头流生成新流(详细输出转储中没有失败的迹象,但是代理服务器生成的rtspurl不能被rtsp客户端解码)。由于我对live555代理服务器的细节一无所知,所以我一直无法解决这个问题。我尝试使用VLC流式传输相同的相机流,效果很好。这可能有什么问题。我特此附上详细输出以供引用。E:\...\live\proxyServ

python - Scapy:伪造数据包时要重新计算的字段

我正在使用Scapy伪造我捕获的某些数据包中IPheader中的TTL值。除了IP和传输层header中的校验和,还有什么我应该重新计算的吗?现在我在做:forpinmyPackets:p[IP].ttl=targetTTLdel(p[IP].chksum)del(p[IP].payload.chksum)foriinrange(len(myPackets)):myPackets[i]=myPackets[i].__class__(str(myPackets[i]))我问这个是因为Scapy的sr函数,它将数据包与其响应(在我的例子中是ICMP)相匹配,返回的数据有几个RTT>1秒,这

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?所以,我想出了以下看起来简单的解决方案来解决这个问题:服务器发送需要确认的数据包。客户端接收数据包并发送确认数据包。服务器检查客户端是否确认了数据。如果客户端没有,重新发送数据。建议的解决方案看起来不错,但是如果确认包丢失或发生任何意外情况会怎样?解

http - 哪种服务器类型最适合 "validation server"?

关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。要求我们推荐或查找工具、库或最喜欢的场外资源的问题对于StackOverflow来说是偏离主题的,因为它们往往会吸引自以为是的答案和垃圾邮件。相反,describetheproblem以及迄今为止为解决该问题所做的工作。关闭8年前。Improvethisquestion我正在用python编写服务器和客户端系统。该系统的目的是检查客户端是否在线。客户端会定期向中央服务器发出“签到”请求。如果服务器在指定的时间段内没有收到该请求,它将向人工发出警报。我是网络编程的新手,所以我不确定哪种技术最适合我正在尝

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"