티스토리 뷰

HTTP

    • Hypertext TransporT Protocol 의 약자로서 인터넷의 하이퍼텍스트 통신 규약이다.

하이퍼텍스트란 테오도르 넬슨이 만든 용어로서 'hyper'와 'text'를 합성한 언어이다. 하이퍼텍스트의 특징은 텍스트에 링크를 걸어 언제든지 원하는 컨텐츠로 이동할 수 있다는 점이다. 이는 하이퍼링크와 쌍방향 성이라는 컴퓨터의 특성을 결합한 것으로 기존 텍스트의 선형성, 고정성, 유한성의 제약에서 벗어날 수 있는 개념이다.


    • HTTP는 Stateless 프로토콜이다.

말 그대로 상태가 유지되지 않는 프로토콜. 즉, 웹 서버는 클라이언트의 연결을 대기하고 있다가 클라이언트의 요청이 들어오면 그에 해당하는 Data(이미지, 텍스트, 사운드 등등)를 넘겨주고 해당 세션을 종료한다. TCP는 세션을 유지하지만 HTTP는 클라이언트의 요청을 처리한 후 바로 세션을 종료한다는게 TCP와의 차이점이다.


    • HTTP는 웹 브라우저를 하나의 클라이언트로 인식한다.

세션이 연결되면 HTTP Request Header와 Body에 주소와 요청 데이터를 포함어여 웹 서버에 전달한다. 이때 웹 서버는 클라이언트 요청의 유효성을 검증한 후 이상이 없다면 HTTP Response Header 와 Response Body에 문서를 만들어 클라이언트에게 전달한다. 유효성을 검증하는 이유는 악의적인 목적을 가진 클라이언트가 서버안에 저장되어있는 중요한 파일(관리자만 접근할 수 있는 파일들)에 접근을 시도할 수 있기 때문이다.





-참고 : 네이버 지식백과, 웹 해킹의 원리와 이해 [프리렉]


댓글