S
S
s2d1ent2022-01-24 19:40:15
Computer networks
s2d1ent, 2022-01-24 19:40:15

How to work with RAM in the network?

Hello everyone, I started reading a book to study networks and in Olifer's book "Computer Networks. Principles, Technologies, Protocols", in the second chapter "General Principles of Building a Network" it is said that when sharing the access of resources in the network, the data stored in the operational memory. In this regard, the question arises:
What opportunities do I have to work with the RAM of another PC on the network? That is, I can only read data from RAM or, in addition, I can write something there. How can I implement RAM access programmatically (via C++ or C#).

Answer the question

In order to leave comments, you need to log in

2 answer(s)
R
rPman, 2022-01-24
@rPman

RDMA protocol and mostly hardware solutions (for example based on InfiniBand ) but also on software over ethernet - for example RoCE or iWARP.
There is also an analogue of gpudirect rdma but within the same server, when video accelerators are connected with an additional cable and can transmit data without passing them through pcie
ps something tells me that the c# language (more precisely, the clr virtual machine) and the speed requirements, due to which they are forced to work with rdma - they don’t stand next to each other, I didn’t even find a single mention of this (there is something from Microsoft, an extension of the smb2 protocol for working through rdma and code examples in c #)

A
Alexey Cheremisin, 2022-01-24
@leahch

1) As RDMA has already been written, it is available over 10Gb ethernet, and via Infiniband
2) There is also such a dull and very exotic thing - Reflective Memory, but it was supplanted in the first paragraph
3) You write something yourself based on the MPI protocol
4) But the paragraph 3 is being supplanted by simple solutions on regular TCP/IP sockets.
Separately, with regard to RDMA, these are usually direct calls in the operating system with the appropriate drivers. As in Windows - I don’t know, but under Linux everything is built into the MPI protocol stack - look into it.

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question