CS/기타

(CS) 네트워크 - 기본구조

흰색텀블러 2025. 3. 18. 12:19

기본 구조

  • 노드와 간선으로 이루어진 자료구조 → 그래프의 형태
  • 네트워크 기기 : 노드 , 정보 교환에 필요한 통신 매체 : 간선

 

네트워크 토폴로지

  • 네트워크 상 노드와 노드 사이의 연결 구조
  • 망형, 트리형, 링형, 성형, 버스형(선형) 등이 있음
  • 네트워크를 통해 주고 받는 정보최초송,수신하는 노드호스트라고함.
    • ex. 노트북의 웹 브라우저를 통해 구글 홈페이지 접속 했다면?→ 노트북, 구글 홈페이지 서버가 각각 호스트
    • 노트북은 요청(request)을 보냈으니 클라이언트, 구글은 응답(response)을 보내니까 서버라고 함!

 

망형(Mesh) 토폴로지

  • 특징
    • 모든 노드가 서로 직접 연결된 구조
    • 모든 노드가 다른 모든 노드와 연결되면 완전 망형, 그게 아니면 부분 망형이라 불림.
  • 장점
    • 장애 발생 시 우회 경로가 존재 → 신뢰성이 높음.
    • 데이터 전송이 빠름 → 병목 현상이 없음.
    • 네트워크 트래픽 분산 → 안정적
  • 단점
    • 연결선과 포트가 많이 필요 →  네트워크 구성 비용이 많음.
    • 설정 및 유지보수가 어려움.
    • 연결 노드 수가 증가하면 복잡도가 증가함.

 

트리형(Tree) 토폴로지

  • 특징
    • 계층적인 구조로 중앙 노드(루트)에서 여러 개의 하위 노드(브랜치)로 확장됨.
    • 주로 기업 네트워크 및 대형 네트워크에서 사용됨.
  • 장점
    • 확장성이 뛰어나 대규모 네트워크 구축에 적합.
    • 특정 그룹(부서)별로 네트워크를 구분하여 관리 가능.
    • 계층 구조로 인해 네트워크 트래픽을 효율적으로 관리 가능.
  • 단점
    • 루트 노드에 장애가 발생하면 전체 네트워크가 마비될 위험이 있음.
    • 네트워크 구성 및 관리가 복잡함.
    • 상위 노드에 부하가 집중될 가능성이 있음.

 

링형(Ring) 토폴로지

  • 특징
    • 노드들이 원형으로 연결되며, 데이터가 한 방향(또는 양방향)으로 순환하면서 전달됨.
    • 토큰 패싱(Token Passing) 방식으로 데이터 충돌을 방지함.
  • 장점
    • 데이터 충돌이 적어 안정적인 데이터 전송이 가능.
    • 일정한 데이터 전송 속도를 유지할 수 있음.
    • 상대적으로 설치 및 유지보수가 용이함.
  • 단점
    • 한 노드에 장애가 발생하면 전체 네트워크에 영향을 미칠 수 있음
    • 새로운 노드를 추가하거나 제거할 때 네트워크를 중단해야 할 가능성이 높음
    • 데이터 전송 지연이 발생할 수 있음(특히 단일 방향 링일 경우)

 

 성형(Star) 토폴로지

  • 특징
    • 중앙 허브(Hub) 또는 스위치(Switch)에 모든 노드가 개별적으로 연결됨.
    • 가장 많이 사용되는 네트워크 구조.
  • 장점
    • 특정 노드가 장애를 일으켜도 전체 네트워크에는 영향이 적음.
    • 설치 및 유지보수가 용이함.
    • 네트워크 관리 및 확장이 쉬움.
  • 단점
    • 중앙 장치(허브 또는 스위치)에 장애가 발생하면 전체 네트워크가 마비됨.
    • 네트워크 케이블의 길이에 따라 성능 저하 가능.
    • 많은 케이블이 필요하여 비용이 증가할 수 있음.

 

