Network - 이더넷 프레임이란?
Network - 이더넷 프레임이란?
본 글은 『혼자 공부하는 네트워크』를 참고하여 개인 학습 목적으로 이해한 내용을 정리한 것입니다.
현대 유선 LAN 환경은 대부분이 이더넷을 기반으로 구성되어 있음.
이런 이더넷 네트워크 환경에 속한 호스트의 데이터 링크 계층이 주고받는 프레임을 이더넷 프레임이라고 함.
이더넷 프레임은 정해진 형식이 있으며 그 형식은 아래와 같음.
프리앰블
- 이더넷 프레임의 시작을 알리는 8바이트 길이의 정보임.
- 첫 7바이트는 10101010 값을 가짐.
- 마지막 바이트는 10101011 값을 가짐.
- 수신지는 프리앰블을 통해 이더넷 프레임이 오고 있음을 알 수 있음.
- 프리앰블은 송수신지 간의 동기화를 위해 사용됨.
송/수신지 MAC 주소
- 네트워크 인터페이스 마다 할당되는 6바이트 길이의 주소값임.
- 같은 LAN 내의 송수신지 주소를 특정할 수 있음.
- 일반적으로 고유하고, 변하지 않음.
- 완전 불변은 아님. 변할수도 있고, 고유하지 않을수도 있지만 일반적이지 않음.
참고
- NIC(Network Interface Controller)라는 장비가 네트워크 인터페이스 역할을 담당함.
- 한 컴퓨터에 여러 개의 NIC가 있을 경우 MAC 주소도 여러 개 있을 수 있게 됨.
MAC 주소는
ifconfig커맨드를 통해 확인 가능함.
타입/길이
- 크기가 1500(16진수: 05DC) 이하일 경우 해당 프레임의 크기를 나타냄.
- 크기가 1536(16진수: 0600) 이상일 경우 타입을 나타냄.
- 타입: 어떤 정보를 캡슐화하였는지 나타냄.
- 대표적으로 상위 계층에서 사용한 프로토콜 이름이 들어가있음.
- IPv4 프로토콜이 캡슐화되어 있을 경우 16진수 0800이 들어가 있음.
- 타입: 어떤 정보를 캡슐화하였는지 나타냄.
데이터
- 상위 계층에서 전달 받았거나, 전달 해야하는 내용을 의미함.
- 최대 1500 바이트까지 가능함.
- 최소 46바이트 이상은 되어야하며, 이하일 경우 패딩 값이 들어감.
- 패딩 값이 들어간다는 것은 46바이트 이상이 될 때까지 0으로 계속 채워넣는 것을 의미함.
FCS
- 수신한 이더넷 프레임의 오류를 검출하기 위해 사용됨.
- 데이터 링크 계층에서 일어나는 오류 검증이 이때 일어나는 것임.
- CRC(Cyclic Redundancy Check)라는 순환 중복 확인을 위한 값이 들어감.
- 송신지측에서는 프리앰블 필드를 제외한 나머지 필드를 바탕으로 CRC 값 계산 후 FCS 필드에 값을 넣음.
- 수신지측에서는 프리앰블, FCS 필드를 제외한 나머지 필드를 바탕으로 CRC 값 계산 후 비교함.
- 값이 일치하지 않을 경우 프레임을 폐기함.
This post is licensed under CC BY 4.0 by the author.
