python实现的udp协议Server和Client代码实例
Server端:
#!/usr/bin/envpython #UDPEchoServer- udpserver.py importsocket,traceback host='' port=54321 s=socket.socket(socket.AF_INET,socket.SOCK_DGRAM) s.setsockopt(socket.SOL_SOCKET,socket.SO_REUSEADDR,1) s.bind((host,port)) while1: try: message,address=s.recvfrom(8192) print"Gotdatafrom",address,":",message s.sendto(message,address) except(KeyboardInterrupt,SystemExit): raise except: traceback.print_exc()
Client端:
1#!/usr/bin/envpython #UDPClient-udpclient.py importsocket,sys host=sys.argv[1] textport=sys.argv[2] s=socket.socket(socket.AF_INET,socket.SOCK_DGRAM) try: port=int(textport) exceptValueError: port=socket.getservbyname(textport,'udp') s.connect((host,port)) while1: print"Enterdatatotransmit:" data=sys.stdin.readline().strip() s.sendall(data) print"Lookingforreplies;pressCtrl-CorCtrl-Breaktostop." buf=s.recv(2048) ifnotlen(buf): break print"Serverreplies:", sys.stdout.write(buf) print"\n"