Este documento contém uma descrição completa do procedimento
necessário à implementação de um cliente para
LAN Emulation (LANE) sobre redes ATM em um sistema particular Linux,
incluindo a implementação do ATM. Pressupõe-se conhecimento
razoável do sistema operacional, bem como de configurações
de interfaces de rede e endereçamento IP, compilação
do kernel e dos conceitos necessários à implementação
da LAN Emulation (LEC, LECS, LES, sinalização, endereçamento,
etc).
Software e Hardware necessários
Microcomputador com processador Intel 386, 486 ou Pentium (ou compatível)
e barramento PCI
(*1) - Embora este roteiro se restrinja à utilização
deste adaptador, outros adaptadores são suportados. Ver, na distribuição
do ATM on Linux, o arquivo atm/README para maiores detalhes.
(*2) - Ver, na distribuição, o arquivo
linux/Documentation/Changes para informações sobre
outros pacotes necessários à compilação dessa
versão do kernel. Para cada revisão do ATMon Linux,
deve-se utilizar uma versão diferente do kernel.
(*3) - Atualmente já está disponível
a versão. 0.9 do software. Entretanto, o driver do
adaptador utilizado só está disponível para versões
anteriores à 0.32, devido a problemas de incompatibilidade com o
kernel 2.1.*, utilizado nas mais recentes.
(*4) - Existem também disponíveis outros
drivers para este adaptador. Verificar, para o driver a ser
utilizado, as versões corretas do kernel e do ATM on Linux
necessárias e utilizá-las no lugar das versões propostas
neste documento.
1. Compilar o kernel com os drivers para ATM:
Extrair os fontes do kernel e dos drivers ATM no diretório
/usr/src
# cd /usr/src
# mv linux linux.BKP
# tar xvfz <diretório_de_download>/linux-2.0.25.tar.gz
# tar xvfz <diretório_de_download>/atm-0.31.tar.gz
Certificar-se de que os linksasm, linux e scsi,
no diretório /usr/include, apontam para o local correto
# cd /usr/src/linux
# patch -s -p1 < ../atm/atm.patch
Rodar o programa de configuração do kernel
# make config
(ou)
# make menuconfig
(ou)
# make xconfig
OBS: Caso o kernel já tenha sido compilado alguma vez, é
prudente executar o comando make mrproper para certificar-se de
que a compilação anterior não afetará a próxima.
Selecionar as seguintes opções de configuração:
Prompt for development and/or incomplete code/drivers Enable loadable module support Asynchronous Transfer Mode (ATM) LANE support
OBS: Para outros adaptadores, que não o PCA-200E, também
é necessário selecionar o driver para o mesmo. O driver
deste adaptador é compilado como módulo, e por isso não
se encontra na lista de adaptadores suportados.
OBS: Caso se esteja utilizando o LILO, também é necessário
rodar o comando /sbin/lilo. Caso contrário o sistema não
será carregado no próximo boot.
Reiniciar o sistema
# shutdown -r now
2. Compilar e instalar o driver do adaptador
PCA-200E
Extrair a distribuição e prepará-la para a compilação
# cd <diretório_de_download>
# tar xvfz pca_200e-0.2.tar.gz
# mv pca200e.bin pca200e
OBS: Supõem-se que o arquivo pca200e.bin esteja também
no <diretório_de_download>.
Editar o arquivo pca_200e/Makefile efetuando a definição
a seguir
INCLUDEPATH = /usr/src/linux/include
Compilar o driver
# cd <diretório_de_download>/pca_200e
# make
Inserir o módulo no kernel
# insmod pca200e
OBS: Esse procedimento não garante que o módulo será
adicionado ao kernel automaticamente após o boot. Caso não
seja, o comando acima deve ser executado antes de proceder à configuração
da LAN Emulation. Consultar a documentação do Linux
referente ao uso de módulos para obter maiores detalhes sobre seu
uso.
3. Compilar e instalar as ferramentas do ATM
As ferramentas ATM incluem os programas básicos de utilização
da rede e ferramentas de diagnóstico e monitoramento. Para maiores
detalhes, consultar os arquivos atm/USAGE e atm/README.
Procedimento
# cd /usr/src/atm
# make depend
# make
# make install
4. Configurar o cliente para LAN Emulation
A implementação do cliente para LAN Emulation consiste
basicamente em iniciar os processos de comunicação do ATM
e o processo que implementa a parte cliente da LAN Emulation. Para
que essa configuração seja automaticamente realizada durante
a inicialização (boot) do sistema é necessário
utilizar scripts de inicialização. Segue abaixo o processo
de configuração:
Iniciar processos de Sinalização e ILMI, nesta ordem:
OBS: Neste ponto da configuração, pode ser conveniente colocar
o diretório /usr/local/sbin no PATH. Consultar a página
atmsigd(8) do manual online (man) para conhecer outros parâmetros
possíveis para esse comando.
O comando /usr/local/sbin/atmaddr -n mostra o endereço NSAP
adquirido pelo adaptador após a inicialização dos
processos acima.
Iniciar o Lan Emulation Daemon (LED "zeppelin") em background
- será criada a interface lec0 para uso do IP:
# /usr/local/sbin/zeppelin -c <NSAP_do_LECS> &
OBS: Supõe-se, neste caso, que existe apenas uma ELAN configurada
nos servidores, sendo desnecessário especificar o nome da mesma.
Em outras implementações pode ser necessário fornecer
outros parâmetros ao zeppelin. Consultar a página zeppelin(8)
do manual online (man) para obter maiores informações
sobre esse processo.
Configurar a interface lec0 para a rede IP:
# /sbin/ifconfig lec0 <endereço_IP> up
Configurar uma rota para a ELAN (Emulated LAN)
# route add -net <rede_IP>
Comandos Úteis:
atmaddr -n
Mostra o endereço NSAP adquirido pela interface ATM, após
a inicialização do ILMI (comando ilmid -b).
ifconfig -a
Lista cada uma das interfaces de rede do sistema e mostra suas configurações.
netstat -nr
Mostra a tabela de roteamento do sistema.
traceroute <endereço_IP>
Mostra cada um dos relays necessários para se efetuar comunicação
com a máquina de endereço <endereço_IP> e algumas
informações sobre tempo de acesso.