2022-03-15
- Lecture 04 recap
- Today's topic: interprocess communication
- Internet architecture
- IP is point2point, TCP is end2end
- BRIDGE: layer2 device
- SWITCH: can be layer2 or layer3
- ROUTER: layer3 device
- MAC address is enough for network layer but it is too long
- IP layer: LAN 2 LAN
- TCP layer: end 2 end
- Interprocess communication
- Message passing
- Synchronous:
- wait for each other at communication point
- tightly coupled
- may cause deadlock (hard to debug)
- Asynchronous:
- "send" is always non-blocking: use middle buffer
- "recv" can be blocking or non-blocking (polling/interrupt)
- use async design as long as it is possible
- Reliability
- Ordering
- Issues:
- Message identifiers: remove duplication
- Failure model: ......
- Timeout: how to calculate timeout?
- TCP/UDP
- Group communication
- Interest management: send only interesting data to game player