데이터 통신 14주차 - 1

이승한·2024년 12월 3일
0

데이터통신

목록 보기
1/1

Chapter 14

The Internet Protocol

Connectionless Operation

Connectionless Operation의 개념은 인터넷 프로토콜(IP)이 데이터를 전달하는 방식과 관련이 있습니다. 이를 설명하자면:

  1. Connectionless Operation 정의

    • IP는 연결 없이(connectionless) 동작하는 프로토콜입니다. 이는 데이터를 전송하기 위해 송신자와 수신자 간에 사전에 연결을 설정하지 않는다는 것을 의미합니다.
    • 각 데이터 패킷은 독립적으로 처리되며, 패킷마다 목적지 주소와 라우팅 정보를 포함하고 있습니다.
  2. DARPA 인터넷 프로젝트와 연관성

    • 이 방식은 초기 DARPA 인터넷 프로젝트에서 개발되었습니다. DARPA는 군사 및 연구용 네트워크를 위한 효율적이고 유연한 데이터 전송 방식을 요구했고, 이에 따라 IP가 설계되었습니다.
  3. 네트워크 접근에 필요한 프로토콜

    • 다양한 네트워크를 서로 연결하는 인터네트워킹에서는 IP가 이러한 네트워크를 통합하고 데이터를 전달하기 위한 프로토콜 역할을 합니다.
    • 네트워크에 직접 연결하거나 데이터 전송에 필요한 주소 지정 및 라우팅을 수행합니다.

요약:

IP는 데이터를 목적지까지 전달하기 위해 연결을 설정하지 않는 독립적인 방식을 사용하며, 다양한 네트워크 간 통신을 가능하게 합니다. 이는 인터넷의 핵심 특징 중 하나로, 효율성과 확장성을 제공합니다.

Connectionless Internet Facility와 관련된 내용을 설명하자면:


Connectionless 특징

  • 유연성(flexibility): 연결을 사전에 설정하지 않기 때문에 다양한 네트워크와 환경에 쉽게 적응할 수 있습니다.
  • IP의 역할: IP는 종단 시스템(end systems) 간에 연결 없는 서비스를 제공합니다. 즉, 데이터를 독립적인 패킷 단위로 처리하여 전송 경로를 동적으로 결정합니다.

장점 (Advantages)

  1. 유연성 (Flexible)

    • 데이터 전송 경로가 사전에 고정되지 않아 다양한 네트워크 조건에 적응이 가능하며, 장애 상황에서도 다른 경로를 통해 데이터를 전달할 수 있습니다.
  2. 강력성(Robustness)

    • 네트워크 일부가 손상되거나 연결이 끊겨도 IP는 대체 경로를 찾기 때문에 네트워크 전체의 안정성을 유지할 수 있습니다.
  3. 불필요한 오버헤드 제거(No Unnecessary Overhead)

    • 사전에 연결을 설정하거나 유지하는 데 필요한 리소스를 소비하지 않으므로 효율적인 데이터 전송이 가능합니다.

요약:

Connectionless Internet Facility는 데이터 전송의 유연성과 강력성을 제공하며, 불필요한 작업을 최소화하여 네트워크 성능을 최적화합니다. IP는 이러한 특징을 기반으로 설계된 핵심 프로토콜입니다.

IP Design Issues

IP Design Issues는 IP 프로토콜 설계 시 고려해야 할 주요 측면으로, 각각 네트워크 효율성과 신뢰성을 보장하기 위한 핵심 요소들입니다. 아래에서 각각의 항목을 설명하겠습니다.


1. Routing (라우팅)

  • 역할: 데이터그램을 송신자로부터 수신자까지 효율적으로 전달하기 위한 경로를 결정합니다.
  • 기능:
    • 네트워크 토폴로지 정보를 기반으로 최적의 경로를 계산.
    • 동적 라우팅 프로토콜을 통해 변화하는 네트워크 상태에 적응.
  • 도전 과제:
    • 대규모 네트워크에서 경로 탐색과 유지 관리.
    • 혼잡 상황에서 적절한 경로 선택.

2. Datagram Lifetime (데이터그램 수명)

  • 문제: 데이터그램이 네트워크에 무한정 머무르며 혼잡을 유발할 수 있습니다.
  • 해결 방법:
    • Time-to-Live (TTL) 필드를 사용하여 데이터그램의 수명을 제한.
    • 라우터는 패킷을 전달할 때마다 TTL 값을 감소시키며, 0이 되면 해당 데이터그램은 폐기됩니다.
  • 목표: 네트워크 혼잡 방지 및 안정성 유지.

