본문 바로가기

네트워크

주요 프로토콜 해더 구조(이더넷 , IP)

이더넷(IEEE802.3)

-2계층프로토콜(네트워크계층)

-MAC주소 기반으로 통신하기위한 프로토콜

-프레임(PDU)를 사용해서 전송-

이더넷의 구조

앞에서 부터 하나씩알아보자 .

데이터는 통으로 모든데이터를 보내지않고 최적화된 속도를 낼수있는크기만큼 다 나누어서 상대방에게 보내부는데

그럼 상대방은 그 나누어진 데이터 조각을 모을필요가있다. 데이터는 끊임없이 게속해서 들어오는데 그 원하는 데이터의 시작을 어떻게 알수있을까?

그것이 바로 이더넷구조에서 첫번째로 나오는

Preamble 이다.

이것은 수신지에 프레임 시작을 알리는 정보로 0x55라는 메시지를 7번 보낸다.

이러면 수신측에서 0x55가 연속으로 7번 보이면 프레임의 시작이구나 라는걸 알수있을것이다.

하지만 이걸로는 부족하다 Ox55가 7번 보내자면 무조건 프레임의 시작이라고할수없다.

이 Ox55 를 7 번 보내는 데이터일수도있다는것이다. 그래서 한번더 확인시켜주는역활을하는 하는부분이 두번째

Start of Frame Delimiter(SFD) 이다.

실제로 프레임 해더의 시작을 알려주는 역활을하며 0xD5 라는 메세지를 보낸다.

수신측은 게속해서 데이터를받다가 어느순간 0x55 메세지가 7번이 등장하고 그다음에 0xD5 메세지가 오면 프레임의 시작이라고 아는것이다.

MAC destination 은 받는측 의 MAC주소를 넣어둔다.

MAC Source 는 보내는측 의 MAC주소를 넣는다.

Ethertype or length 는 이더넷 타입 또는 길이를 넣을수있는 부분으로

0~1500(0x05dc) 까지의 정보가 들어있다면 그것은 데이터의 길이를 의미하며 0x600 이후의 값은

이더넷 타입으로 판단한다.

0x0800 = IP

0x0806 =ARP

0x8100 =802.1Q 등등

Payload(data) 는 전송되는 실제 데이터이다.(IP,TCP,UDP ), 46~1500B의 크기까지

Frame check Sequence 는 프레임의 오류 확인을 위해서 사용된다(CRC-2)

Interframe gap 는 데이터의 크기를 맞추기위해서 Padding 를 사용

실제 패킷을 확인하기위해 와이어샤크(Wireshark) 를통해 알아보자.

1. 목적지 주소를 알려주고있다.

2. 출발지 주소를 알려주고있다.

3. type를 알려주고있는데 0x0806은 ARP를 의미한다.

주요 프로토콜 헤더 구조 ( IP )

버전 (Version) : ip 버전을 지정한다.( 4 = IPv4 / 6 = IPv6 )

IHL : IP헤더의 길이 이다. 이값에 4를 곱해주어서 구할수있다.

서비스타입(TOS=Type of Length) : 라우터에서 IP를 처리할때의 우선순위

패킷길이(TL) Total Lengh : 해더를 포함한 패킷 전체의 길이

'네트워크' 카테고리의 다른 글

vlan , 포트보안 키워드 요약  (0) 2019.06.18