Some Issues for Port Communication
Issues to consider to design/understand a system with ports:
1. Asynchrony and notification. How does a thread know when a message arrives on a port?
How to receive from multiple ports, without blocking on an idle port while incoming messages are queued on another?
2. Naming and binding. How do threads name the ports to send to or receive from (listen)?
How do threads find the names, e.g., for services they want to use?
3. Protection and access control.
How does the system know if a thread/process has a “right” to send to or listen on a particular port? E.g., how can we prevent untrusted programs from masquerading as a legitimate service?