[TIL] HTTP : The Definitive Guide "p3 ~ p5"

시윤·2024년 1월 18일
0

[TIL] Two Pages Per Day

목록 보기
2/108
post-thumbnail

Chapter 1. Overview of HTTP

(해석 또는 이해가 잘못된 부분이 있다면 댓글로 편하게 알려주세요.)


❤️ 원문 번역 ❤️

Preface

The world’s web browsers, servers,and related web applications all talk to each other through HTTP, the Hypertext Transfer Protocol. HTTP is the common language of the modern global Internet.

-> 전세계의 웹브라우저와 서버, 웹 애플리케이션은 HTTP(Hypertext Transfer Protocol)를 통해 서로와 통신합니다.
-> HTTP는 현대 글로벌 인터넷에서 일반적으로 사용되는 언어입니다.

This chapter is a concise overview of HTTP. You’ll see how web applications use HTTP to communicate, and you’ll get a rough idea of how HTTP does its job.

-> 이 챕터에서는 HTTP에 대해 간단하게 요약합니다.
-> 여러분은 웹 애플리케이션이 서로와 통신하기 위해 어떻게 HTTP를 활용하고, 실제로 HTTP가 어떻게 그 역할을 수행하는지 알게 될 것입니다.

In particular, we talk about:
• How web clients and servers communicate
• Where resources (web content) come from
• How web transactions work
• The format of the messages used for HTTP communication
• The underlying TCP network transport
• The different variations of the HTTP protocol
• Some of the many HTTP architectural components installed around the Internet
We’ve got a lot of ground to cover, so let’s get started on our tour of HTTP.

-> 그 중에서도 이 책에서는 다음의 내용에 대해 주로 이야기합니다.

  • 웹 클라이언트와 서버가 소통하는 방식
  • 리소스(웹 콘텐츠)의 출처
  • 웹 트랜잭션이 이루어지는 방식
  • HTTP 통신에 사용되는 메시지의 형태
  • 내재되어 있는 TCP 네트워크 전송
  • HTTP 프로토콜의 다양한 이형태
  • 인터넷 주위에 설치된 HTTP 아키텍쳐의 구성 요소 중 일부

-> 배워야 할 내용이 많으니 어서 HTTP의 여정을 떠나봅시다.


HTTP : The Internet's Multimedia Courier

" HTTP : 멀티미디어 전달의 매개체 "

Billions of JPEG images, HTML pages, text files, MPEG movies, WAV audio files, Java applets, and more cruise through the Internet each and every day. HTTP moves the bulk of this information quickly, conveniently, and reliably from web servers all around the world to web browsers on people’s desktops.

-> JPEG 이미지와 HTML, 텍스트, MPEG 비디오, WAV 오디오, Java Applet 등 수십억 개의 파일들이 매일 인터넷에 떠돌아 다닙니다.
-> HTTP는 이 정보들을 전세계의 웹 서버로부터 개인의 데스크탑 속 웹 브라우저까지 신속하고 편리하고 확실하게 운반합니다.

* Java Applet : 자바 프로그래밍에 사용되는 모듈

Because HTTP uses reliable data-transmission protocols, it guarantees that your data will not be damaged or scrambled in transit, even when it comes from the other side of the globe. This is good for you as a user, because you can access information without worrying about its integrity.

-> HTTP는 신뢰할 수 있는 데이터 전송 프로토콜을 사용하기 때문에 지구 반대편에서 데이터가 전송되더라도 여러분의 데이터가 손상되거나 전달 과정에서 섞이지 않는다는 것을 보장합니다.
-> 이것은 유저의 입장에서 좋은 일입니다. 여러분의 정보가 손상되지 않고 완전한지 우려할 필요없이 정보에 접근할 수 있기 때문입니다.

Reliable transmission is also good for you as an Internet application developer, because you don’t have to worry about HTTP communications being destroyed, duplicated, or distorted in transit. You can focus on programming the distinguishing details of your application, without worrying about the flaws and foibles of the Internet.
Let’s look more closely at how HTTP transports the Web’s traffic.

-> 신뢰할 수 있는 전송은 인터넷 애플리케이션 개발자에게도 좋은 일입니다. 여러분들은 HTTP 통신이 전송 중에 손상, 복제, 왜곡되는 것에 대해 걱정할 필요가 없습니다.
-> 따라서 HTTP의 결함에 대해서는 우려하지 않고 애플리케이션을 구별하는 세부 정보에만 집중할 수 있습니다.
-> HTTP가 웹 트래픽을 전송하는 방법에 대해 더 자세하게 살펴봅시다.


Web Clients and Servers

Web content lives on web servers. Web servers speak the HTTP protocol, so they are often called HTTP servers. These HTTP servers store the Internet’s data and provide the data when it is requested by HTTP clients. The clients send HTTP requests to servers, and servers return the requested data in HTTP responses, as sketched in Figure 1-1. Together, HTTP clients and HTTP servers make up the basic compo- nents of the World Wide Web.

-> 웹 콘텐츠는 웹 서버에 존재합니다. 웹 서버는 HTTP 프로토콜을 호출하여 종종 HTTP 서버라고도 불립니다.
-> HTTP 서버는 인터넷의 데이터를 저장하고 HTTP 클라이언트의 요청을 받아 데이터를 제공합니다.
-> 클라이언트는 HTTP Request를 서버에 전송하고, 서버는 HTTP Response를 통해 클라이언트로부터 요청받은 데이터를 전달합니다. (Figure 1-1)
-> 이와 함께 HTTP 클라이언트와 HTTP 서버는 World Wide Web의 기본적인 구성 요소가 됩니다.

