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"