6. 전송계층 프로토콜

2021. 4. 1. 21:36Topcit 정리/기술 영역 - 네트워크 이해와 활용

반응형

전송계층 프로토콜 개념

전송 계층 프로토콜은 종단 호스트 간 애플리케이션 데이터를 전송해 주는 역할을 한다.


TCP

TCP는 TCP/IP모델에서 응용계층과 네트워크 계층 사이에 존재하며, 두 응용계층 사이의 프로세스간 통신을 제공한다

  1. 흐름제어
    데이터 패캣을 전송할 때 수신한도를 넘는 과도한 패킷의 입력으로 분실이 발생하지 않도록
    흐름 양을 조절하는 것을 흐름제어라고 한다.

  2. 오류제어
    전송 도중 발생한 부호오류를 검출하고, 정확한 정보를 재현하는 기술

  3. 혼잡 제어
    단위 시간당 네트워크로 전송되는 패킷의 수를 나타내는 네트워크 부하가
    용량을 초과할 시 부하가 생기고, 이러한 혼잡을 제어하기 위하여 혼잡 제어를 한다.


TCP 프로토콜

TCP 프로토콜에서 사용하는 헤더 포맷은 다음 그림과 같다.

  • 소스 포트 주소
    세그먼트를 송신하는 호스트 응용 프로그램 포트번호 정의

  • 목적지 포트 주소
    세그먼트를 수신하는 호스트 응용 프로그램 포트번호 정의

  • 순서번호
    세그먼트에 포함된 첫번째 데이터 바이트에 할당된 번호 정의

  • 확인 응답 번호
    세그먼트의 송신자가 받기를 기대하는 비트

  • 제어
    6개의 다른 제어필드 또는 플래그 비트

  • 윈도 크기
    세그먼트에 보낼 수 있는 데이터 크기, 최대 65536 바이트

  • 검사 합
    세그먼트 전체 에러탐지 수행

  • 긴급 지시자
    긴급 데이터를 포함하고 있을 경우 사용


제어 비트

  • ACK : 확인 응답 필드
  • URG : 긴급 포인터
  • PSH : 푸쉬 기능
  • RST : 리셋 기능
  • SYN : 순서 번호 동기화
  • FIN : 송신자로 부터 더이상 데이터 없음



UDP

UDP는 사전 설정과정 없이 바로 데이터를 주고받는 비연결 서비스를 제공한다

UDP 프로토콜

  • source port
    소스 포트 패킷의 출발지 포트 번호

  • destination port
    목적지 패킷의 목적지 포트 번호

  • length
    UDP 헤더와 데이터 필드를 포함한 전체 패킷의 길이

  • checksum
    데이터 오류 검출을 위한 값

  • data octets
    전송하고자 하는 데이터를 저장



SCTP

UDP와 TCP의 일부 장점을 결합하여 설계된 새로운 전송계층 프로토콜이다.


SCTP 특징

  • 프로세스 대 프로세스 통신
  • 다중 스트림
  • 멀티 홈잉 : 송수신 호스트는 결합을 위해 다수의 ip주소 정의
  • 전이중 통신
  • 연결지향
  • 신뢰성

SCTP 프로토콜

  1. 결합 시작과 종료
    결합은 SCTP 사용자의 요청에 의해서 시작되며,
    SYN 공격을 방지하기 위하여 4방향 핸드쉐이크를 사용한다.

  2. 스트림 내 순서화된 전달
    SCTP에서 스트림은 일련의 사용자 메시지를 의미한다.
    또한 지원 가능한 스트림 수를 설정 가능하다.

  3. 사용자 데이터 단편화
    TCP와 마찬가지로 사용자 메시지에 제한이 있는데 이를 위한 단편화 기법을 제공한다.

  4. 확인 응답과 혼잡 회피
    수신 측에서 모든 TSN에 ACK를 함으로써 전송의 신뢰성을 확보한다.
    확인 응답이 수신되지 않을 경우 패킷 재전송으로 혼잡을 회피한다.

  5. 청크 묶음
    공통 헤더 뒤에 여러 개의 유저 데이터나 제어 정보 청크가 올 수 있다.
    SCTO 사용자는 하나 패킷안에 여러 사용자 메시지를 날릴 수 있다.

  6. 패킷 인증
    검증 태그와 검사합 필드를 통해 검증하고 검증이 안될 경우 폐지한다.

  7. 경로 관리
    사용자가 전송 주소를 조작하여 전달할 수 있다.

반응형