Home  >  Article  >  Backend Development  >  python实现的udp协议Server和Client代码实例

python实现的udp协议Server和Client代码实例

WBOY
WBOYOriginal
2016-06-16 08:43:581235browse

直接上代码:
Server端:

复制代码 代码如下:

 #!/usr/bin/env python
 # UDP Echo Server -  udpserver.py
 import socket, 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))

 while 1:
     try:
         message, address = s.recvfrom(8192)
         print "Got data from", address, ": ", message
         s.sendto(message, address)
     except (KeyboardInterrupt, SystemExit):
         raise
     except:
         traceback.print_exc()
 
Client端:
复制代码 代码如下:
1 #!/usr/bin/env python
 # UDP Client - udpclient.py
 import socket, sys

 host = sys.argv[1]
 textport = sys.argv[2]

 s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
 try:
     port = int(textport)
 except ValueError:
     port = socket.getservbyname(textport, 'udp')
 s.connect((host, port))
 while 1:
     print "Enter data to transmit:"
     data = sys.stdin.readline().strip()
     s.sendall(data)
     print "Looking for replies; press Ctrl-C or Ctrl-Break to stop."
     buf = s.recv(2048)
     if not len(buf):
         break
     print "Server replies: ",
     sys.stdout.write(buf)
     print "\n"
 
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn