Elementy Pamięci

Podstawowe komponenty pamięciowe w systemach cyfrowych: zatrzaski, SRAM, DRAM i typy ROM.

Rola Pamięci w Urządzeniach Sieciowych

W sercu każdego nowoczesnego przełącznika czy routera znajduje się zaawansowany system pamięci. Elementy pamięci służą nie tylko do przechowywania danych; są one kluczowe dla całego procesu komutacji pakietów i komórek. Ich główną rolą jest tymczasowe przechowywanie jednostek danych (pakietów, komórek), aby radzić sobie z konfliktem dostępu – sytuacją, w której wiele strumieni danych rywalizuje o to samo łącze wyjściowe. To tymczasowe przechowywanie jest znane jako buforowanie.

Pamięć sieciową można ogólnie podzielić na dwa rodzaje: tradycyjną pamięć elektroniczną (jak RAM) oraz wyspecjalizowaną pamięć optyczną, która odpowiada na unikalne wyzwania sieci całkowicie optycznych.

Pamięć Elektroniczna w Nowoczesnym Routerze

Współczesny węzeł komutacyjny, taki jak router IP, wykorzystuje kilka rodzajów pamięci elektronicznej, z których każdy pełni odrębną funkcję w zarządzaniu jego działaniem.

Interaktywna architektura pamięci routera

Przełącz sekwencję startu i przekazywania pakietów, aby zobaczyć współpracę RAM, ROM, Flash i interfejsów.

Aktywny przepływ
Sekwencja startu
Krok 1 z 3
Boot ROM uruchamia sekwencję inicjalizacji
Obraz systemu i konfiguracja startowa są ładowane do RAM
Interfejsy są konfigurowane, a łącza aktywowane
Procesor sterujący
Kliknij blok, aby sprawdzić jego rolę.

Wykonuje logikę płaszczyzny sterowania i decyzje przekazywania.

  • : To aktywna przestrzeń robocza routera. Przechowuje krytyczne, tymczasowe informacje, takie jak bieżąca konfiguracja, tablice routingu (mapy sieci) i, co najważniejsze, bufory pakietów. Kiedy pakiety docierają szybciej, niż mogą być wysłane, są kolejkowane w pamięci RAM.
  • : ROM przechowuje oprogramowanie startowe (bootloader). Zawiera podstawowe instrukcje do uruchomienia routera i znalezienia głównego systemu operacyjnego, podobnie jak BIOS w komputerze osobistym.
  • : Jest to stała pamięć masowa dla systemu operacyjnego routera i zapisanych plików konfiguracyjnych. W przeciwieństwie do RAM, pamięć Flash jest nieulotna, co oznacza, że zachowuje swoje dane nawet po wyłączeniu zasilania.

Strategie Buforowania w Przełącznikach Elektronicznych

W komutacji ATM i szybkich sieciach pakietowych sposób buforowania komórek lub pakietów ma znaczący wpływ na wydajność. Buforowanie jest niezbędne do rozwiązywania konfliktów dostępu, gdy wiele wejść chce wysłać dane do tego samego wyjścia w tym samym czasie. Lokalizacja i logika bufora definiują architekturę przełącznika.

1. Buforowanie na Wejściu i Blokowanie HOL

W tym modelu każdy port wejściowy ma własny bufor do przechowywania przychodzących pakietów. Arbiter decyduje, które wejście może nadawać do wyjścia w każdej szczelinie czasowej. Chociaż jest to proste, architektura ta cierpi na poważną wadę: . Aby rozwiązać ten problem, zaawansowane przełączniki stosują Wirtualne Kolejki Wyjściowe (VOQ), gdzie każdy port wejściowy utrzymuje oddzielną kolejkę dla każdego portu wyjściowego, eliminując blokowanie HOL.

Buforowanie na wejściu i blokowanie HOL

Uruchom szczeliny czasowe z i bez VOQ, aby zobaczyć blokowanie czoła kolejki.

Zajęte wyjście:
Preset ruchu:
Wejście 1
Zablokowane czoło
A1O1
A2O2
A3O3
Wejście 2
Zablokowane czoło
B1O1
B2O2
B3O3
Wejście 3
Zablokowane czoło
C1O1
C2O2
C3O3
Wysłane pakiety
0
śr. 0.00/szczelinę
Zasymulowane szczeliny
0
Wykryto blokowanie HOL
0
Brak zdarzenia HOL w tej szczelinie

2. Buforowanie na Wyjściu

