웹 프로토콜

Byunghoon Lee·2020년 10월 2일
0

Web

목록 보기
5/7
post-thumbnail

출처 :
1) https://joshua1988.github.io/web-development/web-protocols/
2) https://victorydntmd.tistory.com/285

웹 프로토콜

웹에서 쓰이는 통신규약으로 , 통신규약이란 통신을 할때 "내가 이렇게 할게 너는 이렇게 해줘" 라고 약속하는 것입니다.
아래 예시를 보자.

각각 단위의 역할을 알아보자.

  • protocol : 문서에 접근하기 위해 사용하는 프로토콜 이름
  • computer_name : 문서가 있는 컴퓨터(서버)의 도메인 이름
  • port : 서버가 어떤 포트 숫자를 바라보고 있는지 (선택)
  • document_name : 서버 컴퓨터에 있는 특정 문서의 이름
  • parameters: 페이지에 넘기는 변수 (선택)

예제는 다음과 같다.

http://www.netbook.cs.purdue.edu/toc/toc01.htm

  1. URL은 http 프로토콜을 사용.
  2. www.netbook.cs.purdue.edu 의 이름을 갖는 컴퓨터(서버)에서
  3. toc/toc01.htm 파일에 접근한다.

🌟 HTTP (Hyper Text Transfer Protocol)

HTTP는 브라우저가 웹 서버와 통신하기 위해 사용하는 주요 프로토콜이다.
즉 , 인터넷에서 데이터를 주고 받을 수 있는 통신규약 정도로 생각하면 된다.

HTTP의 4가지 요청 형식

  • GET : 문서를 요청 . 서버가 클라이언트에 상태 정보와 복제된 문서를 보냄으로 응답을 함.(조회)
  • HEAD : 상태 정보를 요청 . GET 과 동일한 형태로 응답 , 문서 복제는 하지 않음!
  • POST : 데이터를 서버로 송신 . 서버는 해당 데이터를 특정 아이템에 덧붙인다. (생성)
  • PUT : 데이터를 서버로 송신. 서버가 특정 아이템을 완전히 대체한다. (수정)

HTTP 통신 방식

요청과 응답으로 이루어져 있어 어떤 데이터를 '요청'하면 요청받은 데이터를 받아 '응답'한다.

HTTP 1.1 과 2.0의 차이

처리방식

  • HTTP 1은 요청을 받아야만 다음 요청이 처리 될수 있다 . (1요청당 1리소스)
  • HTTP 2 는 여러리소스를 한번에 받아올 수 있다.

데이터

  • HTTP1은 문자열로 전송.
  • HTTP2 는 바이너리(이진법)로 인코딩하여 '압축'해서 전송한다.
    (헤더 또한 압축 가능)

그외 웹과 관련된 프로토콜을 좀더 알아보자.

IP / MAC / ARP

우리가 많이 알고있는 IP (Internet Protocol)는 각각의 패킷을 IP주소와 MAC 주소를 통해 상대방에게 전달하는 역할을 합니다.

  • IP 주소
    각 노드에 부여된 주소를 가르킵니다.
  • MAC 주소
    각 네트워크 카드에 할당된 '고유의 주소'를 말합니다.
  • ARP
    유동적인 IP주소를 고유주소인 MAC 주소로 변환하여 목적지를 찾아갑니다.

TCP / UDP

TCP

(Transmission Control Protocol) 전송 제어 프로토콜입니다. (전달)

TCP의 역할

  • 데이터를 안정적으로 전달
  • 데이터를 순서대로 전달
  • 데이터를 에러없이 교활할 수 있도록 전달.

UDP

(User Datagram Protocol)은 TCP와 대조되는 전송 프로토콜로 , 데이터 전달에 대한 안정성을 보장하진 않지만 , 속도는 TCP에 비해 빠릅니다.

예 ) 유튜브 (스트리밍) 서비스

스트리밍 같은 경우 바로바로 화면에 나타내 줘야하기 때문에 데이터의 안정성 보다는 '속도'가 더 중요.

즉 , 서비스에 따라 사용하는 프로토콜이 다릅니다.

DNS (Domain Name Server)

숫자로 되어있는 IP주소를 우리가 기억하기 쉽게 '문자'로 매핑해주는 시스템을 말합니다.

DNS는 도메인 주소를 IP 주소로 변환해주는 역할을 하기 때문에 , 유저들은 naver.com / google.com 과 같이 입력만해도 해당 사이트에 접근할 수 있게 됩니다.

profile
Never never never give up!

1개의 댓글

comment-user-thumbnail
2020년 10월 2일

병훈님 정리 잘하셨네요 잘보고 갑니당 ㅎㅎ

답글 달기