Peer-to-peer nós para processamento em multipontos
Publicado por Diego Lopes (última atualização em 31/05/2024)
[ Hits: 1.175 ]
Homepage:
Script simulam uma rede usando multipontos, o script pode ser alterado para rodar em quantos computadores forem desejados.
Esta conexão usa protocolo UDP.
#Author:Diego Silva #Date:04/23/2024 #Description:node to generate service and change information import socket from threading import Thread import time #setting info to server HOST='' PORT=4000 logged_node=False VERSION='1.0.0.0' nodehost='192.168.15.7' nodepor=4001 #thread process class ProcessNode(Thread): def __init__(self,udp,udp_client): Thread.__init__(self) self.udp = udp self.udp_client = udp_client def run(self): try: if logged_node==False: logged_node=True self.udp_c.sendto(b'hello',(nodehost,nodepor)) except: logged_node=False while 1: msg, client = self.udp.recvfrom(1024) print(msg) try: self.udp_client.sendto(msg,(nodehost,nodepor)) except: print("Node don't found") time.sleep(2) print("Done process") self.udp.close() #class up to server udp class UpServerSetting: def settingServerNode(self): msg="Error to up node, check setting port/host" try: print("Initing node server") server_udp = socket.socket(socket.AF_INET,socket.SOCK_DGRAM) server_udp.bind((HOST,PORT)) msg="Node is Done" except: print("Fail to up node of net") finally: print(msg) return server_udp #class to clint another node class UpClientSetting: def settingClientNode(self): msg="Error To Generate Client" try: client_udp = socket.socket(socket.AF_INET,socket.SOCK_DGRAM) msg="Done Object client udp" except: print(msg) finally: print(msg) return client_udp if __name__ == '__main__': print('Head Of Hydra {}'.format(VERSION)) sett = UpServerSetting() udp = sett.settingServerNode() sett_client = UpClientSetting() udp_c = sett_client.settingClientNode() udp_c.sendto(b'hello',(nodehost,nodepor)) while True: msg, client = udp.recvfrom(1024) if(msg.decode()=='hello'): print("Client loggin: ",msg.decode()) process = ProcessNode(udp,udp_c) process.start() print('Finishing client connection', client) udp.close() #process = ProcessNode(udp) #process.start()
Ligando máquina pela rede usando Python
Compilando um Kernel customizado a partir do código-fonte do Kernel do Debian 12
Gentoo binário ao lado da sua distro atual
Documentação para a função de carregamento saudável da bateria do notebook Acer Aspire 5 no Linux
Instalando Google Chrome no Linux Mint 22
O Que Fazer Após Instalar Linux Mint 22
Instalando o Dolphin e deixando-o "pretinho" acompanhando o tema escuro do Gnome-Shell
Meu computador está travando (12)
Meu computador não aceita o Linux de nenhuma maneira (7)
Máximo que meu PC suporta de gigas no HD ou ssd. (5)
Error no such device : 3C8E-127A. error: disco 'hd1,gpt... não e... (3)