python網路編程之UDP實現,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()