I believe I recall finding documentation that the opposite is true, i.e. routers didn't actively defragment memory, so the only way to correct highly fragmented memory was a reload. However, believe memory garbage collector does "defragment" (in that adjacent free memory is joined), so memory fragmentation usually isn't an issue unless and until there was little free memory. Don't have an immediate reference, though.