I have Linux that works as Router + traffic management with connection
tracking enabled but without making NAT
About 600Mbit/s TX and 600Mbit/s RX forwarded traffic
iptables -L -n -v -t raw
Chain PREROUTING (policy ACCEPT 3340M packets, 2623G bytes)
pkts bytes target prot opt in out source
destination
3339M 2621G NOTRACK all -- * * 0.0.0.0/0
0.0.0.0/0
Chain OUTPUT (policy ACCEPT 1978K packets, 157M bytes)
pkts bytes target prot opt in out source
destination
iptables -L -n -v -t nat
Chain PREROUTING (policy ACCEPT 4073K packets, 299M bytes)
pkts bytes target prot opt in out source
destination
Chain POSTROUTING (policy ACCEPT 3916K packets, 285M bytes)
pkts bytes target prot opt in out source
destination
Chain OUTPUT (policy ACCEPT 604 packets, 29792 bytes)
pkts bytes target prot opt in out source
destination
kernel 2.6.28.2
CPU: Core 2, speed 2999.98 MHz (estimated)
Counted CPU_CLK_UNHALTED events (Clock cycles when not halted) with a
unit mask of 0x00 (Unhalted core cycles) count 100000
samples % image name app name
symbol name
14544205 15.8604 vmlinux vmlinux
ctnetlink_del_expect
11616986 12.6683 vmlinux vmlinux
native_read_tsc
6920732 7.5470 vmlinux vmlinux
_raw_spin_lock
3343941 3.6466 vmlinux vmlinux
mwait_idle
2176884 2.3739 vmlinux vmlinux
e1000_irq_enable
1513595 1.6506 vmlinux vmlinux
e1000_intr_msi
1319634 1.4391 vmlinux vmlinux
getnstimeofday
1265908 1.3805 vmlinux vmlinux
qdisc_graft
1178958 1.2857 vmlinux vmlinux ...