네트워크 1

어제보다·2024년 11월 10일

네트워크의 큰 그림

1. 네트워크의 기본 구조

노드와 링크

네트워크는 노드와 링크가 서로 연결되어 리소스를 공유하는 시스템이다. 네트워크의 주 목적은 데이터와 자원을 효율적으로 공유하고, 각 장치가 필요한 정보를 신속하게 주고받을 수 있도록 하는 것이다.

  • 노드: 서버, 라우터, 스위치 등 네트워크 장치를 의미한다.
  • 링크: 네트워크의 노드 간의 연결 경로를 의미하며, 데이터가 이동할 수 있는 통로 역할을 한다. 링크는 전송 매체의 종류에 따라 유선과 무선으로 나눌 수 있습니다.

네트워크 토폴로지

네트워크 토폴로지는 네트워크를 구성하는 장치들이 어떻게 연결되어 있는지, 그 구조와 형태를 나타낸 개념이다. 토폴로지는 데이터가 전송되는 경로와 장치들 간의 관계를 정의하며, 네트워크의 효율성과 안정성에 큰 영향을 미친다.

  • 버스형 토폴로지: 버스형 토폴로지는 단일 중앙 케이블(버스)에 모든 장치가 연결된 형태다. 모든 노드는 이 버스를 통해 데이터를 주고받으며, 데이터는 버스를 따라 모든 장치에 전송된다.

    • 특징

      • 설치와 확장이 쉽고 비용이 적게 든다.
      • 데이터가 한 번에 한 방향으로만 전송된다.
    • 장점

      • 설치가 간단하고 케이블의 양이 적어 경제적이다.
      • 소규모 네트워크에 적합합니다.
    • 단점

      • 버스가 고장 나면 전체 네트워크가 중단된다.
      • 데이터 충돌이 발생할 수 있으며, 네트워크 성능이 떨어질 수 있다.
  • 스타형 토폴로지: 스타형 토폴로지는 중앙 허브나 스위치에 모든 장치가 개별적으로 연결된 형태대. 각 노드는 허브를 통해서만 다른 장치와 통신할 수 있다.

    • 특징:

      • 각 노드가 허브와 직접 연결되어 있으며, 허브가 데이터를 중계한다.
    • 장점

      • 특정 노드가 고장 나더라도 네트워크 전체에는 영향이 적다.
      • 문제 발생 시 고장이 발생한 노드를 쉽게 식별하고 해결할 수 있다.
      • 허브나 스위치가 처리 능력이 좋으면 대규모 네트워크에도 확장이 용이하다.
    • 단점

      • 중앙 허브에 의존하므로 허브에 장애가 발생하면 전체 네트워크가 중단된다.
      • 설치 비용이 다소 높을 수 있다.
  • 링형 토폴로지: 링형 토폴로지는 모든 장치가 순환 형태의 폐쇄 회로로 연결된 형태다. 데이터는 링을 따라 순서대로 전달되며, 각 노드는 다음 노드로 데이터를 전달한다.

    • 특징
      • 양방향 또는 단방향으로 데이터가 전달될 수 있다.
      • 토큰 패싱(Token Passing) 방식으로 데이터 충돌을 방지할 수 있다.
    • 장점
      • 데이터 충돌이 적으며, 안정적입니다.
      • 네트워크 크기에 관계없이 성능이 일정하게 유지된다.
    • 단점
      • 한 노드에 문제가 생기면 전체 네트워크에 영향을 미친다.
      • 네트워크 확장이 어렵다.
  • 트리형 토폴로지: 트리형 토폴로지는 계층 구조를 갖추고 있는 토폴로지로, 스타형 토폴로지가 여러 계층으로 연결된 형태다. 루트 노드를 중심으로 하위 노드가 계층적으로 연결된다.

    • 특징
      • 계층 구조로 확장이 용이하며, 대규모 네트워크 구성에 적합하다.
    • 장점
      • 중앙 루트에서 네트워크를 관리하기 쉽다.
      • 확장성 및 융통성이 뛰어나고, 큰 네트워크에서도 안정적인 데이터 전송을 보장할 수 있다.
    • 단점
      • 중앙 루트 노드에 장애가 발생하면 해당 하위 노드들이 모두 영향을 받는다.
      • 트래픽이 루트 노드에 집중될 수 있어 성능 저하가 발생할 수 있다.

네트워크 분류

  • 네트워크는 규모를 기반으로 분류할 수 있다. 사무실과 개인적으로 소유 가능한 규모인 LAN과 서울시 등 시 정도의 규모인 MAN, 그리고 세계 규모의 WAN으로 나뉜다.

LAN

  • LAN은 근거리 통신망을 의미하며 같은 건물이나 캠퍼스 같은 좁은 공간에서 운영된다. 전송 속도가 빠르고 혼잡하지 않다.

MAN

  • MAN은 대도시 지역 네트워크를 나타내며 도시 같은 넓은 지역에서 운영된다. 전송 속도는 평균이며 LAN보다는 더 많이 혼잡하다.

WAN

  • WAN은 광역 네트워크를 의미하며 국가 또는 대륙 같은 더 넓은 지여겡서 운영된다. 전송 속도는 낮으며 MAN보다 더 혼잡하다.

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

패킷

  • 패킷은 데이터를 네트워크를 통해 효율적으로 전송하기 위해 작은 단위로 나눈 정보의 블록이다. 원래의 데이터는 파일이든, 메세지든, 스트리밍 데이터이든 크기가 큰 경우가 많아서 이를 한 번에 전송하는 것은 비효율적이고 신뢰성 면에서도 좋지 않다. 이를 해결하기 위해 데이터를 작은 조각으로 나누어 네트워크를 통해 전송하는데, 이 작은 조각들을 패킷이라 부른다.

