Szybkie sieci do przesyłania miliarda GIF‑ów z kotami – Sesja Linuksowa
Trwają kolejne prelekcje Sesji Linuksowej. Tym razem mowa o tym, jak zagwarantować silne, godne zaufania i łatwo udostępniane łącze w czasach, gdy wszystko jest podpięte do internetu? Klasyczny Ethernet bardzo dobrze się skaluje, ale łącza typu 100 gigabitów na sekundę, celem zagwarantowania wysokiej jakości (reliability) muszą wynajdować alternatywne topologie i nowe metody zarządzania przepływem danych, nie tylko w urządzeniach infrastruktury sieciowej, ale także na klienckich „końcówkach”.
Jedną z metod, którą przytacza Maciej Czekaj, jest wyprowadzenie procesu programowania urządzeń sieciowych do przestrzeni użytkownika. Niniejsza metodyka, dostarczająca między innymi zaawansowane rozwiązania z zakresu zarządzania pakietami, wykorzystuje biblioteki (DPDK) rozwijane przez fundację The Linux Foundation. Mimo wprowadzania rozbudowanych uogólniających warstw abstrakcji, DPDK gwarantuje wysoką wydajność na tyle zauważalną, że projektem zainteresował się między innymi Intel.
Prezentacja była oparta o pracę firmy Semihalf. W niezwykle interesujący sposób przedstawiono alternatywny stos sieciowy działający w userspace(!), z pominięciem BSD Sockets. Biblioteka DPDK, mimo działania w przestrzeni użytkownika, potrafi „ukraść” kartę sieciową (podobnie do niemostkowanych wirtualizatorów), gwarantując jednocześnie bezpośredni dostęp do pamięci (DMA).
Zagadnienia wydajności i skalowalności stosu TCP/IP (np. tego, ile cykli procesora potrzebnych jest na odebranie pakietu) powinny przyciągać coraz większą uwagę programistów platform sprzętowych ponieważ, jak wspomniał Maciej Czekaj z Semihalf, dziś często dostęp do pamięci RAM jest czasowo droższy, niż sięganie do danych pobranych z sieci (w grę wchodzi oczywiście również kwestia pamięci cache).
Do czego jeszcze można wykorzystać takie łącza? Oczywiście do przesyłania animowanych kociąt w nieprzyzwoicie wysokim stężeniu. Koniecznie w formacie GIF, który wyłącznie z powodu implementacyjnej dramy w kwestii formatu WebM, wciąż pozostaje standardem w krótkiej internetowej animacji. O formacie GIF da się jednak powiedzieć znacznie więcej, co przedstawia Karol Wrótniak.