기출 sctp

agnusdei·2024년 11월 29일
0

Network

목록 보기
69/419

문제

1. SCTP(Stream Control Transmission Protocol)가 상위 계층에 제공하는 서비스에 대해 설명하시오.
2. SCTP의 연결 설정 과정에서 네트워크 보안 측면의 개선 사항을 설명하시오.


답변

1. SCTP(Stream Control Transmission Protocol)의 정의

  • SCTP는 스트림 기반 전송 프로토콜로, TCP와 UDP의 장점을 결합하여 신뢰성, 데이터 순서 보장, 멀티스트리밍을 제공하는 전송 계층(Transport Layer) 프로토콜입니다.
  • 주요 응용 사례: VoIP, IP 전화, 화상 회의, 신호 시스템(예: SS7) 등.

1. SCTP가 상위 계층에 제공하는 서비스

1.1 멀티스트리밍 (Multi-Streaming)

  • 기능: 하나의 연결(Association) 내에서 다중 데이터 스트림을 병렬로 전송합니다.
  • 특징:
    • 데이터 스트림 간 독립성을 제공하여 특정 스트림의 데이터 전송 장애가 다른 스트림에 영향을 미치지 않도록 함.
    • TCP에서 발생하는 HOL(Head-of-Line) 블로킹 문제를 해결.
  • 장점: 실시간 애플리케이션에서 데이터 손실과 지연을 줄여 성능을 개선.

1.2 멀티호밍 (Multi-Homing)

  • 기능: 한 쌍의 연결(Association)에 대해 여러 IP 주소를 사용하여 네트워크 경로를 중복 구성합니다.
  • 특징:
    • 기본 경로가 실패할 경우 대체 경로를 사용하여 연결을 유지.
    • 네트워크 장애 복구 능력 향상.
  • 장점: 고가용성(High Availability)과 신뢰성을 제공하여 네트워크 장애에 강함.

1.3 메시지 지향 전송 (Message-Oriented Transmission)

  • 기능: 애플리케이션이 보낸 메시지를 고정된 크기로 나누지 않고 전체 메시지를 하나의 단위로 처리.
  • 특징:
    • TCP와 달리 데이터 경계(Boundary)를 보존.
    • 상위 계층 애플리케이션에서 데이터의 무결성을 유지.
  • 장점: 메시지 단위로 데이터를 처리하므로 애플리케이션 로직 간소화.

1.4 전송 신뢰성 (Reliable Transmission)

  • 기능: 데이터 손실, 중복, 순서 변경을 방지하여 신뢰성을 제공.
  • 특징:
    • TCP처럼 데이터의 전송 보증을 위해 ACK(Acknowledgment), 재전송(Retransmission), 시퀀스 번호(Sequence Number)를 사용.
  • 장점: 안정적인 데이터 전송으로 VoIP와 같은 실시간 서비스에 적합.

1.5 데이터 순서 관리 (Ordered and Unordered Delivery)

  • 기능: 애플리케이션 요구에 따라 데이터의 순서를 유지하거나 유지하지 않고 전송.
  • 특징:
    • TCP는 모든 데이터의 순서를 보장하지만, SCTP는 순서 보장이 필요 없는 데이터도 전송 가능.
  • 장점: 비순차 전송(Unordered Delivery)을 통해 성능 최적화.

1.6 데이터 흐름 및 혼잡 제어

  • 기능: 수신자의 버퍼 크기와 네트워크 상태를 기반으로 송신 속도를 조절.
  • 특징:
    • TCP와 유사하게 흐름 제어(Windowing) 및 혼잡 제어(Congestion Control) 메커니즘 제공.
  • 장점: 네트워크 안정성과 효율성을 보장.

2. SCTP의 연결 설정에서 네트워크 보안 측면의 개선 사항

2.1 기존 TCP의 보안 문제

  • TCP는 3-way Handshake를 통해 연결을 설정하지만, 다음과 같은 보안 취약점이 존재:
    • SYN Flooding 공격: 공격자가 다량의 SYN 패킷을 보내고 응답하지 않아 서버의 자원을 고갈시키는 공격.
    • 스푸핑 공격(Spoofing): 공격자가 출발지 주소를 위조하여 비정상적인 연결을 생성.

2.2 SCTP의 연결 설정 과정

  • SCTP는 연결 설정을 위한 4-way Handshake를 사용하며, 보안성을 향상시킴.
  • 4-way Handshake 과정:
    1. INIT: 송신자가 연결 요청(INIT 메시지)을 보냄.
    2. INIT-ACK: 수신자가 초기 연결 정보와 쿠키(Cookie)를 포함한 응답(INIT-ACK 메시지)을 보냄.
    3. COOKIE-ECHO: 송신자가 쿠키를 포함한 확인 메시지(COOKIE-ECHO)를 보냄.
    4. COOKIE-ACK: 수신자가 최종적으로 연결을 확인(COOKIE-ACK).

2.3 보안 개선 사항

  1. SYN Flooding 완화

    • 연결 요청 시 서버는 쿠키를 클라이언트에 전송하고, 클라이언트가 이를 반환할 때까지 자원을 할당하지 않음.
    • 자원 낭비를 줄이고 서버를 보호.
  2. 스푸핑 방지

    • 쿠키는 암호화 또는 서명되어 있어 공격자가 임의로 위조하기 어려움.
    • 쿠키를 기반으로 연결 요청의 신뢰성을 검증.
  3. DoS(Denial of Service) 완화

    • 네트워크에 과부하를 유발하는 공격을 효과적으로 방지하며, 무효한 연결 요청을 차단.

3. 결론

  • SCTP는 TCP와 UDP의 장점을 결합하여 상위 계층에 신뢰성, 멀티스트리밍, 멀티호밍, 메시지 지향 전송과 같은 다양한 서비스를 제공합니다.
  • 연결 설정 과정에서 TCP의 SYN Flooding스푸핑 공격 문제를 해결하며, 4-way Handshake를 통해 네트워크 보안을 강화합니다.
  • 이러한 특성 덕분에 SCTP는 VoIP, 실시간 미디어 전송, 신호 처리와 같은 애플리케이션에서 높은 신뢰성과 보안을 제공합니다.

0개의 댓글