A communication protocol is an agreement which specifies a common language two computers use to exchange messages. For instance, a protocol specifies exact format and meaning of every message that a computer can send. It also specifies conditions under which a computer must send a given message and how a computer must respond when a message arrives. Different kinds of protocols are used in Internet like IP and TCP. A computer connected to Internet needs both IP and TCP software. IP provides a way of transferring a packet from its original source to destination and TCP handles lost datagrams as well as delivery of datagrams. Together, they provide a consistent way to send data across Internet.