Ive been reading about ports and its always described as http listens on port 80 or telnet listens on port 23. Is this an accurate description or whats really going on? For some reason it feels like an easy way to describe it. I would assume the nic card gets all the traffic and each network daemon has a PID and the nic uses that to send info to a particular program. Is the program really listening or is it just waiting for input from the nic card to be sent to it as it would a data file? Do ports really exist?