The approach we will take in
HDFS-11419 is to annotate topology's inner node with more information, such that it chooses a subtree that meets storage type requirement. However, InnerNode is not specific to HDFS, so our change should affect other components using this class.
This JIRA separates InnerNode out of NetworkTopology and makes it extendable. Therefore HDFS can have it's own customized inner node class, while other services can still have inner node as what it is right now.