HTTP/HTTPS 통신과 소켓통신

Min·2021년 1월 6일
0

Network

목록 보기
1/7
post-thumbnail

1. HTTP 통신

  • Hyper Text Transfer Protocol의 약어.
    Hyper Text를 전송 프로토콜

  • server 부하를 줄여 다른 접속을 원활하게 하기 위해 Client의 요청(Request)이 있을 때만 Server가 응답(Response)하여 해당 정보를 전송하고 곧바로 연결을 종료한다.

    cf) DDOS 공격: 이러한 HTTP 통신의 특성을 이용하여 여러 대의 PC가 계속적으로 접속을 시도 해 서버가 다른 일을 하지 못하도록 하는 것)

  • 단방향 통신

  • 필요한 경우에만 서버로 요청을 보내는 콘텐츠 위주의 데이터를 사용할 때 용이하다.
    ex) 네이버와 같은 웹페이지 접속, 어플리케이션(Android or Ios)의 개발

  • Hyper Text : 단순하게 text 의미를 넘어서(Hyper) 링크, 이미지 등 다양한 것들을 표현할 수 있다는 의미이다. 모든 웹 문서는 HTML로 이루어져 있고, HTML로 이루어진 문서만이 브라우저를 통해 웹 문서로서 읽어질 수 있다.

출처: 더 알아보기

2. HTTPS 통신

SSL 핸드셰이크

  • 암호화된 HTTP 메세지를 보낼 수 있게 되기 전에
    클라와 서버는 SSL 핸드셰이크를 할 필요가 있다.

  • 핸드셰이크에서 일어나는 일
    1) 프로토콜 버전 번호 교환
    2) 양쪽이 알고 있는 암호 선택
    3) 양쪽의 신원을 인증
    4) 채널을 암호화하기 위한 임시 세션 키 생성

  • SSL 핸드셰이크를 단순화한 버전이다.

  • SSL이 어떻게 사용되는가에 따라 핸드셰이크는 보다 복잡해질 수 있다.

3. 소켓통신

Server와 Client가 특정 Port를 통하여 계속 연결을 유지한다.

  • 서버의 수용력이 제한적이므로 동시에 접속할 수 있는 Client의 수 또한 제한적이다.
  • 양방향 통신(연결지향형)
  • Server와 Client가 실시간으로 데이터를 주고받는 상황이 필요한 경우에 사용된다.
    ex) 실시간 채팅, 동영상 Streaming 중계, 온라인 게임 등

출처: 더 알아보기

참고 자료

[통신 방식] Http 통신과 Socket 통신 차이
[웹 개념] HTTP 통신의 과정
html이란? 속 시원한 HTML의 뜻 풀이
HTTP 통신 VS Socket 통신

profile
slowly but surely

0개의 댓글