Это не алгоритм, а протокол (или протоколы) для обнаружения соседей. Если на ваших коммутаторах / устройствах включен протокол обнаружения канального уровня (LLDP), вы можете использовать его для определения сети физических соединений.
Обратите внимание, что старые коммутаторы Cisco могут не иметь LLDP, но будут иметь CDP, запатентованную реализацию обнаружения. То же самое касается коммутаторов Nortel и Extreme, которые также имеют свои собственные протоколы. Но LLDP теперь является стандартом ( 802.1AB ), который следует использовать для обнаружения.
Вы также можете увидеть на странице Википедии, что есть реализации LLDP (и других проприетарных протоколов) для Linux / Windows / Mac. Также VMware ESX реализует CDP.