컴퓨터공학/컴퓨터망

[컴퓨터망] World Wide Web (service) and HTTP (Protocol)

NIMHO 2022. 7. 10. 19:52
728x90

복습하기 위해 학부 수업 내용을 필기한 내용입니다.
이해를 제대로 하지 못하고 정리한 경우 틀린 내용이 있을 수 있습니다.
그러한 부분에 대해서는 알려주시면 정말 감사하겠습니다.

Architecture

  • WWW는 브라우저를 사용하는 client가 server를 사용하여 서비스에 액세스 할 수 있는 분산 client-server 서비스다.
  • 그러나 제공되는 서비스는 사이트라고 불리는 여러 곳에 분산되어 있다.
  • 각 사이트에는 웹 페이지라고 하는 하나 이상의 문서가 있다.
  • 그러나 각 웹 페이지에는 동일하거나 다른 사이트에 있는 다른 웹 페이지에 대한 일부 링크가 포함될 수 있다.
  • 즉, 웹 페이지는 단순하거나 복합적일 수 있다.

Example 22.1

page를 다운로드하는 것이다.
그림과 같이 단일 request/response 트랜잭션을 사용해 검색할 수 있다.

Example 22.2

기본 문서와 이미지는 동일 사이트에 두 개의 개별 파일에 저장된다.
참조된 텍스트 파일은 다른 사이트에 저장된다.
세 개의 서로 다른 파일을 다루기 때문에 전체 문서를 보려면 세 개의 트랜잭션이 필요하다.

A, B 파일은 모두 사이트 1에 저장되어 있지만, 다른 이름과 주소를 가진 독립적인 파일이다.
따라서 검색하기 위해서는 두 가지의 트랜잭션이 필요하다.

Browser

 

URL (Uniform Resource Locator)

 

Web Documents

  • WWW의 문서는 크게 정적, 동적, 활성의 세 가지 범주로 분류할 수 있다.
  • 카테고리는 문서의 내용이 결정되는 시간을 기준으로 한다.
  • Static Documents
    • 홈페이지 화면을 보여준다.
    • HTML, XML, XSL 및 XHTML은 부록 E에 설명되어 있다.
  • Dynamic Documents
    • client마다 다른 정보를 전달해준다.
    • Dynamic Document를 서버 사이트 dynamic document라고도 한다.
  • Active Documents
    • 환경에 따라 변한다.
    • Active document를 클라이언트 사이트 dynamic document라고도 한다.

 

static document

Static document

서버에서 생성 및 저장되는 static document다.
client는 문서의 사본만 받을 수 있다.
즉, 파일 내용은 파일을 사용할 때가 아니라 생성될 때 결정된다.
물론 서버의 내용은 변경할 수 있지만, 사용자는 변경할 수 없다.

 

Dynamic document

문서를 요청할 때마다 웹 서버에 의해 dynamic document가 생성된다,
request가 도착하면 웹 서버는 dynamic document를 생성하는 응용 프로그램이나 스크립트를 실행한다.
서버는 문서를 요청한 브라우저에 대한 response로 프로그램 또는 스크립트의 출력을 반환한다.
각 요청에 대해 새 문서가 생성되기 때문에 dynamic document의 내용은 요청마다 다를 수 있다.

Dynamic document using CGI

CGI (Commen Gateway Interface)는 dynamic document를 생성하고 처리하는 기술이다.

Dynamic document using server-site script

HTML을 사용해 문서의 고정된 부분을 포함하는 파일을 만들고 다양한 session을 제공하기 위해 서버에서 실행할 수 있는 소스 코드인 script를 포함한다.

 

Active document

Active document using Java applet

active document를 만드는 한 가지 방법은 Java applet을 지용하는 거시다.
브라우저가 URL에 있는 applet 프로그램을 직접 요청하고 수신한다.

Active document using client-site script

 

HTTP

  • HTTP(Hypertext Transfer Protocol)는 주로 World Wide Web의 데이터에 액세스 하는 데 사용되는 프로토콜이다.
  • HTTP는 FTP와 SMTP의 조합처럼 작동한다.
  • 파일을 전송하고 TCP 서비스를 사용하기 때문에 FTP와 유사하다.
  • 그러나 하나의 TCP 연결만 사용하기 때문에 FTP보다 훨씬 간단하다.
  • 별도의 제어 연결은 없으며, 클라이언트와 서버 간에 데이터만 전송한다.

2022.07.10 - [컴퓨터공학/컴퓨터망] - [컴퓨터망] File Transfer: FTP and TFTP

 

[컴퓨터망] File Transfer: FTP and TFTP

복습하기 위해 학부 수업 내용을 필기한 내용입니다. 이해를 제대로 하지 못하고 정리한 경우 틀린 내용이 있을 수 있습니다. 그러한 부분에 대해서는 알려주시면 정말 감사하겠습니다. ▶FTP FTP

dhalsdl12.tistory.com

HTTP는 well-known port 80에서 TCP 서비스를 사용한다.

HTTP transaction

Headers : text기반이다. (TCP는 Binary기반)
A blank line은 기준으로 두고 Header와 Body를 구분한다.

Example 22.4
Example 22.5
Example 22.8

HTTP의 문제점 : 여러 번 request를 받으면 계속해서 open 한다. (TCP (3 way)를 사용하기 때문에)
그렇기 때문에 같은 서버인데 TCP를 여러 번 열고 닫기 때문에 문제이다.

HTTP 버전 1.1은 기본적으로 영구 연결을 지정한다. (아래 그림)
어차피 또 open 하니까 닫지 말고 유지하자는 것이다.

Example 22.9

728x90