Найти ближайший сервер в сети - PullRequest
2 голосов
/ 19 февраля 2009

Учитывая список серверов и список клиентов, как найти сервер, ближайший к конкретному хосту, используя "traceroute"? Программа должна быть в Java.

Ответы [ 2 ]

2 голосов
/ 19 февраля 2009

Что вы определяете как «ближайший»? Множество прыжков в трассировке не указывают на близость только к устройствам, через которые проходит маршрут. Пинг также не слишком велик, так как он просто показывает задержку.
Я хотел бы предложить, если вы находитесь в Интернете, используйте BGP для определения близости. Если вы находитесь на лане или у вас есть связь с BGP, тогда отступите к Traceroute .

Эти ссылки ведут на Java-реализации BGP и traceroute.

1 голос
/ 19 февраля 2009

Я не думаю, что это можно сделать, используя только стандартный Java API, так как он недостаточно поддерживает протокол ICMP. Вы можете сделать это, используя Jpcap .

...