Por que demora segundos para obter o endereço IP via DHCP?

22

Por curiosidade, por que muitas vezes leva segundos para obter configuração de rede via DHCP quando a CPU é capaz de processar milhões de operações por segundo e o ping para o roteador leva alguns milissegundos? / p>

No meu ambiente doméstico com um roteador WiFi e cerca de 5 dispositivos, não é raro ver tempos como 5 a 10 segundos.

    
por Borek Bernard 30.12.2010 / 14:35

5 respostas

21

Além da aquisição real da concessão do DHCP do servidor DHCP (que normalmente não demora muito), alguns servidores farão primeiro o ping no endereço IP que está prestes a distribuir, antes de entregá-lo para verificar se ele ainda não está em uso na rede - isso leva alguns segundos para expirar. Às vezes, o cliente fará o mesmo (novamente, para evitar conflitos de endereço IP), o que adicionará mais tempo. Então, além disso, alguns clientes também registram suas entradas de DNS, etc.

    
por 30.12.2010 / 15:07
9

O DHCP pode levar um pouco mais de tempo porque envolve uma série de transações, não com um único servidor, mas com todos os dispositivos na rede durante a solicitação inicial, pois envia uma mensagem de difusão.

Se você verificar o RFC para DHCP,

link

você pode ver claramente a série de negociações envolve. No início, o cliente envia DHCPDISCOVER para todos os dispositivos na rede local e, em seguida, os servidores que executam o serviço dhcp retornam a mensagem DHCPOFFER. O cliente também pode aguardar para obter respostas de todos os servidores dhcp disponíveis antes de escolher um. Em seguida, ele envia um DHCPREQUEST com um identificador que indica qual servidor ele escolheu como seu provedor de ip. Finalmente, obtém o DHCPACK com todos os parâmetros de configuração. Este é apenas um resumo do "3.1 Interação cliente-servidor - alocando um endereço de rede" do RFC.

De minha experiência, o dhcp leva muito tempo principalmente em grandes configurações de LAN com muitos nós conectados. Em uma rede doméstica com apenas um único servidor dhcp (roteador WIFI, por exemplo) e um ou dois PCs, é muito rápido.

    
por 30.12.2010 / 14:54
2

Dois motivos (e soluções) que encontrei quando queria respostas rápidas do meu servidor DHCP.

1) Meu DHCP fez um ping do endereço que queria alocar. Isso adicionou 3 segundos de atraso. Eu removi isso alterando a configuração do DHCP para ter um mapeamento para o endereço MAC para o endereço IP. Isso é basicamente usando o DHCP para alocar um endereço estático. Isso removeu o atraso de 3 segundos para mim.

2) Eu tenho uma rede isolada, no entanto, você pode obter isso às vezes. Houve uma procura de DNS sendo feito, o que para mim resultou em muitos segundos de atraso de obter um endereço IP do DHCP. Na configuração do servidor DHCP, havia opções para nosso domínio e servidores DNS. Depois de remover as opções de DNS e acima da mudança, recebi respostas instantâneas do servidor DHCP. (**)

Esses problemas foram o que eu encontrei na minha configuração. Sua milhagem pode variar.

felicidades

LB

(**) Se eu tivesse um centavo por cada vez que uma pesquisa de DNS falhada causasse um atraso que resultasse em uma pancada estranha no afeto que resultaria em mim coçando minha cabeça, eu teria muitos centavos.

    
por 31.05.2013 / 11:15
1

Eu não sei qual cenário você tem, mas no mundo real você obtém o endereço IP ... etc de um servidor antigo (o servidor dhcp é sempre aquele com o hardware mais antigo :)) com muitos pedidos, por trás de um firewall, um ou vários roteadores / switches ... Latência, CPU ... e no mundo do Windows, a implementação do dhcp não é tão eficiente quanto gostaríamos!

    
por 30.12.2010 / 14:50
0

Se você está tendo problemas de desempenho com o dhcp;

  1. Verifique a latência da rede
  2. Veja a negociação do pacote dhcp. Você deve ser capaz de ver qual ação está demorando muito. (problema pode não ser com o servidor dhcp, quem está esperando em quem?)
  3. Examine o carregamento e os registros do servidor dhcp.
por 30.12.2010 / 15:11

Tags