Então ... para algo como um servidor da Web, você normalmente teria mais de uma VM (para dimensionamento) e normalmente deseja que o balanceador de carga faça seu trabalho e distribua o tráfego entre todas as suas VMs . Nesse caso, você usaria um endpoint balanceado por carga e uma porta de mapeamento 80 (externa) para a porta 80 (interna) - não faz sentido escolher uma porta de entrada aleatória. Claro, se você tiver um site não padrão (por exemplo, site de gerenciamento), talvez você coloque isso em outra coisa (como talvez a porta 8000). Nesse ponto, você pode decidir mapeá-lo para a porta 80 ou deixá-lo na porta 8000.
Onde a diversão começa: algo como o RDP. Se você usou apenas a porta 3389 e teve mais de uma VM, todo o mapeamento 3389 externo para 3389 interno, como você escolheria qual VM para RDP? A resposta: Você não gostaria - você teria um ponto de extremidade com balanceamento de carga e teria sorte de desenhar e só seria capaz de adivinhar a VM à qual estava anexado.
Portanto, você usa endpoints encaminhados pela porta, um endpoint por VM, cada um com sua própria porta dedicada. Do mundo exterior, você teria agora um banco de portas: talvez 55000, 56000, etc. Cada um deles seria mapeado para a porta interna 3389 em sua respectiva VM. E ... voila - você tem acesso RDP direto a cada VM.
Esse mapeamento de porta também se aplica ao ssh (ao usar o Linux) ou a qualquer outro cenário em que você tenha um serviço executando independentemente em várias VMs, em que você precisa de acesso direto a uma VM específica por algum motivo.