패킷의 구조

  • 헤더: 패킷의 앞부분으로, 목적지와 발신지 정보, 패킷의 순서 번호, 프로토콜 타입 등의 전송에 필요한 정보를 포함한다. 이 정보는 라우터나 네트워크 장비들이 패킷이 어디로 가야 하는지를 알 수 있도록 한다.

  • 페이로드: 실제 데이터가 포함된 부분이다. 각 패킷의 페이로드에는 전송하고자 하는 데이터의 일부가 담겨 있으며, 패킷이 모두 수신되면 이 페이로드들을 모아 원래 데이터로 재구성된다.

  • 트레일러: 패킷의 끝부분으로, 일반적으로 오류 검출을 위한 정보가 포함되어 있다. 트레일러를 통해 데이터 전송 도중 손상된 패킷을 식별하고 오류를 수정하거나 재전송할 수 있게 한다.

패킷의 전송 과정

  • 데이터 분할: 먼저, 보내고자 하는 데이터를 여러 개의 패킷으로 나눈다. 각 패킷에는 헤더, 페이로드, 트레일러가 포함된다.

  • 라우팅 및 전송: 패킷들은 다양한 경로를 통해 네트워크 상에서 전송된다. 이는 네트워크 혼잡을 줄이고 최적의 경로를 사용하기 위함이다.

  • 재조립: 패킷이 목적지에 도착하면, 수신 장치는 패킷을 원래 데이터로 재조립한다. 헤더의 순서 정보가 이때 사용된다.

  • 오류 검출: 트레일러의 오류 검출 정보로 데이터를 확인하여 손상되었거나 누락된 패킷을 다시 요청할 수 있다.

OSI 모델

  • 네트워크 통신을 이해하고 설계하는 데 사용되는 표준 모델로, 7개의 계층으로 네트워크 통신을 나누어 각 계층의 역할을 명확하게 정의한다. OSI 모델은 네트워크 설계와 문제 해결에 중요한 기준을 제공하며, 각 계층은 특정한 기능을 담당한다.

OSI 모델의 7개 계층

  • 물리 계층

    • 역할
      데이터를 비트 단위로 전송하는 역할을 한다. 즉, 데이터를 전기적 신호, 빛의 신호 또는 라디오 파형으로 변환하여 네트워크 장치들 간에 물리적으로 전송한다.

    • 구성 요소
      케이블, 라우터, 스위치, 네트워크 카드 등 물리적 장치들.

    • 예시: 이더넷 케이블, 광섬유 케이블, Wi-Fi.

  • 데이터 링크 계층 (Data Link Layer)

    • 역할: 물리 계층에서 전송된 데이터를 프레임 단위로 패킹하고, 이를 신뢰성 있게 전송할 수 있도록 오류를 검출하고 수정한다. 또한, 네트워크 장치들 간의 주소 지정(MAC 주소)을 처리한다.

    • 구성 요소: MAC 주소, 스위치, 브리지.

    • 예시: 이더넷, Wi-Fi

  • 네트워크 계층 (Network Layer)

    • 역할: 데이터를 패킷 단위로 전송하며, IP 주소를 사용하여 데이터를 목적지까지 전달한다. 또한, 패킷의 경로를 선택하는 라우팅 기능을 제공한다.

    • 구성 요소: 라우터, IP 주소.

    • 예시: IP(인터넷 프로토콜), ICMP(인터넷 제어 메시지 프로토콜), RIP(라우팅 정보 프로토콜).

  • 전송 계층 (Transport Layer)

    • 역할: 데이터의 종단 간 통신을 담당하며, 흐름 제어, 오류 제어, 세그먼트화 등을 처리한다. 데이터를 작은 단위로 분할하고, 수신자에게 전달하는 순서대로 재조립한다. 이 계층에서는 연결 지향적 통신(TCP)과 비연결 지향적 통신(UDP)이 사용된다.

    • 구성 요소: 포트 번호, 세그먼트.

    • 예시: TCP(Transmission Control Protocol), UDP(User Datagram Protocol).

  • 세션 계층 (Session Layer)

    • 역할: 네트워크 상에서 두 시스템 간의 세션을 설정, 유지 및 종료하는 역할을 한다. 이 계층은 세션 관리를 통해 통신 세션의 시작과 끝을 제어한다.

    • 구성 요소: 세션 ID, 인증 토큰.

    • 예시: RPC(Remote Procedure Call), NetBIOS.

  • 표현 계층 (Presentation Layer)

    • 역할: 데이터를 표현 형식에 맞게 변환한다. 예를 들어, 암호화, 압축, 인코딩 등의 기능을 처리하여 애플리케이션 계층이 데이터를 올바르게 해석할 수 있도록 한다.

    • 구성 요소: 암호화 알고리즘, 압축 형식.

    • 예시: JPEG, SSL/TLS, ASCII, GIF, MPEG.

  • 응용 계층 (Application Layer)

    • 역할: 사용자와 네트워크 간의 직접적인 상호작용을 제공한다. 사용자가 사용하는 애플리케이션이 이 계층에서 작동하며, 데이터 교환 및 통신 프로토콜이 처리된다.

    • 구성 요소: 웹 브라우저, 이메일 클라이언트, FTP 클라이언트 등.

    • 예시: HTTP, FTP, SMTP, POP3, DNS.

profile
똑똑해지는중...

0개의 댓글