데이터 링크 계층 개요

네트워크 장치 간 데이터를 전송하는 기능과 절차를 제공하는 계층.
물리적 주소 설정과 동시에 흐름 제어와 에러 제어 등의 역할을 함.
대표 기기로는 스위치가 있고, 주요 프로토콜은 이더넷과 CSMMA/CD가 있음.
2개의 부계층으로 나누는데 LLC(Logical link control)과 MAC(Media Access Control)로 나뉨.

LLC는 논리적 연결 제어로 데이터 링크 계층의 기본 기능을 다루는 계층.
MAC은 물리 계층과 직접적으로 관련이 있는 프로토콜이 여기에 속함. ex) 이더넷, 토큰링, 토큰버스

 

이더넷(Ethernet)

데이터를 전송하는 프로토콜, 네트워크를 구성하는 기술 방식.
IEEE 802 위원회에서 표준으로 지정, ISO에서 국제 표준으로 지정.
유선 네트워크를 만들 수 있어서 일반적으로 LAN에서 많이 활용되는 기술 규격.
초기 이더넷 규격은 버스형이어서 CSMA/CD 기술 사용.

이더넷도 기존 네트워크 속도보다 더 신속하게 통신할 수 있도록 발전되었음.
- Standard Ethernet : 10Mbps
- Fast Ethernet : 100Mbps
- Gigabit Ethernet : 1 Gbps / 기존 이더넷과 호환 / 스타형 네트워크 토폴로지 이용
- Ten-Gigabit Ethernet : 10Gbps

 

이더넷 프레임, 이더넷 헤더

데이터링크 계층에서 캡슐화를 진행하면서 이더넷 헤더와 트레일러 붙임.
트레일러는 FCS(Frame Check Sequence)라고도 불리는데, 오류가 발생하는지 체크하는 용도로 사용.
이더넷 헤더와 트레일러를 붙이면서 캡슐화 된 데이터를 프레임이라고 부름.

프레임을 주고받는 과정에서 이더넷 헤더 속의 출발지 MAC 주소, 도착지 MAC 주소를 참조하는 과정 일어남.
자주 사용하는 이더넷 헤더의 타입들은 IPv4, IPv6, ARP로 이 타입들은 상위 계층의 프로토콜 종류를 구분해줌.

 

MAC 주소

이더넷에서 인터페이스를 특정하기 위한 48비트의 물리적인 주소(하드웨어적인 주소)로 16진수로 표기.
이 주소가 제조할 때 새겨지는 전 세계에서 유일한 번호.

스위치가 동작하는 과정에서 MAC주소에 관한 정보를 저장하는 MAC주소 테이블 이용.

 

스위치

연결된 장치의 물리적인 주소를 구분해서 해당 주소가 있는 장치로 데이터를 보내주는 장비.
스위치를 통해 각 장치를 연결함으로써 하나의 네트워크 구성 가능.
데이터를 전송하는 과정에서 MAC주소 테이블 이용하기 때문에 속도 저하도 잘 일어나지 않는다는 장점.

- 플러딩: 전송받은 데이터를 제외한 다른 모든 포트로 데이터 전송하는 것.
- 필터링: 데이터의 도착지 MAC주소와 MAC주소 테이블의 주소와 비교한 후 일치하지 않으면 전송 x
- 포워딩: MAC주소 테이블과 비교해서 일치하면 해당 포트로 전송.

 

반이중 통신, 전이중 통신

반이중 통신: 데이터의 송수신을 번갈아가면서 하는 방식으로 초기 이더넷이 이 방식 사용.
데이터 송수신이 동시에 일어나는 것이 불가(동시 송수신 시 충돌 발생)
전이중 통신: 데이터의 송수신을 동시에 하는 방식으로 현재 이더넷 사용 방식.

 

CSMA/CD(Carrier-sense multiple access with collision detection)

이름을 직관적으로 풀이해 보자면 CS는 반송파 감지, MA는 다중 접속, CD는 충돌 탐지.
IEEE 802.3의 표준이며 유선 이더넷 랜에서 사용.
처음에는 케이블이 사용 중인지 감지하고 케이블에 트래픽이 없다면 한 컴퓨터에서는 데이터를 전송.
충돌이 감지되지 않는다면 정상 데이터 전송 완료.
만약 충돌이 감지될 경우라면?????
→ 충돌이 감지된 즉시 데이터 전송을 중지하고 각 컴퓨터에서는 랜덤 대기 시간이 설정되어 기다린 후 데이터 전송.
재충돌을 방지하기 위해 서로 다른 컴퓨터는 다른 랜덤 대기 시간으로 설정.

'DevOps&Infra > Network' 카테고리의 다른 글

전송 계층  (0) 2023.07.16
네트워크 계층  (0) 2023.07.02
물리 계층  (0) 2023.03.25
네트워크 개요  (1) 2023.01.28
HTTP 웹 기본 지식_캐시와 조건부 요청  (0) 2022.03.24