2015-03-19 4 views
1

В моем новом проекте я изучаю концепцию ZeroConf. Я очень новичок в этом, и я прочитал много статей об этом в сети и понял эту концепцию. Мой вариант использования выглядит следующим образом: - В моем проекте у меня есть шлюз на базе Linux с демоном Avahi на нем как поставщик Zero Conf. Я хочу, чтобы мой шлюз был доступен для моих клиентов. Клиенты обнаруживают шлюз и устанавливают TCP-соединение со шлюзом. Для этого я должен опубликовать Сервис на моем шлюзе. Клиент будет искать эту службу и разрешать ее, получая IP-адрес и порт. Как только клиент получит клиент IPAddress и Port, вы можете установить TCP-соединение с сервером. В настоящее время я использую Mono.ZeroConf для всей реализации. Теперь мой вопрос в том, какой должен быть мой тип сервиса для этой службы. Если я зарегистрирую свою услугу какТип сервиса для ZeroConf

«_http._tcp 1234 EchoService» , то он успешно зарегистрировал услугу, и от клиента я могу ее просматривать и решать. Также клиент может успешно подключиться к серверу TCP, работающему на шлюзе, и может обмениваться данными.

Также я хочу знать, могу ли я создать свой собственный тип сервиса или нет.

Заранее спасибо.

ответ

0

Это зависит от протокола, который реализуется вашим шлюзом. Тип сервиса ZeroConf говорит, что «что» рекламируется И также «как», чтобы использовать услугу, то есть какой протокол использовать для этой услуги. Итак, если ваш шлюз реализует стандартный общеизвестный протокол, вы можете использовать один из известных типов услуг, который вы можете найти here и here.

Например, если ваш шлюз является прокси-сервером SOCKS, вы должны рекламировать его как службу _socks._tcp. Если ваш шлюз реализует проприетарный протокол, вы можете захотеть зарегистрировать новый тип сервиса. Если вы не хотите публично публиковать свое имя типа своей услуги, вы можете попросить IANA сохранить его в течение некоторого времени. Однако вам не обязательно это делать. Вы можете просто использовать GUID-подобное имя службы, которое должно гарантировать уникальность.

Я рекомендую прочитать или, по крайней мере, ознакомиться с отличной книгой о ZeroConf: Zero Configuration Networking: The Definitive Guide Стюарт Чешир и Даниэль Х Штейнберг. BTW, Стюарт Чешир является одним из авторов ZeroConf.

Смежные вопросы