Jak omówiono, przełącznik analizuje niektóre lub wszystkie pakiety przed ich przekazaniem do docelowego hosta. Przełącznik ethernetowy może przed przekazaniem ramek wykorzystać do ich przechowania technikę buforowania. Buforowanie może być także użyte, gdy port docelowy jest zajęty wskutek zatoru wtedy przełącznik przechowuje ramkę do momentu, gdy będzie można ją wysłać.

Jak pokazano na rysunku, są dwa sposoby buforowania: oparte na porcie (ang.port-based) i pamięci wspólnej (ang.shared memory).

Buforowanie oparte na portach

W przypadku buforowania opartego na portach ramki są przechowywane w kolejkach, które są powiązane z konkretnymi portami wejściowymi. Ramka jest wysyłana do portu wyjściowego dopiero wtedy, gdy wszystkie poprzedzające ją w kolejce ramki zostaną pomyślnie wysłane. Możliwe jest opóźnienie transmisji wszystkich ramek w pamięci przez jedną ramkę wskutek zajętego portu docelowego. Opóźnienie takie wystąpi, nawet jeśli pozostałe ramki mogłyby zostać wysłane do otwartych portów docelowych.

Buforowanie z użyciem pamięci współdzielonej

W przypadku buforowania z użyciem pamięci współdzielonej wszystkie ramki są składowane we wspólnym buforze pamięci, który współużytkują wszystkie porty przełącznika. Ilość pamięci buforowej wymaganej przez dany port jest przydzielana w sposób dynamiczny. Ramki w buforze są dynamicznie wiązane z portem docelowym. Umożliwia to odebranie pakietu na jednym porcie, a następnie wysłanie go do innego bez przenoszenia do innej kolejki.

Przełącznik utrzymuje mapę łączy między ramką a portem, która pokazuje, gdzie dany pakiet powinien zostać wysłany. Po pomyślnym przesłaniu ramki połączenie jest usuwane z mapy. Liczba ramek, przechowywanych w buforze jest ograniczona wielkością całego bufora pamięci i nie jest sprowadzona do buforu jednego portu. Umożliwia to przesyłanie większych ramek i zmniejsza liczbę ramek odrzuconych. Jest to szczególnie ważne dla asymetrycznego przełączania. Asymetryczne przełączanie pozwala na różne szybkości transmisji danych na różnych portach. Umożliwia to większą przepustowość, która może być dedykowane dla niektórych portów, na przykład portu połączonego z serwerem.