DevOps & Infra/Etc

네트워크 (Network)의 개념과 기본 구성 및 원리

롱하 2025. 1. 8. 10:27

네트워크란 ?

네트워크는 여러장치(컴퓨터, 스마트폰, 서버 등)을 연결해 데이터를 주고받는 시스템이다.

예를 들어, 사람들이 서로 이야기하려면 길이나 전화기가 필요하듯이, 컴퓨터 간에도 서로 소통하려면 연결 통로가 필요한데 이것이 네트워크이다.

 

 

네트워크의 기본 구성

(1) IP 주소

  • 설명: 네트워크에 연결된 각 장치의 "주소"입니다. 집주소처럼 누가 누구인지 구별합니다.
  • 비유: 친구 집에 편지를 보내려면 친구의 주소가 필요하듯, 데이터를 보내려면 IP 주소가 필요합니다.
  • 예시: 192.168.0.1, 8.8.8.8 (구글 DNS)

(2) 라우터

  • 설명: 데이터를 목적지까지 전달하는 "배달원" 역할을 합니다.
  • 비유: 도로에서 차를 안내하는 네비게이션처럼, 데이터가 어디로 가야 할지 경로를 정합니다.
  • 예시: 집에서 인터넷을 사용하려면 통신사에서 제공한 라우터를 사용합니다.

(3) 스위치

  • 설명: 같은 네트워크 안에서 여러 장치를 연결해주는 "멀티탭"입니다.
  • 비유: 콘센트에 여러 기기를 연결해 전기를 나누는 것처럼, 네트워크에서도 스위치가 데이터를 나눕니다.
  • 예시: 회사에서 여러 컴퓨터가 하나의 네트워크에 연결될 때 사용됩니다.

(4) DNS (Domain Name System)

  • 설명: 사람이 읽기 쉬운 이름(예: google.com)을 숫자(IP 주소)로 변환해줍니다.
  • 비유: 전화번호부처럼 사람 이름을 숫자(전화번호)로 바꿔주는 역할을 합니다.
  • 예시: google.com → 172.217.10.46

 

데이터가 전달되는 과정

 

  • 요청: 웹 브라우저에서 google.com을 입력합니다.
  • 주소 변환: DNS가 google.com을 IP 주소로 변환합니다.
  • 라우터 역할: 데이터를 구글 서버로 보냅니다.
  • 응답: 구글 서버가 요청받은 데이터를 다시 보내줍니다.
  • 결과: 브라우저에 구글 홈페이지가 뜹니다.

 

네트워크의 기본 원리

*프로토콜이란?

프로토콜은 컴퓨터와 네트워크 장치들이 서로 데이터를 주고받는 규칙과 약속의 집합

(1) OSI 7계층

 

네트워크의 작동 과정을 단계별로 나눈 개념

표준 프로토콜을 사용하여 다양한 통신 시스템이 통신할 수 있도록 국제표준화기구에서 만든 개념 모델

  • 1~2 계층 (물리/데이터링크): 데이터를 전기 신호로 바꿔 네트워크로 보냅니다.
  • 3~4 계층 (네트워크/전송): 데이터를 목적지(IP 주소)로 전달하고 확인합니다.
  • 5~7 계층 (세션/프레젠테이션/응용): 사용자가 웹사이트나 앱을 이용하도록 데이터로 변환합니다.

비유: 택배 프로세스와 비슷합니다.

  1. 물리/데이터링크: 택배 상자가 물리적으로 이동.
  2. 네트워크/전송: 택배가 목적지 주소를 따라 이동.
  3. 세션~응용: 상자를 열고 내용을 확인.

(2) TCP/IP

TCP/IP는 데이터를 안전하게 나누고 조립하는 "프로토콜"이다.

  • TCP: 데이터를 나누고(조각) 순서대로 재조립한다. + 데이터의 신뢰성(순서, 손실 방지)를 보장.
  • IP: 데이터를 어디로 보낼지(IP 주소) 결정. + 데이터가 목적지(IP 주소)에 정확히 도착하도록 보장.

*TCP

