HTTP 애플리케이션 데이터 관련 메세지는 Client에서 Server순으로 흐른다.모든 HTTP Massage는 앞 사진처럼 downstream으로 흐른다. 즉, 항상 다운스트림으로 요청을 받고 다운스트림으로 응답을 전달한다.메세지는 시작줄(Start Line), 헤
기본적으로 클라이언트와 서버가 HTTP통신을 하려면 그 전에 TCP Connection(연결)이 되어야 합니다. 커넥션이 맺어지면 서로 간에 주고받는 메시지들은 손상되거나 순서가 바뀌지 않고 안전하게 전달된다.TCP 커넥션은 발신지(클라이언트)의 IP와 Port, 수
소프트웨어 측면 : 소프트웨어 측면 : 웹서버는 HTTP와 같은 프로토콜을 통해 넘어온 클라이언트의 요청에 HTML과 같은 웹 페이지로 응답하는 소프트웨어다. 대표적인 예로 nginx, apache가 있다. 이 소프트웨어들은 호스팅하고 있는 서버(컴퓨터)에서 웹페이지의
프록시란 클라이언트와 서버 사이에 위치하여 그들 사이의 HTTP 메시지를 정리하는 중애인이다. 즉,클라이언트에서 서버로 접속을 할 때 직접적으로 접속하지 않고 중간에 대신 전달해주는 서버를 의미한다.프록시 서버는 웹 서버이기도 하고 웹 클라이언트이기도 한다. 프록시는
캐싱 기본 개념 : 캐싱(Caching)은 애플리케이션의 처리 속도를 높여준다. 이미 가져온 데이터나 계산된 결과값의 복사본을 저장해 처리 속도를 향상시키며, 이를 통해 이후 요청을 더 빠르게 처리할 수 있다. 대부분의 프로그램이 동일한 데이터나 명령어에 반복해서 엑세
는 컴퓨터 네트워크에서 서로 다른 통신망, 프로토콜을 사용하는 네트워크 간의 통신을 가능하게 하는 컴퓨터나 소프트웨어를 두루 일컫는 용어, 즉 다른 네트워크로 들어가는 입구 역할을 하는 네트워크 포인트이다. 넓은 의미로는 종류가 다른 네트워크 간의 통로의 역할을 하는
웹 로봇은 사람과의 상호작용 없이 연속된 웹 트랜잭션들을 자동으로 수행하는 소프트웨어 프로그램이다. 콘텐츠를 가져오고, 하이퍼링크를 따라가고, 그들(웹 로봇)이 발견한 데이터를 처리한다. 방식에 따라 ‘크롤러’, ‘스파이더’ 등으로 불리는데 여기서는 크롤러라고 부르겠다
HTTP/1.1는 커넥션 하나를 통해 요청 하나를 보내고 그의 대해 응답 하나만을 받는 HTTP의 메시지 교환 방식이었다. 단순함 면에서는 좋지만 응답을 받아야만 그다음 요청을 보낼 수 있기 때문에 심각한 회전 지연(latency)을 피할 수 없었다. 이 문제를 해결하
HTTP는 익명으로 사용하며 상태가 없고 요청과 응답으로 통신하는 프로토콜이다. HTTP는 연결 자체에 대한 정보를 가지지 않으며 매 요청은 일회성이고 독립적으로 처리된다. 이를 상태가 없다고 하거나 무상태(stateless)라 부른다.서버는 클라이언트가 보낸 요청을
서버가 사용자가 누구인지 식별할 수 있어야 한다. 서버가 사용자가 누구인지 알면, 그 사용자가 어떤 작업이나 리소스에 접근할 수 있는지 결정할 수 있다. 인증은 당신이 누구인지 증명하는 것이다. 보통 사용자 이름과 비밀번호를 입력해서 인증하는데 HTTP는 자체적인 인증
다이제스트 인증은 기본 인증과 호환되는 더 안전한 대체재로서 개발되었다.다이제스트 인증은 널리 쓰이지는 않지만, 그 개념은 보안 트랜잭션을 구현하고자 하는 이들에게 여전히 유용하다.비밀번호를 절대로 네트워크를 통해 평문으로 전송하지 않는다.인증 체결을 가로채서 재현하려
사람들은 강력한 보안이 없다면 온라인 쇼핑이나 인터넷뱅킹을 할 때 안심할 수 없다. 또한 제한된 접근이 가능하지 않다면, 회사들은 중요한 문서를 웹 서버에 올려놓을 수 없다. 이런 일은 웹 트랜잭션으로 일어나는데 그만큼 웹 트랜잭션은 중요한 일에 사용하기에 안전한 방식
HTTP 메시지를 인터넷 운송 시스템의 컨테이너라고 비유한다면 HTTP 엔터티는 메시지의 실질적인 화물이라고 볼 수 있다.메시지 엔터티는 엔터티 헤더와 엔터티 본문으로 이루어진다.Content-Type엔터티에 의해 전달된 객체의 종류Content-Length전달되는 메
HTTP 메시지는 어떤 언어로 된 콘텐츠든, 이미지, 동영상 혹은 그 외 다른 종류의 미디어처럼 실어 나를 수 있다. HTTP에서 엔터티 본문이란 비트들로 가득 찬 상자에 불과하다.국제 콘텐츠를 지원하기 위해 서버는 클라이언트에게 각 문서의 문자와 언어를 알려줘서 클라
하나의 URI이 여러 리소스에 대응할 필요가 있는 경우가 있다.서버는 영어 사용자에게는 영어 버전을 보내주고 프랑스어 사용자에게는 프랑스어 버전을 보내줄 것이다. HTTP는 클라이언트와 서버가 이러한 판단을 할 수 있도록 내용 협상(content-negotiation)
콘텐츠 리소스를 저장, 중개, 관리하는 일을 통틀어 웹 호스티이라고 한다. 콘텐츠를 저장해서 제공하고 관련 로그에 접근하는 일련의 작업들을 하려면 서버가 필요한데 필요한 하드웨어와 소프트웨어를 직접 구매하지 않고 호스팅 업체를 이용해 서버와 웹 사이트 관리 프로그램을
RPC는 원격 프로시저 호출이라는 뜻으로, 네트워크 상의 다른 컴퓨터에 있는 프로그램을 로컬 컴퓨터에서 호출하여 사용하는 프로토콜입니다. 즉, 분산 네트워크 환경에서 프로시저나 함수를 마치 로컬에 있는 것처럼 사용할 수 있게 해줍니다. 프로세스간 통신을 위해 사용하는
리다이렉션 기술은 보통 메시지가 프록시, 캐시, 특정 웹 서버 중 어디에서 끝나는지 판별하기 위해 사용한다. 리다이렉션 기술은 클라이언트의 메시지를 명시적으로 요청하지 않은 곳으로 보낼 수 있다. 라다이렉션이란 최적의 분산된 콘텐츠를 찾는 것을 도와주는 기법의 집합이라