SSL is a transparent protocol which requires little interaction from the end user when establishing a secure session. In the case of a browser for instance. SSL runs above the TCP/IP protocol, which is responsible for the transport and routing of data over a network, and below higher-level protocols such as HTTP and IMAP, encrypting the data of network connections in the application layer of the Internet Protocol suite. The "sockets" part of the term refers to the sockets method of passing data back and forth between a client and a server program in a network, or between program layers in the same computer.