컴퓨터네트워크 05 : Link Layer

LeeWonjin·2022년 12월 15일
0
post-custom-banner

개요

Link : 통신 경로를 따라 인접 노드를 연결하는 채널 (e.g., wired, wireless, LANs)
Link Layer(2층) : "Frame"을 물리적으로 인접한 노드로 전달하는 역할 수행

  • framing, link access : 데이터그램에 header/trailer를 붙여 frame으로 encapsulate. header에는 식별자인 MAC주소 포함.
  • 인접 노드간 전달 보장
  • flow control : 노드 사이에 받는 속도/보내는 속도 맞춤
  • error detection : 리시버가 에러를 검출해 재전송을 요구하거나 패킷드랍.
  • error correciton : 재전송 없이 비트 에러 수정 (잘 안씀)
  • half-duplex, full-duplex

Error detection, correction

기본원리는 데이터 외에 별도의 EDC(Error detection and correction bits)를 실어 전송하는 것. 그러나 EDC 자체도 100% 오류가 발생하지 않음을 보장할 수 없음. EDC가 정상이라고 해서 언제나 오류가 없지는 않음.

parity checking

근거리 에러체킹에 사용가능

짝수패리티는 EDC포함 1이 짝수개여야 정상
홀수패리티는 EDC포함 1이 홀수개여야 정상

  • Single bit parity
  • two-dimensional bit parity : 에러 탐지와 수정 모두 가능

Internet checksum

  • 송신측 : UDP 세그먼트 값 더해서 checksum 필드에 넣음
  • 수신측 : UDP 세그먼트 값 더해서 checksum 필드와 같은지 확인

CRC (Cyclic Redundancy Check)

32-bit CRC가 표준
<D, R> = D*2^r XOR R

** R : r or r+1 bits bit pattern

Multiple access protocols

링크는 두 가지로 분류가능

  • point-to-point
  • broadcast

MAC(Multiple access protocol)이 필요한 이유

  • 한 broadcast 채널에 여러 장치가 같이 신호를 쏘면 충돌남. 누가 언제 신호 쏠지 정해줘야 함.
  • 근데 외부에서 보고 정해줄 수는 없고, 이 채널에 직접 들어와서 교통정리를 해줘야 함

MAC이 갖춰야 할 것은 (R bps회선이 주어졌다고 가정하면)

  • 전송하기를 원하는 한 노드는 R bps로 전송가능
  • M개 노드가 전송하고 싶어하면 각자 R/M bsp로 전송 가능
  • 완전히 decentralized : 특별취급하는 노드 없고 동기화도 없다
  • 단순해야함
    ** 이거 네 가지 만족하는게 이더넷임

Channel Partitioning

** DMA : Division Multiple Access

  • TDMA (Time) : round라는 시간단위로 채널 나눔. 한 라운드에 모든 슬롯이 한 번씩 전송할 수 있는 기회를 줌. 안보내면 말고.
  • FDMA (Frequency) : 주파수 대역별로 채널 나눔. 안보내면 말고.
  • CDMA (Code)

Random Access

어떻게 충돌을 감지하고 복구할지 명시
** ALOHA기반으로 CSMA만들었음

  • Slotted ALOHA
    • 모든 프레임 사이즈 같음. 같은 시분할길이 슬롯. 슬롯 시작할 때만 전송. 한 슬롯에 여러프레임 전송하면 모든 프레임이 충돌 감지. 모든 프레임 등기화.
    • 최고 효율 37%
  • Pure ALOHA
    • 동기화 없음. 프레임 들어오면 즉시 전송.
    • 최고 효율 18%
  • simple CSMA (Carrier sense multiple access)
    • idle 감지하면 있는거 다보냄. busy 감지만 전송 지연함.
    • 충돌 일어나도 계속 전송하니까, 그 전송시간이 다 낭비됨
  • CSMA/CD
    • 충돌감지 있는 CSMA
    • 어느정도 전송하다가 충돌 감지하면 전송 멈춤.
  • CSMA/CA (Collision Avoidance)

Taking turns

  • polling : 한 컴퓨터(master)가 나머지(slaves)의 전송 도맡아함.
  • token passing : 토큰 넘김. 토큰 갖고있는 애가 전송

DOCSIS

Data over cable service interface specification
upstream에 FDM, downsteam에 TDM

