Network 9

WebSocket과 SSE(Server-Sent Events)의 차이점

1. WebSocket이란?WebSocket은 브라우저와 서버 간에 양방향 통신을 가능하게 하는 프로토콜입니다. HTTP 연결 이후 업그레이드를 통해 별도의 통신 채널을 생성하며, 지속적인 연결을 유지하면서 데이터 전송이 가능합니다. 특징양방향 통신: 클라이언트와 서버가 자유롭게 메시지를 주고받을 수 있음지속적인 연결: 연결을 유지한 채 실시간 데이터 전송 가능낮은 오버헤드: HTTP Header가 반복적으로 전송되지 않음바이너리 데이터 전송 가능JavaScript 클라이언트Spring Boot 서버 2. SSE (Server-Sent Events)란?SSE는 서버가 클라이언트에 일방적으로 데이터를 푸시하는 방식입니다. HTTP 기반의 단방향 스트리밍 방식이며, 브라우저에서 기본적으로 지원합니다. 특징..

Network 2025.06.26

TCP 3-way Handshake와 4-way Handshake 정리

TCP는 신뢰성 있는 연결형 프로토콜로, 통신을 시작할 때는 3-way Handshake, 연결을 종료할 때는 4-way Handshake 절차를 거칩니다. 각각의 과정이 어떻게 이루어지는지, 왜 그렇게 설계되었는지에 대해 자세히 알아보고, 자주 묻는 질문에 대해서도 함께 설명드립니다. TCP 3-way Handshake: 연결 설정 과정TCP는 양 끝단의 통신 노드 간에 연결을 맺기 위해 3단계(3-way Handshake) 절차를 사용합니다. 목적은 양쪽의 송수신 준비 상태 확인 및 초기 시퀀스 번호(ISN) 교환입니다.SYN (Client → Server):클라이언트는 서버에게 연결을 요청하며, 자신의 ISN을 포함한 SYN 패킷을 보냅니다.SYN + ACK (Server → Client):서버는 ..

Network 2025.05.27

OSI 7계층이란?

OSI 7계층이란?OSI (Open Systems Interconnection) 7계층은 네트워크 통신이 이루어지는 방식을 7개의 계층으로 나눈 모델입니다. 국제 표준화 기구(ISO)에서 제안한 이 모델은 네트워크 프로토콜의 설계 및 구현을 표준화하여, 다양한 시스템 간의 호환성을 높이는 데 목적이 있습니다.OSI 7계층 구조 계층 이름 역할 7응용 계층 (Application Layer)사용자와 네트워크 간의 인터페이스 제공 (HTTP, FTP, SMTP 등)6표현 계층 (Presentation Layer)데이터 인코딩, 암호화 및 압축 (JPEG, SSL, TLS 등)5세션 계층 (Session Layer)세션 설정, 유지 및 종료 관리 (RPC, NetBIOS 등)4전송 계층 (Transport..

Network 2025.03.25

VPN이란?

1. VPN이란?VPN(가상 사설망, Virtual Private Network)은 공용 네트워크(예: 인터넷)를 통해 안전하게 데이터를 주고받을 수 있도록 해주는 기술입니다. VPN은 사용자의 실제 IP 주소를 숨기고, 데이터를 암호화하여 프라이버시와 보안을 강화하는 역할을 합니다. 2. VPN이 필요한 이유1) 보안 강화공용 Wi-Fi를 사용할 때 VPN을 이용하면 데이터가 암호화되어 해커가 정보를 가로채는 것을 방지할 수 있습니다.2) 개인정보 보호VPN은 사용자의 실제 IP 주소를 숨기고, 가상 IP를 제공하여 웹사이트나 서비스 제공자가 사용자의 위치 및 활동을 추적하지 못하게 합니다.3) 지역 제한 우회Netflix, YouTube, 해외 뉴스 사이트 등 특정 지역에서만 접근 가능한 콘텐츠를 V..

Network 2025.03.20

프록시 서버(Proxy Server)란?

프록시 서버(Proxy Server)는 클라이언트와 인터넷 사이에서 중개 역할을 하는 서버입니다. 사용자는 직접 인터넷에 접속하는 것이 아니라 프록시 서버를 거쳐 요청을 보내고, 프록시 서버가 해당 요청을 대신 처리한 후 응답을 반환합니다. 이 과정에서 보안 강화, 속도 개선, 트래픽 관리 등의 이점을 얻을 수 있습니다.1. 프록시 서버의 종류(1) 포워드 프록시(Forward Proxy)포워드 프록시는 클라이언트의 요청을 외부 서버로 전달하는 역할을 합니다. 주로 기업이나 기관에서 내부 사용자의 인터넷 접속을 관리하거나 제한할 때 사용됩니다.사용 사례:회사에서 특정 웹사이트 차단내부 네트워크 사용자 IP 숨김캐싱을 통해 인터넷 속도 향상(2) 리버스 프록시(Reverse Proxy)리버스 프록시는 클라..

