For an IP switch I need to have a function with as end goal making use of capacity management.
While having a look at different setups, I see that a Rx and Tx function are created. Why are both needed and can't there be just one single function?
Secondly, for each function I see that an IP In and IP Out interface are defined. Why can't this be done with just one single IP In/Out interface?
The design has been made at the time it was only possible to define 1 single capacity value per resource. Therefore, to manage both Tx and Rx traffic, it was required to create 2 resources per interface.
Having one single function representing a switching function ( incoming interface, internal routing , outgoing interface ) is not an option, as the couple ‘incoming interface’ / ‘outgoing interface’ changes depending on the destination.
Having one single function combining both Rx and Tx functions of the same Ethernet Interface could be an option, now that DataMiner supports multiple capacities on a resource.
I do think it's important to note here that this depends on the duplex setting of the specific interface. The way its described by both Leander and Emmanuel requires the interface to be in full duplex mode. This is typically the case in modern networks but because of misconfigured interfaces or an interface Auto - negociation failure, it can still fall back to a half duplex setting. In half duplex setting managing the capacity on the interface might be a bit different.
It might depend on the actual use case.
If the capacity for Tx and Rx on a specific interface is completely separately managed, i.e. using Tx capacity does not reduce Rx capacity, and the interface is visible on both products that are connected to each other, then only Tx direction might be of importance. The Rx is basically the Tx from the other side. So, in that specific case, it should be sufficient to only model Tx resources to manage the full capacity.