[Network] HTTP의 기본 이해와 네트워크

zizi·2023년 7월 11일

네트워크

목록 보기
1/2
post-thumbnail

1. HTTP (HyperText Transfer Protocol)란?

  • html, css, javascript와 같은 파일들은 서로 주고받는 컨텐츠. 이 컨텐츠를 주고 받기위해서는 서버와 클리언트가 서로 공통 알 수 있는 메세지가 필요. 이 메세지가 HTTP.
  • HTTP는 request(요청), response(응답)을 위한 메세지로 구분됨.

참고) 실제 사이트에서 HTTP 메세지 확인

확인하고 싶은 사이트 개발자 도구 열기(F12) - 상단의 Network 메뉴 선택 - Name을 통해 원하는 메뉴 선택 - header 클릭하여 내용 확인하기- General, Response Header, Request Header 확인

2. 웹 브라우저, 웹 서버

1) 웹 브라우저

  • 사용자가 요청한 텍스트 정보를 웹 서버에게 대신 물어봐주는 역할
  • 응답한 정보를 화면에 그려주는 역할

2) 웹 서버

  • 자신의 정보를 보내주면서 텍스트(header)를 만들어주는 역할

3. HTTP Request Message

1) Request Message 구조

2) Request Message 예시

2-1) Request Line

GET/POST 방식 확인 | 요청 정보 | 현재 사용가능 HTTP 버전

2-2) Request Header

1) Host
Host 앞 : 인터넷에 연결되어 있는 컴퓨터를 식별하는 이름. 주소.
Host 뒤 : (Port)한 대의 컴퓨터애 여러 대의 서버가 설치되어있는 경우 구분짓기 위한 숫자.

2) User-Agent
웹 브라우저의 다른 표현. 어떤 웹브라우저인지 정보 서술.

3) Accept-Encoding
웹 브라우저와 웹 서버가 서로 통신할 때 응답하는 데이터 양이 많으면 압축해서 전송.
웹 브라우저가 압축을 풀어서 처리. 네트워크 자원 절약 가능.
이 때의 압축 방식 지원을 서술.

4) If-Modified-Since
파일의 마지막 다운로드일. 다운로드 필요가 없을 시 전송을 하지않는 편의성.

4. HTTP Response message

1) Response message 구조와 예시

1-1) status

상태. 잘됐는지 안됐는지 상태 기술.
버전 | 응답결과 | 응답결과를 사람이 이해할 수 있도록 기술됨.

1-2) headers

1) Content-type
웹 서버가 응답할 때 컨텐트 타입을 기술. 기술된 것에 맞게 화면에 뿌려줌.

2) Content-length
응답하는 이 컨텐츠의 전체 크기를 기술.

3) Content-encoding
압축 방식 기술. 이 정보를 읽으려면 해당 압축방식으로 압축 풀기.

5. Http와 Https(SSL) 차이

security 안정성 차이
http 통신 : 타인이 전송 내용을 보고 있다.
https 통신 : 암호화되어 전송 내용을 볼 수 없다.

6. Cache (캐시)

웹 사이트에서 기존의 다운로드 받은 파일을 읽어서 성능 향상시키는 기법.

7. Cookie

ex) 쇼핑몰 장바구니, 로그인 상태 유지
웹 사이트 기존의 기록들을 웹 사이트와 웹브라우저가 기억하여 사용자 상태 유지 및 식별.
더 상향된 기술 -> web storage

8. Proxy

웹 브라우저와 웹 서버 사이에 중계 서버를 말함.
중간에 있는 서버가 캐시를 대신해주거나 보안 관련 공격을 보호.

9. Network monitoring

  • 개발자도구(F12) - Network
  • wireshark 네트워크 트래킹 감시 오픈소스




[참고]
https://www.youtube.com/watch?v=NXEeQgm0m8Q&list=PLuHgQVnccGMBd-v_DjNm61EBaDpYZSV1Z&index=1

profile
좋았다면 추억이고 나빴다면 경험이다.🍀

0개의 댓글