Мы делали очень похожее под ДОС. И алгоритм поиска всех возможных
путей на графе там был. Но сильно сомневаюсь что это можно повторно
использовать :( Из хитростей помню в каждой записи "отрезка" было поле "расстояние до ядра" (в "хопах").
По этому полю в несколько проходов находили маршруты от оконечного устройства "вверх".