Working with UDP sockets

Unlike TCP, UDP doesn't check for errors in the exchanged datagram. We can create UDP client/servers similar to the TCP client/servers. The only difference is you have to specify SOCK_DGRAM instead of SOCK_STREAM when you create the socket object.

Let us create a UDP server. Use the following code to create the UDP server:

from socket import socket, AF_INET, SOCK_DGRAM
maxsize = 4096

sock = socket(AF_INET,SOCK_DGRAM)
sock.bind(('',12345))
while True:    
  data, addr = sock.recvfrom(maxsize)
    resp = "UDP server sending data"    
  sock.sendto(resp,addr)

Now, you can create a UDP client to send some data to the UDP server, as shown in the following code:

from socket import socket, AF_INET, SOCK_DGRAM MAX_SIZE = 4096 PORT = 12345 if __name__ ...

Get Learning Python Network Programming now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.