ATM
网的拓扑发现,在网上根本找不到相关资料,经过自己长时间的研究,终于有了结果。经过实际验证,证明是正确的。
其实它比IP网的拓扑发现要简单得多。
获取PVC:
PSAX ATM中有4种PVC:
ATM2ATM PVC
cirEm2ATM PVC
bridge2ATM PVC
gige2ATM PVC
由于在acmib中没有定义gige2ATM PVC,所以只能找到其他三种PVC。
三种PVC的获取方法:
    
        
            | PVC | Table | OID | 
        
            | ATM2ATM  | atmPvcVccTable | 1.3.6.1.4.1.1751.2.18.6.1.1 | 
        
            | cirEm2ATM  | cirEmAtmPvcVccTable | 1.3.6.1.4.1.1751.2.18.6.6.1 | 
        
            | bridge2ATM | bridgeAtmPvcVccTable | 1.3.6.1.4.1.1751.2.18.6.13.1 | 
    
算法:
(1)    找出所有active的pvc。
(2)    pvc相同且pvc的服务类型(serviceType)相同的两个atm之间存在一条物理链路。这两表中sreviceType的代码所表示的serviceType不相同,比如在atmPvcVccTable中serviceType定义为
      SYNTAX INTEGER {
                                ubr(1),
                                vbr-nrt2(2),
                                vbr-nrt1(3),
                                vbr-rt2(4),
                                vbr-rt1(5),
                                vbr-express(6),
                                cbr4(7),
                                cbr3(8),
                                cbr2(9),
                                cbr1(10),
                                gfr2(11)
                                }
而在cirEmAtmPvcVccTable中为
SYNTAX INTEGER {
                                cbr-1(1),
                                cbr-2(2),
                                cbr-3(3),
                                cbr-4(4)
                               }
所以不能比较数字,而应该比较字符串。
(3)    要得到pvc及其所在的接口,就必须得到三个表中的index,以bridgePvcVccTable为例:
 
 
以第一行来说明 1305001.101001.11.260
1305001 interface sideA
101001 interface sideB
11.260 即PVC
所以在台ATM中11-260这条PVC就是接在sideB(为什么取sideB而不是sideA?我现在还不明白)101001这个接口上。Interface的格式为SSPPCCC,以此得到物理接口0101。
    有些链路找不到,可以肯定地说,是因为找不到gige2ATM pvc。