2014-11-15 2 views
1

Я экспериментирую с nanomsg.Можно ли подключиться к сокет nanomsg с клиента C#?

Возможно ли подключиться к сокету nanomsg от клиента, используя .NET's Socket class или, если на то пошло, любую другую библиотеку сокетов, отличную от другого клиента nanomsg?

Есть ли онлайн-уроки и/или примеры об этом?

Например, используя nanocat, привяжите сокет к порту. Затем из C# .NET попытаться подключиться к гнезду:

Socket s = new Socket(AddressFamily.InterNetwork, SocketType.Raw, ProtocolType.Raw); 
    s.Connect("127.0.0.1", 1234); 
+0

Кажется, что есть уже [библиотека .NET для nanomsg] (https://github.com/mhowlett/NNanomsg). Глядя на документацию, мне кажется, что это довольно сложный протокол, включая протокол распределенной связи. Я бы подумал, что вам будет намного лучше использовать существующую библиотеку, а не переоценивать все это. –

+0

Я думаю, что ваш комментарий отвечает на мой вопрос лучше всего. Если вы пересмотрите свой ответ, чтобы включить эту ссылку в библиотеку, я помету ваш ответ. – 010110110101

+0

Рад помочь! :) –

ответ

3

Розетки - гнезда. Они абстрагируют сетевые протоколы, такие как TCP и UDP, и отправляют байты взад и вперед.

Итак, вы можете использовать Socket для подключения к любой другой удаленной конечной точке с использованием TCP, даже если эта конечная точка даже не использует сокеты в качестве их реализации.

Конечно, вы все равно должны уметь интерпретировать байты. Но это не относится к классу Socket. Только там можно обеспечить подключение и байтов ввода-вывода.

Если вы просите о том, чтобы иметь дело с протоколом nanomsg, кажется, что уже есть .NET library for nanomsg. Глядя на документацию, мне кажется, что это довольно сложный протокол, включая протокол распределенной связи. Я бы подумал, что вам будет намного лучше использовать существующую библиотеку, а не переоценивать все это.

+0

Возможно, я должен был уточнить. Я могу подключиться к сокете. Например, Putty может это сделать, но немедленно закрывается. В C# я получаю исключения в зависимости от того, как я создаю класс сокета. В принципе, я не могу допустить, чтобы это было полезно. – 010110110101

+1

Я ответил на вопрос, который вы спросили: «Можно ли подключиться к nanomsg?» Если у вас возникли определенные проблемы, вам нужно опубликовать хороший, полный, сжатый пример кода, описать, что происходит, включая точный текст любых сообщений об ошибках и объяснить, что вы хотели бы сделать вместо этого. См. Http://stackoverflow.com/help/mcve и http://stackoverflow.com/help/how-to-ask. Ваше разъяснение на самом деле не сделало этот вопрос более ясным. –

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