공부기록

Web and HTTP 본문

CS/Network

Web and HTTP

코타쿠 2021. 5. 19. 16:53
  • 개요
    • 웹페이지는 오브젝트들로 구성되어 있다.
      • 오브젝트들은 HTML, JPEG, JAVA applet, audio file,... 등등이 될 수 있다.
    • 각 오브젝트는 URL에 의해 참조될 수 있다.
      • URL (Uniform Resource Locator) : 웹 리소스에 대한 참조이다.
  • HTTP (Hypertext Transfer Protocol)
    • Web의 application layer protocol이다.
    • 인터넷에서 하이퍼 텍스트 문서를 주고 받을 수 있는 통신 규약
    • client/server 구조를 가진다.
      • client
        • 웹 오브젝트를 보여주고, 요청하고, 응답받는 브라우저를 말한다.
      • server
        • 요청(http request)에 대해 오브젝트를 보내주어 반응하는 (http response) 웹 서버를 말한다. 
    • TCP를 사용한다.
    • "stateless"하다.
      • 서버는 지난 클라이언트에 대한 정보를 가지지 않는다.
        • "stateful"하는 것은 복잡한다.
          • 이전 정보를 저장해야함
          • 만약 서버 또는 클라이언트에 오류가 나면 state는 일관성있지 못하게 되어 복구되거나 수정되어야한다.
      • 따라서 많은 요청을 처리하는데 유용하다.
    • HTTP 연결에는 non persistent와 persistent가 있다.
      • non-persistent
        • 한 번의 TCP 연결에 하나의 오브젝트만 수신된다.
      • persistent
        • 한 번의 TCP 연결에 여러개의 오브젝트가 수신될 수 있다.
  • HTTP Massages
    • Request Messages
      • 구조
        • request line : method, url, version
        • header lines : header name : value (여러 개의 key : value set)
        • Entity body
      • POST
        • entity body에 데이터가 들어간다.
        • body 데이터가 외부로 들어나지 않는다.
      • GET
        • 데이터가 URL 필드에 들어가게 된다.
        • 따라서 모든 데이터가 들어나게 된다.
      • Method types
        • GET
          • 데이터를 가져온다.
        • POST
          • 데이터를 담아 생성 요청
          • 요청 시마다 새로운 데이터를 생성한다.
        • PUT
          • 데이터 변경 요청
          • 요청 시 마다 같은 리소스를 반환한다. (멱등성)
        • DELETE
          • 데이터 삭제 요청
    • Response Messages
      • 구조
        • status line (protocol, status code, status phrase)
        • header lines
        • data
    • Cookie
      • 쿠키는 stateless한 http 프로토콜에서 sateful하기 위해 사용된다.
        • cookie header line of http response message
        • cookie header line in http request message
        • cookie file kept on user's host, manasged by user's browser
        • back-end database at website
      • 쿠키를 통해 할 수 있는 것
        • 인증
        • 정보 저장
        • 유저 세션 정보
      • 어떻게 state를 유지하는가
        • http 메세지가 state를 전송하여, 클라이언트에 저장한다.

'CS > Network' 카테고리의 다른 글

Network Layer  (0) 2021.05.25
Transport Layer  (0) 2021.05.25
Protocol Layers  (0) 2021.05.19
네트워크 구조  (0) 2021.05.19
Internet, 프로토콜  (0) 2021.05.19