2009-08-05 3 views
4

Есть ли реализация NFS протокола, написанной в C# или хорошей документации тот легко читать, так что я могу реализовать мои собственные ..Где я могу найти реализацию C# /. NET NFS?

Оба сервера и клиента необходимы, но клиент не должен быть C#, должно быть что-то там?

+0

Просто глядя на некоторую справочную информацию. Почему вы хотите реализовать NFS самостоятельно? – Steven

+0

У меня есть Tvix, если вы знаете, что это MediaPlayer для моего телевизора, и он использует NFS для потоковой передачи с компьютера, я хочу иметь возможность расширять контент, который он может доставить, и добавлять некоторые функции, которые я мог бы добавить, если бы у меня был мой собственной реализации NFS. – Peter

+0

Просто для того, чтобы прояснить, я закончил писать свою собственную реализацию с нуля, включая сериализацию XDR .. было очень весело, и я должен сказать, что ребята на солнце, где они умны, когда они разрабатывают протокол, и я узнал много в этом процессе !!! – Peter

ответ

3

Предполагая, что вы не смотрели на это как опыт, я бы предложил взять реализацию C++/C и окружив его с помощью C++/CLI.

Однако единственное упоминание открытого клиента источника окон для NFS 4 является this project при финансовой поддержке MS и университета, который написал эталонную реализацию для многих других ОС

То, что это их statement of intent и предлагает двухгодичный проект извините.

1

Вы можете попробовать портировать Alfresco JLAN Server на C#. Он написан на Java, но оба языка очень похожи.

Alfresco JLAN использует виртуальный интерфейс системы файл , который позволяет вам заглушке в вашей собственной файловой системе реализации с основным сервером обработкой все обмена сетевого протокола между клиентом и сервером . JLAN также является единственной реализацией CIFS окна (общая файловая система Интернета) в , дополняя поддержку NFS и FTP.

http://www.alfresco.com/products/aifs/

+1

Еще несколько java-реализаций NFS: http://galaxy.sourceforge.net/ включает клиента в качестве примера, http://void.org/~steven/jnfs/ - это сервер и http://yanfs.dev. java.net/ является клиентом ... – Stobor

1

Учитывая, что NFS основан на ONC RPC и XDR, я рекомендую использовать реализацию XDR для C#, например RPC.NET.

0

Я рекомендую начать с последнего стабильного исходного кода NFS, а затем запустить его из Cygwin (см. Ниже). Затем вы начнете с полнофункционального хорошо протестированного NFS-клиента и сервера, который затем можно настроить по своему усмотрению.

Попробуйте этот сайт: Cygwin NFS Server HOWTO

2

Здравствуйте, вы можете проверить на моем проекте с открытым исходным кодом http://code.google.com/p/nekodrive Вы можете использовать непосредственно NekoDrive.NFS C# библиотеки, которая оборачивает мою реализацию в V2 V3 е NFS-протокола (V4.1 грядет) .. Он не поддерживает полный протокол, но пока он работает для основных функций просмотра/загрузки/закачивать ..

надеюсь, что это помогает

+0

Я реализовал свой собственный движок nfs: P – Peter

+0

Хе-хе .. Я немного опаздываю: D В любом случае у меня была аналогичная проблема, чем у вас (в моем случае, говоря с сервером nfs на vxworks из окон), и я реализовал свое собственное решение. Я выпустил код, чтобы открыть источник, надеясь, что это поможет кому-то избежать протокола RPC: D – 2010-04-30 15:59:25

+0

Жаль, что это было на github. который использует googlecode + svn? – shellscape

0

Эти ссылки могут помочь:

Первым из них является статья код проекта, описывающий реализацию C# NFS Server

http://www.codeproject.com/KB/IP/NFSServer.aspx

второй является GitHub репо общественности.что содержит исходный

https://github.com/petebarber/NFS

+0

не рекомендовал бы этот. источник - беспорядок, и приложение не работает, как указано в прилагаемой документации. также используя устаревшие методы. – shellscape

0

Я начал сервер NFS v2, основанный на jnfs (реализация на Java от сервера NFS) в C#.

Проект размещен на GitHub здесь https://github.com/shellscape/Snarf

+0

Ну, я уже реализовал свои собственные, один вопрос, почему вы выбрали версию 2? он не поддерживает файлы размером более 2 гб ... – Peter

+0

У меня есть примечание в readme, что следующая версия для v3 протокола. v2 - простейшая реализация и обеспечил хороший способ познакомиться с коммуникацией, узнать, как все работает. Я чувствовал, что функциональная реализация v2 была хорошей отправной точкой для надежной реализации v3. Приятно слышать, что у вас есть свои дела. Я бы посоветовал вам опубликовать его на github или другом сайте с открытым исходным кодом! – shellscape

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