TCP Client-side is a 2-stepper (look at Wikipedia and [[python ref]], among many references)
1) [SC] socket()
2) [C] connect()
[SC = used on server and client sides]
[C=client-only. seldom/never used on server-side.]
Note UDP is connection-less but connect() can be used too — to set the default destination. See https://stackoverflow.com/questions/9741392/can-you-bind-and-connect-both-ends-of-a-udp-connection.
Under TCP, The verb connect() means something quite different — “reach across and build connection”. You see it when you telnet … Also, server-side don’t make outgoing connections, so this is used by TCP client only. When making connection, we often see error messages about server refusing connection, because no server is “accepting”.
 think of a foreign businessman traveling to China to build guanxi with local government officials.