네트워크/책 <모두의 네트워크>

4장 | 데이터 링크 계층 : 랜에서 데이터 전송하기

제주니어 2023. 1. 12. 19:36

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

LESSON 12 - 데이터 링크 계층의 역할과 이더넷

데이터 링크 계층 (data link layer)
  • 네트워크 기기 간에 데이터를 전송하고 물리 주소를 결정한다.
  • 네트워크 장비 간에 신호를 주고받는 규칙을 정하는 계층으로, 랜에서 데이터를 정상적으로 주고받기 위해 필요한 계층이다.
이더넷 (Ethernet)
  • 컴퓨터 네트워크 기술 중 하나로 전 세계의 사무실이나 가정에서 일반적으로 사용되는 랜에서 가장 많이 활용되는 기술 규격이다.
  • 즉, 랜에서 데이터를 정상으로 주고받기 위한 규칙이다.
  • 허브와 같은 장비에 연결된 컴퓨터와 데이터를 주고받을 때 사용한다.
  • 여러 컴퓨터가 동시에 데이터를 전송해도 충돌이 일어나지 않도록 데이터를 보내는 시점을 늦추는 구조로 되어있다.
  • 충돌 (collision)
    • 컴퓨터 여러 대가 동시에 데이터를 보낼 때 데이터들이 부딪히는 것을 말한다.
  • 이더넷에서 시점을 늦추는 방법을 CSMA/CD라고 한다.
    • CSMA/CD (Carrier Sense Multiple Access with Collision Detection, 반송파 감지 다중 접속 및 충돌 탐지)
      • CS - 데이터를 보내려고 하는 컴퓨터가 케이블에 신호가 흐르고 있는지 아닌지 확인한다.
      • MA - 케이블에 데이터가 흐르고 있지 않다면 데이터를 보내도 좋다.
      • CD - 충돌이 발생하고 있는지를 확인한다.

LESSON 13 - MAC 주소의 구조

MAC 주소 (Media Access Control Address, 물리 주소)
  • 랜에 사용되는 네트워크 모델인 이더넷의 물리적인 주소로 컴퓨터 네트워크에서 각각의 기기를 구분하기 위해 사용하는 주소이다.
  • 제조할 때 새겨지며, 전 세계에서 유일한 번호로 할당되어 있다.
  • 48비트 숫자로 구성되어 있다.
    • 앞쪽 24비트는 랜 카드를 만든 제조사 번호고 뒤쪽 24비트는 제조사가 랜 카드에 붙인 일련번호이다.

  • OSI 모델의 데이터 링크 계층과 TCP/IP 모델의 네트워크 계층에는 이더넷 헤더트레일러를 붙인다.
  • 이더넷 헤더와 트레일러가 추가된 데이터를 프레임이라고 한다.
  • 이더넷 헤더
    • 목적지의 MAC 주소(6바이트), 출발지의 MAC 주소(6바이트), 유형(2바이트)로 총 14바이트로 구성되어 있다. 1
    • 이더넷 유형 (Ethernet type)
      • 이더넷으로 전송되는 상위 계층 프로토콜의 종류를 나타내며, 프로토콜 종류를 식별하는 번호가 들어간다.

  • 트레일러 (FCS, Frame Check Sequence)
    • 데이터 전송 도중에 오류가 발생하는지 확인하는 용도이다.
    • 데이터 링크 계층에서 데이터의 마지막에 추가되는 것을 말한다.

  • 이더넷 헤더에 목적지의 MAC 주소와 자신의 MAC 주소를 넣고 데이터를 전송한다.

  • 각 컴퓨터는 자신의 MAC 주소와 목적지의 MAC 주소가 다를 경우 데이터를 파기한다.
    • MAC 주소가 같은 경우에는 데이터를 수신한다.
  • 이때, 역캡슐화가 일어나 각 컴퓨터에서는 물리 계층에서 전기 신호로 전송된 데이터를 비트열로 변환하고 데이터 링크 계층에서 이더넷 헤더와 트레일러는 분리한다.
  • 만약, 두 컴퓨터에서 다른 하나의 컴퓨터로 동시에 데이터를 전송하는 경우 충돌을 방지하기 위해 CSMA/CD 방식이 사용된다.

LESSON 14 - 스위치의 구조

스위치 (switch)
  • 랜을 구성할 때 사용하는 단말기 간 스위칭 기능이 있는 통신망 중계 장치다.
  • 컴퓨터(호스트)에서 특정한 다른 단말기로 패킷을 보낼 수 있는 기능이 있어 통신 효율이 향상된다.
  • 데이터 링크 계층에서 동작하고 레이어 스위치 또는 스위칭 허브라고 불린다.
  • 스위치 내부에는 MAC 주소 테이블이라는 것이 있다.