You probably use HTTP clients every day. The most common client is a web browser, such as Microsoft Internet Explorer or Netscape Navigator. Web browsers request HTTP objects from servers and display the objects on your screen.

-> 여러분은 HTTP 클라이언트를 매일 사용하고 있을 것입니다.
-> 가장 보편적인 클라이언트는 Microsoft Internet Explorer나 Netscape Navigator 등의 웹 브라우저입니다.
-> 웹 브라우저는 서버로부터 HTTP 객체를 요청하고, 해당 객체들을 화면에 띄웁니다.

When you browse to a page, such as “http://www.oreilly.com/index.html,” your browser sends an HTTP request to the server www.oreilly.com (see Figure 1-1). The server tries to find the desired object (in this case, “/index.html”) and, if successful, sends the object to the client in an HTTP response, along with the type of the object, the length of the object, and other information.

-> 여러분이 "http://www.oreilly.com/index.html" 과 같은 홈페이지를 방문할 때, 당신의 브라우저는 www.oreilly.com 서버에 HTTP Request를 전송합니다.
-> 서버는 요청받은 객체를 찾으려 시도하고(위 예시에서는 "/index.html"), 객체를 찾는 데 성공하면 HTTP Response를 통해 해당 객체를 클라이언트로 전송합니다.
-> 이때 HTTP Request에는 객체의 타입과 크기 등의 정보가 담겨 있습니다.


Resources

Web servers host web resources. A web resource is the source of web content. The simplest kind of web resource is a static file on the web server’s filesystem. These files can contain anything: they might be text files, HTML files, Microsoft Word files, Adobe Acrobat files, JPEG image files, AVI movie files, or any other format you can think of.

-> 웹 서버는 웹 리소스를 향유하고 있습니다.
-> 웹 리소스는 웹 콘텐츠의 근원입니다.
-> 웹 리소스의 가장 간단한 종류는 웹 서버의 파일시스템에 있는 정적 파일입니다. 이 파일들은 모든 것을 포함할 수 있습니다 : .txt, .html, .docs, .jpeg, .avi 등

However, resources don’t have to be static files. Resources can also be software programs that generate content on demand. These dynamic content resources can generate content based on your identity, on what information you’ve requested, or on the time of day. They can show you a live image from a camera, or let you trade stocks, search real estate databases, or buy gifts from online stores (see Figure 1-2).

-> 그러나, 리소스가 항상 정적 파일일 필요는 없습니다. 리소스는 요구를 받아 콘텐츠를 생성하는 소프트웨어 프로그램일 수도 있습니다.
-> 이러한 동적 콘텐츠 리소스는 사용자의 정보나 언제 어떤 정보를 요청하는지에 기초하여 콘텐츠를 생성할 수 있습니다.
-> 동적 콘텐츠는 카메라로부터 실시간 이미지를 보여주거나, 주식을 거래하게 하거나, 부동산의 데이터베이스를 검색하게 하거나, 온라인 상점에서 선물을 사게 할 수 있습니다. (Figure 1-2)

In summary, a resource is any kind of content source. A file containing your company’s sales forecast spreadsheet is a resource. A web gateway to scan your local public library’s shelves is a resource. An Internet search engine is a resource.

-> 리소스는 모든 종류의 콘텐츠의 근원입니다.
-> 예를 들어, 리소스는 여러분의 회사의 예상 매출 스프레드시트를 포함하고 있는 파일이라고 볼 수 있습니다.
-> 공공도서관의 도서를 검색하기 위한 웹 게이트웨이, 인터넷 검색 엔진 또한 리소스라고 볼 수 있습니다.


🧡 요약 정리 🧡

What is HTTP?

  • Hypertext Transfer protocol
  • 멀티미디어 전달을 위한 매개체

HTTP Client versus HTTP Server

  • HTTP Client : HTTP Request를 전송하는 주체
  • HTTP Server : 인터넷의 데이터를 저장하고 클라이언트로부터 요청을 받아 HTTP Response를 전송하는 주체
    * Web Server : HTTP 프로토콜을 호출하는 서버, 웹 리소스 향유

What is Resource?

  • 모든 종류의 콘텐츠의 근원
  • 정적 파일 : 웹 서버의 파일시스템에 존재하는 .txt, .html, .docs, .jpeg, .avi 등
  • 동적 파일 : 요구를 받아 콘텐츠를 생성하는 웹 게이트웨이나 검색엔진 등의 소프트웨어 프로그램

💛 감상 💛

  • 컴퓨터네트워크 수업에서 HTTP를 간단하게 배워서 오늘 내용(Overview)은 쉽게 이해할 수 있었다.
  • 모호했던 리소스의 개념을 보다 명확하게 이해할 수 있었다. 리소스가 콘텐츠를 생성하기 위한 소스로써 정의되기 때문에 검색엔진이나 웹 게이트웨이 또한 리소스에 포함된다는 사실을 알게 되었다.
profile
맑은 눈의 다람쥐

0개의 댓글

관련 채용 정보