Zagadnienia dotyczące programowania (Monitor sieci)
Ten temat zawiera informacje o programowaniu. Poniższa lista zawiera kilka wskazówek dotyczących programowania, które ułatwiają pisanie analizatora.
Napiwek | Opis |
---|---|
Automatyczne instalowanie analizatora | Zaimplementuj funkcję ParserAutoInstallInfo, aby automatycznie zainstalować analizator i zaktualizować skojarzone pliki INI. W przypadku ręcznego instalowania analizatora należy ręcznie zaktualizować wszystkie skojarzone pliki INI. |
Analizowanie właściwości protokołu | Zaimplementuj funkcję AttachProperties, aby przeanalizować właściwości protokołu. Unikaj używania funkcji AttachPropertyInstanceEx podczas dołączania wystąpienia właściwości i używaj jej tylko dla danych nieprzyrównanych bajtami lub danych, które muszą zostać zdekodowane. Dołączanie właściwości odnosi się do mapowania wystąpienia właściwości do określonej lokalizacji w procesie przechwytywania. |
Analizowanie protokołów podzielonych między ramki | Załóżmy, że każdy fragment protokołu jest kompletny w ramce i załóżmy, że użytkownik wywołuje narzędzie Protocol Coalesce, aby połączyć elementy w jeden protokół. Nie patrz wstecz na poprzednią ramkę podczas analizowania protokołu i unikaj próby odtworzenia protokołu podzielonego między ramkami. |
Formatowanie wyświetlanych danych | Wywołaj funkcję FormatPropertyInstance, aby użyć ogólnego formatera do sformatowania danych wyświetlanych w panelu szczegółów interfejsu użytkownika Monitora Sieci. Unikaj pisania niestandardowego formatowania dla danych wyświetlanych w interfejsie użytkownika. Można jednak wywołać niestandardowy formater, aby utworzyć wiersz właściwości podsumowującej dla protokołu, który analizujesz. |
Korzystanie z obiektu CCAlloc | Użyj obiektu CCAlloc, jeśli chcesz, aby monitor sieci przydzielał dane na podstawie przechwytywania. Monitor sieci nie określa kolejności, w jakiej ramki wywołują analizator. |
Utrzymywanie analizatora bezstanowego | Utrzymuj bezstanowość działania analizatora, ponieważ gdy monitor sieci analizuje przechwytywanie, nie przekazuje ramek do analizatora w określonej kolejności. Z tego powodu zaleca się, aby nie przechowywać danych globalnych. |