Comments (3)
Within Blockchain you form a network between the nodes. When nodeA and nodeB are connected somehow (inbound or outbound), they already have a connection together within this network. This connection is bi-directional. Both nodes are able to start communication with each other. So, there is no need to make on TCP/IP level two connections. Another aspect is, when allowing two TCP/IP connections between the same nodes, it makes things more complex than needed. Thus, for the blockchain network you just need a connection between the two. How this has been established is not relevant.
from python-p2p-network.
Now your question "If in the previous setup a nodeB calls send_to_nodes, will it reach nodeA?". In this case ... no ... but you can implement this. It is application specific. This Python library tends to be a framework in which you can implement peer-to-peer decentralized applications. In your example, you can implement that nodeB relays the message to nodeA. In fact, within peer-to-peer decentralized application, this is very common to have. For example, you could send a discovery message in order to see how big the network is. If a node gets this discovery message, it should relay it further into the network. To prevent circulation of messages like these, you need to do some administration.
from python-p2p-network.
I assume your question has been answered ;).
from python-p2p-network.
Related Issues (20)
- I have question about the "nodeconnection.py" HOT 1
- I have link question between "node.py" and "nodeconnection.py" HOT 2
- Pip3 version is out of date and unstable HOT 2
- how HOT 1
- how to HOT 1
- how to use send_to_node api? HOT 2
- Import "p2pnetwork.node" could not be resolved HOT 1
- Bug in connect_with_node function in node.py HOT 2
- implementing compression to transfer large files over socket. HOT 11
- Change to Tox testing suite HOT 3
- New feature: Plugins HOT 4
- Length protocol instead of EOT HOT 13
- Issue: unit test test_node_max_connections failed HOT 2
- Info about node discovery HOT 3
- OS Error when stopping nodes HOT 1
- Non UTF-8 messages will throw exception
- Crash if node id malformed HOT 1
- Misspelled debug messages
- Hello, how to implement the broadcast and discovery of nodes?
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from python-p2p-network.