Socket UDP em Python

Опубликовано: 01 Октябрь 2024
на канале: Simplificando Redes
1,404
35

Objetivos:
1)Fazer um socket simples que faz apenas uma transmissão em UDP.
2) Breve analise do tamanho de buffer de recepção no Wireshark.

Prof. Dalbert

Video ensinando a criar a rede virtual entre maquina real e maquina virtual:
   • Criando uma Rede Virtual no Virtualbox  

Codigos usados neste video:

Cliente UDP:
import socket
IP_Servidor = '127.0.0.1' # Endereco IP do Servidor
PORTA_Servidor = 6000 # Porta em que o servidor estara ouvindo
socket.AF_INET = INET (exemplo IPv4)sockets, socket.SOCK_DGRAM=usaremos UDP
udp = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
DESTINO = (IP_Servidor, PORTA_Servidor) #destino(IP + porta)
Mensagem = raw_input() # Mensagem recebera dados do teclado
udp.sendto (Mensagem, DESTINO) # enviar a mensgem para o destino(IP + porta)
udp.close() # finalizar o socket


Servidor UDP:

import socket
MEU_IP = '' # Endereco IP do Servidor, '' = significa que ouvira em todas as interfaces
MINHA_PORTA = 6000 # Porta que o Servidor vai ouvir
socket.AF_INET = INET (exemplo IPv4)sockets, socket.SOCK_DGRAM=usaremos UDP
udp = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
MEU_SERVIDOR = (MEU_IP, MINHA_PORTA)
udp.bind(MEU_SERVIDOR) # faz o bind do ip e a porta para que possa comecar a ouvir
Mensagem_Recebida, END_cliente = udp.recvfrom(1024)
print 'Recebi = ',Mensagem_Recebida,' , Do cliente', END_cliente
udp.close()
socket.recvfrom(bufsize[, flags])
#Recebe dados do soquete = um par (string, endereco) onde string eh uma string representando os dados recebidos
endereco eh o endereco do socket que enviou os dados.
#este valor deve ser uma potencia de 2


Referências :
https://docs.python.org/2/library/soc...
https://docs.python.org/3/howto/socke...
https://wiki.python.org.br/SocketBasico