๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
โญ Group_Study/Networking

[8์ฃผ์ฐจ] Link Layer : Introduction

by ํฌ์ŠคํŠธ์‰์ดํฌ 2022. 11. 15.

Link Layer: Introduction

Introduction

โœ” Link: ์ธ์ ‘ ๋„คํŠธ์›Œํฌ ์ƒ์˜ ๋…ธ๋“œ์™€ ๋…ธ๋“œ ์‚ฌ์ด๋ฅผ ์—ฐ๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ๋˜๋Š” ๋ฌผ๋ฆฌ์ /๋…ผ๋ฆฌ์  ๋„คํŠธ์›Œํฌ ๊ตฌ์„ฑ ์š”์†Œ

โœ” ํ•œ Hop์„ ๋„˜์–ด๊ฐˆ ๋•Œ(ํ•œ node์—์„œ ๋‹ค์Œ ์ธ์ ‘ node๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์ „์†กํ•  ๋•Œ) ์–ด๋–ป๊ฒŒ ์ถฉ๋Œ (collision) ์—†์ด ๋„˜์–ด๊ฐˆ ์ˆ˜ ์žˆ์„ ๊ฒƒ์ธ๊ฐ€

Where is the link layer implemented?

โœ” Network Interface Card(NIC)์— ์–ด๋Œ‘ํ„ฐ ํ˜•์‹์œผ๋กœ ๊ตฌ์„ฑ

Multiple access links, Protocol

โœ” ํ˜„์‹ค์˜ ๋„คํŠธ์›Œํฌ๋Š” ๊ฐ๊ฐ host-client ์ „์šฉ์„ ์ด ์•„๋‹ˆ๋ผ ์—ฌ๋Ÿฌ ์‚ฌ๋žŒ์ด ๊ณต์œ ํ•˜๋Š” ์ฑ„๋„์ธ ๊ฒฝ์šฐ๊ฐ€ ๋งŽ์Œ(broadcast medium)

โœ” Medium Access Control(MAC): ๋งค์ฒด์— ๋Œ€ํ•œ ์ ‘๊ทผ์„ ์กฐ์ ˆํ•ด์„œ ์ถฉ๋Œ์„ ์ตœ์†Œํ™” ํ•˜๋Š” ๊ธฐ์ˆ 

Ideal Multiple Access Protocol

โœ” R(bps): link์˜ channel bandwidth
โœ” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์กฐ๊ฑด๋“ค์„ ๋งŒ์กฑํ•˜๋Š” ์ด์ƒ์ ์ธ MAC ํ”„๋กœํ† ์ฝœ

  1. ํ•œ ๋…ธ๋“œ๊ฐ€ ๋ฐ์ดํ„ฐ๋ฅผ ์ „์†กํ•  ๋•Œ ์˜จ์ „ํžˆ R์˜ ์†๋„๋กœ ๋ณด๋‚ธ๋‹ค.
  2. M๊ฐœ์˜ ๋…ธ๋“œ๊ฐ€ ๋ฐ์ดํ„ฐ๋ฅผ ์ „์†กํ•  ๋•Œ ํ‰๊ท ์ ์œผ๋กœ R/M์˜ ์†๋„๋กœ ๋ณด๋‚ด์ง€๊ฒŒ ๋œ๋‹ค.
  3. ๋ถ„์‚ฐ ์ฒ˜๋ฆฌ (decentralized)
  4. ๋‹จ์ˆœํ•œ ๋ฐฉ์‹ (simple)

MAC protocols

  1. channel partitioning
  2. random access
  3. taking turns

1. Channel Partitioning

TDMA

โœ” TDMA: Time division multiple access
โœ” ๊ฐ ์ฑ„๋„๋ณ„๋กœ ์ž์‹ ์ด ์ „์†กํ•  ์ˆ˜ ์žˆ๋Š” time slot์„ ๋ฐฐ์ •ํ•ด์„œ ํ•ด๋‹น slot์ด ๋Œ์–ด์™”์„ ๋•Œ๋งŒ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณด๋‚ผ ์ˆ˜ ์žˆ๊ฒŒ ํ•œ๋‹ค.
โœ” user(์ฑ„๋„) ์ˆ˜์— ๋”ฐ๋ฅธ ์ž์› ๋‚ญ๋น„ ๋ฐœ์ƒ ๊ฐ€๋Šฅ

FDMA

โœ” FDMA: Frequency division multiple access
โœ” ๊ฐ ์ฑ„๋„ ๋ณ„๋กœ ์ฃผํŒŒ์ˆ˜ ๋ฐฐ์ •
โœ” TDMA์™€ ๊ฐ™์ด ์ž์› ๋‚ญ๋น„ ๋ฌธ์ œ ๋ฐœ์ƒ

