Поставь материнку с 2 сетевыми карточками, пингуй соединение через N-ный промежуток времени и если есть задержки больше определенного значения, закрывай его, поднимай второе и снова пингуй его, если здесь хуже чем в предыдущем, то рви и его и подключай снова первое