Network 2025.03.20

서버리스(Serverless)란?

1. 서버리스(Serverless)란?서버리스(Serverless)는 클라우드 환경에서 서버를 직접 관리하지 않고도 애플리케이션을 실행할 수 있는 컴퓨팅 모델입니다. 서버 자체가 없는 것은 아니지만, 개발자는 서버 운영 및 관리에 신경 쓰지 않고 오직 애플리케이션의 코드 실행에 집중할 수 있습니다.서버리스는 클라우드 제공업체가 인프라를 자동으로 확장하고 유지보수하는 방식으로 작동하며, 사용한 만큼만 비용을 지불하는 과금 구조를 가집니다.2. 서버리스의 특징2.1 서버 관리 불필요개발자는 서버 프로비저닝, 운영 체제 관리, 확장 및 유지보수 등의 작업을 할 필요가 없습니다.클라우드 서비스 제공자가 모든 서버 운영을 자동으로 처리합니다.2.2 이벤트 기반 실행서버리스 애플리케이션은 특정 이벤트(예: HTTP..

Network 2025.03.20

클라우드 컴퓨팅이란?

클라우드 컴퓨팅(Cloud Computing)은 인터넷을 통해 컴퓨팅 자원(서버, 스토리지, 데이터베이스, 네트워킹, 소프트웨어 등)을 제공하는 기술입니다. 전통적인 온프레미스(On-Premise) 방식과 달리, 사용자는 물리적 인프라를 직접 구축하지 않고도 필요한 컴퓨팅 자원을 이용할 수 있습니다.1. 클라우드 컴퓨팅의 주요 특징1) 온디맨드(Self-Service & On-Demand)사용자는 필요할 때 즉시 자원을 할당하고 사용할 수 있으며, 물리적 장비 없이도 몇 번의 클릭만으로 서버를 생성할 수 있습니다.2) 확장성(Scalability)사용자는 필요에 따라 자원을 유연하게 확장하거나 축소할 수 있어, 급격한 트래픽 증가나 감소에도 효과적으로 대응할 수 있습니다.3) 비용 절감(Cost Effi..

Network 2025.03.20

CSRF(Cross-Site Request Forgery)

1. CSRF란 무엇인가?CSRF(Cross-Site Request Forgery)는 웹 보안 공격의 한 유형으로, 공격자가 인증된 사용자의 권한을 도용하여 사용자의 의지와는 무관하게 특정 요청을 서버로 보내도록 유도하는 방식입니다. 이를 통해 공격자는 피해자의 계정으로 악의적인 행동(데이터 삭제, 권한 변경, 거래 요청 등)을 수행할 수 있습니다.예시)사용자가 A 사이트에 로그인하여 인증 쿠키를 보유하고 있습니다.공격자는 악성 웹 페이지를 생성하여 사용자가 이 페이지를 방문하도록 유도합니다.사용자가 페이지를 방문하면, 공격자의 페이지에서 A 사이트로 악의적인 요청을 보냅니다.브라우저는 사용자가 이미 인증된 세션을 보유하고 있기 때문에, 해당 요청은 인증된 사용자로 간주되어 처리됩니다.2. CSRF의 작..

Network 2025.01.10

TCP와 UDP: 무엇이 다를까?

인터넷에서 데이터를 전송하는 방식에는 TCP와 UDP라는 두 가지 주요 프로토콜이 존재합니다. 이 두 프로토콜은 인터넷 통신에서 중요한 역할을 하지만, 그 동작 방식에는 큰 차이가 있습니다. 이제 TCP와 UDP의 차이를 살펴보겠습니다. TCP (Transmission Control Protocol)TCP는 신뢰할 수 있는 전송을 보장하는 연결 지향적인 프로토콜입니다.인터넷 상에서 데이터를 메세지의 형태(세그먼트 라는 블록 단위)로 보내기 위해 IP와 함께 사용하는 프로토콜이며, TCP와 IP를 함께 사용하는데, IP가 데이터의 배달을 처리한다면 TCP는 패킷을 추적 및 관리합니다. 연결 지향적● 데이터를 보내기 전에, 송신자와 수신자는 서로 연결을 설정해야 합니다. 서로 전화를 걸고 대화의 준비를 하는..

Network 2024.12.27