2. Random Access Protocols

โœ” ๋ฐ์ดํ„ฐ๋ฅผ ๋ณด๋‚ด๊ณ ์ž ํ•  ๋•Œ ๊ทธ๋Œ€๋กœ R ์†๋„๋กœ ๋ณด๋ƒ„
โœ” ๋‘ ์ฑ„๋„ ์ด์ƒ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณด๋‚ผ ๋•Œ ์ถฉ๋Œ ๋ฐœ์ƒ! -> ์ถฉ๋Œ ํƒ์ง€/์ฒ˜๋ฆฌ ๋ฐฉ์‹ ์ค‘์š”

CSMA

โœ” CSMA:(Carrier Sense Multiple Access)
โœ” listen before transmit: ๋ฐ์ดํ„ฐ๊ฐ€ ์ „์†ก ์ค‘์ด๋ฉด ๋Œ€๊ธฐ, ์ „์†ก ์ค‘์ธ ๋ฐ์ดํ„ฐ๊ฐ€ ์—†์œผ๋ฉด ๋ฐ์ดํ„ฐ ์ „์†ก
โœ” ์ธ๊ฐ„์˜ ์†Œํ†ต ๋ฐฉ์‹๊ณผ ์œ ์‚ฌ

CSMA collisions

โœ” propagation delay๋กœ ์ธํ•ด node๋กœ ์ „๋‹ฌ๋˜๋Š” ์‹œ๊ฐ„ ์ฐจ๊ฐ€ ์กด์žฌํ•ด์„œ ์ถฉ๋Œ ๋ฐœ์ƒ
โœ” propagation delay๋Š” ์ค„์ผ ์ˆ˜ ์—†๊ธฐ ๋•Œ๋ฌธ์— ์ถฉ๋Œ ์ž์ฒด๋Š” ๋ถˆ๊ฐ€ํ”ผํ•˜๋‹ค

CSMA/CD (Collision Detection)

โœ” CSMA ๋ฐฉ์‹์—์„œ ์ถฉ๋Œ์ด ๋ฐœ์ƒํ–ˆ์„ ๊ฒฝ์šฐ ์ฆ‰์‹œ ์ „์†ก์„ ๋ฉˆ์ถค!
โœ” ์ค‘๋‹จ ์ดํ›„ ์žฌ์ „์†ก ๋ฐฉ์‹: NIC enters binary

  • M๋ฒˆ์˜ ์ถฉ๋Œ์ด ์žˆ์—ˆ์œผ๋ฉด {$0, 1, 2, ..., 2^M - 1$} ์ค‘ ํ•˜๋‚˜์˜ ์ˆ˜๋ฅผ randomํ•˜๊ฒŒ ์„ ํƒํ•ด์„œ ๋Œ€๊ธฐ
  • ์ถฉ๋Œ์ด ๋งŽ์•„์งˆ ์ˆ˜๋ก(์‚ฌ๋žŒ์ด ๋งŽ์•„์งˆ ์ˆ˜๋ก) ์„ ํƒํ•˜๋Š” random ์ˆซ์ž์˜ ๋ฒ”์œ„๋„ ์ฆ๊ฐ€ -> ์˜ค๋ž˜ ๊ธฐ๋‹ค๋ฆด ๊ฐ€๋Šฅ์„ฑ๋„ ์ฆ๊ฐ€

3. Taking Turns

โœ” Channel partitioning๊ณผ random access์˜ ์ ˆ์ถฉ

Polling

โœ” mater node๊ฐ€ slave node์˜ ๋ฐ์ดํ„ฐ ์ „์†ก ์กฐ์œจ
โœ” master node์— ๋ฌธ์ œ ๋ฐœ์ƒ ์‹œ ๋„คํŠธ์›Œํฌ ์ „์ฒด์— ์˜ํ–ฅ!

Token Passing

โœ” ํ† ํฐ์„ ๊ฐ€์ง€๊ณ  ์žˆ์„ ๊ฒฝ์šฐ ๋ฐ์ดํ„ฐ ์ „์†ก ๊ฐ€๋Šฅ
โœ” ์ „์†กํ•  ๋ฐ์ดํ„ฐ๊ฐ€ ์—†์œผ๋ฉด ๋‹ค๋ฅธ node์— ํ† ํฐ ์ „๋‹ฌ
โœ” ๊ทธ๋Ÿฌ๋‚˜ ์ค‘๊ฐ„์— token ์œ ์‹ค ์‹œ ๋ฌธ์ œ ๋ฐœ์ƒ ๊ฐ€๋Šฅ (Single point of Failure)

๋Œ“๊ธ€