python网络编程之UDP实现

一、简介:

python udp是无连接,没有TCP的三次握手,错误重传机制,发的只管发,收的只管收,效率比TCP高,运用于对数据帧不高的地方,如视频,音频的传输

二、实现过程:

   服务器端过程如下:

1.建立UDP的SOCKET

2.绑定一个接口,让客户端连接

3.接受数据


 客户端过程如下:
1.创建一个socket

2.收发数据报


三、代码实现

    1.服务器端:

import socket
from time import ctime

def udpServer():
    buffer=2048
    address=("127.0.0.1",8080)
    udpsock=socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
    udpsock.bind(address)
    while True:
        print "wait for message..."
        data,addr=udpsock.recvfrom(buffer)
        udpsock.sendto('[%s]%s' %(ctime(),data),addr)
        print '...received from and retuned to:',addr 
    udpsock.close()

if __name__=="__main__":
    udpServer() 

  2.客户端:

import socket
def udpClient():
    address=('localhost',8080)
    udpClientSocket=socket.socket(socket.AF_INET,socket.SOCK_DGRAM) #创建socket
    while True:
        data=raw_input('>')
        if not data:
            break
        udpClientSocket.sendto(data,address) #发送数据
        data,addr=udpClientSocket.recvfrom(2048)
        print data
    udpClientSocket.close()
 
if __name__=="__main__":
     udpClient()  




  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值