2계층이 하는 역할
:가까이 있는 컴퓨터, 즉 로컬 네트워크에서 어떻게 통신하는가?
: 하나의 네트워크 대역 즉, 같은 네트워크 상(LAN 대역)에 존재하는 여러 장비들 중에서 어떤 장비가 어떤 장비에게 보내는 데이터를 전달하는지
-추가적으로 오류제어, 흐름제어 수행
-보내는 데이터가 오류가 있는지 없는지 : 오류제어
-누가 누구에게 데이터를 보내는지 : 흐름제어
2계층의 네트워크 크기
:2계층은 하나의 네트워크 대역 LAN에서만 통신할 때 사용한다.
-다른 네트워크 대역과 통신할 때는 항상 3계층이 도와주어야 한다.
-3계층의 주소와 3계층의 프로토콜을 이용하여야만 다른 네트워크와 통신이 가능하다.
2계층에서 사용하는 주소
MAC 주소
:LAN에서 통신할 때 사용하는 주소
-다른 말로 물리적인 주소라고도 한다. 실질적인 장비가 부여받은 고유한 주소 값이기 때문
-MAC 주소는 16진수로 표현을 하고 2개씩 묶어서 표현을 한다.(16진수 두 개당 1바이트, 총 6바이트)
ex) 6C-29-95-04-EB-A1 (두 개씩 구분을 할 때는 -로 구분하기도 하고 :(콜론)으로 구분하기도 한다.)
앞의 6개의 16진수 (6C-29-95) : OUI - IEEE에서 부여하는 일종의 제조회사 식별ID/네트워크 장치에 부여된 MAC주소, 이 MAC 주소를 부여한 회사의 ID
ex) 네트워크 장치를 만든 곳이 삼성이라면 삼성의 고유 ID인 것
뒤의 6개의 16진수(04-EB-A1): 고유번호 - 제조사에서 부여한 고유번호
하드웨어 장치에 부여되는 주소이기때문에 쉽게 바꿀 수 없고 전세계의 기기들이 모두 고유한 주소를 가지고 있다.
2계층 프로토콜
Ethernet 프로토콜 : LAN에서 통신할 때 사용하는 프로토콜
해당 이미지에서 형광펜 칠해져 있는 부분만 알면 된다.(총 14바이트)
자세히 살펴보면 Destination Address가 6바이트, Source Address가 6바이트, Ethernet Type이 2바이트를 차지한다.
위에서 봤던 MAC 주소 역시 6바이트이다. 즉, 목적지 주소(Destination Address) 부분에 MAC 주소가 온다는 것.
또한 출발지 주소(Source Address)도 MAC 주소가 온다.
그래서 받는 주소 6바이트, 보내는 주소 6바이트 뒤에 Ethernet Type 2바이트에서 14바이트가 Ethernet 프로토콜에 해당한다.(뒤에 DATA는 페이로드)
DATA에는 인캡슐레이션되서 온 상위 프로토콜 내용이 포함되어 있는데 ( ex) IPv4 + data ) 이더넷 프로토콜 입장에서는 페이로드 안에 어떤 3계층 프로토콜이 있는지 모른다. 그래서 3계층 프로토콜을 미리 알려주는 것이 Ethernet Type 이다.
이걸 왜 알려주어야하냐면 패킷은 전기적 신호로 전달된다. (01011100.... ) 그러면 페이로드 안에 있는 상위 프로토콜이 무엇인지 미리 알고있으면 그 내용을 분석하기 더 편하기 때문이다. 게다가 이렇게 미리 알려주지 않으면 어떤 프로토콜로 분석해야 하는지 알 수 없다! 전기적 신호로 전달되기 때문에!
이더넷은 3계층으로 IPv4와 arp 두 개를 받을 수 있는데
IPv4 → Ethernet Type : 0x0800,
arp → Ethernet Type : 0x0806
이다.
실습해보자!
Ethernet 에 해당하는 것을 보면 총 14바이트가 표시되는 것을 볼 수 있다.
앞에 16진수 6개 04 5e a4 fe 87 은 목적지 주소
그 뒤로 6개 c4 68 05 ca cf f3 는 출발 주소
08 00 은 이더넷 타입으로 IPv4를 가리킨다.
즉, 이더넷 프로토콜은 아래 표와 같다.
목적지 주소(ㅇㅇ-ㅇㅇ-ㅇㅇ) | 출발지 주소(ㅇㅇ-ㅇㅇ-ㅇㅇ) | 이더넷 타입(ㅇㅇ-ㅇㅇ) |
'개발 공부 > CS 공부' 카테고리의 다른 글
네트워크 #5 [네트워크 모델] (0) | 2022.07.14 |
---|---|
네트워크 tracert, Wireshark 실습해보기 (0) | 2022.07.12 |
네트워크란 무엇인가? [네트워크, 인터넷, 분류(크기, 연결), 통신방식, 프로토콜] (0) | 2022.07.12 |