Project feasibility - Implement Fast Byzantine Paxos in Slang

32 views
Skip to first unread message

fabiim

unread,
Apr 10, 2013, 7:37:47 AM4/10/13
to smalltalk-g...@googlegroups.com
Hi all, 

I need to ask two things regarding this project ideia: 
  • Does it have to be Paxos (fast paxos)? Paxos is known for "being greek to many readers". Implementation of the Practical Byzantine Fault Tolerant (PBFT ) from Castro and Liskov is much more practical and easily implemented. The downside is that the latter is focused in state machine replication but it can be made to service the purpose of Consensus; 
  • Does it have to be fast? I mean one can not hope to do this in three months (i think) if it is has to show state of the art performance. This would require among other things doing some reliable and fast asynchronous , batched network i/o on the protocol; 

Best regards, 
Fábio Botelho

Paul DeBruicker

unread,
Apr 11, 2013, 1:30:46 PM4/11/13
to smalltalk-g...@googlegroups.com

Hello Fábio, 

I don't know the answers to your questions but I proposed the project and so am responding with my best guesses.  


On Wednesday, April 10, 2013 4:37:47 AM UTC-7, fabiim wrote:
Hi all, 

I need to ask two things regarding this project ideia: 
  • Does it have to be Paxos (fast paxos)? Paxos is known for "being greek to many readers". Implementation of the Practical Byzantine Fault Tolerant (PBFT ) from Castro and Liskov is much more practical and easily implemented. The downside is that the latter is focused in state machine replication but it can be made to service the purpose of Consensus; 

I think the consensus part of Paxos is more important than the robustness in the face of byzantine treachery.  My selfish goal when I proposed this project is to by the end have a system, or be on the path towards a system that works like http://openreplica.org/ but implemented in Smalltalk.  It would be nice to be able to easily create robust, distributed server applications in Smalltalk, and hopefully have a tool that many can use with little configuration other than pointing images at each other or a discovery service.  
 
  • Does it have to be fast? I mean one can not hope to do this in three months (i think) if it is has to show state of the art performance. This would require among other things doing some reliable and fast asynchronous , batched network i/o on the protocol; 


The 'Fast' in the title refers to the fast byzantine paxos protocol   and not any overall performance goals.  I imagine the progression of making this is write it in Smalltalk, then as/if necessary convert parts to Slang.  As I'm sure you're aware there are lots of ways functional slow things can be made faster but right now there is nothing functional.  There is another potential GSOC project to integrate an event library (http://gsoc2013.esug.org/projects/event-lib) that may help with the i/o aspects you mention.  


 
Best regards, 
Fábio Botelho


Hope this helps and thanks for asking the questions


Paul DeBruicker 
Reply all
Reply to author
Forward
0 new messages