edge triggered net IO library