Direct Memory Access (DMA)

Advanced FPGA-based Host CPU Offload

After all packet processing concludes, an ANIC adapter efficiently transfers all relevant packets and associated packet descriptors (metadata) across the PCIe bus directly in to host memory for consumption by the host application.

The main advantage of DMA is the host CPU is not burdened with memory transfer and hence is available to perform other more important tasks.

Multi-core DMA

Multi-core DMA is a technique that makes processing by multiple host CPU cores more efficient. For example, assume the host Intel CPU has 4 cores (up to 64 cores are supported) with each operating independently of the other 3 cores. The ANIC adapter is programmed to write data in to 4 independent host packet buffers (HPB)  and each CPU core (and related application thread) is in turn programmed to process only its corresponding HPB. In this way a network security or monitoring application can take advantage of parallel processing of data thus achieving higher levels of speed and efficiency.

PF_RING

PF_RING is an open source, Linux kernel module for packet capture that is supported by most open source IPS/IDS solutions such as Snort, Suricata, and Bro as well as other applications such as Wireshark and Argus. PF_RING has native support for Accolade ANIC adapters which makes integration with any application that uses PF_RING seamless.

Host CPU Offload Features Summary

wdt_ID Speed 1G 10G 10G 10G 10G/40G 10G/40G 100G 100G 100G
1 Model ANIC- 2KL
ANIC- 4KL
ANIC- 20Ku ANIC- 40Ku ANIC- 40Kq ANIC-80Ku ATLAS-1000
Platform
ANIC- 100Ku ANIC- 200Ku ANIC-200KFlex
2 Port/Type 2 X 1G
4 X 1G
SFP
2 X 10G
SFP+
4 X 10G
SFP+
1 X 40G
4 X 10G
QSFP+
2 X 40G
8 X 10G
QSFP+
SFP+
2 X 40G
QSFP

4 X 10G
SFP+

1 X 100G
CFP4
2 x 100G
CFP4
2 x 40G
2 x 100G
QSFP28
3 PCIe Interface Gen2 x8 Gen3 x8 Gen3 x8 Gen3 x8 Gen3 x8 Gen3 x8 Gen3 x16 Gen3 x16 Gen3 x16
4 Dimensions (H x L inches) 4.25 x 6.25   4.25 x 6.25 4.25 x 6.25 4.25 x 6.25 4.25 x 6.25 1.75 x 12.28
x 14
4.25 x 9.5 4.25 x 9.5 4.25 x 6.9
5 Memory 256MB 4G 4G 4G 4G 16/32G 12G 12G 8G
6 Timestamp 10 nS 5.7 nS 5.7 nS 5.7 nS 5.7 nS 5.7nS 4 nS 4 nS 4 nS
7 Lossless Packet Capture
8 Gigamon, Arista Timestamp
9 Packet Merging
10 Packet Parsing
Share on LinkedInTweet about this on TwitterShare on Google+Email this to someone