3. Fragmentation and Reassembly (단편화와 재조립)

  • 단편화(Fragmentation):
    • 데이터그램의 크기가 네트워크의 최대 전송 단위(MTU)를 초과하면 작은 조각으로 분할해야 합니다.
  • 재조립(Reassembly):
    • 수신 측에서 조각난 데이터그램을 원래 형태로 재구성.
    • IP 프로토콜은 송신 측이 아닌 수신 측에서만 재조립을 처리.
  • 도전 과제:
    • 데이터 조각 손실로 인한 오류 가능성 증가.
    • 조각의 순서 보장 필요.

4. Error Control (오류 제어)

  • 역할: 데이터그램 전송 중 발생하는 오류를 감지 및 처리합니다.
  • 방법:
    • 헤더 체크섬: 데이터그램 헤더의 무결성을 검증.
    • 오류가 발견되면 데이터그램은 폐기되고, 상위 계층에서 재전송 요청.
  • 제한:
    • IP 자체는 신뢰성을 보장하지 않으며, 이는 상위 계층(예: TCP)에서 처리해야 합니다.
      네, Layer 3에서 수행하는 Error Control은 Layer 2와 Layer 4에서의 역할과 다릅니다. 이를 설명하려면 각각의 계층에서 수행하는 오류 제어 방식과 그 차이점을 살펴봐야 합니다.

1. Layer 3 (Network Layer)에서의 Error Control

  • 주요 역할: 네트워크 계층은 패킷 전송을 담당하며, 오류 제어의 주요 초점은 데이터그램 헤더의 무결성을 확인하고 전송 경로 상의 문제를 처리하는 것입니다.
  • 방법:
    • 헤더 오류 감지: IP는 데이터그램의 헤더에 체크섬 필드를 포함하여 오류를 감지합니다.
      • 헤더가 손상된 경우, 해당 데이터그램은 폐기됩니다.
      • IP는 손상된 데이터그램을 재전송하지 않으며, 상위 계층(예: TCP)에서 재전송을 처리하도록 남겨둡니다.
    • 경로 문제 처리: 네트워크 혼잡이나 라우팅 문제로 인해 패킷 전달이 실패할 경우, ICMP(Internet Control Message Protocol)를 사용해 송신자에게 오류를 알립니다.
  • 특징:
    • Layer 3는 연결성을 보장하지 않으며, 신뢰성을 제공하지 않습니다.
    • 오류를 발견하고 패킷을 폐기하는 역할에 초점.
    • 재전송이나 복구는 상위 계층에 의존.

2. Layer 4 (Transport Layer)에서의 Error Control

  • 주요 역할: Transport 계층은 데이터의 신뢰성을 보장하며, 오류 발생 시 데이터 복구와 재전송을 책임집니다.
  • 방법:
    • 데이터 체크섬: 전송 데이터의 무결성을 확인하기 위해 전체 데이터 세그먼트에 대해 체크섬을 계산.
    • ACK/NACK: 송신자는 수신자로부터 Acknowledgment(ACK)를 받아야만 전송 성공을 확인.
      • ACK가 오지 않으면 재전송을 시도.
      • 오류 발생 시 Negative Acknowledgment(NACK)도 가능.
    • 시퀀스 번호: 데이터가 순서대로 도착하지 않을 경우 재정렬.
    • 재전송: 데이터 손실이나 오류가 발생하면 자동으로 복구.
  • 특징:
    • Layer 4는 신뢰성을 보장하며, TCP가 대표적인 프로토콜입니다.
    • 오류 발생 시 이를 복구하고 데이터 전송의 순서도 관리.

  • 주요 역할: 데이터 링크 계층은 링크 내(즉, 물리적 매체를 통해) 데이터 프레임의 무결성을 보장합니다.
  • 방법:
    • CRC (Cyclic Redundancy Check): 데이터 프레임의 손상 여부를 감지하기 위해 사용.
    • 재전송 요청 (ARQ): 오류가 감지된 프레임은 송신자에게 재전송을 요청.
    • 흐름 제어: 프레임 손실을 방지하기 위해 수신자와 송신자 간의 데이터 속도를 조절.
  • 특징:
    • Layer 2는 링크 수준에서의 신뢰성을 보장하며, 물리적 매체의 신호 오류를 처리.
    • 오류 감지와 일부 복구 기능을 제공합니다.

차이점 요약

계층역할오류 제어 방법재전송/복구 여부
Layer 2링크 수준에서 데이터 전송 보장CRC, ARQ, 흐름 제어있음
Layer 3네트워크 전송 중 헤더 무결성 확인 및 경로 문제 처리IP 체크섬, ICMP를 통한 오류 보고없음 (상위 계층에 의존)
Layer 4데이터 신뢰성 보장 및 복구데이터 체크섬, ACK/NACK, 시퀀스 번호, 재전송있음

정리

Layer 3의 Error Control은 IP 헤더와 관련된 오류를 감지하고, 이를 처리하지 못하면 데이터그램을 폐기합니다. 반면, Layer 4는 데이터 자체의 무결성과 신뢰성을 보장하며, Layer 2는 물리적 링크 수준의 오류를 처리합니다. 각각의 계층은 자신만의 역할에 집중함으로써 전체 네트워크가 효과적으로 작동하도록 보장합니다.

