Update CmdDispatcher routing algorithm #2547
kubiak-jpl
announced in
Call for Comments
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Issue
Currently CmdDispatcher uses an array to map command opcodes to Component ports. When CmdDispatcher receives a command to walks this array looking for a corresponding entry. If the opcode is found it is then forward the the appropriate component and handled there. This approach has a few disadvantages
fpp
does not currently handle it gracefullySuggested Fix
Instead of mapping individual opcodes to ports, act more like a router. CmdDisplatcher could store IdBases and OpCode ranges on a per-component bases. This would have a number of benefits
Additionally, I think many ideas from IP network routing and topologies could be applied to this new approach as well. Although these may be overkill for routing opcodes to components.
Diagrams
Current Approach
Proposed Approach
Proposed Approach - Multi-Deployment system
Potential Issues
Beta Was this translation helpful? Give feedback.
All reactions