This will be needed to improve application performance.
Steps required:
Softswitch: Modify data structure for edges to indicate that the edge is a Multicast and to contain the 64-bits of Multicast masking. This may need to be implemented as a separate array of multicast edges in addition to the array of Unicast edges.
Softswitch: Modify send to have a third option (in addition to device and Supervisor routines) to use tinselMulticast()
Composer: Modify to emit a multicast destination(s) for the edges where appropriate instead of several unicast targets. This will involve Composer caching all of the edges and doing a little bit of magic rather than just blindly writing things to a file. Changes somewhere around line 3800 of Composer.cpp. The edge count will also need massaging.
Placer: Have an algorithm that makes sure edges from one device terminate on the same mailbox where practical.
This will be needed to improve application performance.
Steps required:
tinselMulticast()