A networking system consists of multiple computing devices connected to multiple
networking processing engines each containing a memory system including a random
access device (RAM). The RAM device contains a memory controller which performs
memory read and write request handling by buffering incoming memory read and write
requests and distributing the requests across multiple memory banks of the RAM
in connection with client processes that support network services of the networking
system. The read and write requests are intelligently reordered or prioritized
utilizing grouping of memory reads and memory writes in such a way as to minimize
the processing time of the requests while maintaining data coherency.