в С для этого есть libsnmp (из пакета UCD-SNMP) или libnetsnmp ( NET-SNMP, который является развитием UCD).
Функций там ну оччень много, посему здесь перечислять не буду - в хедерах посмотришь :)
в Perl5 это модули p5-SNMP* - там их (ф-ий) тоже много.