Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement remote socket using RDMA capability for moving files from FTAs to file servers #182

Open
brettkettering opened this issue Feb 1, 2017 · 0 comments

Comments

@brettkettering
Copy link
Contributor

Implement the remote socket using RDMA capability for moving data to/from the component file system's server interacting directly with the ZFS file system and taking NFS out of the loop.

Basic test working. Needs to be integrated to MarFS. Until we have Seagate drivers that allow for writing directly to SMR drives, we need to develop a scheme to maximize writing to the PMR cache and having that transferred to the SMR drives without seeing the big dip in performance we see now if we continue writing full blast to the Zpools. Or, we let the drives themselves gate the data transfer.

Server is now threaded and can handle many clients. Some benchmarking done: 4 threads saturate the IB link at 5.6 GB/s with 1MB payloads. 8 threads don’t get worse.

Getting 200+MB/s on our small zpools. Bandwidth test is taking 10%-20% CPU.

Working on integrating with libne.

Need to add authentication.

Jeff is working on establishing the performance to a capability unit to get an idea of the performance per unit. This will give us some idea about the aggregate performance we should expect from a pod using the remote socket with RDMA mechanism.

Completed the protocol implementation such that the server-side buffer is not overrun while writing and the client-side buffer is not overrun while reading.

@brettkettering brettkettering added this to the Spring 2017 MC Release milestone Feb 1, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants