Может стоит посмотреть в сторону MSMQ? Не знаю, есть ли аналоги для linux, но вообще очень удобно. Одна система по мере подготовки xml'ей, скидывает их в remote-очередь, другая вынимает и обрабатывает. В случае нарушения связи сообщения копятся в локальной очереди, а после возобновления соединения, отсылаются на удаленный сервер.