implement network manager