본문 바로가기

Network/Protocols2

WebSocket의 동작원리 웹소켓은 HTTP로 Handshake를 한 후 ws로 프로토콜을 변환하여 웹소켓 프레임을 통해 데이터를 전송합니다. 웹소켓은 양방향 통신(full-duplex)을 지원하며, 그래서 요청과 응답을 구분하지 않습니다. 크게 붉은 박스로 표시된 Opening Handshake와 노란 박스로 표시된 Data transfer, 보라색 박스로 표시된 Closing Handshake, 세 가지 영역으로 나눌 수 있습니다. 먼저 핸드 셰이크로 연결하는 부분을 살펴보겠습니다. (1) Opening Handshake 웹소켓 클라이언트에서 핸드쉐이크 요청(HTTP Upgrade)을 전송하고 이에 대한 응답으로 핸드 셰이크 응답을 받는데, 이때 응답 코드는 101입니다. 101은 '프로토콜 전환'을 서버가 승인했음을 알리는 .. 2020. 10. 12.
WebSocket? 웹소켓이란? 웹소켓(WebSocket) 프로토콜은 클라이언트와 서버 간의 신속하고 보안이 유지된 양방향 통신을 위한 메커니즘입니다. 웹소켓이라는 단어가 우리에게 더 이상 낯설지 않을 정도로, 웹소켓은 실시간 웹 애플리케이션 구현을 위해 널리 사용됩니다. 서버와 클라이언트 간에 Socket 연결을 유지함으로써 양방향 통신 및 데이터 전송이 가능하도록 하는 기술로 작동 원리에 대해서는 다음 포스트에서 다루도록 하겠습니다. 웹소켓은 HTTP 위에서 동작하는 HTML5의 표준으로, 아래와 같은 특징을 가집니다. 실시간 양방향 통신(full-duplex) 80 / 443 포트를 사용 => 추가로 방화벽을 열거나, CORS(Cross Origin Resource Sharing) 적용 혹은 인증 등의 과정을 변경할 .. 2020. 10. 12.