네트웍 칩 종류가 점점 많아진다.

100Mbps 칩은 요상한 기능들을 내장하면서 발전하고

1Gbps 칩들이 점점 많아지고 있다.

그래도 이더넷칩이니 패켓의 형태는 그대로이다.

항상 하는데도 헷갈리는게 있어 적어본다.


기본적인 이더넷 패켓을 보자


  목적지 MAC 주소(6-octet)  

 발신지 MAC 주소(6-octet)  

 데이타 (n) 


위의 이더넷 프레임에서  IP 프로토콜이 올라가면


 목적지 MAC 주소(6-octet) 

 발신지 MAC 주소(6-octet) 

IP-protocol (0x0800) 

목적지 IP 주소(4-octet) 

발신지 IP 주소(4-octet) 


위의 이더넷 프레임에서  ARP 프로토콜이 올라가면


 목적지 MAC 주소(6-octet) 

 발신지 MAC 주소(6-octet) 

IP-protocol (0x0806) 

 NULL 주소(00 00 00 00) 

발신지 IP 주소(4-octet) 



IP 프로토콜과 ARP 프로토콜이 동급인것을 확인할 수 있다. 물론 RARP 도 ARP 와 동급이다.

OSI 7계층에서 Layer-3 에 ;해당한다. (네트워크 계층)

Layer-4 에 TCP, UDP 가 있다.


이더넷 패켓에서  IP 주소가 32 bit 이다.  

IP 주소가 128 bit 로 확장된것이 IPv6 이다.  .

사실따지고 보면 별거 아닌데.. 문제는 프로그램들이 IP 주소가 4바이트라고 고정된 것이 문제이당.. 다시 컴파일 ㅜ,ㅜ

물론 몇몇의 난점이 있지만 이해하는것은 쉽다.  

중요한 것은 IPv6 에서는 IP 가 유일한 번호가 될수 있다는 것이다.

그리고 현재의 MAC 주소는 유일하지 않다.. 


Layer-1 은 물리적인 전송 규격(케이블 형태, 전기적인 형태 등등)이고  MAC 주소는 Layer-2 에 해당한다..


이더넷 칩을 포팅하다보면 이정도만 알아도 충분하니 여기서 끝!  (딴지총수버젼이당)