Wybór pozycji przepływu dokonywany jest poprzez porównanie wartości pól zawartych w nagłówku pakietu lub metadanych z wartościami określonymi w danej pozycji. Pozycja przepływu określa dokładne wartości, jakie muszą mieć wybrane pola w nagłówku pakietu, aby dopasowanie było możliwe albo wskazuje, że dane pola mogą mieć dowolną wartość. Dla niektórych pól możliwe jest również określenie masek dopasowania wskazujących, jaka część wartości pola jest istotna z punktu widzenia dopasowania pakietu do pozycji przepływu.
Tabele przepływów mogą dodatkowo zawierać wskazanie, jak przełącznik powinien zareagować na pakiet, w przypadku braku dopasowania pakietu do którejkolwiek z pozycji w tabeli. Jeśli wykorzystuje się wiele tabel przepływów, to działania związane z poszczególnymi tabelami tworzą potok (ang. pipeline) następujących po sobie faz przetwarzania danego pakietu.