Secure Sockets Layer (SSL) is a cryptographic protocol that provides communications security over the Internet. The more modern version of this protocol is Transport Layer Security (TLS), specified by the IETF in RFC 2246.
'Secure Sockets Layer' was originally a comp.sources Usenet post in the 1980s, using a fairly primitive security protocol. Netscape Communication Corp pioneered the current SSL protocol, in SSL 2.0, the first version deployed, followed by SSL 3.0. At that point the IETF decided to standardize on this protocol, so RFC 2246 defined the next version of this protocol. There was some uncertainty over the intellectual property rights to the SSL name so the IETF chose the name Transport Layer Security (TLS). Today the names SSL and TLS are essentially synonyms. However, if you refer to a specific version you should include the correct name, e.g SSL 3.0 or TLS 1.1. As a progression it goes SSL 2.0 < SSL 3.0 < TLS 1.0 < TLS 1.1 < ..., where "<" means "precedes.
Both SSL and TLS assume they are running above a connection-oriented protocol, i.e. TCP. A different but related protocol, Datagram Transport Layer Security (DTLS), is defined over connectionless protocols such as UDP.
SSL is a mature protocol, now more than 15 years old, with vast support on a multitude of clients, servers, platforms, and libraries. Perhaps the most well-known protocol that uses SSL is the HTTPS protocol, which is the HTTP protocol running over SSL.