我们知道网络的3要素:主机地址(也就是常说的ip地址)、端口号(做过服务器开发的童鞋都知道,80、8080...)、传输协议。通过ip地址可以找到对应的主机,通过端口号可以找到主机上对应的程序,通过传输协议可以确定网络间是如何传入数据的。
我们常见的网络传输协议比如:HTTP、HTTPS、TCP、UDP等。Socket 也是一种传输协议,它的底层是基于TCP/IP协议。通过Socket协议使网络上的两个程序通过一个双向的通信连接起来实现数据交换。顾名思义,通过socekt建立的连接,至少要有2个端,一个运行于服务器端的socket,一个运行于客户端的socket。