목록분류 전체보기 (18)
나나나

프록시 서버 클라이언트와 서버 사이에 있는 중계 서버 요청이 들어오면 프록시 서버는 요청을 가로채 해당 클라이언트를 대신하여 웹 서버와 통신한다. 포워드 프록시(Forward Proxy) 일반적인 프록시 사용법 클라이언트가 example.com에 연결하려고 하면 포워드 프록시 서버가 요청을 받아 example.com에 연결하여 그 결과를 전달(forward)함 브라우저가 웹 서버의 url로 정보를 요청하면 포워드 프록시 서버는 요청을 가로챔 프록시 서버가 브라우저를 대신하여 요청한 url에 해당하는 서버에게 요청을 보냄 서버에게 클라이언트가 누구인지 감추는 역할 사용 목적 및 장점 특정 컨텐츠 및 서비스에 대한 접근 차단 : 클라이언트 그룹이 특정 사이트에 접근하지 못하도록 프록시를 설정(학교 네트워크로..

웹 서버(Web Server) 소프트웨어 혹은 웹 서버 소프트웨어가 동작하는 컴퓨터를 일컫는다. 소프트웨어 : 웹 브라우저로부터 HTTP요청을 받아 정적인 컨텐츠를 제공하는 컴퓨터 프로그램 웹 서버의 가장 중요한 기능은 클라이언트가 요청하는 HTML 문서와 각종 리소스의 전달하는 것이다. 브라우저나 웹 크롤러가 요청하는 리소스는 컴퓨터에 저장된 정적 데이터 혹은 동적인 결과가 될 수 있다. 웹 크롤러도 브라우저처럼 웹 서버에 HTTP에 맞도록 리소스를 요청하고 웹 서버는 요청한 리소스를 반환함 정적 데이터 : HTML 문서, 이미지, CSS, Javascript 와 같이 컴퓨터에 저장되어 있는 파일 동적인 결과 : 웹 서버에 의해서 실행되는 프로그램을 통해 만들어진 결과물 종류 Apache, Nginx,..

CORS(Cross Origin Resource Sharing) : 교차 출처 리소스 공유 - HTTP 헤더를 사용하여 한 출처에서 실행 중인 웹 어플리케이션이 다른 출처의 자원에 접근할 수 있는 권한을 부여하도록 브라우저에게 알려주는 것 -웹 앱은 리소스가 자신의 출처(도메인, 프로토콜, 포트)와 다를 때 Cross-Origin HTTP 요청을 실행 -예시 : https://domain-a.com 의 프론트엔드 Javascript 코드에서 XMLHttpRequest를 사용하여 https://domain-b.com/data.json 을 경우 SOP(Same Resource Policy) : 동일 출처 정책 - 브라우저가 교차 출처 HTTP 요청을 제한하는 것 - 요청을 보내기 위해서는 요청을 보내고자 하..

HTTP와 HTTPS의 등장 HTTP는 통신 시 정보를 평문으로 주고 받는다. TCP/IP는 도청 가능한 네트워크 이므로 패킷을 수집하여 정보를 가로챌 수 있다. HTTPS: 통신을 암호화하는 프로토콜과 조합해 통신 내용을 암호화 할 수 있다. HTTP 메시지에 포함된 콘텐츠만 암호화 하는 것이다. 통신 상대를 확인하지 않아 웹 서버에 접근 제한이 없는 경우 request가 오면 상대가 누구든지 response를 반환해야 한다. 이로 인해 DoS 공격이 발생할 수도 있다. SSL은 상대를 확인하는 수단으로 인증서를 제공한다. 신뢰할 수 있는 제 3 기관에 의해 발행된 것으로 서버나 클라이언트를 증명한다. 완전성(정보의 정확성)을 증명할 수 없다. 서버 또는 클라이언트에서 수신한 내용이 송신 측에서 보낸 ..
HTTP란? HTML문서와 같은 리소스를 가져올 수 있도록 해주는 프로토콜이다. 클라이언트-서버 간 요청-응답 프로토콜로 수신자 측에 의해 요청이 초기화된다. 클라이언트가 서버에 HTTP 요청을 보내면 서버는 응답을 반환한다. 응답에는 요청에 대한 상태정보와 요청된 리소스를 포함할 수 있다. 클라이언트와 서버는 (데이터 스트림과 다르게) 개별적인 메시지 교환을 통해 통신한다. HTTP 요청 메소드 HTTP는 요청 메소드를 정의해 주어진 리소스가 수행하길 원하는 행동을 나타낸다. 메소드들은 서로 다른 의미를 구현하지만, 일부 기능을 공유하기도 한다. 요청 메소드는 안전하거나, 캐시 가능하거나, 멱등성을 가질 수 있다. GET : 요청 URI에 의해 식별되는 모든 정보(엔티티)를 검색하는 것을 의미한다.(지..
HTTP란? HTML문서와 같은 리소스를 가져올 수 있도록 해주는 프로토콜이다. 클라이언트-서버 프로토콜로 수신자 측에 의해 요청이 초기화된다. 클라이언트와 서버는 (데이터 스트림과 다르게) 개별적인 메시지 교환을 통해 통신한다. HTTP 공통 헤더 HTTP 헤더 속 일반 헤더(General Header)에 해당하는 항목 요청과 응답 모두에서 사용 가능한 기본적이고 일반적인 헤더 항목 Date HTTP 메시지를 생성한 일시(RFC 1123에서 규정) Connection 클라이언트와 서버 간 연결에 대한 옵션 설정 보통 http/1.1을 사용하는데 http/2에서는 아예 사라진 항목 Connection: close 현재 http 메시지 직후에 TCP 접속을 끊는다는 것을 알린다. Connection: Ke..

가장 일반적인 전송 계층 프로토콜로 IP와 함께 작동하며 IP프로토콜에서 제공하는 네트워크 계층 서비스를 사용하여 프로세스 간에 안정적인 전송 서비스를 제공한다. TCP가 애플리케이션 계층에 제공하는 서비스 연결 지향형 서비스 연결 설정 / 데이터 전송 / 연결 종료의 과정을 거친다. 이는 전송 데이터의 신뢰성과 무결성을 보장하기 위한 것이다. 스트림 데이터 서비스 TCP에서는 데이터가 바이트 스트림으로 송수신된다. (UDP는 데이터그램, IP는 패킷 단위를 사용함) 네트워크 계층은 패킷을 사용하기 때문에 TCP는 바이트 스트림을 기본단위로 하여 세그먼트로 그룹화하고 각 세그먼트에 헤더를 추가한 다음 이를 네트워크 계층에 전달한다. 네트워크 계층에서 각 세그먼트는 전송을 위해 IP 패킷에 캡슐화된다. T..
TCP(Transmission Control Protocol) 연결 지향형 프로토콜 : 연결 지향은 통신 장치가 데이터를 전송하기 전에 연결을 설정하고 데이터를 전송한 후 연결을 닫는 것을 의미한다. 목적지 라우터로의 데이터 전달을 보장하므로 신뢰할 수 있다. TCP는 흐름 제어 및 데이터 acknowledgment를 포함한 광범위한 오류 검사 매커니즘을 제공한다. 패킷이 수신자에게 순서대로 도착하여 순서를 보장한다. UDP에 비해 느리다 패킷에 대한 재전송이 가능하다. 20-60 사이의 가변 헤더를 가진다. 무겁다 브로드캐스팅을 지원하지 않는다 HTTP, HTTPS, FTP, SMTP, Telnet 등에 쓰인다 UDP(user datagram protocol) 연결 시작, 유지, 종료에 대한 오버헤드가..