컴퓨터네트워크 10주차 Link layer 01

2023. 1. 8. 12:26CS/컴퓨터네트워크

주 교재 : Computer Networking : A Top-Down Approach

 

10주차 Link layer  01

  1. Introduction
  2. Error detection, correction
  3. multiple access protocol (MAC protocol)
  4. LANs

1. Introduction

# Link Layer

- 유선

- 무선

- LANs

- frame 단위로 소통

- MAC address는 하드웨어에 기반을 둔 unique한 숫자

- 신뢰성있는 전송을 함 => Error Cheking

 

# Link Layer 특징

- flow control

- error detection

- error correction

- half-duplex & full-duplex

 

# Link Layer가 실행 되는 곳

- network interface card (NIC)


2. Error detection, correction

EDC = Error Detection and Corretion bits

=> 3가지 방법이 있음

Error Detection은 100% 신뢰성을 보장하지 않음

 

# Parity checking

비트의 개수를 계산해서 짝수 또는 홀수로 만들어주는 parity 비트를 써서 에러를 탐지하는 방법

1차원으로 탐지하면 다른 쪽에서 변화시킨 것을 알 수 없기 때문에 2차원을 이용해서 탐지와 수정을 한다.

 

# Internet Checksum

checksum을 이용해서 에러를 탐지하는 방법

 

# Cyclic redundancy check (CRC)

D : data bits

G : 나누는 값. 송 수신이 같이 아는 값

R : D mod G.

나누기 연산 시 XOR 연산으로 계산을 이어감.

송신은 D+R 비트를 전송함.

수신은 받은 비트를 똑같은 방식으로 계산해서 R부분이 000이 나오면 정상적으로 수신한 것

계산 방법


3. mutiple access protocols

# Multiple access links, protocols

링크의 두 가지 방법

  • Point-to-Point
  • broadcast (sharde wire or medium)
    - 와이파이
    - 옛날 방식 이더넷
    - 주변에 소음(noise)가 많으면 내 출력을 높인다.
    => 내 출력이 다른 기기에 소음이 될 수도 있다.

# Mutiple access protocols

노드가 어떻게 채널을 공유할지 결정하는 분배 알고리즘

예를 들면, 언제 노드가 전송할 수 있는지를 결정

  • 하나의 공유된 브로드캐스트 채널
  • 노드에 의한 두 개 혹은 그 이상의 동시적 전송
  • 노드가 두 개 이상의 신호를 동시간에 받으면 충돌이 발생한다.
  • 충돌은 유, 무선 둘 다 발생 할 수 있다.

# MAC protocols: taxonomy

  • Channel partitioning : 고속도로 차선 생각
    - 충돌이 발생하지 않음
  • taking turns : 순번 정하기
    - 충돌이 발생하지 않음
  • random access
    - 충돌 발생

# Channel partitioning MAC protocols: FDMA

FDMA : frequency division multiple access

# Channel partitioning MAC protocols: TDMA

TDMA : time division multiple access

# Taking turns MAC protocols

channel partitioning MAC Protocol

  • 전송량이 많을 때 효율적이고 공정함
  • 전송량이 적으면 비효율적

random access MAC protocols

  • 전송량이 적을 때 효율적
  • 전송량이 많으면 충돌 발생

taking turns protocol

polling

  • 마스터 노드가 종속된 노드를 초대해서 차례로 전송
  • 주의점
    - polling overhead
    - latency(지연)
    - single point of failure

token passing

  • 토큰을 순서대로 돌림. => 수건돌리기
  • 주의점
    - token overhead
    - latency(지연)
    - single point of failure

# Random access protocols

충돌 탐지와 충돌 이후 어떻게 할 것인지가 중요함

  • ALOHA
  • slotted ALOHA
  • CSMA, CSMA/CD, CSMA/CA

# Pure ALOHA

간단하고, 동기화가 없음

오는대로 전송

 

# Slotted ALOHA

가정

- 모든 프레임 크기가 같음

- 같은 크기의 슬롯으로 시간을 나눔

- 노드들은 슬롯이 시작될 때 전송을 시작함

- 노드들은 동기화됨

- 2개 이상의 노드가 슬롯에서 전송할 때, 모든 노드는 충돌 탐지

 

동작

- 충돌이 없으면 노드는 새로운 프레임을 전송할 수 있음

- 충돌이 있으면, 노드는 링크가 성공할 때까지 확률 p로 각 후속 슬롯에서 프레임을 재전송

장점

- 단일 활성 노드는 채널의 최대량으로 계속해서 전송할 수 있음

- 매우 분산됨 : 노드의 슬롯만 동기화하면 됨

- 단순함

 

단점

- 충돌이 있으면 슬롯 낭비
- 유휴 상태인 슬롯

- 노드는 패킷을 전송하는 시간보다 짧은 시간 내에 충돌을 감지할 수 있음

- clock synchronization

 

# CSMA (carrier sense multiple access)

- 전송하기 전에 상태를 본다.

- 채널이 유휴 상태면 전체 프레임을 전송

- 채널이 유휴 상태가 아니면 전송하지 않는다.

- 충돌이 발생할 수 있다.

-> 전파 지연 때문에 두 노드가 서로의 전송을 못 들을 수 있다.

- 충돌이 일어나면, 전채 패킷 전송 시간이 낭비된다.

 

# CSMA/CD (collision detection)

CSMA/CD는 전송 도중 충돌을 만나면 즉시 전송을 중단함.

전송 중단 이후, NIC는 binary backoff로 진입


4. LANs

# MAC addresses and ARP

MAC(or LAN or physical or Ethernet) address

- 물리적으로 연결된 인터페이스

- 네트워크에서의 IP 주소와 같음

- 48 비트의 주소

- MAC flat address는 portability가 있음.

- IP 계층 주소는 portable 하지 않음

 

# ARP : address resolution protocol

ARP table

- 어떤 LAN 노드에 IP/MAC 주소를 매핑함

- TTL : 일반적으로 20분 후에 매핑한 정보를 잊음