Hi Tommaso,
Thanks for the response.
I had read the tutorial cover to cover, although I have to admit that I didn't understand all of it.
Anyway, I have managed to figure out the solution to above problem. I'd describe it here so that if anyone wants to do something similar, can get an idea.
I was right in thinking that I had to change i+nSinks in line 354, but by changing it to i, I essentially made the UDP source/sink pairs to reside on the same node, which meant nothing was sent out on the network. To change it, I just introduced a new integer variable j, making it equal to nSinks and decrementing it in the loop. Replacing i+nSinks with --j installs sources on the same nodes that have sinks installed on them, just in reverse order. So, for example, if nSinks is equal to 10, node 0 will be source for sink 9, 1 for 8, 2 for 7 and so on. So, actually each node can transmit and receive the data simultaneously. Here's the modified code:
int j=nSinks;
346 for (int i = 0; i < nSinks; i++)