본문 바로가기
CS/네트워크

[혼자 공부하는 네트워크] 07 네트워크 심화

by 박뫙대 2025. 5. 26.

안녕, 리뷰어. 나는 뫙대🛠️ 

CS에 대한 개념이 0에 수렴해 공부를 시작합니다. 네트워크 공부는 '혼자 공부하는 네트워크'를 기반으로 합니다. 이번 글에서는 네트워크 심화에 대해 다룹니다.

 
혼자 공부하는 네트워크
『혼자 공부하는 네트워크』는 개발자의 필수 지식인 네트워크를 기본부터 제대로 학습할 수 있도록 돕는 입문서입니다. 다수의 네트워크 전공 서적들을 면밀히 분석하고, 방대한 컴퓨터 네트워크 이론 중에서 핵심 내용만 선별해서 담았습니다. 도서 제목 그대로 혼자 공부하는 초보자를 위해 쉬운 비유와 입문자 맞춤형 예시를 통해 재미있는 학습을 유도하고, 핵심 키워드와 네트워크 계층별 설명으로 쉽게 이해할 수 있도록 했으며, 한눈에 쏙 들어오는 친근한 일러스트를
저자
강민철
출판
한빛미디어
출판일
2024.04.12

안정성

고가용성*(HA, High Availability)이 높으면 안정적인 시스템. 일반적으로 99.999% 이상일 때 안정적이라 평가

*가용성은 안정성의 정도. 업타임/(업타임+다운타임)

→ 다운타임을 낮추고 가용성을 높이기 위해서는 결함 감내fault tolerance가 중요

가용성(%) 1년간 다운타임 한 달간 다운타임 한 주간 다운타임
99.999(파이브 나인스) 5.26분 26.3초 6.05초
99.9999(식스 나인스) 31.56초 2.63초 0.604초
99.99999(세븐 나인스) 3.16초 0.262초 0.0604초

결함 감내 기술

      • 이중화: 단일 장애점(SPOF, Single Point Of Failure)을 대비해 백업 마련. 
        • 액티브/스탠바이active-standby: 가동 상태-대기 상태. 액티브 시스템 장애 발생 시 페일오버failover를 통해 스탠바이 시스템으로 자동 전환 → 안전하지만 성능성 큰 변화 X
        • 액티브/액티브active-active: 가동 상태-가동 상태 → 부하 분산 등 성능상 이점이 있지만 문제 발생 시 부하 급증으로 추가 문제 발생 가능성 有
      • 다중화: 이중화 기술 확장
        이중화/다중화 사례

        티밍teaming: 윈도우

        본딩bonding: 리눅스

        → 여러 개의 NIC를 이중화/다중화해 하나의 인터페이스처럼 보이게 하는 기술

      • 로드 밸런싱: 고른 트래픽traffic 분배
        • 로드 밸런서: 이중화/다중화된 서버와 클라이언트 사이에 위치 e.g. 스위치: L4, L7. 소프트웨어: HAProxy, Envoy, Ngnix 등
        • 로드 밸런싱 알고리즘: 부하 대상 선택. 가중치weighted 부여 가능
          • 라운드 로빈 알고리즘: 서버를 돌며 부하 전달
          • 최소 연결 알고리즘: 연결이 적은 서버부터 우선적으로 부하 전달
          • etc. 무작위 선택, 해시Hash 이용 선택, 응답 시간이 가장 짧은 서버 선택
        • 서버 상태 검사: 헬스 체크health check
중간 대리자 프록시Proxy

포워드foward 프록시: 클라이언트가 선택한 메시지 전달 대리자

리버스reverse 프록시 i.e. 게이트웨이: 아웃바운드 연결에 대해 오리진 서버 역할을 하지만, 수신된 요청을 변환해 다른 인바운드 서버로 전달하는 중개자 역할

*인바운드inbound는 오리진 서버를 향하는 메시지, 아웃바운드outbound는 클라이언트를 향하는 메시지

안전성

