IP헤더 총 정리.

기말고사기간이라 IP헤더에 대해서 정리해 보는 시간을 갖도록 하겠다.


IP 헤더 레이아웃.
IP헤더 부분을 찾으려면 HEX코드로 대부분 45를 찾으면 된다. 앞의 4는 현재의 IP버젼을 의미하고 뒤의 5는 IP헤더의 길이는 IP헤더의 길이를 나타낸다. 1은 4바이트를 의미하므로 5는 20바이트를 나타내는데 이것은 IP기본헤더의 길이이다. 따라서 5보다 작으면 잘못된 패킷이라 볼 수 있다.

서비스의 종류.
처음의 3비트는 우선순위를 나타내고 나머지는 서비스의 종류를 나타낸다. 특별한 경우가 아니라면 이 부분은 00의 값을 가진다. 일단 데이터의 우선순위부터 보자면 000부터 111까지의 값이 있는데 값이 클수록 높은 우선순위를 가진다. 다음은 서비스의 종류는 딜레이, 성능, 비용, 신뢰성의 비트를 나타내고 이들의 값은 항상 베타적이어야 한다. 즉 하나가 1이라면 나머지는 모두 0 이되어야 한다.

IP의 총 길이.
말 그대로 IP헤더와 데이터를 포함하는 데이터그램의 전체 크기를 이야기한다. 따라서 IP총길이-헤더길이=데이터 이다. 이더넷을 통해 통신을 할때에는 최대 1500바이트이다. 물론 헤더를 포함한 값이므로 1480바이트의 데이터를 보낼 수 있는 것이다.

ID번호.
데이터그램의 유일한 ID번호이다. 보내질때마다 1씩 증가하게 된다. 이렇게 받은 데이터의 논리적인 에러를 없애주고 단편화된 데이터그램을 다시 합치는데 사용된다. 단편화가 발생되면 큰 데이터그램에서 잘려진 각 부분들은 같은 데이터그램 ID번호를 가지게 된다. 이것이 조각난 데이터그램의 식별자로 사용되는 것이다.

단편화.
단편화는 최대로 보낼수 있는 이상의 데이터를 보내게 될때 나눠서 보내는것을 말한다. 만약에 단편화된 조각중 한개라도 도착하지 않았다면 단편화조각들은 없어지게 되고 보낸쪽에 에러메시지를 보내게 된다.

TTL.
TTL은 데이터그램이 살아 있는 시간을 조절해주는 장치다. 라우터에서 패킷을 받게되면 바로 TTL값에서 1을 빼게 된다. 그리고 0이 되면 폐기해 버리고 보낸쪽에게 폐기했다는 메시지를 보낸다. TTL을 이용하여 상대방호스트까지의 총 라우터 개수를 알 수 있다. TTL값을 1부터 한개씩 증가하여 보내서 폐기가 됐다는 메시지가 아닌 요청에 의한 응답 메시지를 확인하여 총 라우터의 개수를 알 수 있게 된다.

프로토콜.
프로토콜은 말그대로 상위 프로토콜의 번호를 말하는 것이다. 주로 사용하는 것들을 알아보면 01 - ICMP, 02 - IGMP06 - TCP, 11 - UDP가 있다.

다음으로 오는것이 체크섬과 소스주소, 목적지주소가 따라오게 된다. 이더넷 헤더를 제외한 모든것들은 자신을 소개하고 목적지 주소가 붙게된다.

by 백승수 | 2009/06/07 02:08 | - TCP/IP | 트랙백 | 덧글(0)

◀ 이전 페이지          다음 페이지 ▶