혼공 학습단/혼자 공부하는 네트워크

[혼자 공부하는 네트워크] 이더넷

uomnf97 2024. 7. 14. 23:08
안녕하세요! 제이덥입니다. 지난 주부터 "혼자 공부하는 네트워크" 도서를 통해 네트워크에 대해 학습하고, 공부한 내용을 공유드리고 있습니다. 이번 섹션에서는 물리 계층과 데이터 링크 계층을 구성하는 대중적인 기술인 이더넷에 대해서 설명해드리겠습니다. 네트워크 설정을 할 때 지나쳤던 “이더넷”이라는 용어와 MAC주소에 대해서 알아볼 수 있었던 유익한 시간이라 호기심을 해결하는 용도로 한번 쭉 훑어봐도 좋을 것 같네요.
*포스팅에 활용된 도서는 제가 직접 구매하여 작성한 글이며, 혼공단 11기 활동의 일환으로 학습 내용을 공유하고자 합니다. 도서와 활동에 대한 자세한 내용은 아래 Reference에서 확인하실 수 있습니다.

1️⃣ 이더넷

  • 이더넷(Ethernet)이란?
    • 정의 : 현대 LAN, 특히 유선 LAN환경에서 가장 대중적으로 사용되는 기술이며, 통신 매체를 통해 송수신되는 프레임의 형태, 방법 들이 정의된 네트워크 기술을 말함
  • 이더넷의 표준
    • 현대의 대부분의 LAN환경은 이더넷을 기반으로 구성됨 ⇒ 국제적으로 표준화가 되어 있음
    • 물리 계층, 데이터 링크 계층에 정의된 네트워크 장비들은 이더넷 표준을 따름
      • 이더넷 규격 케이블, 허브, 스위치, NIC(물리 계층), 이더넷 프레임의 형식(데이터 링크 계층)
    • 전기전자공학협회(IEEE;Intstitute of Electrical and Electronics Engineers)에서 IEEE 802.3이라는 이름으로 표준화함
      • IEEE 802.3은 이더넷 관련 표준 규격들의 집합으로 이더넷 표준에 따라 지원되는 네트워크 장비, 통신 매체의 종류와 전송 속도 등이 달라짐
      • 여러 제조사가 네트워크 장비를 만들 때 통일된 형태로 작동하는 건 제품들이 이더넷 표준을 준수하기 때문
      • 이더넷이 지속해서 발전되며 새로운 표준들도 추가 되고 있음.

2️⃣ 통신 표기 형태

  • 일반적으로 전송속도BASE-추가특성 순으로 표기함.
    1. 전송속도(data rate) :
      • 숫자만 표기시 : Mbps 속도를 의미
      • 숫자 뒤에 G표기시 : Gbps 속도를 의미
      • Ex) 100BASE-T(100 Mbps를 지원하는 케이블, 1000 
        전송속도 표기   의미
        10 10Mbps
        100 100Mbps
        1000 1000Mbps
    2. BASE : 베이스밴드(BASEband)의 약자로 변조 타입(modulation type)을 의미
      • 비트 신호로 변환된 데이터를 통신 매체로 전송하는 방법
      • 일반적인 경우에서대부분의 이더넷 통신매체는 BASE를 사용
      • 이외) BROAD(브로드밴드), PASS(패스밴드)
    3. 추가 특성(additional distinction) : 통신 매체의 특성을 명시하며 아래와 같은 특성이 추가될 수 있음
      1. 전송가능한 최대거리 (예: 10GBASE-2)
      2. 물리 계층 인코딩 방식 : 데이터가 비트 신호로 변환되는 방식을 말함 (예: 10GBASE-CX)
      3. 레인 수 : 비트 신호를 옮길 수 있는 전송로 수 (예 10GBASE-LR4)