Tutaj pakiety są natychmiast przekazywane przez pole komutacyjne do bufora znajdującego się przy każdym porcie wyjściowym. Ta metoda całkowicie unika blokowania HOL. Wymaga jednak, aby pole komutacyjne i pamięć bufora wyjściowego działały NN razy szybciej niż szybkość linii wejściowej (gdzie NN to liczba portów), ponieważ do NN pakietów może dotrzeć do tego samego wyjścia jednocześnie. To sprawia, że jest to rozwiązanie technologicznie wymagające i kosztowne dla dużych przełączników.

Architektura buforowania na wyjściu

Modeluj konflikt, gdy wiele wejść celuje w jedno wyjście, i sprawdź wymagane przyspieszenie pola oraz pamięci.

Liczba portów wejściowych (N)
8
Pakiety trafiające do jednego wyjścia w szczelinie
4
Wyjście konfliktowe
Prędkość linii na port
N = 8
Zasymulowane szczeliny: 0
Wejścia
8x portów wejściowych
Bufory wyjściowe
4x kolejki wyjściowe
Głębokość kolejki
O1 (konflikt)0
O2 0
O3 0
O4 0
Ostatnie obciążenie kolejek
Bieżące wymagane przyspieszenie
4x (400 Gb/s wewnętrznie)
Najgorszy przypadek
8x (800 Gb/s wewnętrznie)
Gdy k pakietów trafia do jednego wyjścia w tej samej szczelinie, transfer wewnętrzny musi obsłużyć k zapisów, zanim wyjście odprowadzi jeden pakiet.

3. Buforowanie we Współdzielonej Pamięci

Jest to wysoce wydajna architektura, w której pojedynczy, centralny bufor pamięci jest współdzielony przez wszystkie porty wejściowe i wyjściowe. Przychodzące pakiety są zapisywane w tej współdzielonej pamięci, a jednostka sterująca zarządza wskaźnikami, tworząc logiczne kolejki dla każdego portu wyjściowego. Pamięć jest dynamicznie alokowana, co prowadzi do optymalnego wykorzystania przestrzeni buforowej. Wymaga to również pamięci o szybkości NN razy większej od szybkości linii.

Wyzwanie i Rozwiązanie Buforowania Optycznego

Całkowicie optyczna komutacja pakietów obiecuje ogromne prędkości, utrzymując dane w postaci światła i unikając powolnych konwersji elektronicznych. Napotyka jednak na fundamentalny problem: światła nie można łatwo "zatrzymać" i przechować. Nie istnieje tani i powszechny optyczny odpowiednik elektronicznej pamięci RAM.

Najczęstszym rozwiązaniem jest . Zamiast przechowywać pakiet, jest on wysyłany na objazd przez precyzyjnie zmierzoną pętlę światłowodu. Zmusza to pakiet do przebycia dłuższej drogi, co powoduje, że dociera on do miejsca przeznaczenia w późniejszym czasie, co skutecznie go "buforuje".

Architektury Buforów Optycznych

Architektury buforów optycznych FDL

Porównaj architekturę przesuwną (traveling, równoległe FDL) i recyrkulacyjną (pojedyncza pętla).

Wymagane opóźnienie (w szczelinach T)
3T
Liczba długości fali WDM
2
Pakiety do zbuforowania teraz
3
Wybrana ścieżka optyczna
3T
Równoległa pojemność chwilowa
16
1T
nieaktywna
2T
nieaktywna
3T
aktywna
4T
nieaktywna
5T
nieaktywna
6T
nieaktywna
7T
nieaktywna
8T
nieaktywna
Struktury przesuwne wybierają fizyczną linię opóźniającą o odpowiedniej długości.
Plan pakietów
P1
żądane opóźnienie: 3T
ścieżka: 3T
P2
żądane opóźnienie: 3T
ścieżka: 3T
P3
żądane opóźnienie: 3T
ścieżka: -
2 przyjęte
1 odrzucone
  • Bufory z Przesuwaniem Informacji (Traveling Type): Wykorzystują zestaw równoległych FDL, z których każda ma inną długość, odpowiadającą różnym czasom opóźnienia (np. T,2T,3T...T, 2T, 3T...). Pakiet wymagający określonego opóźnienia jest przełączany do odpowiedniej pętli światłowodowej.
  • Bufory z Recyrkulacją (Recirculating Type): Wykorzystują pojedynczą pętlę światłowodową. Pakiet może być zmuszony do cyrkulacji w pętli wielokrotnie, aby osiągnąć dłuższe opóźnienia. Wymaga to bramek i przełączników optycznych do kontrolowania liczby obiegów.

Kluczowym ograniczeniem jest to, że zazwyczaj tylko jeden pakiet może być w danej chwili zapisywany lub odczytywany z bufora. Można to obejść, stosując WDM (multipleksację falową), gdzie jedna pętla światłowodowa może buforować wiele pakietów jednocześnie na różnych długościach fali światła.