TCP/IP 패킷분석

다원·2022년 11월 30일
0
post-thumbnail

IP Header

: IP 프로토콜을 헤더별로 구분하여 세부적인 구조를 확인할 수 있음

  • wireshark: 패킷 바이트 창에서 16진수 형태로 변경된 형태의 데이터를 확인 할 수 있음

  • version

  • IHL (header Length)
    헤더길이, Options 값에따라 길이가 가변적, 단위는 32비트, 최소 5 최대 15
    => 기본크기 20바이트, 최대 60바이트까지 늘어날 수 있음

  • Type of service
    서비스 종류 및 혼잡 알림

    • DSCP

      : IP데이터그램이 라우터에서 어떻게 처리되어야 하는지 정의
    • ECM, 혼잡알림

      : 00: ECN 기능X, 01or10: 발신측 종단점이 ECN기능 수용, 11: 라우터 혼잡
  • Total Length

  • Identification
    최대 전송 단위 MTU
    MTU 이상의 크기가 전송되면 MTU에 맞춰서 패킷이 분할 = 단편화

    • 단편화
      : 고유 번호 할당 및 같은 ID 부여됨
  • Flags

    단편화된 패킷 전송 시 추가 패킷이 있는지의 여부 알림, 패킷 재조합
    0바트: 예약필드, 무조건 0
    1비트: DF, 분할된 패킷이 없을 때
    2비트: MF, 분할된 패킷이 있을 때 1 or 0일 때 분할된 패킷이 더이상 존재하지 않음을 표시

  • Flags offset

    :패킷들의 순서 파악, 패킷으로 분활된 경우 offset 설정
    1번 패킷: 항상 0
    2번 패킷: 첫 번째 보낸 데이터의 크기
    3번 패킷: 두번째까지 보낸 전체 데이터의 크기

  • Time to live

    데이터 그램이 통과 할 수 있는 최대 홉 수 지정
    전송장비를 통과 할 때 마다 TTL 값 감소
    (OS별 TTL 값이 다름)

  • Protocol

    • UDP 프로토콜 사용 시 11로 표시
    • TCP 프로토콜 사용 시 06으로 표시
    • 그 외 ICMP=1, List of IP Protocol numbers로 확인 가능
  • Header checksum
    헤더의 오류를 검증하기 위해 사용

  • Source address, Destination address
    송신자의 주고값, 목적지의 주소값

전송 계층

  • TCP 프로토콜
    : 세션 연결 과정을 가지고 있어서 신뢰성 있음
  1. 세션 연결: 3-way handshake (SYN, SYN+ACK,ACK)
  2. 데이터 송수신
    사용자가 초기 파일 요청 (PSH) -> 서버 ACK 응답
    서버가 PSH를 통해 페이지 전달 -> 사용자 ACK 응답
  3. 통신 종료 :4-WAY handshake
    FIN-ACK, ACK 전송을 상호 수신
  • TCP 헤더

    송신자 포트, 수신자 포트, 시퀀스 번호(패킷 고유한 번호), 승인번호(패킷 오류 없이 수신시 정상 수신 여부를 알려주기 위해 수시잔의 승인 번호)
    TCP 헤더 길이 제공, Reserved는 예약된 필드로 사용되지 않는 경우 0

  • window 사이즈
    : 한 번에 받을 수 있는 패킷 크기를 의미하며, 윈도우 크기가 다를 경우 작은 크기에 맞추어 데이터 송신

  • Header Checksum
    헤더 값의 에러 발생 여부 검사하기 위해 사용

profile
공부일지,

0개의 댓글