3️⃣ 통신 매체 종류

  • 추가 특성에 표기 되는 대표적인 통신 케이블 종류
    추가 특성 표기(통신 매체의 종류)  케이블의 종류
    C 동축 케이블
    T 트위스티드 페어 케이블
    S 단파장 광섬유 케이블
    L 장파장 광섬유 케이블
  • 배운내용을 토대로 하는 간단한 문제풀이 :
    • 10BASE-T 케이블 : 10Mbps속도를 지원하는 트위스티드 페어 케이블
    • 1000BASE-SX 케이블 : 1000Mbps 속도를 지원하는 단파장 광섬유 케이블
    • 1000BASE-LX 케이블 : 1000Mbps 속도를 지원하는 장파장 광섬유 케이블
      출처 : 혼자공부하는 네트워크(무단재배포 금지)
  • 아래와 같이 이터넷 표준에 따른 통신 매체가 주어지지만, 항상 일대일 대응이 되지는 않음
      표준 규격    통신 매체
    IEEE 802.3i 10BASE-T
    IEEE 802.3z 1000BASE-SX, 1000BASE-LX
  • 💡고속 이더넷(Fast Ethernet)
    • 기술의 발전에 따라 규격별 속도도 점차 빨리지고 있음
    • 초기 10Mbps 지원 → 이후 100Mbps를 지원 / 이렇게 100Mbps를 지원하는 걸 고속 이더넷이라고 부름
    • 종류 :
      속도 / 종류   이름
      1Gbps 기가비트 이더넷(Gigabit Ethernet)
      10Gbps 10기가비트 이더넷(10 Gigabit Ethernet)

4️⃣ 이더넷 프레임 ⭐ ⭐ ⭐

  • 이더넷 프레임(Ethernet Frame)이란?
    • 데이터 링크 계층에서 주고 받는 데이터 형식
    • 송신지 : 상위 계층에서 헤더+트레일러를 추가하는 캡슐화를 통해 생성
    • 수신지 : 프레임의 헤더와 트레일러를 제거하는 역캡슐화를 거친 뒤 뒤 상위 계층으로 올려보냄
    • 헤더 구성요소 : 프리앰블, 수신지MAC주소, 송신지MAC 주소, 타입 길이
    • 페이로드 : 데이터
    • 트레일러 : FCS
      이미지 출처 : https://velog.io/@moonblue/이더넷-프레임-Ethernet-Frame
  • 구성요소 해체 분석하기
    • 프리앰블(preamble) : 프레임의 시작을 알리는 8바이트(64비트) 크기의 정보
      • 첫 7바이트 : 10101010
      • 마지막 바이트 : 10101011
      • ⇒ 프레임이 오는지 체크하고, 동기화*
    • ⭐ 수신지 MAC주소/송신지 MAC주소 ⭐ :
      • MAC 주소 :
        • 물리적 주소라고도 불리며 네트워크 인터페이스마다 부여되는 주소로 6바이트(48비트)의 길이로 LAN내의 수신지와 송신지를 특정할 수 있음
        • 구별해주기 위해 일반적으로 고유하고, 변경되지 않는 주소로 활용(항상 그런 것은 아님)
        • NIC(Network Interface Controller)가 네트워크 인터페이스 담당
          • 한 컴퓨터에 NIC 여러개 → MAC주소 여러개 가능
        • 실습 : ifconfig로 내 ip 주소 확인하기
          • 총 a1:b2:c3:d4:e6 형태의 12자리 숫자로 여러개의 MAC주소를 두고 있는 것을 알 수 있었음
            MAC에 ifconfig를 이용해 이더넷 주소를 확인한 모습. 주소가 실제로 12자리이고 여러 주소가 명시된 걸 확인할 수 있었다.
    • 타입/길이 : 타입과 길이 두가지 종류가 추가될 수 있음
      • 길이(length) : 필드에 명시된 크기가 1500(05DC)이하일 경우 길이를 의미
      • 타입(type) : 필드에 명시된 크기가 1536(0600)이상일 경우에는 타입을 나타내는데 사용
        • 어떤 정보를 캡슐화 했는지 나타내는 정보로 이더타입(ethertype)이라고도 부름
        • ex)
          타입 프로토콜
          0800 IPv4
          86DD IPv6
          0806ARP ARP
    • 데이터 :
      • 상위 계층으로 전달해야할 내용으로 네트워크 계층의 데이터와 헤더를 합친 PDF
      • 최대 1500 바이트, 최소 46바이트 이상
      • 46바이트보다 작을 경우 패딩을 이용해 나머지 정보를 0으로 채움
    • FCS(Frame Check Sequence) : 수신한 이더넷 프레임에 오류가 있는지 확인하기 위한 필드 → 오류 검출
      • CRC(Cyclic Redundancy Check) : 순환 중복 검사라는 오류 검출용 값 사용
      • 송신지 : 프리앰블을 통해 나머지 필드 값을 바탕으로 CRC값 계산→ FCS 기록
      • 수신지 : 프리앰블을 통해 나머지 필드 값을 바탕으로 CRC값 계산→ 기록된 FCS 와 비교
        • 같으면 오류 X / 다르면 오류
  • 💡 토큰링(Token Ring)
    • 이더넷과 다른 기술으로 네트워크내 다른 호스트에게 메시지를 전송하려면 토큰을 가지고 있어야 함.

Reference :