refactor snmp_server