암호화encryption와 복호화decryption

  • 대칭 키 암호화: 동일한 암호 키 사용 → 키 유출 가능. 안전성은 떨어지나 부하가 적음
  • 공개 키 암호화 i.e. 비대칭 키 암호화: 암호화하는 공개 키와 복호화하는 개인 키 쌍 사용 → 안전하나 시간과 부하가 상대적으로 많음
    → 함께 사용: 공개 키로 세션 키 암호화, 개인 키로 세션 키 암호화

공개 키 인증서public key certificate

공개 키와 공개 키의 유효성을 입증하기 위한 전자 문서. 인증 기관(CA, Certification Authority)의 서명 값signature*으로 인증서 검증

*인증서에 내용에 대한 해시 값을 CA의 개인 키로 암호화. 변조modulation 여부 검사

Digital Signature

HTTPS(HTTP over TLS)

HTTP 메시지를 안전하게 송수신하기 위해 개발된 프로토콜. 인증과 암호화를 수행하는 SSL(Secure Sockets Layer)/TLS(Transport Layer Security)를 기반으로 암호화 통신. 크게 3단계를 거쳐 송수신

  1. TCP 3-Way Handshake
  2. TLS Handshake
  3. Exchange Encrypted Message

SSL/TLSv1.2 Handshake

송수신 방향 메시지 메시지 정보 TLSv1.2
Client → Server Client Hello TLS 정보, 암호 스위트* 등 제시 Client Hello+Client Key Exchange
Server → Client Server Hello 선택한 정보 Server Hello
Server → Client Encrypted Extentions ALPN 등 서버의 추가 확장 정보 -
Server → Client Certificate 인증서 Certificate
Server → Client CertificateVerify 검증을 위한 디지털 서명 -
Server → Client Finished TLS Handshake 완료 Done→Change Cipher Spec+Finished
Client → Server Finished TLS Handshake 완료 Change Cipher Spec+Finished
양방향 Application Data 암호화된 메시지 Application Data

*암호 스위트는 사용 가능한 암호화 방식과 해시 함수를 담은 정보

**해당 표는 TLS 1.3 버전 기반

 

[혼자 공부하는 네트워크] 06 실습으로 복습하는 네트워크 - 와이어샤크

안녕, 리뷰어. 나는 뫙대🛠️ CS에 대한 개념이 0에 수렴해 공부를 시작합니다. 네트워크 공부는 '혼자 공부하는 네트워크'를 기반으로 합니다. 이번 글에서는 와이어샤크에 대해 다룹니다. 혼자

noeyahmig.tistory.com

무선 네트워크

  • 연결 매체: 전파 → 3kHz부터 3THz 사이의 진동수를 갖는 전자기파
  • 주파수 대역
    표준 규격* 주파수 대역 전송 속도
    IEEE 802.11a 5GHz 54Mbps
    IEEE 802.11g 2.4GHz 54Mbps
    IEEE 802.11n 2.4/5GHz 450bps
    IEEE 802.11ac 5GHz 6.9Gbps
    IEEE 802.11ax 2.4/5/6GHz 9.6Gbps
    IEEE 802.11be 2.4/5/6GHz 46.1Gbps
    *무선 LAN 표준 규격은 IEEE 802.11
  • 기술: Wi-Fi → 주파수에 따른 회절성을 기준으로 와이파이 속도가 달라짐
    e.g. 2.4GHz: 도달 거리↑, 속도•장애물 영향↓  5GHz: 도달 거리↑, 속도•장애물 영향↓
    • 채널: 하위 주파수 대역. 주파수 대역 내 통신 경로 → 채널 간 간섭이 많을 시 성능 저하
  • 장비: AP(Access Point) → 인프라스트럭처 모드의 핵심
    • 서비스 셋: AP와 여러 장치들의 집합. SSID로 식별
      e.g. 하나의 AP로 구성된 BSS(Basic Service Set), 여러 AP로 구성된 ESS(Extended Service Set)
    • 비컨 프레임: 존재를 알리기 위한 브로드캐스트 메시지

끝. 네트워크 문제를 풀며 복습할 것.

 

🤔 로드 밸런싱이 트래픽을 분산시키기 위함이라면 이중화보다 다중화된 서버에서 더 효율적일까.