Analogy: An IP address is the 'Phone Number' for the building. A Socket is the particular 'Extension' in the building.
So, for example, if you need to talk to Joe Musthavecontrol, you would dial '1-800-ITISGOD', then extension '666'.
Under TCP, sockets (also known sometimes, and not precicely correctly, as 'Ports') have typically defined
'extensions'.
When you 'Dial in' to a webserver, you typically call '10.0.0.1:80', and ask it to respond to you at '192.0.0.1:9876'. The '10.0.0.1' is the webservers host IP address, the port number is 80 (http), your computers host address is '192.0.0.1', and the socket you want to talk over is 9876.
So what is '9876' ? It's a arbitrary FREE 'socket' number used to establish a link to the webserver. And, typically, the webserver will respond on a different socket than 80, as it has to maintain connections to all users. What do the sockets do? they establish a private (not secure, just unique) connection between your requesting application (a browser) and the server application (the web server). If it weren't for sockets, you couldn't have multiple IP applications open at one time effectively.
So, what is the fine difference between sockets and ports? A Port is usually considered to be an 'Open Extension' that is waiting for something to connect to it, in order to perform a particular service. Querying a servers Port 80 will ask it to open a SEPERATE socket connection to your browser. Querying a servers Port 25 will ask it to open a SEPERATE socket connection to your mail client. Probably clear as mud, but it's some information.
Now, about your IT department... If they insist on taking control of the controls, make sure they also take responsibility for the process. Total responsibility, including safety. I suppose they can go so far as writing their own CIP protocol stack, and read / write data from a CLX processor, though doing so is not only arrogant, but irresponsible. They should just make use of RSLinx as an OPC Gateway (yes, you need Linx Gateway), and then play around with little Java OPC clients.