Módulo p2p de Ethereum-aprendizaje del código fuente de Ethereum

módulo p2p

El módulo p2p expone la estructura clave del servidor al exterior, ayuda a la capa superior a gestionar la compleja red p2p, de modo que se centra en la implementación del protocolo y solo se centra en la transmisión de datos.

El servidor utiliza el módulo de descubrimiento para administrar el descubrimiento y el mantenimiento de nodos en la red en el puerto UDP designado. El módulo de descubrimiento puede intercambiar información directamente sobre cada nodo conocido con los nodos vecinos, actualizando continuamente la red de nodos.

El servidor todavía usa el módulo nat para el mapeo de puertos TCP, y nat usa principalmente los dos protocolos upnp y pmp. Si no los hay, la ip especificada solo se puede considerar como la ip de la red pública.

El servidor necesita intercambiar datos en el puerto 30303 de la red udp y tcp y p2p al mismo tiempo. El primero se usa para mantener la red P2p, y el segundo es el lugar donde varios protocolos de aplicación realmente intercambian datos. El formato que usan es Msg; consulte  p2p_server para obtener más detalles .

En cuanto a cómo usar Servidor y Protocolo, puedes ver  Peer-to-Peer,  aunque no es muy detallado, pero básicamente ha explicado cómo usar Servidor y Protocolo.Si estás interesado, puedes implementar tu propio protocolo basado en esta red p2p, que no puede tener nada que ver con las aplicaciones Ethereum.

Supongo que te gusta

Origin blog.csdn.net/weixin_39842528/article/details/108375995
Recomendado
Clasificación