Recentemente, depois de atualizar vários circuitos MetroE (conectividade L2) de 100 Mbps para 1 Gbps, notei que grandes transferências de arquivos falham entre alguns sites; no entanto, a transferência falha apenas na direção. Por exemplo, considere o seguinte exemplo.
De -> até
A -> B = Falha
B -> A = Sucesso
A -> C = Sucesso
C -> A = Sucesso
B -> C = Sucesso
C -> B = Sucesso
Cada site é um segmento roteado atrás de um switch L3 localizado no site. O switch L3 se conecta ao conversor de mídia CPE do provedor, que por sua vez se conecta à rede do provedor via fibra. O roteamento estático é usado entre os switches L3.
*Site A* *Site B*
L3 Switch <-> CPE <--- Provider ---> CPE <-> L3 Switch
|
CPE
|
L3 Switch
*Site C*
O provedor executou testes de ponta a ponta dos circuitos dos CPEs e não relatou perdas. No entanto, vejo muitos ACKs duplicados em uma captura de pacotes nos hosts antes da transferência falhar.
Se eu remover os comutadores L3 da equação e conectar dois hosts diretamente ao dispositivo CPE em cada site, a transferência do arquivo será concluída com êxito.
Host A <-> CPE <--- Provider ---> CPE <-> Host B
Se eu colocar hosts em ambos os lados de um comutador L3, o roteamento interVLAN funcionará sem problemas e a transferência de arquivos será concluída com êxito.
Host A1 <-> L3 Switch <-> Host A2
O problema parece ocorrer apenas quando os dados atravessam o provedor entre dois segmentos roteados.
Host A <-> L3 Switch <-> CPE <--- Provider ---> CPE <-> L3 Switch <-> Host B
Eu verifiquei várias coisas - as estatísticas da interface estão limpas (sem erros), a utilização da CPU e da memória é baixa, a correspondência de velocidade e duplex (cliente e CPE), as tabelas MAC e ARP estão corretas, etc.
Qual poderia ser o problema?
Atualização 1
As capturas de pacotes dos hosts A e B podem ser encontradas no seguinte URL:
https://www.dropbox.com/sh/5m2yohgxieelo59/AADed-0EWOkdmFIe0qT45_uQa
O problema ocorreu originalmente usando os switches Juniper EX3200 executando 12.3R6.6. Posteriormente, desclassifiquei as opções para 11.4R6.6, mas isso não resolveu o problema.
Consegui replicar o problema usando os switches Juiper EX2200 executando 12.3R6.6 e 11.4R6.6. Também pude replicar o problema usando os switches Dell 6224 executando o 3.3.11.2.
Atualmente, apenas o CPE (ge-0/0/0) e um único host (ge-0/0/1) estão conectados a um Juniper EX3200 em cada site. Enquanto solucionava o problema, reduzi a configuração de quaisquer parâmetros estranhos, portanto a configuração é bastante básica. A configuração é essencialmente a mesma em cada um, mas com endereços IP diferentes. Abaixo está um trecho.
# show interfaces
ge-0/0/0 {
unit 0 {
family ethernet-switching {
port-mode access;
vlan {
members WAN;
}
}
}
}
ge-0/0/1 {
unit 0 {
family ethernet-switching {
port-mode access;
vlan {
members LAN;
}
}
}
}
vlan {
unit 10 {
description WAN;
family inet {
address 192.168.X.X/27;
}
}
unit 100 {
description LAN;
family inet {
targeted-broadcast;
address 172.X.X.1/22;
}
}
}
# show vlans
WAN {
vlan-id 10;
l3-interface vlan.10;
}
LAN {
vlan-id 100;
l3-interface vlan.100;
}
Atualização 2
Hoje, notei que, se eu scp um arquivo do switch L3, Juniper EX3200, no site A para L3, Juniper EX3200, no site B, a transferência scp também é afetada pelo problema.
Acho isso especialmente interessante, pois a transferência é originária da interface voltada para CPE na WLAN VLAN, porque se eu troncar uma VLAN entre os sites afetados pelos comutadores EX3200, as transferências de arquivos comutadas serão concluídas com êxito entre os hosts nos sites A e B.