Linux Terminal Server Project (ou somenteLTSP) é um projeto baseado emLinux que agrupa várias ferramentas eprotocolos, com a finalidade de proporcionar umambiente de trabalho remoto. Todo o software é corrido noservidor, e os terminais servem apenas deinterface entre o utilizador e asaplicações – os poucos ciclos de processamento gastos são para enviar os dados daplaca de rede àplaca gráfica. Com efeito, é possível ter vários clientes comhardware antigo (eg.Pentium a 90Mhz, com 16MB deRAM e placa gráfica de 2MB) a ter um desempenho equivalente ao do servidor (que poderia ser umPentium 4 a 3GHZ com 1GB RAM e placa gráfica de 2MB).
A primeira das tecnologias envolvidas é o standardPXE, que permite efectuar oarranque de um sistema pela rede. Esta especificação requer suporte na placa de rede (NIC). Aquando do arranque da máquina, aBIOS, devidamente configurada para o efeito, notifica a NIC para arrancar por PXE e esta, por sua vez, envia umpacotebroadcast e espera obter configurações da rede. Em caso detimeout, o arranque é delegado para a BIOS novamente, e processado normalmente (com os dispositivos de armazenamento locais).
Para os casos em que as NIC's não suportam PXE é possível criar uma imagem de arranque com Etherboot, que pode ser armazenada no NIC, se este disponibilizar um encaixe (slot) paraEPROM, ou ser utilizado através de umadisquete. Activando o arranque pela disquete, a BIOS lê a imagem, que será responsável pelo arranque da rede. Como com PXE, será enviado um pacote broadcast, desta vez assinado como sendo gerado por Etherboot.
Para ambos casos, o servidor deDHCP deverá estar devidamente configurado para suportar uma ou ambas tecnologias. Sob um ponto de vista de uniformização das configurações, é possível gerar imagens Etherboot para PXE, de tal forma que o arranque PXE é delegado para o Etherboot, e este, por sua vez, irá arrancar a máquina como ilustra o diagrama da figura.
Nas configurações do DHCP, além doendereço da rede,gateway, e hostname, deverá constar a localização de uma imagem dosistema operativo, que será descarregada pelo Etherboot, utilizando o protocoloTFTP, pela sua simplicidade de utilização. Este protocolo não requerautenticação, e o conjunto de operações comocliente é bastante limitado, resultando em clientes bastante pequenos.
Assim que o núcleo tiver sido descarregado, o PXE/Etherboot delega o arranque para o núcleo, criado especificamente para o efeito (com a ferramenta MKNBI), que será responsável por criar uma raiz desistema de ficheiros virtual, porNFS. Esta característica do núcleo é a que permite correr uma instalação remota de Linux sem qualquerdispositivo de armazenamento local – este tipo de terminais envolvidos designam-se também porthin clients.
Finalmente, após o núcleo montar a raiz do sistema de ficheiros, irá lançar osscripts de arranque do sistema, que serão responsáveis por colocar o terminal no modo configurado, neste caso, omodo gráfico, utilizandoXFree86. Este servidor deambientes de trabalho em modo gráfico permite autenticar e executar uma sessão num servidor remoto, utilizando o protocoloXDMCP. Caso o utilizador consiga autenticar, será lançado o seu ambiente de trabalho, como se o utilizador estivesse a trabalhar localmente no servidor.
A partir deste momento, todas as operações que o utilizador do terminal efectuar, serão transparentemente realizadas no servidor e o output enviado para o terminal.