[Network] Chapter 4. 데이터 링크 계층 : LAN에서 데이터 전송하기
Table of Contents
모두의 네트워크 책을 읽고 공부한 노트입니다.
데이터 링크 계층의 역할과 이더넷 #
- 데이터 링크 계층
- 랜에서 네트워크 기기 간에 신호를 전송하고, 물리주소를 결정하는 계층이다.
- 신호를 전송하기 위해 가장 많이 사용되는 규칙이 이더넷이다.
- 이더넷(Ethernet)
- 같은 네트워크 안에서 컴퓨터 및 기타 장치를 네트워크에 연결하기 위해 개발된 통신 표준이다.
- 허브와 달리, 데이터에 목적지 정보를 추가해서 목적지 이외의 컴퓨터는 데이터를 받더라도 무시하게 되어 있다.
- 이더넷은 충돌을 방지하기 위해 여러 컴퓨터가 동시에 데이터를 전송하면 시점을 늦춘다. 이것을 CSMA/CD 라고 한다.
- 하지만 지금은 효율이 좋지 않아서 사용하지 않고, 스위치(switch)를 사용한다.
- 충돌(collision)
- 컴퓨터 여러 대가 동시에 데이터를 보내서 데이터들이 서로 부딪히는 것이다.
- CSMA/CD
- Carrier Sense (CS)
- 데이터를 보내려고 하는 컴퓨터가 케이블에 신호가 흐르고 있는지 아닌지를 확인한다는 규칙이다.
- Multiple Acess (MA)
- 케이블에 데이터가 흐르고 있지 않다면 데이터를 보내도 좋다는 규칙이다.
- with Collision Detection (CD)
- 충돌이 발생하고 있는지를 확인한다는 규칙이다.
- Carrier Sense (CS)
MAC 주소의 구조 #
- 데이터 링크 계층에서는 이더넷 헤더와 트레일러을 붙인다.
- 이 두 가지가 추가된 데이터를 프레임이라고 한다.
- 이더넷 헤더(Ethernet Header) (총 14 bytes)
- 6 bytes
- 목적지의 MAC 주소
- 6 bytes
- 출발지의 MAC 주소
- 2 bytes
- 유형 (상위 계층 프로토콜 종류를 식별하는 16진수 번호)
- 6 bytes
- 트레일러(Trailer)
- FCS(Frame Check Sequence)라고도 한다.
- 데이터 전송 도중에 오류가 발생하는지 확인하는 용도로 사용한다.
- MAC(Medium Access Control) 주소
- 이더넷의 물리적인 주소로써, 네트워크에서 기기를 구분하기 위해 사용하는 주소이다.
- 랜 카드에 48bit의 숫자가 부여되어 있다.
- 물리 주소라고도 부르며, 전 세계에서 유일한 번호이다.
위치 의미 앞쪽 24bit 랜 카드를 만든 제조사의 번호 뒤쪽 24bit 제조사가 랜 카드에 붙인 일렬번호
- 보내는 측의 컴퓨터에서
- 데이터 링크 계층에서 이더넷 헤더와 트레일러를 추가해서 프레임을 만든다. (캡슐화)
- 그러면 물리 계층에서 이 프레임 비트열을 전기 신호로 변환해서 네트워크를 통해 전송한다.
- 허브는 연결된 모든 포트로 데이터를 전송한다.
- 이때 연결된 각각의 컴퓨터는 목적지의 MAC 주소가 자신의 MAC 주소와 다르면 데이터를 파기한다.
- 만약에 동시에 여러 대의 컴퓨터가 동일한 목적지로 데이터를 전송하면?
- 충돌을 방지하기 위해서 CSMA/CD 방식을 사용한다.
- 받는 측의 컴퓨터에서
- 목적지의 MAC 주소가 자신의 MAC 주소와 같다면 데이터를 수신한다.
- 물리 계층에서 전기 신호를 비트열로 변환하고,
- 데이터 링크 계층에서 이더넷 헤더와 트레일러를 분리한다. (역캡슐화)
스위치의 구조 #
- 스위치(switch)
- 레이어 2 스위치, 스위칭 허브라고도 불린다.
- 허브와 마찬가지로 여러 기기를 하나로 연결하는 장치이다. 다른 점은 원하는 목적지에만 신호를 보낸다는 것이다.
- 그러기 위해서, 내부에 MAC 주소 테이블을 가지고 있다.
- 스위치의 포트 번호, 스위의 포트에 연결되어 있는 컴퓨터의 MAC 주소가 등록되어 있는 데이터베이스이다.
- 처음에는 아무것도 등록되어 있지 않지만, 프레임이 전송되면 등록된다. (MAC 주소 학습 기능)
- 처음에는 아무것도 등록되어 있지 않아서, 특정 컴퓨터 목적지로 데이터를 전송해도 모든 컴퓨터에 데이터가 전송된다. 이것을 플러딩(flooding) 이라고 한다.
- 이 후 등록되면 목적지인 컴퓨터에만 데이터가 전송된다. 이처럼 MAC 주소를 기준으로 목적지를 선택하는 것을 MAC 주소 필터링이라고 한다.
데이터가 케이블에서 충돌하지 않는 구조 #
- 통신 방식
방식 설명 동시 전송 시 예시 반이중 통식 방식 데이터 송신과 수신을 번갈아가면서 통신하는 방식 충돌 발생 O 허브 전이중 통식 방식 데이터 송수신을 동시에 통신하는 방식 충돌 발생 X 스위치 - 스위치는 전이중 통신 방식을 사용하기 때문에 네트워크 업체 대부분이 허브 대신 스위치를 사용한다.
- 충돌 도메인(collision domain)
- 충돌이 발생할 때 그 영향이 미치는 범위이다.
- 허브는 접속되어 있는 모든 컴퓨터가 충돌 도메인이 된다.
- 스위치는 충돌 도메인이 좁으므로 네트워크가 지연되지 않는다.
- ARP(Address Resolution Protocol)
- 네트워크 계층과 데이터 링크 계층 주소 사이의 변환을 담당한다.
- 목적지 컴퓨터의 IP주소를 이용해서 MAC 주소를 찾기위한 프로토콜이다.
- 출발지 컴퓨터는 목적지 컴퓨터의 MAC 주소를 프레임에 담아야 한다.
- 이걸 모르면, 네트워크에 브로드캐스트 한다.(ARP 요청)
- 그러면 지정된 IP주소를 갖은 컴퓨터는 MAC 주소를 응답으로 보낸다.(ARP 응답)
- 출발지 컴퓨터는 얻은 MAC 주소와 IP 주소의 매핑 정보를 메모리에 보관한다. (ARP 테이블)
- 일정 시간이 지나면 ARP 캐시를 삭제하고 다시 ARP 요청을 한다.
이더넷의 종류와 특징 #
- 이더넷은 케이블 종류나 통신 속도에 따라 다양한 규격으로 분류된다.
- 규격 예시:
10BASE5
,10BASE-T
10
- Mbps 단위인 통신 속도이다.
BASE
- BASEBAND라는 전송 방식을 나타낸다.
5
- 동축케이블의 경우 케이블의 최대 길이를 나타낸 것이다.
_T
- UTP 케이블의 경우 그 종류를 나타낸다.