주요 특징

  1. 데이터 조각화와 재조립
    • 큰 데이터를 작은 조각(패킷)으로 나누어 전송합니다.
    • 각 조각에는 번호가 붙어서 나중에 순서대로 다시 조립합니다.
  2. 데이터 손실 복구
    • 만약 네트워크 문제로 일부 패킷이 사라지면, 다시 요청하여 손실된 패킷을 재전송합니다.
  3. 신뢰성 있는 연결
    • 데이터를 전송하기 전에 3-way Handshake라는 과정을 통해 안정적인 연결을 만듭니다.

예시: 파일 다운로드

  1. 서버에서 큰 파일을 작은 패킷으로 나눔.
  2. 클라이언트가 순서대로 패킷을 받음.
  3. 누락된 패킷이 있으면 클라이언트가 서버에 요청해 다시 받음.
  4. 모든 패킷을 재조립해 원본 파일을 복원.

3-way Handshake 과정

  1. 클라이언트: "연결해도 될까요?" (SYN)
  2. 서버: "좋아요. 준비됐습니다." (SYN-ACK)
  3. 클라이언트: "알겠습니다. 연결 시작합니다." (ACK)

이 과정이 끝나야 데이터 전송이 시작됩니다.

* IP

IP는 데이터를 어디로 보낼지(목적지)를 결정하는 일을 한다.

 

주요 특징

  1. IP 주소 기반
    • IP는 송신자와 수신자의 IP 주소를 보고 데이터를 전달합니다.
    • IP 주소는 네트워크 상의 "집주소"와 같습니다.
  2. 라우팅
    • 데이터가 여러 네트워크 장치를 거쳐 목적지까지 가는 "길"을 찾습니다.
    • 예를 들어, 편지가 우체국을 거쳐 최종 집으로 가는 과정과 비슷합니다.
  3. 비연결성
    • IP 자체는 연결 상태를 확인하지 않고 데이터를 보냅니다.
    • 데이터가 손실될 수도 있지만, 이 부분은 TCP가 해결합니다.

데이터 이동 과정

  1. 데이터에 송신자와 수신자의 IP 주소를 붙임.
  2. 라우터가 목적지 IP 주소를 분석하고 최적의 경로로 데이터를 보냄.
  3. 목적지 장치가 데이터를 받음.

TCP/IP의 협업

TCP와 IP는 각각 다른 역할을 하면서 함께 작동합니다:

  • TCP: 데이터의 신뢰성과 순서를 보장.
  • IP: 데이터를 어디로 보낼지 결정.

비유: 택배 시스템

  1. IP:
    • 택배 상자에 "보내는 사람"과 "받는 사람"의 주소를 씁니다.
    • 택배가 여러 경로를 거쳐 목적지로 갑니다.
  2. TCP:
    • 상자에 물건을 잘 포장해 분실되지 않게 합니다.
    • 상자가 도착하면 확인서를 받고, 손상되거나 잃어버린 물건은 다시 보냅니다.

TCP/IP가 사용하는 데이터 흐름

  • 데이터를 전송할 때 계층 구조로 처리합니다:
    1. 응용 계층: 사용자 요청 처리 (예: 웹 브라우저가 HTTP 요청 생성).
    2. 전송 계층: TCP가 데이터를 나눠 패킷 생성.
    3. 네트워크 계층: IP가 패킷에 목적지 주소를 붙임.
    4. 물리 계층: 패킷을 전기 신호로 변환해 네트워크로 보냄.

 

네트워크 실습 방법

(1) Ping 명령어 사용

  • 네트워크가 연결되었는지 확인하는 가장 간단한 방법입니다.
  • 예시:
     
ping google.com

 

결과: Google 서버가 응답하면 연결된 상태

(2) Traceroute 명령어

  • 데이터가 목적지까지 가는 경로를 보여준다.
  • 예시:
tracert google.com  # Windows
traceroute google.com  # Linux/Mac

 

 

'DevOps & Infra > Etc' 카테고리의 다른 글

IT 인프라 로드맵  (0) 2025.01.08
[Tomcat] 톰캣 구조와 server.xml / context.xml  (0) 2024.09.24