본문 바로가기
CS/데이터통신 & 네트워크

[네트워크] HTTP의 특징: 무상태성(Stateless), 비연결성(Connectionless)

by jangThang 2023. 7. 6.
반응형

  HTTP는 크게 2가지 특성, 무상태성과 비연결성을 가지고 있습니다. 이 특징에 대해 알아봅니다.

 

[ Contents ]

     

     

    1. 무상태성 (Stateless)

    서버에서 클라이언트의 상태를 저장하지 않음

     

     HTTP프로토콜은 서버-클라이언트 구조로, 클라이언트는 필요한 데이터나 서비스를 요청하고 서버는 응답합니다.

     이때 서버는 클라이언트의 상태를 저장하지 않습니다. 일시적인 상태이기 때문에 DB에 저장하여 타 서버와 동기화 과정을 거치지 않습니다. 그대신 클라이언트 측에서 해당 정보를 기억하며, 매 요청마다 이전 상태까지 모두 포함해서 보냅니다.

     

     흔히 콜센터를 떠올리면 쉽게 이해할 수 있습니다.

     문의를 위해 콜센터에 전화를 하면, 대기 중인 상담원 중에 1명과 연결되게 됩니다. 통화를 마친 후, 관련 문의가 생겨 다시 전화할 경우... 높은 확률로 다른 상담원과 연결되게 됩니다. 그러면 다시 자신의 상황과 문제를 설명해야 겠죠.

     Stateless로 통신하는 HTTP 역시 마찬가지입니다. 다만 브라우저에서 상태와 캐시를 저장해서 매번 같이 전송하기 때문에 우리가 몰랐을 뿐이죠.

     

     무상태성(Stateless)이기 때문에 추후 요청에도 이전 상태를 덧붙여야하는 단점이 있지만, 이를 상회하는 장점도 있습니다. 일단 서버 측에서 상태를 관리해야하는 부담이 없습니다. 또한 Client 별 전용 서버나 연결을 유지하지 않아도 되죠.

     특정 사용자와 서버와의 연결만 허용한다면 교착상태가 발생할 수도 있습니다. 콜센터에 비유하면, 다른 상담사는 대기 중이지만 나와 상담했던 상담사는 상담이 밀려있어 오래 기다려야할지도 모릅니다. 하지만 무상태성은 어떤 상담사와도 연결할 수 있으니 효율적이고 빠릅니다.

     만약 개인별로 서버를 부여했다면 서버가 남아나질 않았겠죠...

     

     

     

    2. 비연결성 (Connectionless)

    서버와 클라이언트 연결을 유지하지 않음 (단발성 연결)

     

     HTTP는 일정 시간 내 요청이 없으면 서버와의 연결을 끊어버립니다. 

     일반적으로 웹서핑을 할 때, 서버와 지속적으로 요청-응답을 주고 받진 않습니다. 웹페이지를 이동하거나 버튼 누를 때만 서버와 통신하며 이는 지극히 일시적입니다. 따라서 굳이 서버를 점유해두고 대기시킬 필요가 없죠.

     다만 대부분의 HTTP 통신이 TCP 프로토콜을 이용하기 때문에 짧은 시간 내 잦은 연결은 큰 부담이 됩니다. (시작: 3 way handshake, 종료: 4 way handshake)

     

    2023.07.04 - [CS] - [네트워크] TCP와 UDP의 필요성과 특징 (w. IP프로토콜의 한계)

     

    [네트워크] TCP와 UDP의 필요성과 특징 (w. IP프로토콜의 한계)

    기존 ip프로토콜에 대해 알아보고, 이를 통해 TCP와 UDP의 필요성과 특징을 알아봅니다. [ Contents ] 1. IP 프로토콜의 한계 1) 비연결성: 수신자가 없거나, 서비스 불능 상태여도 전송됨 2) 비신뢰성:

    star7sss.tistory.com

     

    웹페이지를 로딩할 때 다운받는 파일들

     그래서 지속 연결(Persistent Connections)이라는 개념이 등장합니다. 어느 정도까지는 기다려줬다가 연결을 끊는 개념이죠. 대체로 웹 페이지를 로딩할 때, HTML을 비롯해 JS, CSS, IMG, 기타 라이브러리까지 수십, 수백개의 파일을 요청해야 합니다.

     이를 매번 TCP 연결-종료하면 속도가 굉장히 느려지기 때문에 일정시간 동안은 요청이 없더라도 연결을 유지합니다.

     

    star가 되고나서 Tistory

    반응형

    댓글