Thank you both for your response.
To be specific, all received messages have the same multicast address. the only difference between the two types of messages is contained in the message header that should be unpacked later at the protocol engine (over layer 2) not at the port. So the port should not have authority to decide the type of the message or to handle it. The job of the port is to receive the message and forward it up.
In my case, the logical port should not even receive the message at all unless it belongs to its (virtual domain). To put it in simple words, I'm looking for two separate logical Ethernet connections on the same physical port that can be identified somehow by an ID. Just like how UDP identifies sessions by port numbers.
Is this even realistic? because that's the only way I could understand this paragraph:
"the node communicates with the network via two logical interfaces based on a single physical port"