HTTPSHTTPS는 HTTP 프로토콜상에 SSL 레이어를 추가한 통신 프로토콜로, 암호화된 HTTP 통신 프로토콜이다.서버와 클라이언트 간의 통신에서 중간에 악성 행위자로 하여금 데이터가 가로채어지거나 변조되지 않도록 하는 데이터의 전송과정에서의 보안 요소로, 기밀성과 무결성을 보장한다. SSL 인증서SSL/TLS 프로토콜을 이용해 다른 시스템에 암호화된 안전한 연결을 수행할 수 있도록 하는 디지털 객체SSL 인증서는 주로 웹 서비스와 사용자 간에 신뢰할 수 있는 통신을 위해 사용된다. SSL 인증서는 제3 인증기관(CA)이 발급해주며, 브라우저의 URL 좌측에서 HTTPS로 연결된 사이트에 대한 SSL 연결과 그 인증서 내용을 확인할 수 있다. 근래 거의 대부분의 웹 사이트에는 HTTPS를 사용해..
Study/Network
SSL 트래픽을 처리하는 방법에는 크게 3가지가 존재한다.SSL Termination (Offloading)SSL PassthroughSSL Bridging이 방법들을 각각 알아보도록 한다. SSL Termination (Offloading)SSL Termination은 SSL 암호화 트래픽을 서버 측으로 전달하기 전에 로드밸런서 단에서 SSL 암호화를 푼 뒤, 전달해준다. 이 방식은 SSL 암복호화를 내부 웹 서버단이 아닌 로드밸런서/프록시가 해준다는 점에서 내부 백엔드 서버의 부담을 줄여주게 된다. 이러한 이유로 인해 SSL Offloading(전가)이라고도 불리게 된다.또한, SSL 인증서를 내부의 백엔드 서버별로 각각 설치해줄 필요 없이, 로드밸런서 측에만 설치해주면된다는 점도 존재한다. 다만..
ALB나 cloudfront를 이용하다 보면 HTTP/2를 지원하는 것을 확인할 수 있다. HTTP/2는 HTTP/1.1에 비해 빠르다는 것 정도만 알고 있다. 이 두 버전을 비교해보며 HTTP/2에서는 정확히 어떤 것들이 개선되었는 지를 비교해본다. HTTP/1.1 1997년에 릴리스된 프로토콜로 클라이언트와 웹 서버간의 정보를 교환하는 Layer 7의 프로토콜이다. HTTP/1.1에서는 기존 1.0과 비교해 아래 2가지 특징을 가진다. Persist Connection 기존 1.0 버전에서는 TCP 3way hand-shaking을 거쳐 HTTP Connection이 이루어졌다. 즉, 매 Connection을 생성할때마다 hand-shaking이 이루어지고, 큰 overhead로 작용되었다. (RTT..
방화벽은 설정한 Rule에 따라 진입되는 패킷을 Pass할 것인지, Drop할 것인지 필터링해주는 유해한 트래픽을 차단하기위한 하드웨어 내지 서비스이다. 대부분의 방화벽은 정책 기반으로 트래픽을 필터링한다. 방화벽의 발전 과정이나 구조별 유형 등의 설명거리가 있지만, 여기서는 크게 다루지 않는다. 이번에 정리할 개념은 방화벽에서의 Stateful과 Stateless 유형이다. 이 둘을 각각 예시와 함께 비교하며 알아본다. Stateful / Stateless 외부 네트워크(클라이언트)에서 내부 네트워크(서버)로 접속하는 트래픽을 가정해보자. 클라이언트가 서버로 요청을 날리는 Request와 해당 Request에 대한 클라이언트로 날라가는 Response가 존재할 것이다. 웹 서버로 들어오는 트래픽이 방화..
이번에는 기업 면접 등에서 자주 나오는 주제인 TCP와 UDP에 대해 알아보자 TCP Transmission Control Protocol, 전송을 제어하는 프로토콜로 일반적으로 IP와 함께 사용된다 연결형 서비스로 가상 회선 방식을 제공한다 가상 회선 방식 : 처음 패킷으로 최적의 경로를 고정하고, 경로가 고정되면 그 이후 패킷들은 그 경로로 고속으로 전송하는 기술 흐름 제어와 혼잡 제어 기능을 가진다 따라서, UDP에 비해 속도가 느리다 전송한 데이터의 순서를 보장한다 따라서, UDP에 비해 높은 신뢰성을 가진다 TCP는 신뢰성 있는 연결형 서비스이므로 신뢰성이 필요한 메일 / 파일 전송, HTTP 등에서 이용된다 UDP User Datagram Protocol, 데이터를 데이터그램 단위로 처리하는 ..
OSI 7계층이란? 국제표준기구가 지정한 모델로, 컴퓨터 네트워크 프로토콜 디자인과 통신을 계층을 나누어서 설명한 것으로 시스템들의 상호 연결에 있어서 문제가 없도록 만든 표준 물리, 데이터링크, 네트워크, 전송, 세션, 표현, 응용 계층으로 구성되어 있다. 1. 물리 계층 - 전기적, 기계적인 특성을 이용해서 통신 케이블로 데이터를 전송하는 계층 - 데이터 전송 단위는 비트(Bit) - 데이터를 전송하는 역할만 함 2. 데이터링크 계층 - MAC주소를 이용해 물리 계층에서 송수신된 정보를 전송하는 계층 - 데이터 전송 단위는 프레임(Frame) - 대표적인 프로토콜은 이더넷(Ethernet) 3. 네트워크 계층 - 논리적 주소를 바탕으로 최적의 경로를 찾고 패킷을 전송하는 계층 - 데이터 전송 단위는 ..
프로토콜이란? 두 사람 간의 합의된 약속이라는 의미를 내포한 단어로 네트워크 안에서 원활한 데이터 통신을 위해 필요한 규약 프로토콜 종류 주요 프로토콜들에 대해서는 이후에 포스팅할 예정 이름 설명 TCP/IP Transmission Control Protocol/Internet Protocol 한 컴퓨터에서 다른 컴퓨터로 데이터를 보내는데 사용되는 프로토콜 인터넷 프로토콜(Internet Protocol)과 전송 제어 프로토콜(Transmission Control Protocol)로 이루어짐 UDP User Datagram Protocol TCP와 마찬가지로 데이터를 보내는데에 사용되는 프로토콜 TCP와는 달리 일방적으로 데이터를 전송한다 HTTP HyperText Transfer Protocol 클라이..
네트워크란? 두 개 이상의 전송매체들의 연결로 구성된 디바이스들의 집합 네트워크의 종류 네트워크의 큐모에 따라 PAN, LAN, MAN, WAN 등으로 나뉘어진다. 1. PAN (Personal Area Network) - 10m 이내의 단거리 네트워크로 블루투스 등의 무선통신으로 연결된 네트워크 2. LAN (Local Area Network) - 근거리 통신 네트워크 - 집, 학교, 사무실 등의 단위의 지역 내의 네트워크를 구성한다. - LAN을 구성하는 방식으로 여러가지 토폴로지들이 존재한다. a) 성(Star) 형 : 중앙에 위치한 주 노드를 통해 다른 노드들과 통신을 하는 구조 (중앙집중식) - 장점 : 장애 발견이 쉬우며 확장과 관리가 편리함 - 단점 : 주 노드를 통해 통신하므로 주 노드에서..