What criteria do you use to select a specific communication protocol for inter-process communication?