Nat process flow – Rainbow Electronics W90N740 User Manual
Page 119

W90N740
Publication Release Date: November 26, 2004
- 115 -
Revision A4
7.6.1 NAT Process Flow
NAT Process Flow
While EMC port get valid MAC packets and store them in
memory, it check if {IP, port} hit, and update descriptors
Rx: Look up NAT table process :
1. parsing IP address
2. according IP header length jump to TCP/UDP header
3. parsing TCP/UDP port number
4. compare {IP address, port number} with NAT table content
Rx triggers NAT
processing
No
No NAT processing
NAT hit?
Yes
NATA begins IP address (or Port number) replacement process :
1. The IP address in the IP header is replaced with new inside or outside IP address
2. The port number in the TCP/UDP header is replaced with new port number
3. Recalculate the IP checksum
4. Recalculate the TCP/UDP checksum
Rx send interrupt
(if Rx interrupt is enabled)
NATA do MAC address replacement process :
Replace MAC 0 and MAC 1 address in the MAC header
Hit or not, hit message in descriptor
NATA exit NAT process