버스형(선형, Bus) 토폴로지

  • 특징
    • 모든 노드가 하나의 중앙 통신 선로(버스)로 연결
    • 초기에 구축이 쉬워 소규모 네트워크에서 사용
  • 장점
    • 케이블 사용량이 적고 설치 비용이 저렴함.
    • 구조가 단순하여 구축이 쉬움.
    • 적은 수의 장치가 있을 때 효율적.
  • 단점
    • 중앙 버스(케이블)에 장애가 발생하면 전체 네트워크가 마비됨.
    • 데이터 충돌이 자주 발생할 수 있음.
    • 네트워크 확장이 어렵고, 노드를 추가할 때 성능이 저하될 수 있음.

 

LAN 과 WAN

LAN (Local Area Network)

  • 근거리 네트워크
  • 가정 및 기업처럼 가까운 거리를 연결하는 네트워크

WAN (Wide Area Network)

  • 원거리 네트워크
  • LAN간 통신을 이뤄질수 있도록 함
  • 인터넷을 가능하게 만드는 네트워크.
  • ISP(Internet Service Provider)라는 인터넷 서비스 업체가 구축 및 관리 (KT, LG, SK 등등)
    WAN, LAN 연결 방식

CAN (Campus Area Network)

  • 학교 또는 회사의 여러 건물 단위로 연결되는 규모의 네트워크

MAN (Metropolitan Area Network)

  • 도시나 대도시 단위로 연결되는 규모의 네트워크

 

 

패킷 교환 네트워크

  • 패킷
    • 네트워크를 통해 송수신되는 데이터의 단위
  • 패킷의 구조
    • 페이로드 : 패킷에서 송수신하고자 하는 데이터 (ex. 택배)
    • 헤더 & 트레일러 : 패킷에 추가되는 부가 정보 (ex. 택배에 붙이는 송장)

 

주소의 개념 및 전송 방식

  • 주소 : 패킷의 헤더에 명시되는 정보 (서로를 특정할수 있는 정보) (ex. IP address, MAC address)
  • 유니캐스트 : 송신지와 수신지가 1:1로 메시지를 주고받는 전송 방식
  • 브로드캐스트 : 네트워크상의 모든 호스트에게 메시지를 전송하는 전송 방식
    • 브로드캐스트 도메인 : 브로드캐스트가 전송되는 범위, 호스트가 같은 브로드캐스트 도메인에 속해있는경우, 같은 LAN에 속해 있다고 간주함.
  • 멀티캐스트 : 네트워크 내의 동일 그룹에 속한 호스트에게만 전송하는 방식
  • 애니캐스트 : 네트워크 내의 동일 그룹에 속한 호스트 중 가장 가까운 호스트에서 전송하는 방식

 

두 호스트가 패킷을 주고받는 과정

 

프로토콜

  • 네트워크에서 통신을 주고받는 노드 간의 합의된 규칙이나 방법
  • 패킷을 주고받는 호스트와 네트워크 장비들이 주고받는 정보를 이해하기위해서는 같은 프로토콜을 이해, 같은 프로토콜로 통신해야함!

 

프로토콜의 종류 및 목적

IP

  • 네트워크 간의 주소를 지정하는 목적을 지닌 프로토콜

ARP

  • IP 주소와 MAC 주소를 대응시킨다는 목적을 지닌 프로토콜

HTTPS, HTTP

  • HTTPS는 보안상 HTTP에 비해 안전함.

TCP, UDP

  • TCP는 UDP에 비해 신뢰성이 높음.

TCP and UDP 헤더 차이

 

네트워크 참조 모델

택배(패킷)을 보내는 과정 - 네트워크 참조 모델

 

 

OSI 모델

  • 국제 표준화 기구인 ISO에서 만든 네트워크 참조 모델
  • 통신 단계를 7개의 계층으로 나눠져 있음
  • 네트워크의 이론적 기술을 목적으로 사용함

OSI 7계층 모델

 

1. 물리 계층 (physical layer)

  • 가장 최하위 계층
  • 비트 신호를 주고 받는 계층
  • 0, 1로 이루어진 신호를 유무선 통신 매체를 통해 운반하는 계층

2. 데이터 링크 계층 (data link layer)

  • 같은 LAN에 속한 호스트끼리 올바르게 정보를 주고받기 위한 계층
  • 같은 네트워크에 속한 호스트를 식별할수 있는 주소(MAC 주소)를 사용
  • 물리 계층을 통해 주고받은 정보에 오류가 없는지 확인
  • 하드웨어와 연결되어 있는 계층

