백엔드/네트워크

백엔드/네트워크

[네트워크] 포워드 프록시(forward proxy)와 리버스 프록시(reverse proxy)

프록시 서버(Proxy Server) 프록시 서버(Proxy Server)는 클라이언트가 자신을 통해서 다른 네트워크 서비스에 간접적으로 접속할 수 있게 해주는 컴퓨터 시스템이나 응용 프로그램을 가리킨다. 서버와 클라이언트 사이에 중계기로써 대리로 통신을 수행하는 것을 가리켜 '프록시' 그 중계 기능을 하는 것을 프록시 서버라고 부른다. 좀 더 구체적으로 설명하면 아래와 같이 진행된다. 클라이언트에서 프록시 서버로 전달할 요청을 보낸다. (클라이언트 -> 프록시) 프록시 서버는 클라이언트로부터 전달받은 요청을 서버에 요청한다. (프록시 -> 서버) 서버는 요청에 맞게 데이터를 프록시 서버로 전달한다. (서버 -> 프록시) 프록시 서버는 서버로부터 전달받은 데이터를 클라이언트에 전달한다. (프록시 -> 클..

백엔드/네트워크

[네트워크] HTTPS

HTTP HTTPS 차이점 HTTP는 암호화가 되지 않는 Plain Text를 전송하는 프로토콜이었기 때문에, HTTP로 비밀번호나 주민등록번호등을 주고받으면 제 3자가 정보를 조회할 수 있었다. 이 문제를 해결하기 위해 HTTPS가 등장하게 되었다. HTTPS는 SSL(Secure Socket) 인증서를 사용하는 HTTP이다. SSL(또는 TLS) 인증서는 일반 HTTP 요청 및 응답을 암호화합니다. 따라서 HTTPS는 HTTP보다 더 안전한 보안용 프로토콜이라고 할 수 있다. HTTP와 HTTPS의 유일한 차이점은 HTTPS를 사용한 웹 페이지를 통해 전송되는 모든 데이터는 추가적인 보안 계층이 있다. 이를 TLS(전송 계층 보안) 프로토콜이라고 한다. 모든 유형의 데이터는 변경되거나 손상될 수 없는..

백엔드/네트워크

[네트워크] HTTP

HTTP란? HTTP(Hyper Text Transfer Protocol)란 서버/클라이언트 모델을 따라 데이터를 주고받기 위한 프로토콜이다. 인터넷에서 하이퍼텍스트를 교환하기 위한 통신 규약으로, 80번 포트를 사용한다. HTTP는 애플리케이션 레벨의 프로토콜로 TCP/IP 위에서 작동된다. HTTP는 Stateless, Connectionless와 같은 특징을 갖고 있으며 Method, Path, Version, Headers, Body 등으로 구성된다. 무상태(Stateless) Stateful은 서버가 클라이언트의 이전 상태를 보존한다는 의미이다. 반대로 Stateless는 서버가 클라이언트의 이전 상태를 보존하지 않는다는 의미이다. 따라서 HTTP 는 어떤 클라이언트가 요청을 한 것인지 식별할 ..

백엔드/네트워크

[네트워크] HTTP/2

HTTP/2 이란? HTTP/2 이란 HTTP 2.0으로도 불리며, 월드 와이드 웹에서 쓰이는 HTTP 프로토콜의 두 번째 버전이다. SPDY에 기반하고 있으며, 국제 인터넷 표준화 기구(IETF)에서 개발되고 있다. IETF : 국제 인터넷 표준화 기구(Internet Engineering Task Force, IETF)는 인터넷의 운영, 관리, 개발에 대해 협의하고 프로토콜과 구조적인 사안들을 분석하는 인터넷 표준화 작업기구이다. HTTP/2는 기존 HTTP 1.1 버전의 성능 향상에 초점을 맞춘 프로토콜이다. 인터넷 프로토콜의 표준의 대체가 아닌 확장으로써, HTTP 1.1의 성능 저하 부분과 비효율 적인 것들을 개선되어 탄생한 것이 HTTP/2라고 생각하면 된다. HOLB(Head Of Line ..

백엔드/네트워크

[네트워크] OSI 7 Layer

OSI 7 Layer 란? 네트워크 프로토콜이 통신하는 구조를 7개의 계층으로 분리하여 각 계층 간 상호 작동하는 방식을 정해 놓은 것이다. OSI 7계층을 나눈 이유? 계층을 나눈 이유는 통신이 일어나는 과정을 단계별로 파악할 수 있기 때문이다. 7단계 중 특정한 곳이 이상이 생기면 다른 단계의 장비 및 소프트웨어를 건드리지 않고도 이상이 생긴 단계만 고칠 수 있기 때문이다. 1계층 - 물리계층(Physical Layer) 이 계층에서는 단지 데이터를 전달만 할 뿐 전송하려는(또는 받으려는) 데이터가 무엇 인지, 어떤 에러가 있는지 등에는 전혀 신경 쓰지 않는다. 0과 1로 이루어진 전자 신호를 케이블로 전송할 수 있는 아날로그 신호로 변환하고 전송하는 역할을 한다. 2계층 - 데이터 링크 계층(Dat..

밝은별 개발자
'백엔드/네트워크' 카테고리의 글 목록