본문 바로가기

TIL

231229_TIL

오늘한일 

- 웹 기본지식과 HTTP 공부

 

 

네트워크 지식이 필요한 이유 HTTP는 결국 웹 기반에서 동작하기 때문에 네트워크에 대한 지식은 필수이다.

 

 

 

1. 컴퓨터 간 통신

컴퓨터끼리 직접 통신할 때는 주로 짧은 거리에서 이루어집니다. 이것은 일반적으로 로컬 네트워크(LAN)에서 발생하는 것으로, 같은 공간이나 건물 안에서 컴퓨터 간에 데이터를 주고받습니다.

2. 인터넷

인터넷은 멀리 떨어진 컴퓨터 간 통신을 가능케 합니다. 해저 광케이블이나 인공위성과 같은 기술을 활용하여 긴 거리에 걸쳐 컴퓨터들을 연결합니다. 이로써 전 세계의 컴퓨터들이 서로 통신할 수 있게 됩니다.

3. World Wide Web (WWW)

World Wide Web(WWW)은 인터넷을 통해 세계적으로 연결된 웹 서비스를 구축한 것입니다. 이것은 웹 페이지, 이미지, 동영상 등 다양한 콘텐츠를 제공하며 사용자들은 웹 브라우저를 통해 이를 접근합니다.

4. 인터넷 프로토콜 (IP)

인터넷 프로토콜(IP)은 컴퓨터 간 데이터 통신을 위한 규약입니다. 각 컴퓨터는 IP 주소를 가지고 있고, 이를 사용하여 데이터를 패킷 단위로 전송합니다. 패킷은 헤더(출발지 IP, 도착지 IP 등)와 페이로드(전달 데이터)로 구성되어 있습니다.

5. 패킷(Packet)

패킷은 데이터 전송의 기본 단위입니다. 헤더는 데이터 전송에 필요한 정보를 담고 있으며, 페이로드에는 실제 전달하고자 하는 데이터가 들어 있습니다. 패킷은 이러한 형태로 전송되며, 도착지에서는 이를 재조립하여 전체 데이터를 얻을 수 있습니다.

6. TCP 프로토콜

TCP 프로토콜은 IP의 문제점을 해결하기 위한 프로토콜입니다. IP는 비연결성과 비신뢰성이라는 문제가 있습니다. TCP는 이러한 문제를 보완하여 안정적인 통신을 제공합니다. TCP는 데이터를 순서대로 전달하고, 수신 여부를 확인하여 손실된 데이터를 재전송합니다.

 

 

 

웹 기본 지식:

  1. 웹의 동작 원리:
    • 클라이언트(웹 브라우저)가 서버에 HTTP 요청을 보냄.
    • 서버는 요청을 처리하고 클라이언트에게 HTTP 응답을 반환함.
    • 클라이언트는 응답을 받아 화면에 표시함.
  2. URL (Uniform Resource Locator):
    • 웹 상의 자원(문서, 이미지, 동영상 등)의 위치를 나타내는 주소.
    • 구성: 프로토콜://도메인(또는 호스트):포트/경로?쿼리스트링#프래그먼트
  3. HTTP (Hypertext Transfer Protocol):
    • 웹에서 데이터를 주고받기 위한 프로토콜.
    • 클라이언트와 서버 간의 통신을 담당.
    • 주로 TCP를 기반으로 동작하며, 80번 포트를 사용.

HTTP (Hypertext Transfer Protocol):

  1. HTTP 메서드:
    • GET: 리소스를 요청하여 가져옴.
    • POST: 리소스를 생성함.
    • PUT: 리소스를 업데이트함.
    • DELETE: 리소스를 삭제함.
    • 기타 등등 (HEAD, OPTIONS, PATCH 등)
  2. HTTP 상태 코드:
    • 1xx: 정보를 전달하기 위한 처리 중.
    • 2xx: 성공. 요청이 성공적으로 처리됨.
    • 3xx: 리다이렉션. 추가 작업이 필요함.
    • 4xx: 클라이언트 오류. 잘못된 요청이나 요청 처리 불가.
    • 5xx: 서버 오류. 서버가 요청을 처리할 수 없는 상태.
  3. HTTP 요청 헤더와 응답 헤더:
    • 헤더는 요청 또는 응답의 메타데이터를 전송함.
    • 일반 헤더, 요청 헤더, 응답 헤더, 엔터티 헤더로 구분.
  4. 쿠키와 세션:
    • 쿠키는 클라이언트 측에 저장되는 작은 데이터 조각.
    • 세션은 서버 측에 상태 정보를 저장하여 클라이언트와 상호작용하는 방법.
  5. REST (Representational State Transfer):
    • 리소스 기반 아키텍처.
    • 각 리소스는 고유한 URI가 있고, 표현을 통해 상태를 주고 받음.
  6. HTTPS (Hypertext Transfer Protocol Secure):
    • HTTP의 보안 버전.
    • 데이터를 암호화하여 안전한 통신을 제공.
  7. 웹 보안:
    • 크로스 사이트 스크립팅(XSS), 크로스 사이트 요청 위조(CSRF), SQL 인젝션 등의 공격에 대비.

'TIL' 카테고리의 다른 글

240104_TIL  (0) 2024.01.04
231228_TIL  (1) 2024.01.02
231227_TIL  (0) 2023.12.28
231226_TIL  (0) 2023.12.26
231222_TIL  (0) 2023.12.26