refactor network plugin model