nochmal SNMP

28/12/2009 - 13:55 von Stefan Simon | Report spam
Hallo,

nach einem GetBulk bekomme ich ein Paket, das mit 30 82 01 13 02 01 01 ...
beginnt. 30 ist klar, 02 01 01 ist die Version (int, lànge 1= Value 1 =
Version 2). Dazwischen steht die Lànge der Sequence (82 01 13). Woher weiß
ich nun, dass die Lànge 275 Zeichen betràgt? Erwartet hàtte ich 82 13. Die
01 dazwischen verwirrt mich irgendwie.

Bisher habe ich das so berechnet:

mibvalue = (buff[i]);
if (mibvalue > 128) {
mibvalue = (mibvalue / 128) * 128 + (buff[i + 1] > 128 ? buff[i + 1] -
128 : (buff[i + 1]));
i++;
}

Ich könnte jetzt nach dem ersten Vorkommen von 02 01 01 suchen und dessen
Position von der Paketlànge abziehen, dann hàtte ich auch die Größe, aber
ich würde gerne verstehen, wie die 3 Bytes entstehen. Weiß das jemand und
verràts mir?

tia
Stefan
 

Lesen sie die antworten

#1 Stefan Simon
28/12/2009 - 14:40 | Warnen spam
nach einem GetBulk bekomme ich ein Paket, das mit 30 82 01 13 02 01 01 ...
beginnt. 30 ist klar, 02 01 01 ist die Version (int, lànge 1= Value 1 =
Version 2). Dazwischen steht die Lànge der Sequence (82 01 13). Woher weiß
ich nun, dass die Lànge 275 Zeichen betràgt?



Hab durch mehrere Versuche herausgefunden, das es wohl wie folgt berechnet
wird:
((0x82/128)*128) * 01 + 0x13

Ähnliche fragen