
서버 : 클라이언트 소켓의 연결 요청을 대기하고, 연결 요청이 오면 클라이언트 소켓을 생성해 통신을 가능하게 하는 것서버소켓(Server Socket)
서버(Server) 소켓 함수
socket() : Socket 생성 함수bind() : ip와 port 번호 설정 함수listen() : 클라이언트 요청에 수신 대기열을 만드는 함수accept() : 클라이언트와의 연결을 기다리는 함수클라이언트 소켓(Client Socket)
클라이언트(client) 함수
socket() : 소켓을 여는 함수connect() : 통신할 서버의 설정된 ip와 port 번호에 통신을 시도하는 함수주의 사항
accept API내부에서 새로 만들어지는 소켓임accept API에서 생성된, 연결(Connection)이 수립(Establish)된 소켓을 통해 처리됨

HandShake : 클라이언트가 서버로 웹소켓을 연결하고 요청할 때, 서버와 클라이언트 간에 초기 HandShake가 이루어지며 이 HandShake 과정을 통해 웹소켓 연결Websocket 객체를 사용하여 웹소켓 연결을 생성하고 관리open : 웹소켓 연결이 성공적으로 열렸을 때 발생message : 웹소켓을 통해 데이터를 주고받을 때 발생error : 웹소켓 연결 중 오류가 발생했을 때 발생. 연결실패, 통신오류 등이 해당close : 웹소켓 연결이 종료되었을 때 발생 
WebSocket API를 사용하여 웹소켓 클라이언트를 만들 수 있지만, 서버를 만들려면 별도의 라이브러리나 모듈이 필요npm install ws
connection : 클라이언트가 웹소켓 서버에 연결되었을 때 발생. 이 이벤트의 콜백함수는 새로운 클라이언트 연결마다 실행message : 클라이언트로부터 메세지를 받았을 때 발생error : 웹소켓 연결 중 오류가 발생했을 대 발생close : 클라이언트와의 연결이 종료되었을 때 발생