본문 바로가기
CS/Network

[Network] 네트워크 기초

by seoyamin 2025. 4. 16.

해당 게시글은 '면접을 위한 CS 전공지식 노트' 도서를 학습한 후 개인적으로 정리한 내용으로 구성함을 밝힙니다.

 

네트워크

  • 컴퓨터 등의 장치들이 통신 기술을 이용하여 구축하는 연결망
  • 노드(node)와 링크(link)가 서로 연결되어 있으며, 리소스를 공유하는 집합
    • 노드 : 서버, 라우터, 스위치 등의 네트워크 장치
    • 링크 : 유선 또는 무선

 


1. Throughput과 Latency

좋은 네트워크의 조건

  1. 많은 처리량을 처리 가능
  2. 지연 시간이 짧음
  3. 장애 빈도가 적음
  4. 보안성이 좋음

 

처리량 (Throughput)

  • 정의
    • 링크 내에서 성공적으로 전달된 데이터의 양
    • 처리량 vs. 트래픽
      • 트래픽 : 특정 시점에 링크 내에 흐르는 데이터의 양
      • 트래픽이 많아졌다 = 흐르는 데이터가 많아졌다
      • 처리량이 많아졌다 = 처리되는 트래픽이 많아졌다
  • 단위
    • bps (bits per second)
    • 초당 전송/수신되는 비트 수
  • 특징
    • 트래픽의 규모, 네트워크 장치 간 대역폭, 네트워크 중간에 발생한 에러, 장치의 HW 스펙에 영향 받음
    • 대역폭 : 주어진 시간 동안 네트워크 연결을 통해 흐를 수 있는 최대 비트 수

 

지연 시간 (Latency)

  • 정의
    • 요청이 처리되는 시간
    • 어떤 메세지가 두 장치 사이를 왕복 하는데 소요된 시간
  • 특징
    • 매체 타입(유선, 무선), 패킷 크기, 라우터의 패킷 처리 시간에 영향 받음

 


2. Network Topology와 병목 현상

Network Topology

노드와 링크가 어떻게 배치되어 있는 지에 대한 방식이자 연결 형태

 

  • 트리 토폴로지 (= 계층형 토폴로지)
    • 트리 형태로 배치한 네트워크 구성
    • 노드의 추가, 삭제가 쉬움
    • 특정 노드에 트래픽이 집중될 시, 하위 노드에 영향 끼칠 수 있음
  • 버스 토폴로지
    • 중앙 통신 회선 하나에 여러 개의 노드가 연결되어 공유하는 네트워크 구성
    • 근거리 통신망에서 사용 (LAN)
    • 설치 비용이 적음
    • 신뢰성이 높음
    • 중앙 통신 회선에 노드를 추가하거나 삭제하기 쉬움
    • 스푸핑이 가능하다는 문제가 있음
      • 스푸핑 : 공격자가 송신부 → 수신부로 가는 패킷을 가로채 열람/조작 하는 공격
  • 스타 토폴로지
    • 중앙 노드에 모두 연결된 네트워크 구성
    • 노드를 추가하기 쉬움
    • 에러를 탐지하기 쉬움
      • 장애 노드가 중앙 노드가 아닐 경우, 다른 노드에 끼치는 영향이 적음
      • 장애 노드가 중앙 노드일 경우, 전체 네트워크를 사용할 수 없음
    • 패킷의 충돌 발생 가능성 적음
  • 링형 토폴로지
    • 각 노드가 양 옆의 두 노드와 연결하여 전체적으로 고리처럼 하나의 연속된 통신을 하는 방식
    • 노드 수가 증가해도 네트워크 상의 손실이 거의 없음
    • 노드에 발생한 문제를 쉽게 찾을 수 있음
    • 패킷의 충돌 가능성 적음
    • 네트워크 구성 변경이 어려움
    • 회선에 장애 발생 시 전체 네트워크에 영향 끼침
  • 메시 토폴로지
    • 망형 토폴로지라고도 하며, 그물망처럼 연결된 구조
    • 한 노드에 장애가 발생해도 여러 경로가 존재하기 때문에 네트워크 계속 사용 가능
    • 트래픽의 분산 처리가 가능
    • 노드의 추가가 어려움
    • 구축 및 운영 비용이 높음
  • 토폴로지의 중요성
    • 병목 현상을 해결하는 데 활용됨
    • 병목 현상 : 전체 시스템이 하나의 구성 요소 (= bottleneck)로 인해 제한을 받는 현상

 


3. 네트워크 분류

LAN
(Local Area Network)
  • 근거리 네트워크 (건물)
  • 전송 속도 빠름
  • 혼잡도 낮음
MAN
(Metropolitan Area Network)
  • 대도시 지역 네트워크 (서울)
  • 전송 속도 보통
  • LAN 보다는 혼잡도 높음
WAN
(Wide Area Network)
  • 광역 네트워크 (국가, 대륙)
  • 전송 속도 낮음
  • MAN 보다는 혼잡도 높음

 


4. 네트워크 성능 분석 명령어

병목 현상의 주요 원인

  • 네트워크 대역폭
  • 네트워크 토폴로지
  • 서버 CPU, Memory 사용량
  • 비효율적인 네트워크 구성

 

네트워크 성능 분석 명령어

  • ping
    • Packet INternet Groper
    • 대상 네트워크 노드를 향해 일정 크기의 패킷을 전송하는 명령어
    • TCP/IP 프로토콜 중 ICMP 프로토콜을 이용해 동작함
    • 확인 가능한 정보
      • 해당 노드의 패킷 수신 상태
      • 패킷이 도달하기까지의 시간
        ping 10.0.0.1
        ping www.google.com -n 12     # 12번 패킷을 보내라
        
  • netstat
    • 접속되어 있는 서비스들의 네트워크 상태를 표시하는 명령어
    • 확인 가능한 정보
      • 네트워크 접속
      • 라우팅 테이블
      • 네트워크 프로토콜
    • 주로 서비스 포트가 열려있는지 확인할 때 사용
      netstat
      
  • nslookup
    • DNS 관련 정보를 확인하는 명령어
    • 특정 도메인에 매핑된 IP를 확인
      nslookup
      
  • tracert
    • 윈도우 : tracert
    • 리눅스 : traceroute
    • 목적지 노드까지 네트워크 경로를 확인하는 명령어
    • 어느 구간에서 응답 시간이 느려지는지 확인 가능
      tracert www.google.com
      

 


5. 네트워크 프로토콜

  • 서로 다른 장치들이 데이터를 주고 받기 위해 설정해둔 공통 인터페이스
  • 약속된 규약
  • IEEE or IETF에서 이를 표준화함

'CS > Network' 카테고리의 다른 글

[Network] 네트워크 계층  (0) 2025.04.16
WEB2-JavaScript (33-38강)  (0) 2021.07.19
WEB2-JavaScript(21-32강)  (0) 2021.07.15
WEB2-JavaScript (1-20강)  (0) 2021.07.14
WEB2-CSS (5-16강)  (0) 2021.07.13