[12] 데이터 링크 계층의 역할과 이더넷
이번에는 데이터 링크 계층의 역할과
이더넷에 대하여 알아보겠습니다.
랜에서 데이터를 주고받으려면
데이터 링크 계층의 기술이 필요합니다.
데이터 링크 계층은
네트워크 장비 간에 신호를 주고받는 규칙을 정하는 계층으로,
랜에서 데이터를 정상적으로 주고받기 위해 피요한 계층입니다.
그 규칙들 중 일반적으로 가장 많이 사용되는 규칙이 이더넷 (Ethernet) 입니다.
이더넷은 랜에서 적용되는 규칙입니다.
이더넷은 허브와 같은 장비에 연결된 컴퓨터와 데이터를 주고 받을 때 사용합니다.
허브를 사용하는 랜 환경에서는
특정한 컴퓨터 한 대에 데이터를 보내려고 해도
다른 모든 컴퓨터에 전기 신호가 전달이 됩니다.
특정 컴퓨터에만 데이터를 보내는데,
관계없는 다른 컴퓨터들이 그 데이터를 받아 내용을 볼 수 있다면 싫지 않을까요?
이런 경우를 위해 데이터의 내용을 못보게 하는 확실한 규칙이 정해져 있습니다.
그 규칙에 따라 보내려는 데이터에 목적지 정보를 추가해서 보내고
목적지 이외의 컴퓨터는 데이터를 받더라도 무시하게 되어있습니다.
허브는 들어온 데이터를 그대로 모든 포트에 보내기만 해서
더미 허브로 불립니다.
그래서 컴퓨터 여러 대가 동시에 데이터를 보내면
데이터들이 서로 부딪힐 수도 있는데
이것을 충돌 (collision) 이라고 합니다.
데이터가 충돌하는 사고는 피하고 싶겠죠?
그래서 이더넷은 여러 컴퓨터가 동시에 데이터를 전송해도
충돌이 일어나지 않는 구조로 되어 있습니다.
예를 들어 아래 그림과 같이
데이터가 동시에 케이블을 지나면 충돌을 할 수 밖에 없습니다.
그래서 데이터를 보내는 시점을 늦춥니다.
이처럼 이더넷에서 시점을 늦추는 방법을 CSMA/CD 라고 합니다.
CSMA/CD란?
Carrier Sense Multiple Access with Collision Detection
(반송파 감지 다중 접속 및 충돌 탐지) 의 약어
CSMA에서 CS는
'데이터를 보내려고 하는 컴퓨터가
케이블에 신호가 흐르고 있는지 아닌지를 확인한다'는 규칙입니다.
MA는
'케이블에 데이터가 흐르고 있지 않다면
데이터를 보내도 좋다' 는 규칙입니다.
마지막으로 CD는
'충돌이 발생하고 있는지를 확인한다' 는 규칙입니다.
이러한 규칙으로 데이터를 주고받으면
아래 그림처럼 데이터 충돌이 일어나지 않습니다.
사실 지금은 효율이 좋지 않다는 이유로
CSMA/CD는 거의 사용하지 않습니다.
그렇다고 매번 충돌하는 것은 아니지만
스위치 (switch) 라는 네트워크 장비를 사용하면
충돌이 일어나지 않습니다.