allows gateways to send error a control messages to other gateways or hosts
reports error conditions to the original source, the source must relate errors to individual application programs and take action to correct the problem
provides communication between the Internet Protocol Software on one machine and the Internet Protocol Software on another