5. Flow Control (흐름 제어)

  • 역할: 네트워크 혼잡을 방지하고 송신자와 수신자 간의 데이터 전송 속도를 조정.
  • IP에서의 처리:
    • IP 자체는 흐름 제어를 직접적으로 구현하지 않음.
    • 혼잡 관리는 주로 상위 계층(예: TCP)이나 네트워크 계층의 라우터를 통해 이루어짐.

요약:

IP Design Issues는 효율적이고 안정적인 데이터 전송을 보장하기 위한 다양한 문제를 다룹니다. 각 요소는 네트워크 혼잡 방지, 데이터 무결성 보장, 라우팅 효율성 확보와 같은 중요한 역할을 담당합니다. IP는 이들 기능을 최소한으로 제공하여 단순하지만 확장 가능한 구조를 유지합니다.

Subnets and Subnet Masks

서브넷으로 작은 네트워크 단위로 남기고 마스크를 보고 어느 네트워크쪽인지 보내는 식

서브넷 어떻게 만드는지 시험에 나온다.


1. Subnets (서브넷)

  • Subnets은 네트워크를 더 작은 네트워크로 분할한 것입니다.

    • 네트워크 관리 효율성을 높이고, 네트워크를 더 세부적으로 제어하거나 트래픽을 분리하려고 사용합니다.
    • 한 네트워크 주소 공간을 여러 서브넷으로 나누면, 각 서브넷은 독립적으로 관리되고, 서로 다른 네트워크처럼 동작합니다.
  • 목적:

    1. 네트워크 규모 확대: 더 많은 네트워크를 만들 수 있음.
    2. 트래픽 관리: 특정 서브넷 간의 트래픽은 라우터를 통과하므로 분리 가능.
    3. 보안 향상: 특정 서브넷끼리 접근을 제한할 수 있음.

2. Subnet Masks (서브넷 마스크)

  • Subnet Mask는 네트워크 주소와 호스트 주소를 구분하기 위해 사용됩니다.

    • 네트워크 주소: 서브넷의 공통 부분.
    • 호스트 주소: 서브넷 내 개별 장치를 식별하는 부분.
  • 서브넷 마스크는 이진수로 표시되며, 연속된 1과 0으로 이루어져 있습니다.

    • 1: 네트워크 주소를 나타냄.
    • 0: 호스트 주소를 나타냄.

3. 서브넷 마스크의 역할

  1. 네트워크 및 호스트 분리:
    • 서브넷 마스크는 IP 주소를 네트워크 부분과 호스트 부분으로 분리합니다.
      예: IP 주소 192.168.1.1과 서브넷 마스크 255.255.255.0은 다음을 의미:
      • 네트워크 부분: 192.168.1.0
      • 호스트 부분: .1
  2. 서브넷의 범위 정의:
    • 서브넷 마스크를 사용해 네트워크 내에서 유효한 IP 주소 범위를 결정합니다.
    • 서브넷 마스크 255.255.255.0은 256개의 IP 주소를 가질 수 있고, 이 중 2개(네트워크 주소와 브로드캐스트 주소)를 제외하면 254개의 호스트를 가질 수 있습니다.

4. CIDR 표기법 (Classless Inter-Domain Routing)

  • 서브넷 마스크를 슬래시 표기법으로 표현.
    • 예: 255.255.255.0 = /24
      • 슬래시 뒤 숫자는 서브넷 마스크에서 1의 개수를 나타냅니다.
      • /24는 첫 24비트가 네트워크 부분이고, 나머지 비트가 호스트 부분임을 뜻합니다.

5. 예시

  1. IP 주소: 192.168.1.1
  2. 서브넷 마스크: 255.255.255.0 (/24)
    • 네트워크: 192.168.1.0
    • 유효한 호스트: 192.168.1.1 ~ 192.168.1.254
    • 브로드캐스트 주소: 192.168.1.255

6. Subnet Mask의 클래스별 기본값

클래스네트워크 범위기본 서브넷 마스크CIDR 표기
A1.0.0.0 ~ 126.0.0.0255.0.0.0/8
B128.0.0.0 ~ 191.255.0.0255.255.0.0/16
C192.0.0.0 ~ 223.255.255.0255.255.255.0/24

요약

  • Subnet: 네트워크를 작은 네트워크로 나눈 것.
  • Subnet Mask: IP 주소를 네트워크와 호스트 부분으로 분리하는 데 사용.
  • CIDR 표기법으로 서브넷 마스크를 간단히 나타낼 수 있음 (/24, /16 등).
    이를 통해 네트워크를 효율적으로 관리하고 트래픽 및 보안을 개선할 수 있습니다.

0개의 댓글