A porta 5901, geralmente por convenção Porta 5900 + XDisplaynumber, é a porta TCP na qual o serviço VNC escuta. Essa é a relação deles. Na verdade, você pode usar portas TCP arbitrárias com números de exibição X arbitrários.
O serviço VNC serve para transportar entrada (mouse, teclado) do cliente para o servidor e saída (uma imagem) do servidor para o cliente. Isso não precisa ter nada com o X. Por exemplo, na virtualização, o VNC é frequentemente usado para tornar o terminal "físico" de uma máquina virtual acessível remotamente.
O Sistema X11 é muito mais complexo do que isso e os programas o usam para interagir com o Xserver e entre si. Em palavras no mundo X é um pouco não intuitivo no início, então o significado de saída, sede, tela, display, servidor, cliente precisa ser aprendido e merece alguma consideração.
Para sua pergunta: um Xdisplay é o núcleo lógico de qualquer instância X. Quando você inicia um programa, esse programa é um Xclient e se conecta à exibição fornecida de um Xserver. :1.0
é na verdade uma abreviação e significa "exibir 1 no host local". Você pode fornecer um nome de host ou endereço IP, por exemplo, DISPLAY = 192.168.1.2: 3.0 para ter o programa em que você está prestes a se conectar ao Xdisplay 3 no computador (remoto) com o endereço IP fornecido.
X e VNC são dois serviços totalmente diferentes implementados para diferentes propósitos com objetivos diferentes. (Pode-se argumentar que alguns / mais objetivos do VNC também foram objetivos ao desenvolver o X, mas isso é um tanto acadêmico e muito profundo.)
Ao usar o Xvncserver, ambos os conceitos são combinados de volta para trás. Portanto, há um Xserver com o qual Xclients se comunica "da maneira normal", mas em vez de usar o hardware disponível para interagir com um usuário, o Xvncserverit implementa um servidor VNC, ao qual um cliente VNC pode se conectar.