ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • HTTP 구조
    대학 수업/네트워크 2024. 11. 20. 11:09

    P.156  method 종류

     

     

    URI : uniform resource identifier - 통합 자원 식별자

    인터넷에 있는 특정 자원(파일)을 나타내는 유일한 주소 : 각종 정보들의 유일한 이름이나 위치

     

     URL : uniform resource locator

     

     

    scheme : //host[:port][path][?query]

     

    스키마 : http,https,telnet,ftp

    ip : host

    port : 프로그램 주소

    path : 서버 프로그램에 설정된 특정 위치 기준 h클라이언트가 받고 싶은 파일 경로

    query : ?

     


    HTTP 요청 헤더

    클라이언트와 서버가 데이터를 주고받으면서 필요한 추가 정보 제공

    Host : URL 에서 호스트 주소와 포트번호 서정

    User-Agent : 운영체제 버젼, 웹 브라우저 버젼 등 클라이언트의 프로그램 정보 설정

    Cookie : 이전에 서버에서 받은 정보가 있다면 쿠키에 포함하여 서버에 전송

    Content-Type : 주고 받는 데이터 양식?

     

    HTTP 요청 Body

    Post method? 

     


    서버 : 클라이언트 요청에 응답 역할

    방식에 따라 웹서버, 웹 어플래케이션 서버, 데이터베이스 서버 로 나눠진다.

     

     

    웹서버 

    단순히 서버에 저장된 웹페이지(HTML,css,js 등)나 이미지, 음성, 동영상 등을 HTTP 응답 프로토콜에 담아 클라이언트에게 보낸다.

    정적 데이터 : 저장된 파일의 내용을 변경하지 않고 그대로 보내는 것

     

    웹 어플리케이션 서버 

    그냥 보내지 않고, 프로그래밍 언어 코드 실행하여 서버 컴퓨터나 데이터베이스 서버에 저장된 내용을 불러와 처리한 후 결과를 HTTP 응답 프로토콜에 담아 클라이언트에 보낸다.

    동적 데이터 : 파일의 내용을 처리한 후 변경할 내용이 있으면 변경해서 보냄


     

     

    HTTP 응답 프로토콜 구조

    Status Line - Header - 공백(enter*1) - Body

     

    HTTP 버젼 - 상태코드 - 상태문구

    상태코드 : 서버가 알려주는 정보 : 1~5백번대 자리

    100 : 클라이언트 요청 받았고 처리중

    200 : 서버가 요청을 정상으로 받고, 정상으로 처리했음을 의미 | 성공적 통신 : 웹페이지 표시(상태코드 표시X)

    300 : 클라이언트 요청을 위해 추가 동작 필요

    • 301 : 서버가 클라에 요청한 주소가 변경됨(영구)
    • 307 : 일시적

    400 : 클라이언트 요청이 잘못되었음

    • 400 : 요청 이해 불가, 보내야할 데이터 보내지 않은 경우 : Bad Request
    • 401 : 로그인하지 않고 접근 제한 : Unauthorized
    • 403 : 로그인 하고 접근 제한 : Forbidden
    • 404 : 서버에 없는 페이지 요청시 : Not Found

    500 : 서버에서 클라이언트 요청 처리 중 문제 발생

    • 500 : 클라이언트의 요청 간 서버 처리 중 오류 발생 //일반적으로 개발자가 코드를 잘못 작성했을 때 : ISE
    • 503 : 너무 많은 사용자 동시 접속 or 사용불가 시 : Service Unavailable

     

     


     

    일반 header :

    Content-Length : 메세지 바디 길이

    Content-Type : 메세지 바디 컨텐츠 종류

     

    요청 header : 

    Cookie : 서버로부터 받은 쿠키를 다시 서버에게 보내주는 역할

    Host : 요청된 URL 에 나타난 호스트명 상세 표시(1.1이상)

    User-Agent : Client 프로그램에 대한 시별 가능 정보 제공

     

    응답 header : 

    Server : 사용하고 있는 웹서버의 소프트웨어에 대한 정보 포함  :ASP.NET

    Set-Cookie : 쿠키를 생성하고 보낼 때 사용, 해당 쿠키 값을 브라우저가 서버에게 다시 보낼때 사용

     

    응답 body : 

    실제 내용 : 타입과 내용


    개발자가 개발한 코드가 어디서 실행되는지로 구분 : 역할, 책임구분을 통한 효율적 개발 및 유지보수

    서버의 부하 분산을 위하여 : 분산네트워크 : 어떻게 서비스가 될 것인지에 대해 알아야 한다

    보안을 위하여 : F code는 클라이언트 컴퓨터에 다운로드되고 실행됨 | 서버 내용은 벡엔드 단

     

    서비스하는 양이 거대해짐 : 사용자의 증가 : 기존의 단일 서버의 불편함

    -> 부하를 줄여 서비스를 빠르게 하겠다

     

     

    Json(JavaScript Object Notation

     

     

     

    '대학 수업 > 네트워크' 카테고리의 다른 글

    DHCP - 도메인  (0) 2024.11.27
    TCP 흐름, 혼잡 제어  (1) 2024.11.13
    TCP - 진행 상태와 신뢰성 확보 방안  (0) 2024.11.07
Designed by Tistory.