Я пытаюсь разобрать файл матрицы c сетевого трафика в формате XML. Он включает объемы трафика c между исходным (исходным) и конечным узлами. У меня есть матрица c трафика последовательности, что означает, что трафик c развивается с течением времени и представлен временной последовательностью от 0 до временной последовательности N. В качестве примера я прилагаю файл ниже, который включает XML матрица traffic c, в которой есть две временные последовательности (т.е. seq 0 и 1), и в каждой временной последовательности есть два источника (т.е. 20 и 21) и набор пунктов назначения (т.е. 32, 33, 34, 35, 28, 29, 30, 31). Числа с плавающей запятой - это объем c трафика в Мбит / с.
Я ищу, чтобы проанализировать такую матрицу и найти объем c трафика каждого [origin - destination] с течением времени.
Например: мне интересно получить следующую информацию только из файла,
Time seq"0"
Origin -- Destination -- Traffic volume
20 -- 32 -- 0.278971163226
.
.
.
20 - - 31 -- 0
21 -- 32 -- 0.0720389596699
.
.
.
21 - - 31 -- 0.646495362713
Time seq"1"
20 -- 32 -- 0.348919367445
.
.
.
20 - - 31 -- 0.348919367445
21 -- 32 -- 0.264369876118
.
.
.
21 - - 31 -- 0
Вот файл XML.
-<traffic-matrix type="sequence">
-<time seq="0">
<property name="volume_unit" type="string">Mbps</property>
-<origin id="20" id.type="int">
<destination id="32" id.type="int">0.278971163226</destination>
<destination id="33" id.type="int">0.21534822478</destination>
<destination id="34" id.type="int">0.417878716061</destination>
<destination id="35" id.type="int">0.126812437403</destination>
<destination id="28" id.type="int">0.0</destination>
<destination id="29" id.type="int">0.377649042951</destination>
<destination id="30" id.type="int">0.230012161609</destination>
<destination id="31" id.type="int">0.0</destination>
</origin>
-<origin id="21" id.type="int">
<destination id="32" id.type="int">0.0720389596699</destination>
<destination id="33" id.type="int">0.0194404241696</destination>
<destination id="34" id.type="int">0.416078923017</destination>
<destination id="35" id.type="int">0.271277529292</destination>
<destination id="28" id.type="int">0.0219082425921</destination>
<destination id="29" id.type="int">0.0</destination>
<destination id="30" id.type="int">0.0645726634169</destination>
<destination id="31" id.type="int">0.646495362713</destination>
</origin>
</time>
-<time seq="1">
<property name="volume_unit" type="string">Mbps</property>
-<origin id="20" id.type="int">
<destination id="32"id.type="int">0.348919367445</destination>
<destination id="33" id.type="int">0.0</destination>
<destination id="34" id.type="int">0.0</destination>
<destination id="35" id.type="int">0.0</destination>
<destination id="28" id.type="int">0.0</destination>
<destination id="29" id.type="int">0.11926219607</destination>
<destination id="30" id.type="int">0.0</destination>
<destination id="31" id.type="int">0.128091658298</destination>
</origin>
-<origin id="21" id.type="int">
<destination id="32" id.type="int">0.264369876118</destination>
<destination id="33" id.type="int">0.0</destination>
<destination id="34" id.type="int">0.136801239629</destination>
<destination id="35" id.type="int">0.172101959022</destination>
<destination id="28" id.type="int">0.289540759798</destination>
<destination id="29" id.type="int">0.0</destination>
<destination id="30" id.type="int">0.519869498363</destination>
<destination id="31" id.type="int">0.0</destination>
</origin>
</time>
</traffic-matrix>