데이터 링크 계층
랜에서 데이터를 주고받기 위해 필요
네트워크 장비 간 신호를 주고받는 규칙을 정하는 계층
이더넷
데이터 링크 계층에서 가장 많이 사용되는 네트워크 신호 규칙
랜에서 적용됨
허브와 같은 장비에 연결된 컴퓨터와 데이터를 주고받을 때 사용
허브를 통해 컴퓨터 간 통신 시 목적지 정보를 포함시켜 모든 포트가 아닌 특정 컴퓨터로 데이터를 전송하도록 도움
여러 컴퓨터가 동시에 허브를 통해 데이터 전송 시 충돌
이 발생할 수 있는데, 데이터를 보내는 시점을 달리하여 충돌을 방지하도록 함
위와 같이 충돌을 방지하는 이더넷의 전략을 CSMA/CD
라고도 함
CSMA/CD
Carrier Sense Multiple Access with Collision Detection
CS: 데이터를 보내려고 하는 컴퓨터가 케이블에 전류가 흐르고 있는지 확인한다는 규칙
MA: 케이블에 데이터가 흐르고 있지 않다면 데이터를 보내도 좋다는 규칙
CD: 충돌이 발생하고 있는지를 확인한다는 규칙
요즘애는 효율이 좋지 않아 사용하지 않고, 스위치
를 사용하여 충돌을 방지함
MAC 주소
Media Access Control Address
랜 카드마다 할당된 번호
전 세계에서 유일한 번호로 할당된 물리 주소
48비트의 숫자로 구성되어 있으며, 앞쪽 24비트는 제조사 번호, 뒤쪽 24비트는 일련번호로 사용됨
MAC 주소를 사용한 통신
데이터 링크 계층에서는 이더넷 헤더
와 트레일러
를 붙인다
이더넷 헤더 구성 (14바이트)
목적지 MAC 주소 (6바이트)
출발지 MAC 주소 (6바이트)
유형 (2바이트) - 이더넷으로 전송되는 상위 계층 프로토콜의 종류를 나타냄
트레일러
FCS(Frame Check Sequence) 라고도 불림
데이터 전송 도중에 오류가 발생하는지 확인하는 용도
데이터에 이더넷 헤더와 트레일러를 붙이는 과정이 캡슐화
, 붙여져 만들어진 데이터를 프레임
이라 한다.
이후 프레임 비트열을 물리 계층에서 전기 신호로 변환하여 네트워크를 통해 전송
허브에서는?
캡슐화하여 전기신호로 변환된 데이터를 모든 포트에 연결된 컴퓨터로 전송한다.
수신한 컴퓨터는 데이터 링크 계층에서 역캡슐화를 통해 도착지 MAC 주소를 확인한다.
자신의 랜 카드에 적힌 MAC 주소와 비교하여
같지 않다면 데이터를 파기한다.
같다면 수신한다.
스위치
데이터 링크 계층에서 동작함
레이어 2 스위치 또는 스위칭 허브 라고도 불림
내부에 MAC 주소 테이블을 가지고 있음
MAC 주소 테이블
스위치의 포트 번호와 해당 포트에 연결되어 있는 컴퓨터의 MAC 주소를 저장하는 데이터베이스, 브리지 테이블이라고도 함
스위치의 전원을 켜면 비어있는 상태
이후 프레임을 전송할 때, 이더넷 헤더에 있는 출발지 MAC 주소를 보고 테이블에 존재하지 않는다면 포트와 매핑하여 추가함(MAC 주소 학습 기능)
목적지 MAC 주소를 보고 테이블에 존재하지 않는다면 송신 포트를 제외한 모든 포트로 프레임을 전송함(플러딩), 이후 송신 컴퓨터에서 목적지 MAC 주소가 맞다면 다시 스위치로 reply 를 보내 목적지 포트와 MAC 주소를 테이블에 추가함(MAC 주소 학습 기능)
목적지 MAC 주소를 보고 테이블에 존재한다면, 다른 포트로 프레임을 전송하지 않고 목적지 포트에만 전송함(MAC 주소 필터링)
통신 방식에는 전이중 통신 방식
과 반이중 통신 방식
이 있다.
전이중 통신 방식
데이터의 송수신을 동시에 통신하는 방식
동시 통신이 가능하므로 데이터 충돌이 일어나지 않는다.
ex. 랜 케이블, 스위치
반이중 통신 방식
회선 하나로 송신과 수신을 번갈아가면서 통신하는 방식
동시에 통신하려하면 데이터 충돌이 발생한다.
ex. 허브
충돌 도메인
반이중 통신 방식에서 동시에 데이터를 보내 충돌이 발생할 때, 그 영향이 미치는 범위
허브는 연결된 컴퓨터 전체가 충돌 도메인이 된다.
스위치는 각 컴퓨터 하나하나가 충돌 도메인이 된다.
충돌 도메인의 범위가 넓을수록 네트워크가 지연된다.
동시 통신이 가능하며, 이더넷 헤더를 통해 효율적인 네트워크 통신이 가능하고, 충돌 도메인이 좁은 스위치가 허브를 대체하고 있다.
추가.
ARP
Address Resolution Protocol
목적지 컴퓨터의 IP 주소를 이용해 MAC 주소를 찾기 위한 프로토콜
목적지 컴퓨터의 MAC 주소를 알아야만 이더넷 프레임을 전송할 수 있다. 따라서, 모를 경우 목적지 컴퓨터에 MAC 주소를 알려달라는 요청을 네트워크에 브로드캐스트 하는데 이것을 ARP요청
이라 한다.
지정된 IP 주소를 가진 컴퓨터는 MAC 주소를 응답으로 보내는 데 이것을 ARP응답
이라 한다.
이후 가져온 MAC 주소를 IP 주소와 매핑하여 메모리에 저장하는 데 이것을 ARP테이블
이라 한다.
이후 데이터 통신 시, ARP테이블을 참고하여 바로 프레임으로 전송되거나 없을 경우 ARP 요청하는 방식으로 통신함
그러나, IP 주소 변경 시 MAC 주소도 함께 변경되므로 제대로 통신할 수 없음. 따라서, 보존 기간을 ARP 캐시로 지정하고 일정 시간이 지나면 삭제하고 다시 ARP 요청함
이더넷 규격
이더넷은 케이블 종류나 통신 속도에 따라 다양한 규격으로 분류됨
ex) 10BASE5, 10BASE-T, 100BASE-TX, 10GBASE-T
앞의 숫자는 통신 속도로, 10이면 10Mbps를 뜻함
중간의 BASE 는 BASEBAND(펄스 신호를 통한 디지털 전송 방식) 이라는 전송 방식을 뜻함
마지막의 숫자, T, X 는 케이블 길이나 종류를 의미함
숫자는 동축 케이블에서 사용하며, 케이블의 최대 길이를 의미함. 5는 최대 길이 500M 를 의미
영어는 랜 케이블에서 사용하며, T는 UTP 케이블을 의미함
1000BASE-T 가 가장많이 사용되는 이더넷 규격임