Comments (12)
@cristobalmedinalopez A quick solution would be to put NODE OUT line in drawing file whenever a peer receives good bye message from the splitter. Also, respond to request message if and only if the sender is in peer list.
from simulator.
@cristobalmedinalopez, is there any scenario when above solution would fail?
from simulator.
What should we do for following scenario:
When peer receives a request
messaege from removed peer before receiving good bye
message from the splitter.
if we follow this solution:
@cristobalmedinalopez A quick solution would be to put NODE OUT line in drawing file whenever a peer receives good bye message from the splitter. Also, respond to request message if and only if the sender is in peer list.
then removed peer would appear for time until it don't receives a good bye message.
from simulator.
A quick solution would be to put NODE OUT line in drawing file whenever a peer receives good bye message from the splitter.
You mean it removes itself, isn't it?
Also, respond to request message if and only if the sender is in peer list.
Yes, it sounds good!
When peer receives a request messaege from removed peer before receiving good bye message from the splitter (edited).
Does that action trigger the writing of a NODE IN line in the drawing file?
from simulator.
Does that action trigger the writing of a NODE IN line in the drawing file?
yes, whenever a peer receives a request message from another peer, and if it is not in the forwarding list of origin (of requested chunk), then it write NODE IN for sender in drawing file, that's the cause of this bug. This would overwrite splitter's action of NODE OUT.
from simulator.
A quick solution would be to put NODE OUT line in drawing file whenever a peer receives good bye message from the splitter.
You mean it removes itself, isn't it?
No, i was talking in reference to other peers who will receive GOODBYE message from removed peers.
from simulator.
No, i was talking in reference to other peers who will receive GOODBYE message from removed peers.
It could work with honest peers.
from simulator.
Even if every peer put NODE OUT on receiving GOODBYE message, even then removed peer may appear in network overlay for a tiny interval of time (like a ghost). Because a peer may receive request message before goodbye message. Do you @cristobalmedinalopez think we can do something with that, because possibility seems very low ?
from simulator.
Even checking sender in peer_list before responding to request_chunk message will not work due to above reason.
from simulator.
I think it's not an important issue that removed peers appear like a ghost if finally they are completely removed from the graph. What do you think @vicente-gonzalez-ruiz? Any other idea @josmanual?
from simulator.
@cristobalmedinalopez , how should we check if removed peer is in peer_list or not, as we just have a forwarding list? should we check this peer in every forwarding list ?
from simulator.
No, I think it would be enough checking the forwarding list of itself (where it is the origin).
from simulator.
Related Issues (20)
- Add examples to README.md HOT 1
- Lost data recovery system using error correction codes
- Defining default parameters for the simulator HOT 1
- Feeding the simulator with a real source HOT 33
- Concise representation of a peer end-point for better visualisation. HOT 27
- Playback control for simulation visualisation HOT 1
- Select colormap
- The process to send pending chunks before leaving the team freezes the peer
- PyQT/play.py KeyError when update_buffer was called
- Representation of a half-duplex or a full-duplex link.
- Missing Code in peer_sts.py file HOT 1
- Provide a argsparser to the simulator
- Peers must transmit the stream even if the player is not connected
- A peer should be able to send the chunks to more than one player
- Implementation of a streams merger
- Implementation of a splitters synchronizer
- Implementation of FCS (Free-riding Control Set)
- Implementation of a Vorbis/Theora transcoder for Multiple Description Coding
- Implementation of a Vorbis/Theora transcoder for Scalable Coding
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 simulator.