Inter-process Communication (IPC) is a nice way to describe the fact that processes talk to each other, exchange data, and can then react accordingly. This kind of chatting can be held between a parent and a child process, between processes on the same host, and between programs on different hosts. Processes exchange data in a different ways; for instance, if we think about it, when we SSH to a remote server, our client is communicating with the remote host and actually exchanging data back and forth. The same happens when you pipe the output of a command into the standard input of another one; these are ways, sometimes monodirectional, sometimes bidirectional, to put different processes into communicating and enhancing what we can do with our Bash environment.
There are different ways to accomplish IPC, some more familiar, some less, but all are effective...