TCP?
Is responsible for verifying the correct delivery of data from client to server. Data can be lost in the intermediate network. TCP adds support to detect errors or lost data and to trigger retransmission until the data is correctly and completely received.
Sockets - is a name given to the package of subroutines that provide access to TCP/IP on most systems.
Routing the IP
The biggest task of the TCP/IP was how to get one's data to a destination. For example, you telling your browser to go to www.stuff.com. There is a lot more to the inner workings of the internet than just saying ok, I will head over to www.stuff.com.
www.stuff.com is just a mask for an IP address, which in this case it being 64.49.213.239. Now this number is kept in a very large database on various super computers named "domain name" servers. With this number, it can very quickly locate where to send the information.
Now you could always skip the domain name servers by typing in the address of the website, and have it go straight to it, but it's far easier to type www.stuff.com than a series of numbers.