[Network] OSI 2계층 데이터링크 계층 (Data Link Layer)
OSI 2계층: 데이터 링크 계층
네트워크 모델에서 데이터 링크 계층은 물리 계층과 상위 계층 사이에서 데이터를 효율적이고 안정적으로 전송하기 위한 핵심적인 역할을 수행합니다.
데이터 링크 계층의 역할
데이터 링크 계층은 네트워크에서 두 노드 간 신뢰할 수 있는 데이터 전송을 보장합니다.
이 계층은 프레임(Frame) 단위로 데이터를 처리하며, 물리 계층에서 발생할 수 있는 오류를 감지하고 수정합니다.
-
프레임화(Framing): 데이터 스트림을 일정한 크기의 프레임으로 나누어 전송합니다.
-
주소 지정(Addressing): 송신자와 수신자를 식별하기 위해 MAC 주소를 사용합니다.
-
오류 검출 및 수정(Error Detection and Correction): 전송 중 발생할 수 있는 데이터 손상을 검출하고 처리합니다.
-
흐름 제어(Flow Control): 데이터 송수신 속도를 조정하여 네트워크 혼잡을 방지합니다.
-
액세스 제어(Access Control): 여러 장치가 동일한 네트워크 매체를 사용할 때 충돌을 방지합니다.
데이터 링크 계층의 구성
데이터 링크 계층은 일반적으로 두 개의 하위 계층으로 나뉩니다.
MAC(Media Access Control) 하위 계층
MAC 하위 계층은 네트워크 매체에 대한 접근을 제어합니다.
MAC 주소: 네트워크 인터페이스에 고유하게 부여된 6바이트 주소로, 장치를 식별합니다.
CSMA/CD(Carrier Sense Multiple Access with Collision Detection): 충돌 방지를 위한 액세스 제어 메커니즘으로, 이더넷 환경에서 널리 사용됩니다.
프레임 전송 및 수신: 프레임을 매체에 전송하거나 수신하여 상위 계층으로 전달합니다.
LLC(Logical Link Control) 하위 계층
LLC 하위 계층은 데이터 링크 계층과 네트워크 계층 간 인터페이스를 제공합니다.
프로토콜 다중화: 여러 프로토콜 간 데이터를 구분합니다.
오류 검출: 데이터 손실 및 손상을 확인합니다.
이더넷 프레임의 구조
프리앰블(Preamble): 송수신 간 동기화를 위한 8바이트 크기의 정보입니다.
-
첫 7바이트: 10101010
-
마지막 바이트: 10101011
수신지 MAC 주소: 데이터를 받을 장치의 고유 MAC 주소(6바이트)입니다.
송신지 MAC 주소: 데이터를 보내는 장치의 고유 MAC 주소(6바이트)입니다.
타입/길이(Type/Length) 필드: 상위 계층 프로토콜 타입 또는 데이터 길이를 나타냅니다.
데이터: 상위 계층에서 전달받은 데이터이며, 최소 46바이트 이상이어야 합니다.
부족할 경우 패딩으로 채웁니다.
FCS(Frame Check Sequence): CRC(Cyclic Redundancy Check) 값을 포함하며, 오류 검출을 위해 사용됩니다.
데이터 링크 계층에서의 오류 검출
CRC(Cyclic Redundancy Check): 프레임 끝에 추가되는 FCS 필드에 포함된 값으로, 데이터 무결성을 확인합니다.
ACK(응답 프레임): 수신 측에서 송신 측으로 데이터 수신 상태를 알리는 방식입니다.