  Consider a processor having access only to meta-data consisting of the
timings of data packets and acknowledgment (ACK) packets from all nodes in a
network. The meta-data report the source node of each packet, but not the
destination nodes or the contents of the packets. The goal of the processor is
to infer the network topology based solely on such information. Prior work
leveraged causality metrics to identify which links are active. If the data
timings and ACK timings of two nodes -- say node 1 and node 2, respectively --
are causally related, this may be taken as evidence that node 1 is
communicating to node 2 (which sends back ACK packets to node 1). This paper
starts with the observation that packet losses can weaken the causality
relationship between data and ACK timing streams. To obviate this problem, a
new Expectation Maximization (EM)-based algorithm is introduced -- EM-causality
discovery algorithm (EM-CDA) -- which treats packet losses as latent variables.
EM-CDA iterates between the estimation of packet losses and the evaluation of
causality metrics. The method is validated through extensive experiments in
wireless sensor networks on the NS-3 simulation platform.
