The Hurd has both NFS server and client implementations, which work, but not very well: File locking doesn't work properly (at least in conjunction with a GNU/Linux server), and performance is extremely poor. Part of the problems could be owed to the fact that only NFSv2 is supported so far.
This project encompasses implementing NFSv3 support, fixing bugs and performance problems -- the goal is to have good NFS support. The work done in a previous unfinished GSoC project can serve as a starting point.
Both client and server parts need work, though the client is probably much more important for now, and shall be the major focus of this project. One could probably use libnfs for the client portion. You should probably talk to Sergey, who has an in-development 9P port to the Hurd.
Some discussion of NFS improvements has been done for a former GSoC application -- it might give you some pointers. But don't take any of the statements made there for granted -- check the facts yourself!
A bigger subtask is the libnetfs: io map
issue.
This task, GNU Savannah task #5497, has no special prerequisites besides general programming skills, and an interest in file systems and network protocols.
Possible mentors: ?
Exercise: Look into one of the existing issues in the NFS code. It's quite possible that you will not be able to fix any of the visible problems before the end of the application process; but you might discover something else you could improve in the code while working on it
If you can't find anything suitable, talk to us about possible other exercise tasks.