MAC 주소 테이블 (MAC address table)
  • 브리지 테이블 (bridge table)이라고도 한다.
  • 스위치의 포트 번호와 해당 포트에 연결되어 있는 컴퓨터의 MAC 주소가 등록되는 데이터베이스이다.
  • MAC 주소 테이블에 MAC 주소가 등록되어 있지 않은 경우 모든 컴퓨터에 데이터가 전송된다.
  • MAC 주소가 등록되어 있는 경우 해당 MAC 주소를 가진 컴퓨터에 데이터가 전송된다.
  • 플러딩 (flooding) : 스위치가 수신 포트 이외의 모든 포트에서 데이터를 송신하는 것을 말한다.
  • MAC 주소 필터링 : MAC 주소를 기준으로 목적지를 선택하는 것을 말하며, 이것으로 불필요한 데이터를 네트워크에 전송하지 않게 된다.

LESSON 15 - 데이터가 케이블에서 충돌하지 않는 구조

전이중 통신과 반이중 통신
  • 전이중 통신 방식 (full-duplex communication)
    • 전화 회선과 같이 송신과 수신이 양쪽에서 동시에 이루어지는 양방향 통신이다.
    • 서로 다른 회선이나 주파수를 이용하여 데이터 신호가 충돌되는 상황을 방지한다.
    • 스위칭 허브를 사용하면 랜 카드와 허브 간의 동시 송수신이 가능해진다.
    • 데이터의 송수신을 동시에 통신하는 방식이다.
    • 랜 케이블 (크로스 케이블)로 연결했을 때
    • 스위치에 연결하는 경우

  • 반이중 통신 방식
    • 회선 하나로 송신과 수신을 번갈아가면서 통신하는 방식이다.
    • 허브(더미 허브)로 연결하여 회선 하나로 송신과 수신이 번갈아가면서 보낼 때

충돌 도메인 (collision domain)
  • 충돌이 발생할 때 그 영향이 미치는 범위를 말한다.
  • 허브는 연결되어 있는 컴퓨터 전체가 하나의 충돌 도메인이 된다.
  • 스위치는 데이터를 동시에 송수신할 수 있는 전이중 통신 방식이기 때문에 충돌이 일어나지 않고 충돌 도메인의 범위도 좁다.
ARP (Address Resolution Protocol, 주소 변환 프로토콜)
  • 네트워크 계층 구조와 데이터 링크 계층 주소 사이의 변환을 담당하는 프로토콜이다.
  • IP 주소를 물리 주소인 MAC 주소로 변환하는 데 사용한다.
  • 목적지 컴퓨터의 IP 주소를 이용하여 MAC 주소를 찾기 위한 프로토콜이다.
  • 이더넷 프레임을 전송하려면 목적지 컴퓨터의 MAC 주소를 지정해야 한다.
  • ARP 캐시 (ARP cache) : 가장 최근에 변환한 ‘IP 대 하드웨어 주소’를 보관하고 있는 램(RAM)의 한 영역이다.
  • 출발지 컴퓨터가 목적지 주소를 모르면 MAC 주소를 알아내기 위해 네트워크에 브로드캐스트를 하는데 이것을 ARP 요청(request)라고 한다.
    • 즉, IP 주소를 대치할 수 있는 물리 주소인 MAC 주소를 찾아내기 위해 보내는 브로드캐스트 패킷 요청이다.
  • 이 요청에 대해서 IP 주소를 가지고 있지 않은 컴퓨터는 응답하지 않지만, 지정된 IP 주소를 가진 컴퓨터는 MAC 주소를 응답으로 보낸다. 이것을 ARP 응답(reply)라고 한다.
    • 이것으로 출발지 컴퓨터는 MAC 주소를 얻고 이더넷 프레임을 만들 수 있다.
    • ARP 요청(request)에 대한 응답으로 용청한 IP 주소에 대한 물리 주소인 MAC 주소가 실려 있다.
  • 출발지 컴퓨터에서는 MAC 주소를 얻은 후에 MAC 주소와 IP 주소의 매핑 정보를 메모리에 보관한다. 이것을 ARP 테이블(table)이라고 한다.
    • 이 후 데이터 통신은 자신의 컴퓨터에 보관된 ARP 테이블을 참고하여 전송된다.
  • IP 주소가 변경되면 해당 MAC 주소도 함께 변경되므로 제대로 통신할 수 없다.
    • 그래서 ARP 테이블에서는 보존 기간을 ARP 캐시로 지정하고 일정 시간이 지나면 삭제하고 다시 ARP 요청을 한다.

LESSON 16 - 이더넷의 종류와 특징

이더넷 규격
  • 이더넷은 케이블 종류나 통신 속도에 따라 다양한 규격으로 분류된다.

 

  • 10 : Mbps 단위인 통신 속도로 10Mbps 라는 뜻이다.
  • BASE : BASEBAND 라는 펄스 신호에 의한 디지털 전송 방식이다.
  • T : 케이블 종류를 나타낸다.
  • 하이픈(-) 뒤는 케이블 길이나 케이블 종류를 나타내지만, 동축케이블은 케이블의 최대 길이를 100미터 단위로 표시한다.
  • UTP 케이블은 케이블 종류를 표시한다. ex) 10BASE-T 는 UTP 케이블을 말한다.