永远爱学习

导航

Python 网络编程详解 udp

17.1.2 UDP编程

服务端:

import socket

HOST = ''              

PORT = 50007            

s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)

s.bind((HOST, PORT))

while 1:

    data, addr = s.recvfrom(1024)

    print 'Connected by', addr

    print "Received: ", data

    s.sendto("Hello %s"% repr(addr), addr)

conn.close()

 

客户端:

import socket

HOST = '192.168.1.99'                

PORT = 50007            

s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)

s.sendto(data, (HOST, PORT))

data = s.recv(1024)

s.close()

print 'Received: ', data

 

运行方式与TCP编程一样。

使用UDP协议时,服务端就少了listen()和accept(),不需要建立连接就直接接收客户端的数据,也是把数据直接发送给客户端。

客户端少了connect(),同样直接通过sendto()给服务器发数据,但是需要在sendto方法中指定udp服务器域名和端口号信息。

而TCP协议则前提先建立三次握手。

 

posted on 2018-09-17 15:25  永远爱学习  阅读(258)  评论(0)    收藏  举报