3. 네트워크 계층 (network layer)

  • 네트워크 간 통신을 가능하게 하는 계층
  • LAN을 넘어 다른 네트워크와 통신을 주고받기 위해 필요한 계층 → 네트워크간 통신 과정에서 호스트를 식별할 수 있는 주소(IP 주소)가 필요함

4. 전송 계층 (transport layer)

  • 패킷의 유실 및 순서의 오류를 대비해 신뢰성 있는 전송을 가능하게 하는 계층
  • 포트(port)라는 정보를 통해 특정 응용 프로그램과의 연결 다리 역할을 수행하는 계층
  • TCP, UDP가 대표적인 프로토콜

5. 세션 계층 (session layer)

  • 응용 프로그램 간의 연결 상태(세션)을 관리하기 위한 계층
  • 응용 프로그램 간의 연결 상태를 유지하거나 새롭게 생성하고, 필요시 연결을 끊는 역할

6. 표현 계층 (presentation layer)

  • 인코딩과 압축, 암호화와 같은 작업 수행
  • 세션 계층과 표현 계층은 대체로 응용계층에 포함하여 간주는 경우도 많음

7. 응용 계층 (application layer)

  • user와 가장 가까이에서 여러 네트워크 서비스를 제공하는 계층
  • 중요한 프로토콜들이 다수 포함되어 있음 (HTTP, HTTPS, DNS)

 

TCP/IP 모델

  • TCP/IP 4계층이라고도 불림
  • 네트워크 액세스 계층, 인터넷 계층, 전송 계층, 응용 계층으로 구성됨
  • 구현과 프로토콜에 중점을 둔 네트워크 참조 모델

OSI, TCP/IP 모델의 비교

 

 

캡슐화와 역캡슐화

  • 패킷의 송신 과정에서 캡슐화 이루어짐
  • 패킷의 수신 과정에서 역캡슐화가 이루어짐
  • 이해하기전 한번더 학습하기! (네트워크 계층 구조를 통한 송수민, 패킷의 구조)
    • 패킷을 송신하는 쪽 : 상위(숫자 큰거) → 하위(숫자 작은거) 계층으로 정보 보냄
    • 패킷을 수신하는 쪽 : 하위 → 상위 계층으로 정보 받음
    • 네트워크 계층 구조를 이용하면 프로토콜을 계층별로 구성할 수 있음
    • 하나의 패킷은 헤더와 페이로드(+트레일러)를 포함하며, 프로토콜의 목적 및 특징에 따라 헤더의 내용은 바뀐다!
  • 각 계층에서 정보를 송신할때, 상위 계층에서 받은 패킷을 페이로드로 삼아서,  여러 프로토콜의 목적과 특징에 따라 헤더 or 프레일러를 덧붙인 뒤 하위 계층으로 전달. 즉, 상위 계층의 패킷이 하위 계층의 페이로드로 간주되는것!! → 송신 과정에서 헤더(및 트레일러)를 추가해나가는 과정 → 캡슐화(encapsulation)
  • 수신 과정에서 헤더(및 트레일러)를 각 계층에서 확인한 뒤 제거하는 과정 → 역캡슐화(decapsulation)

캡슐화(왼쪽) 및 역캡슐화(오른쪽)

 

 

계층에서 주고받는 패킷을 지징하는 이름 ( 다 알고 계세요)

계층 패킷의 이름
그 이상의 계층 데이터(data) or 메시지(message)
전송계층 TCP 기반 패킷일 경우  세그먼트(segment)
UDP 기반 패킷일 경우 데이터그램(datagram)
네트워크 계층 패킷(이하 IP 패킷) or 데이터그램
데이터 링크 계층 프레임(frame)
물리 계층 심볼(symbol) or 비트(bit)

캡슐화, 역캡슐화, 지칭 모두 표현한 이미지

 

 

네트워크에서 배울것들^^

 

'CS > 기타' 카테고리의 다른 글

(CS) 네트워크 - 네트워크 계층 IP  (0) 2025.03.22
(CS) 네트워크 - 물리 계층과 데이터 링크 계층  (0) 2025.03.19
(CS) 정렬 - 퀵 정렬  (0) 2025.01.21
(CS) 의존성 주입  (0) 2025.01.09
(CS) SOLID 원칙  (0) 2025.01.07