Ce document vous permet de résoudre les problèmes de connectivité IP entre des homologues de commutation de liaison de données (DLSw).
Les lecteurs de ce document doivent avoir une connaissance des concepts de base des protocoles IP et TCP.
Ce document ne se limite pas à des versions logicielles ou matérielles spécifiques, mais à Cisco IOS ? pour exécuter DLSw sur les routeurs Cisco, il est nécessaire d'utiliser le jeu de fonctions IBM.
For more information on document conventions, refer to the Cisco Technical Tips Conventions.
L'une des façons de déterminer si vous disposez d'une connectivité IP est d'émettre une requête ping étendue (reportez-vous à Commandes IP, et faites défiler jusqu'à la section ping (privilégié). Avec la requête ping étendue, vous spécifiez l'adresse IP cible comme adresse d'homologue DLSw distante et spécifiez la source comme adresse IP d'homologue locale. Si cela échoue, vous avez probablement un problème de routage IP ; soit l'homologue local n'a pas de route vers l'homologue distant, soit l'homologue distant n'a pas de route vers l'homologue local. Pour dépanner le routage IP, reportez-vous à la section Routage IP de la page Support technologique.
Après avoir vérifié que la connectivité IP est bonne et que la requête ping étendue fonctionne, l'étape suivante consiste à émettre la commande debug dlsw peer.
Attention : La commande debug dlsw peer peut entraîner une grave dégradation des performances, en particulier lorsqu'elle est exécutée sur un routeur configuré de telle sorte que plusieurs homologues s'affichent simultanément. Avant de tenter d'émettre cette commande debug, reportez-vous à Informations importantes sur les commandes de débogage.
Émettez la commande ??debug dlsw peer pour activer les homologues entre deux routeurs 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)
Le routeur démarre l’homologue, ouvre une session TCP avec l’autre routeur et commence à échanger des fonctionnalités. Après un échange positif de capacités, l'homologue se connecte. Contrairement au pontage RSRB (Remote Source-Route Bridging), DLSw ne déplace pas l'homologue à un état fermé s'il n'y a pas de trafic ; les pairs restent toujours connectés. Si les homologues restent déconnectés, vous pouvez émettre le débogage dlsw ? ? peer ??et commandes debug ip tcp transactions pour déterminer pourquoi une connexion n'a pas été ouverte.
Si les homologues se connectent par intermittence, déterminez s'il existe un pare-feu entre les homologues. Si oui, reportez-vous à Configuration de la commutation de liaison de données et de la traduction d'adresses réseau. Si vous disposez d'une connexion Frame Relay, assurez-vous que vous ne dépassez pas le débit CIR (Committed Information Rate) et que vous abandonnez les paquets TCP en conséquence.
Ces exemples de résultats illustrent certaines des méthodes décrites dans ce document :
Configurations du routeur
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 |
Avant que les homologues DLSw échangent leurs capacités et établissent une session, TCP/IP doit établir une route entre les adresses homologues TCP/IP.
Cette route TCP/IP peut être vérifiée si vous émettez la commande show ip route ip-address et si vous faites une requête ping étendue entre les adresses homologues DLSw.
Si vous suspectez un problème avec la route IP, laissez la requête ping étendue s’exécuter pendant quelques minutes et vérifiez qu’elle reste constante.
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 |
Émettez la commande debug ip tcp transactions pour vérifier comment TCP/IP connaît la route entre les adresses homologues 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
Si une route valide existe et que les requêtes ping étendues aboutissent, mais que l'homologue DLSw ne parvient pas à atteindre l'état CONNECT, vérifiez qu'un pare-feu (tel qu'une liste d'accès sur le numéro de port DLSw 2065) n'est pas la cause du problème.
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
Vérifiez que la traduction d'adresses de réseau (NAT) n'empêche pas la connexion de l'homologue 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 --- ---
Une fois que TCP/IP a établi une route entre les adresses homologues DLSw, ils échangent des capacités (via des paquets d'échange de capacités) et établissent une connexion homologue (ils passent à l'état 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
Exécutez la commande show dlsw peer pour vérifier le nombre de pertes sur l'homologue DLSw. Si vous voyez un nombre qui augmente initialement ou rapidement, cela peut indiquer que vous avez un encombrement sur la profondeur de file d'attente TCP de l'homologue DLSw.
Pour les circuits DLSw, il existe un algorithme de contrôle de flux interne qui va commencer à fermer les fenêtres sur différents trafics de priorité, en fonction de la façon dont la profondeur de file d'attente TCP devient congestionnée. Si vous commencez à rencontrer des problèmes d'encombrement, émettez la commande show dlsw peer pour vérifier la profondeur de la file d'attente.
Remarque : N'oubliez pas que la valeur de profondeur de file d'attente par défaut est 200. Toute valeur supérieure à 50 (25 %) dans ce champ commencera à réduire la taille des fenêtres de contrôle de flux.
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
L'état CONNECT est ce que vous voulez voir. L'homologue DLSw dans l'état CONNECT indique que l'homologue a été activé avec succès.