Not a Linux networking expert... But one thing could be that you can fit entire IPV4 address space in ram easily and this obviously can't be done for IPV6.
Might make some design compromises slower and more complex, such as storing routes in Bloom filters rather than simple cache.
Routers don't store IP addresses as strings... They use 32 bit and 2X64 bit unsigned ints usually.
And you can't compress something when measuring cardinality. Each route takes up an entry and the minimum space you can use with a non probabilistic structure is 1 bit per entry in a bit map.
There's compressed bitmaps but the random nature of routes will not compress well.
Might make some design compromises slower and more complex, such as storing routes in Bloom filters rather than simple cache.