use eventemitter in tcp layer