새소식

Computer Science/Network

데이터 링크 계층 : LAN에서 데이터 전송하기

  • -

 

본 게시물은 ‘미즈구치 카츠야(저), 이승룡(역), ⌜모두의 네트워크⌟, 길벗, 2018’ 을 인용하였습니다.

 

1. 데이터 링크 계층의 역할과 이더넷

데이터 링크 계층

  • 네트워크 장비 간의 신호를 주고받는 규칙을 정하는 계층
    • 일반적으로 가장 많이 사용되는 규칙 : 이더넷(Ethernet) 
    • LAN에서 데이터를 정상적으로 주고받기 위해 필요

이더넷(Ethernet)

  • 허브 같은 장비에 연결된 컴퓨터와 데이터를 주고받을 때 사용
    • 허브 : 약하거나 파형이 뭉그러진 전기 신호를 복원시키고 해당 전기 신호를 받은 포트 제외 모든 포트에 전달(더미 허브)
  • 데이터에 목적지 정보를 추가해 목적지 외의 컴퓨터는 데이터를 받더라도 무시하게 됨
    • 허브같이 모든 포트에 데이터를 전달하는 것X
  • 컴퓨터 여러 대가 동시에 데이터를 보내면 데이터가 서로 부딪히는 현상인 '충돌(collision)' 발생X
    • 데이터가 동시에 데이터를 지나가면 충돌할 수 밖에 없으니, 데이터를 보내는 시점을 늦춰야 함
      • 이더넷에서 데이터를 보내는 시점을 늦추는 방법 : CSMA/CD(Carrier Sense Multiple Access with Collision Detection(반송파 감지 다중 접속 및 충돌 탐지)
        • CS : '데이터를 보내려고 하는 컴퓨터가 케이블에 신호가 흐르고 있는지 아닌지 확인한다'는 규칙
        • MA : '케이블에 데이터가 흐르고 있지 않다면, 데이터를 보내도 좋다'는 규칙
        • CD : '충돌이 발생하고 있는지 확인한다'는 규칙

CSMA/CD

  • cf. 요즘에는 효율이 좋지 않아 CSMA/CD를 거의 사용하지 않고, 스위치(switch)라는 네트워크 장비를 사용해 충돌을 방지함

 

 

 

2. MAC 주소의 구조

MAC 주소

Media Access Control Address(물리 주소)

  • 랜카드 : 비트열(0, 1) -> 전기 신호로 변환
  • 랜카드에는 'MAC 주소'라는 번호가 정해져 있음
    • 제조할 때 새겨져 '물리 주소'라고도 불리며, 전 세계에서 유일한 번호로 할당됨
  • 48비트 숫자로 구성되고 앞 24비트는 랜 카드를 만든 제조사 번호, 뒤 24비트는 제조사가 랜카드에 붙인 일련번호

MAC 주소 규칙

 

MAC 주소를 사용한 통신

  • OSI 모델, TCP/IP 모델에서는 각 계층에 헤더를 붙임
  • OSI 모델에서는 데이터 링크 계층, TCP/IP 모델에서는 네트워크 계층에 해당
    • 이 계층에서 이더넷 헤더&트레일러를 붙임
  • 이더넷 헤더 구조 : 목적지 MAC 주소(6바이트), 출발지 MAC 주소(6바이트), 유형(2바이트). 총 14바이트 구성

 

  • 이더넷 유형(Ethernet type) : 이더넷으로 전송되는 상위 계층 프로토콜의 종류를 나타내며 프로토콜을 식별하는 16진수 번호가 들어감
  • 트레일러 : 이더넷 헤더 외에 데이터 뒤에 추가하는 것
    • FCS(Frame Check Sequence)라고도 함
    • 데이터 전송 도중 오류가 발생하는지 확인 용도로 사용
  • 프레임 : 이더넷 헤더&트레일러가 추가된 데이터
    • 네트워크를 통해 프레임이 전송됨

▶ 예시. 허브에 연결된 컴퓨터의 MAC 주소 : 컴퓨터 1->3으로 데이터 전송

  • 컴퓨터 1은 이더넷 헤더에 데이터의 목적지인 컴퓨터 3의 MAC 주소(목적지 MAC 주소)&자신의 MAC 주소(출발지 MAC 주소) 정보 넣고 데이터 전송

  • 데이터 링크 계층에서 데이터에 이더넷 헤더&트레일러 추가해 프레임 만듦
    물리 계층에서 해당 프레임 비트열 -> 전기 신호로 변환해 네트워크 통해 전송
  • 허브는 컴퓨터 1이 보낸 데이터를 포트로 수신하고 다른 모든 포트에도 데이터를 전송함
    • 컴퓨터 2, 4, 5는 목적지 MAC 주소가 자신의 MAC 주소와 다름 -> 데이터 파기
    • 컴퓨터 3은 자신의 MAC 주소가 컴퓨터 1이 보낸 데이터의 목적지 MAC 주소와 같아 데이터를 수신
  • 컴퓨터 3의 물리 계층에서 전기 신호로 전송된 데이터 -> 비트열로 변환해 데이터 링크 계층에서 이더넷 헤더&트레일러 분리 => 역캡슐화
    • 역캡슐화 후 데이터 수신

 

 

 

3. 스위치 구조

스위치(Switch)

  • 데이터 링크 계층에서 동작
  • '레이어 2 스위치' 혹은 '스위칭 허브'라고도 불림
  • 외형은 허브와 비슷

MAC 주소 테이블

  • 스위치 내부에 MAC 주소 테이블이 있음
  • 스위치의 포트 번호, 해당 포트에 연결되는 컴퓨터의 MAC 주소가 등록되는 데이터베이스
  • 스위치 전원을 켠 상태에서는 MAC 주소 테이블에 아무것도 등록되어있지 않음
  • MAC 주소 학습 기능
    • 컴퓨터에서 목적지 MAC 주소가 추가된 '프레임' 데이터 전송됨
    • MAC 주소 테이블을 확인
    • 출발지 MAC 주소 등록X ->  MAC 주소&포트 함께 등록

  • 목적지 MAC 주소가 MAC 주소 테이블에 등록되지 않아 '플러딩(Flooding)' 발생
    • 송신 포트 외의 모든 포트에 데이터(프레임) 전송되는 현상

  • 스위치의 MAC 주소 테이블에 목적지 MAC 주소가 등록되어 있었다면? : MAC 주소 필터링
    • MAC 주소 기준 목적지를 선택하는 것 -> 불필요한 데이터를 네트워크에 전송하지 않게 됨
    • 수신하고자 하는 포트에만 데이터 전송됨(다른 모든 포트에 전송X)

 

 

 

3. 데이터가 케이블에서 충돌하지 않는 구조

전이중 통신

  • 데이터 송수신을 동시에 통신하는 방식
  • 데이터 동시 전송 시 충돌X
  • 컴퓨터 1, 2를 직접 LAN 케이블로 연결 시 선 4쌍 사용

  • 스위치는 충돌이 일어나지 않아, 전이중 통신 방식으로 데이터 주고받음
    • 허브 사용 시 충돌 생겨 최근 네트워크는 스위치 사용

  • 스위치는 송/수신이 동시에 가능해 효율 높음

 

반이중 통신

  • 허브를 사용해 회선 하나로 송신/수신을 번갈아가며 통신하는 방식

  • 데이터 동시 전송 시 충돌O

 

충돌 도메인(collision domain)

충돌 발생 시 영향 미치는 범위

  • 허브는 반이중 통신 방식으로 동시에 데이터를 전송하며 충돌을 발생시킴
  • 허브는 연결되어 있는 컴퓨터 전체가 하나의 충돌 도메인
    • 허브는 충돌의 영향이 모든 컴퓨터에 미침

  • 충돌 도메인 범위가 넓을수록 네트워크가 지연됨
  • 스위치는 데이터를 동시에 송수신할 수 있는 전이중 통신 방식이므로 충돌X, 충돌 도메인 범위도 좁음

 

 

 

cf. ARP(Address Resolution Protocol)

  • 컴퓨터 IP 주소를 이용해 MAC 주소를 찾기 위한 프로토콜
  • 이더넷 프레임 전송을 위해 목적지 컴퓨터의 MAC 주소 지정해야 함
    • 출발지 컴퓨터가 목적지 주소 모르면, MAC 주소를 알아내기 위해 네트워크에 Broadcast 함 : ARP 요청(ARP Request)
  • ARP 요청에 대해 지정된 IP 주소를 갖지 않는 컴퓨터는 응답X,
    지정된 IP 갖는 컴퓨터는 MAC 주소를 응답으로 보냄 : ARP 응답(ARP Reply)
  • ARP 응답으로 출발지 컴퓨터는 MAC 주소 얻어 이더넷 프레임을 만들 수 있음
  • 출발지 컴퓨터에서 MAC 주소 얻은 후 MAC 주소&IP 주소 매핑 정보를 메모리에 보관함 : ARP 테이블(table)
    • 이후의 데이터 통신은 자신의 컴퓨터에 보관된 ARP 테이블을 참고해 전송
  • 그러나 IP 주소가 변경되면 MAC 주소도 함께 변경되어 통신X
  • ARP 테이블에서 보존 기간을 ARP 캐시로 지정하고 일정 시간이 지나면 삭제하고 다시 ARP 요청 수행
  • 윈도우의 ARP 캐시 확인 : arp -a
    윈도우의 ARP 캐시 강제 삭제 : arp -d

 

 

 

4. 이더넷 종류&특징 : 이더넷 규격

  • 이더넷은 케이블 종류, 통신 속도따라 다양한 규격으로 분류됨
  • 주요 이더넷 규격
규격 이름 통신 속도 케이블 케이블 최대 길이 표준화 연도
10BASE5 10Mbps 동축 케이블 500m 1982'
10BASE2 10Mbps 동축 케이블 185m 1988'
10BASE-T 10Mbps UTP케이블(Cat3 이상) 100m 1990'
100BASE-T 100Mbps UTP케이블(Cat5 이상) 100m 1995'
1000BASE-T 1000Mbps UTP케이블(Cat5 이상) 100m 1999'
10GBASE-T 10Gbps UTP케이블(Cat6 이상) 100m 2006'

 

▶ 예시. 주요 이더넷 규격 : 10BASE-T

  • 첫 번째 단위 : 통신 속도
  • 두 번째 단위 : 전송 방식
  • 세 번째 단위 : 케이블 종류
  • 전송 방식 바로 다음 바로 숫자 혹은 하이픈 뒤 알파벳의 차이
    • 하이픈(-) 뒤 : 케이블 길이, 케이블 종류 나타냄
      • 동축 케이블은 케이블의 최대 길이를 100m 단위로 표시
        • 10BASE5는 케이블 최대 길이 500m이므로 5로 표시됨
      • UTP 케이블은 케이블 종류 표시
        • 10BASE-T는 UTP 케이블
  • 최근 LAN 포트는 1000BASE-T가 일반적, 10GBASE-T도 많아짐

 

 

 

내용 정리

  • 이더넷 : LAN에서 데이터를 정상으로 주고받기 위한 규칙. 데이터 충돌을 막기 위한 규칙으로 CSMA/CD 방식을 사용함
  • CSMA/CD에서 CS는 데이터를 보내려고 하는 컴퓨터가 케이블에 신호가 흐르고 있는지 확인하는 규칙, MA는 케이블에 데이터가 흐르고 있지 않다면 데이터를 보내도 된다는 규칙, CD는 충돌이 발생하고 있는지 확인하는 규칙
  • MAC 주소 : 48비트 숫자 구성. 앞 24비트는 랜 카드 제조사 번호, 뒤 24비트는 제조사가 랜카드에 붙인 일련번호
  • 이더넷 헤더 : 목적지 MAC 주소(6바이트), 출발지 MAC 주소(6바이트), 유형(2바이트)로 총 14바이트 구성
  • 데이터 링크 계층에서 데이터 뒤에 추가하는 것을 '트레일러'라고 함
  • 스위치 : 데이터 링크 계층에서 동작하고 레이어 2 스위치, 스위칭 허브라고도 함
  • 스위치에 MAC 주소 테이블이 있고 스위치의 포트 번호와 그 포트에 연결되어 있는 컴퓨터의 MAC 주소가 등록되는 데이터베이스임
  • 플러딩(Flooding) : 스위치가 수신 포트 외의 모든 포트에서 데이터를 송신하는 것
  • MAC 주소 필터링 : 스위치에서 MAC 주소 기준으로 출발지를 선택하는 것
  • 전이중 통신 : 데이터 송/수신을 동시에 수행하는 통신 방식
  • 반이중 통신 : 회선 한 개로 송/수신을 번갈아가며 수행하는 통신 방식
  • 충돌 도메인 : 데이터 충돌이 발생하고 그 충돌이 영향을 미치는 범위
  • 주요 이더넷 규격 : 10BASE5, 10BASE2, 10BASE-T, 100BASE-TX, 1000BASE-T, 10GBASE-T

 

 

 

용어 정리

  • 데이터 링크 계층(Data link Layer) : 네트워크 기기 간이 데이터 전송, 물리 주소 결정
  • 이더넷(Ethernet) : 컴퓨터 네트워크 기술 중 하나로 전 세계 사무실, 가정에서 일반적으로 사용되는 LAN에서 가장 많이 활용되는 기술 규격
  • 충돌(collision) : 데이터를 한 번에 하나만 전송할 수 있는 채널에 전송 장치 2개가 같은 시점에 패킷을 보낼 때 일어나는 데이터 충돌
  • MAC 주소(Medium Access Control address) : LAN에 사용되는 네트워크 모델인 Ethernet의 물리적인 주소로 컴퓨터 네트워크에서 각각의 기기 구분을 위해 사용하는 주소
  • 스위치(switch, 스위칭 허브) : LAN 구성 시 사용하는 단말기 간 스위칭 기능이 있는 통신망 중계 장치로 컴퓨터(호스트)에서 특정한 다른 단말기로 패킷을 보낼 수 있는 기능이 있어 통신 효율이 향상됨
  • 전이중 통신 방식(full-duplex communication) : 전화 회선 같이 송/수신이 양쪽에서 동시에 이루어지는 양방향 통신으로 서로 다른 회선이나 주파수를 이용해 데이터 신호가 충돌되는 상황을 방지함. 스위칭 허브 사용 시 랜카드와 허브 간의 동시 송수신O
  • ARP(Address Resolution Protocol, 주소 변환 프로토콜) : 네트워크 계층 주소와 데이터 링크 계층 주소 사이의 변환 담당 프로토콜로 IP 주소를 물리 주소인 MAC 주소로 변환하는 데 사용
  • ARP 캐시(ARP Cache) : 가장 최근 변환한 'IP 대 하드웨어 주소'를 보관하는 RAM의 한 영역
  • ARP 요청 : IP 주소를 대치할 수 있는 물리 주소인 MAC 주소를 찾아내기 위해 보내는 Broadcast 패킷 요청
  • ARP 응답 : ARP 요청에 대한 응답으로 요청한 IP 주소 대한 물리 주소인 MAC 주소가 실려 있음
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.