Detail publikace
General memory efficient packet matching FPGA architecture for future high-speed networks
FPGA, vyhledávání paketů, filtrování paketů, vysokorychlostní sítě, přesná shoda, kukaččí hašování
Klasifikace (vyhledávání) paketů je jednou z kritických operací v sítích, která se využívá pro množství různých zařízení a služeb z širokého rozsahu od směrovačů nebo přepínačů až po aplikace monitorování bezpečnosti jako firewall nebo IDS. Na uspokojení neustále rostoucích požadavků na výkonnost v dnešních i budoucích sítích je zapotřebí speciálních hardwarově akcelerovaných architektur klasifikace paketů. Tyto požadavky nyní dorostli až do takové míry, že na zajištění dostatečné propustnosti zpracování pro síťové linky, FPGA akcelerované architektury musejí být schopny vyhledání vícero paketů v každém hodinovém cyklu. Na splnění této podmínky může být použita jednoduchá replikace, tedy vytvoření vícero instancí procesní linky pracujících paralelně. Avšak, tato jednoduchá replikace sebou nese výrazné zvýšení nároků na všechny typy zdrojů FPGA čipu, což je zejména bolestivé pro relativně nedostatkové paměťové zdroje čipu použité ve vyhledávacích tabulkách. V článku navrhujeme a zkoumáme unikátní paralelní hardwarovou architekturu pro klasifikaci vícero paketů v jednom taktu hodin založenou na hašování a vyhledání na přesnou shodu, která ponouká zejména snížení stupně replikace paměťových zdrojů. Klíčovou myšlenkou navržené architektury je využití vnitřní struktury paměťových zdrojů moderních FPGA čipů, kde jsou dostupny stovky individuálních blokových nebo distribuovaných paměťových políček, které mohou být adresovány nezávisle. Díky tomu je možné dosahovat relativně vysoké propustnosti klasifikace vícero paketů za hodinový takt i při neúplné replikaci pamětí ve vyhledávacích tabulkách. Naše výsledky ukazují, že navržený přístup umožňuje velice efektivní využití pamětí na čipu a dokonce výkon škáluje exponenciálně s celkovou kapacitou. Například je možné dosáhnout propustnosti více než 2 Tb/s (více než 3000 Mp/s) s kapacitou na 40000 IPv4 toků za cenu jen několika stovek blokových pamětí (366 BlockRAM pro Xilinx nebo 672 M20K pro Intel FPGA) a malého zlomku dostupné logiky (okolo 68000 LUTs pro Xilinx nebo 95000 ALMs pro Intel FPGA).
@article{BUT161471,
author="Michal {Kekely} and Lukáš {Kekely} and Jan {Kořenek}",
title="General memory efficient packet matching FPGA architecture for future high-speed networks",
journal="Microprocessors and Microsystems",
year="2020",
volume="73",
number="3",
pages="1--12",
doi="10.1016/j.micpro.2019.102950",
issn="0141-9331",
url="http://www.sciencedirect.com/science/article/pii/S0141933119301334"
}