: IP 프로토콜을 헤더별로 구분하여 세부적인 구조를 확인할 수 있음
wireshark: 패킷 바이트 창에서 16진수 형태로 변경된 형태의 데이터를 확인 할 수 있음
version
IHL (header Length)
헤더길이, Options 값에따라 길이가 가변적, 단위는 32비트, 최소 5 최대 15
=> 기본크기 20바이트, 최대 60바이트까지 늘어날 수 있음
Type of service
서비스 종류 및 혼잡 알림
Total Length
Identification
최대 전송 단위 MTU
MTU 이상의 크기가 전송되면 MTU에 맞춰서 패킷이 분할 = 단편화
Flags
단편화된 패킷 전송 시 추가 패킷이 있는지의 여부 알림, 패킷 재조합
0바트: 예약필드, 무조건 0
1비트: DF, 분할된 패킷이 없을 때
2비트: MF, 분할된 패킷이 있을 때 1 or 0일 때 분할된 패킷이 더이상 존재하지 않음을 표시
Flags offset
:패킷들의 순서 파악, 패킷으로 분활된 경우 offset 설정
1번 패킷: 항상 0
2번 패킷: 첫 번째 보낸 데이터의 크기
3번 패킷: 두번째까지 보낸 전체 데이터의 크기
Time to live
데이터 그램이 통과 할 수 있는 최대 홉 수 지정
전송장비를 통과 할 때 마다 TTL 값 감소
(OS별 TTL 값이 다름)
Protocol
Header checksum
헤더의 오류를 검증하기 위해 사용
Source address, Destination address
송신자의 주고값, 목적지의 주소값
TCP 헤더
송신자 포트, 수신자 포트, 시퀀스 번호(패킷 고유한 번호), 승인번호(패킷 오류 없이 수신시 정상 수신 여부를 알려주기 위해 수시잔의 승인 번호)
TCP 헤더 길이 제공, Reserved는 예약된 필드로 사용되지 않는 경우 0
window 사이즈
: 한 번에 받을 수 있는 패킷 크기를 의미하며, 윈도우 크기가 다를 경우 작은 크기에 맞추어 데이터 송신
Header Checksum
헤더 값의 에러 발생 여부 검사하기 위해 사용