def update(self):
        for iface, newio in psutil.net_io_counters(True).items():
            if not iface.startswith('lo'):
                netinfo = netifaces.ifaddresses(iface)
                if netinfo.get(netifaces.AF_INET) and not self._is_ignored(iface):
                    newio = self._net_io_counters(newio)
                    newio['iface'] = iface
                    newio.update(netinfo[netifaces.AF_INET][0])
                    self._deltas(self.nics.get(iface,{}), newio)
                    self.nics[iface] = newio
                elif iface in self.nics:
                    del self.nics[iface]
        self.data['nics'] = sorted(self.nics.values(), key=lambda n:n['iface'])
        self.data['total'] = self._deltas(self.data.get('total',{}), self._net_io_counters())
        super(Plugin, self).update()