LAN (Local Area Network)

MAC 주소

= LAN주소, 피지컬주소, 이더넷주소

LAN의 모든 인터페이스는 두 가지를 가짐

  • IP주소
  • MAC주소 : 같은 서브넷 내에서 물리적으로 연결된 인터페이스간에 frame을 전송하기 위해 지역적으로 사용하는 유일한 48-bit 식별자.

MAC주소는 IEEE가 관리, 할당. portability

ARP

= Address Resolution Protocol

  • 링크레이어 단에서 다른 노드로 프레임을 보내야 할 때. IP주소를 갖고 MAC주소를 알아내는 프로토콜
  • 각 IP노드는 ARP table을 유지함. ( IP주소 / MAC 주소 / TTL )

만약 같은 서브넷에 있으면 직접 그 노드에 질의한다.
라우터로 구분된 다른 서브넷에 있으면 라우터가 대신 질의해준다.

Ethernet

그냥 사실상 현대의 유선 랜 그 자체임.
이더넷케이블이라 안하고 랜선이라 하는걸 보면 견적이 나온다.

  • 이더넷의 MAC protocol : unslotted CSMA/CD with binary backoff
  • 특징
    • unreliable : 핸드셰이킹 없다
    • connectionless : ACK NAK그런거 없다
  • topology
    • bus : 옛날
    • switched : 오늘날 ( 스위치가 충돌 막아줌)
  • ethernet frame structure
    • preamble : 1010101010올리고 내리고 하다가 0으로 안바뀌면 이제 내용시작한다는 뜻 (address)
    • dest/source MAC address
    • type (higher layer protocol)
    • CRC
  • 이더넷 케이블(UTP) : 4쌍의 선(색,줄) + RJ45커넥터
    • T568A(CrossOver) : 1 2 PAIR3(초록)
    • T568B(Straight) : 1 2 PAIR2(주황)
      --> 스위치와 스위치끼리는 Crossover, 나머지는 straight
      --> 였지만 최근에는 전부 다 Straight를 쓰기도 함 (스위치가 진화함)

Switch

  • 역할
    • 이더넷 프레임을 Stroe and forward4
    • 들어온 프레임의 MAC주소를 보고 1개 또는 여러 개의 링크로 전달. 충돌방지. 세그먼트 접근을 위해 CSMA/CD 사용.
  • 특징
    • 같은곳으로 가는거 아니면, 스위치는 동시 전송 가능함.
    • 스위치 포워딩 테이블이 있음 : MAC주소, 링크 인터페이스 번호, TTL
    • 스스로 배워서 포워딩 테이블을 채움
  • Self-leaning
    • 나가는 프레임이 스위치를 거친다.
    • 스위치가 이 프레임이 나온 인터페이스 링크와 MAC주소를 기록한다.
    • 이후 밖에서 스위치 내부로 들어가는 패킷이 날아온다.
    • 그럼 배워둔 내용(스위치 포워딩 테이블 엔트리)을 사용해 전달한다.
    • 만약 엔트리에 없는 곳으로 들어가려고 하면 보낸쪽빼고 모든 링크로 전달한다. (flood)

VLAN

물리적으로는 같은 스위치에 연결했지만, 논리적으로는 다른 LAN에 속한 것 처럼 네트워크를 구성하고 싶다. = VLAN

스위치가 VLAN을 지원하면 해당 기능을 사용할 수 있다. (이 때 스위치는 마치 라우터와 스위치를 합쳐놓은 것 같아서 L3 스위치라고 표현하기도 한다.)

  • MAC-based VLAN
  • Port-based VLAN : 포트번호별로 다른 네트워크에 속한 것 처럼 동작
    • Trunk port : 다른 스위치와 연결되기 위한 포트. 802.1Q 프로토콜로 동작. 기존 802.1 프로토콜 이더넷프레임 포맷에 2개 필드가 더 추가됨. (TAG)

Link virtualization (MPLS)

MPLS를 지원하는(label-swtiched) 라우터들만 적용 가능
Shortest prefix matching이 아니라 fixed length label을 사용해 빠르게 포워딩할 수 있음.

특징

  • traffic engineering 가능
  • 빠른 re-route가능 (pre-computed backup paths)

signaling : RSVP-TE signaling protocol

profile
노는게 제일 좋습니다.
post-custom-banner

0개의 댓글