230 likes | 332 Views
Overview. DyRAM : a new approach Simulation results Conclusion and perspectives. Motivations. Router’s caching means are limited. Routers have to support many sessions in parallel. Question : How the memory usage can be reduced ? Answer :
E N D
Overview • DyRAM : a new approach • Simulation results • Conclusion and perspectives
Motivations • Router’s caching means are limited. • Routers have to support many sessions in parallel. • Question : How the memory usage can be reduced ? • Answer : Perform local recoveries from the receivers instead of the routers
Related works on local recovery • SRM • any receiver in the neighborhood • RMTP, TMTP, LMS, PGM • a designated receiver • LBRM • a logging server
DRARM main caracteristics • Based on a tree structure constructed on a per-packet basis. • Receiver-based: use of NACKs. • Receivers perform local recoveries. • Routers play an active role. • More efficient replier election • Load balancing features • Low-overhead active services
DyRAM : routers contribution My name is ACTIVE ROUTER and I can do NACK SUPPRESSION SUBCASTING DYNAMIC REPLIER ELECTION
data data data NACK data data NACK data data NACK DyRAM: Replier election data The replier is elected on a per-packet basis.
Routers’ soft state The NACK State (NS) structure which maintains for each received NACK, • seq : the sequence number of the requested packet. • time : the reception time of the last valid similar NACK. • subList : List of the links from which similar NACKs arrived.
Routers’ soft state (cont.) The Track List (TL) structure which maintains for each multicast session, • lastOrdered : the sequence number of the last received packet in order • lastReceived : the sequence number of the last received data packet • lostList : list of not received data packets in between. Reduces the replier election delay.
DyRAM main algorithms • NACK packet service • Data packet service • The DTD timer handler
The NACK packet service If (processed) then check if valid update the corresponding NS accordingly else// not processed create a new NS If (valid) then init (DTD timer) else drop this NACK
The data packet (DP) service update the TL of the session If DP is a repair then look for the corresponding NS structure send the DP through links in NS.subList free NS else simply forward the DP on all the downstream links
The DTD expiration handler forward the NACK on link i downstream where i=(last+1)%B with i not in NS.subList and last is the previous replier link Last = i
Overview • DyRAM : a new approach • Simulation results • Conclusion and perspectives
Simulation Results • Network model and used metrics • Local recovery from the receivers • DyRAM vs. ARM • DyRAM combined with cache at routers
Metrics • Load at the source : the number of the retransmissions from the source. • Load at the network : the consumed bandwidth. • Completion time per packet (latency).
Local recovery from the receivers • Local recovery reduces the load at the source, the consumed BW and the recovery delay (especially for high loss rates and a large number of the receivers).
Local recovery from the receivers (cont.) • As the groups size increases, the recovery from the receivers is more and more beneficial.
DyRAM vs ARM • ARM performs better than DyRAM only for very low loss rates with considerable caching requirements
DyRAM combined with cache at the routers • When DyRAM benefits from the cache at the routers in addition to the recovery from the receivers, it always performs better than ARM.
Overview • DyRAM : a new approach • Simulation results • Conclusion and perspectives
Conclusion • DyRAM achieves local recovery by enabling the recovery from the receivers. • Unlike ARM, DyRAM avoids overloading the routers by caching data packets. • However, DyRAM achieves better performances than ARM in various scenarii. • DyRAM provides some load-balancing facilities.
Perspectives • DyRAM will be implemented and tested on an active network testbed. • To be considered : • NACK reverse-path requirements • the DTD timer setting • topology limitations • optimization of the election process