Questo documento consente di risolvere i problemi di connettività IP tra peer DLSw (Data-Link Switching).
I lettori di questo documento devono conoscere i concetti base di IP e TCP.
Il documento può essere consultato per tutte le versioni software o hardware, ad eccezione di Cisco IOS?? per eseguire DLSw nei router Cisco, è necessario un software con il set di funzionalità IBM.
Per ulteriori informazioni sulle convenzioni usate, consultare il documento Cisco sulle convenzioni nei suggerimenti tecnici.
Per verificare la presenza di connettività IP, usare il comando ping esteso (vedere Comandi IP) e scorrere fino alla sezione ping (modalità privilegiata). Il comando ping esteso permette di specificare l'indirizzo IP di destinazione come indirizzo peer DLSw remoto e l'origine come indirizzo IP peer locale. Se l'operazione non riesce, probabilmente si è verificato un problema di routing IP; il peer locale non dispone di una route al peer remoto oppure il peer remoto non dispone di una route al peer locale. Per risolvere i problemi relativi al routing IP, consultare la sezione Instradamento IP nella pagina Supporto tecnologico.
Dopo aver verificato che la connettività IP sia valida e che il comando ping esteso funzioni, eseguire il comando debug dlsw peer.
Attenzione: il comando debug dlsw peer può causare un grave calo delle prestazioni, in particolare quando viene eseguito su un router configurato in modo che più peer si attivino contemporaneamente. Prima di usare il comando debug, consultare le informazioni importanti sui comandi di debug.
Utilizzare il comando??debug dlsw peer per attivare i peer tra due router Cisco:
DLSw: passive open 5.5.5.1(11010) -> 2065 DLSw: action_b(): opening write pipe for peer 5.5.5.1(2065) DLSw: peer 5.5.5.1(2065), old state DISCONN, new state CAP_EXG DLSw: CapExId Msg sent to peer 5.5.5.1(2065) DLSw: Recv CapExId Msg from peer 5.5.5.1(2065) DLSw: Pos CapExResp sent to peer 5.5.5.1(2065) DLSw: action_e(): for peer 5.5.5.1(2065) DLSw: Recv CapExPosRsp Msg from peer 5.5.5.1(2065) DLSw: action_e(): for peer 5.5.5.1(2065) shSw: peer 5.5.5.1(2065), old state CAP_EXG, new state CONNECT DLSw: peer_act_on_capabilities() for peer 5.5.5.1(2065) DLSw: action_f(): for peer 5.5.5.1(2065) DLSw: closing read pipe tcp connection for peer 5.5.5.1(2065)
Il router avvia il peer, apre una sessione TCP con l'altro router e avvia lo scambio di funzionalità. Dopo uno scambio positivo di funzionalità, il peer si connette. A differenza del bridging di route remota (RSRB, Remote Source-Route Bridging), DLSw non sposta il peer in uno stato chiuso se non è presente traffico. i peer rimangono sempre connessi. Se i peer rimangono disconnessi, usare il comando debug dlsw?? peer??e debug ip tcp transaction per determinare il motivo per cui una connessione non è stata aperta.
Se i peer si connettono in modo intermittente, determinare se tra i peer è presente un firewall. In caso affermativo, consultare il documento sulla configurazione dello switching tra dati e di Network Address Translation. Se si dispone di una connessione Frame Relay, assicurarsi di non superare il valore CIR (Committed Information Rate) e di non eliminare i pacchetti TCP.
Gli esempi di output riportati di seguito illustrano alcuni dei metodi illustrati nel presente documento.
Configurazioni router
source-bridge ring-group 2 dlsw local-peer peer-id 172.17.240.35 dlsw remote-peer 0 tcp 172.17.140.17 ! interface Loopback0 ip address 172.17.240.35 255.255.255.0 |
source-bridge ring-group 2 dlsw local-peer peer-id 172.17.140.17 dlsw remote-peer 0 tcp 172.17.240.35 ! interface Loopback0 ip address 172.17.140.17 255.255.255.0 |
Prima che i peer DLSw si scambiino le loro funzionalità e stabiliscano una sessione, il protocollo TCP/IP deve stabilire una route tra gli indirizzi peer TCP/IP.
È possibile verificare questa route TCP/IP usando il comando show ip route ip-address e eseguendo un ping esteso tra gli indirizzi peer DLSw.
Se si sospetta un problema con il percorso IP, eseguire il ping esteso per alcuni minuti e verificare che rimanga costante.
router2# show ip route 172.17.140.17 Routing entry for 172.17.140.0/24 Known via "connected", distance 0, metric 0 (connected, via interface) Routing Descriptor Blocks * directly connected, via Ethernet1/0 Route metric is 0, traffic share count is 1 |
router1# show ip route 172.17.240.35 Routing entry for 172.17.240.0/24 Known via "connected", distance 0, metric 0 (connected, via interface) Routing Descriptor Blocks * directly connected, via Ethernet1/0 Route metric is 0, traffic share count is 1 |
router2# ping Protocol [ip]: Target IP address: 172.17.140.17 Repeat count [5]: Datagram size [100]: Timeout in seconds [2]: Extended commands [n]: y Source address or interface: 172.17.240.35 Type of service [0]: Set DF bit in IP header? [no]: Validate reply data? [no]: Data pattern [0xABCD]: Loose, Strict, Record, Timestamp, Verbose [none]: Sweep range of sizes [n]: Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 172.17.140.17, timeout is 2 seconds: !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 1/3/4 ms |
router1# ping Protocol [ip]: Target IP address: 172.17.240.35 Repeat count [5]: Datagram size [100]: Timeout in seconds [2]: Extended commands [n]: y Source address or interface: 172.17.140.17 Type of service [0]: Set DF bit in IP header? [no]: Validate reply data? [no]: Data pattern [0xABCD]: Loose, Strict, Record, Timestamp, Verbose [none]: Sweep range of sizes [n]: Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 172.17.240.35, timeout is 2 seconds: !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 1/3/4 ms |
Utilizzare il comando debug ip tcp transaction per verificare come il protocollo TCP/IP riconosca la route tra gli indirizzi peer DLSw.
router2# debug ip tcp transactions TCP special debugging is on c1603r Mar 9 12:02:03.472: TCB02132106 created Mar 9 12:02:03.472: TCP0: state was LISTEN -> SYNRCVD [1998 -> 172.17.140.17(11001)] Mar 9 12:02:03.476: TCP0: Connection to 172.17.140.17:11011, received MSS 1460, MSS is 516 Mar 9 12:02:03.476: TCP: sending SYN, seq 1358476218, ack 117857339 Mar 9 12:02:03.480: TCP0: Connection to 172.17.140.17:11001, advertising MSS 1460 Mar 9 12:02:09.436: TCP0: state was SYNRCVD -> CLOSED [1998 -> 172.17.140.17(11001)] Mar 9 12:02:09.440: TCB 0x2132106 destroyed Mar 9 12:02:15.471: TCB0214088C created
Se esiste una route valida e i ping estesi hanno esito positivo, ma il peer DLSw non riesce a raggiungere lo stato CONNECT, verificare che il problema non sia causato da un firewall, ad esempio un elenco degli accessi sulla porta DLSw numero 2065.
router2# show access-lists Extended IP access list 101 deny ip any any log-input deny tcp host 172.17.240.35 172.17.140.0 0.0.0.255 eq 2065 established permit ip any any
Verificare che Network Address Translation (NAT) non impedisca la connessione del peer DLSw.
router2# show ip nat tran Pro Inside global Inside local Outside local Outside global --- 172.17.240.200 10.1.1.1 --- --- --- 172.17.240.201 10.2.1.201 --- --- --- 172.17.240.202 10.2.1.202 --- ---
Dopo aver stabilito un percorso tra gli indirizzi peer DLSw, il protocollo TCP/IP scambierà le funzionalità (tramite pacchetti di scambio delle funzionalità) e stabilirà una connessione peer (tali indirizzi passano allo stato CONNECT).
router1# show dls capabilities DLSw: Capabilities for peer 172.17.140.17(2065) vendor id (OUI) :'00C' (cisco) version number : 1 release number : 0 init pacing window : 20 unsupported saps : none num of tcp sessions : 1 loop prevent support : no icanreach mac-exclusive : no icanreach netbios-excl : no reachable mac addresses : none reachable netbios names : none cisco version number : 1 peer group number : 0 border peer capable : no peer cost : 3 biu-segment configured : no local-ack configured : yes priority configured : no version string : Cisco Internetwork Operating System Software IOS (tm) RSP Software (RSP-JSV-M), Version 12.1(1), RELEASE SOFTWARE (fc1) Copyright (c) 1986-2000 by cisco Systems, Inc. Compiled Tue 14-Mar-00 23:16 by cmong
Utilizzare il comando show dlsw peer per controllare il numero di rilasci sul peer DLSw. Se il conteggio aumenta inizialmente o rapidamente, è possibile che si sia verificata una congestione della profondità della coda TCP del peer DLSw.
Per i circuiti DLSw, è disponibile un algoritmo per il controllo del flusso interno che inizierà a chiudere le finestre su diversi tipi di traffico prioritario, in base alla congestione della profondità della coda TCP. Se si iniziano a verificare problemi di congestione, usare il comando show dlsw peer per controllare la profondità della coda.
Nota: tenere presente che il valore predefinito della profondità della coda è 200. Qualsiasi valore in questo campo superiore a 50 (25%) comincerà a ridurre le dimensioni della finestra di controllo del flusso.
router2# show dlsw peers Peers: state pkts rx pkts tx type drops ckts TCP uptime TCP 172.17.140.17 CONNECT 11 11 0 0 51 0:00:04:42
È possibile visualizzare lo stato CONNECT. Il peer DLSw in stato CONNECT indica che il peer è stato attivato correttamente.