All the PLM machinery is implemented at the receiver. In this section we decribe the instantiation process of a receiver. To create, place at node n, attach to source S, and start at t a PLM receiver we call the PLMTopology instproc build_receiver n addr t C where addr is the address returned by place_source when S was created, and C is the check value. The receiver created by build_receiver is an instance of the class PLM/ns, the ns interface to the PLM machinery. At the initialisation of the receiver, the PLM instproc init is called due to inheritance. init calls the PLM/ns instproc create-layer and, by this way, creates as many instances of the class PLMLayer/ns (the ns interface to the PLMLayer class) as there are layers. Each instance of PLMLayer/ns creates an instance of the class PLMLossTrace which is reponsible for monitoring the received and lost packets thanks to the fact that the class PLMLossTrace inherits from the class Agent/LossMonitor/PLM. Fig. 38.1 schematically describes the process of a PLM receiver instantiation. In the following we describe the behavior of a PLM receiver when it receives a packet and when it detects a loss.
Tom Henderson 2011-11-05