python接收udp包函数,如何在Python中接收UDP包而不丢弃

如果没有看到你的剧本,或者你是怎么做的,我们就帮不上你了。但是,如果您使用Python的twisted库,这是很平常的。下面是一个简单的例子,取自他们的examples page:from twisted.internet.protocol import DatagramProtocol

from twisted.internet import reactor

class MulticastPingPong(DatagramProtocol):

def startProtocol(self):

"""

Called after protocol has started listening.

"""

# Set the TTL>1 so multicast will cross router hops:

self.transport.setTTL(5)

# Join a specific multicast group:

self.transport.joinGroup("228.0.0.5")

def datagramReceived(self, datagram, address):

print "Datagram %s received from %s" % (repr(datagram), repr(address))

if datagram == "Client: Ping":

# Rather than replying to the group multicast address, we send the

# reply directly (unicast) to the originating port:

self.transport.write("Server: Pong", address)

# We use listenMultiple=True so that we can run MulticastServer.py and

# MulticastClient.py on same machine:

reactor.listenMulticast(8005, MulticastPingPong(),

listenMultiple=True)

reactor.run()

您可以解析def datagramReceived函数中的每个包。在

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值