Allan Adamson to nazwisko inżyniera Oracle, który zlecił ten projekt. Pracuje nad rozwojem jądra Linuksa dla dystrybucji tej firmy, a teraz otrzymał wprowadzenie do łączenia pamięci flash NVMe przez TCP.
Oracle Linux UEK5 Jest to wersja, którą NVMe wprowadził do Fabrics, umożliwiając w ten sposób przesyłanie poleceń pamięci NVMe przez sieci takie jak Infiniband lub Ethernet za pomocą RDMA, zarówno szeroko stosowanych w HPC, jak i centrach danych. W wersji UEK5U1 wsparcie to zostało rozszerzone o obsługę kanałów światłowodowych.
Teraz w UEK6 to nowe NVMe przez TCP, która ponownie rozszerza powyższe, aby obsługiwać standardową sieć Ethernet bez konieczności zakupu sprzętu do sieci przestrzennej zgodnego z RDMA.
Teraz, jeśli się zastanawiasz o co chodzi z nvme over tcpPowinieneś wiedzieć, że model wielu kolejek NVMe implementuje do 64.000 XNUMX kolejek wysyłania i zakończenia operacji we / wy, a także jedną kolejkę zarządzania i kolejkę zakończenia w każdym kontrolerze NVMe. W przypadku kontrolera NVMe podłączonego do PCIe te kolejki są implementowane przez pamięć hosta i są współdzielone przez procesory hosta i kontroler NVMe.
We / wy jest wysyłane do Urządzenie NVMe gdy sterownik urządzenia zapisuje polecenie w kolejce wysyłania, a następnie zapisuje dziennik, aby powiadomić urządzenie o tym zdarzeniu. Po wykonaniu polecenia urządzenie zapisuje w kolejce zakończenia operacji we / wy i generuje przerwanie, aby powiadomić sterownik urządzenia, że zostało wykonane.
Dzięki NVMe over Fabrics ten podstawowy schemat kolejek wysyłania i kończenia w pamięci hosta jest rozszerzony, dzięki czemu można je również powielać w pilot, tak aby para kolejek oparta na hoście była mapowana na parę kolejek opartą na kontrolerze. Coś, co dla komputera jest absurdalne, ale dla sprzętu HPC i serwerów może być bardzo interesujące w przypadku zdalnej komunikacji między węzłami ...
Jeśli to odkrycie skutkuje większą przepustowością danych na sekundę, niech tak będzie.