https://animated-marmot-be5.notion.site/MID-b94c2dcecfd34c059a97b3431c4e9742?pvs=4
기본단어
Message
Sender
Receiver
Medium
Protocol
- 메시지가 어떻게 생겼는지, 어떻게 만들어져야하는지, 뭐를 먼저 보내야할지,
어떤 순서로 받아야할지, 받아서 뭘 해야할지
등의 Rule.
⇒ Sender가 정해진 Protocol에 따라 Medium을 통해 Message를 전송하면,
Receiver는 정해진 Protocol을 따라 Medium을 통해 받은 Message를 Protocol에 따라서 처리한다.
L2 _ MAC계층
Random-access protocol
- 우리가 주로 이야기하는 초고속 인터넷, 광랜, 무선랜이 여기에 속함.
- 많은 동시접속시, 랜덤으로 일정 구간을 부여하여 그때 통신이 가능하게 함.
- 초고속 인터넷과 무선랜의 대표적인 기술
- CSMA/CD (유선)
- CSMA/CA (무선)
CSMA/CD
기대 효과
- 충돌이 발생해서, 아무도 통신하지 못하는 상황을 줄임.
과정
- 줄 1개 → 초고속 인터넷 줄 (이더넷 or 광 랜)
- t1: A가 전송
- t2: C가 전송
- 이유: C의 입장에서는 아무도 전선에 없음.
- A가 t1때 보낸 애가, 아직 C의 위치까지 오지 못함.
- 충돌: C가 전송했다는 메시지와 A가 전송했다는 메시지가 충돌.
- A와 C의 메시지가 합쳐져서 뭉개진 신호 발생.
- t3: C가 충돌을 인지.
A의 메시지가 C까지 와야만, C가 충돌이 발생했을 것임을 인지.
- t3: C가 송신을 멈춤.
- t4: C가 전송한 것이 A에 도착
- C가 전송을 했음을 인지 → A 송신을 중단.
결론
- Carrier(줄)을 Sensing(주시)하고 있어, Collision을 Detect함.
- A와 C의 송신이 만난 이후부터는 Error가 전달이 되고 있는 것임.
- Error는 없앨 수는 없지만, 빨리 충돌을 detect해서 송신을 멈추면, 낭비되는 시간을 줄일 수 있는 것임.
참고
- 전선이 싸지고, 광 케이블과 같은 엄청 빠른 선이 등장함에 따라,
- 한 줄에 두 개 이상의 컴퓨터가 연결되는 행위는 더 이상 일어나지 않음.
- 따라서, 유선인 경우 CSMA/CD에 의한 에러 검출 및 복구 작업은 거의 무의미해짐.
CSMA/CA
-
무선랜, WiFi
-
기술표준: IEEE 802.11
- IEEE 단체에서 정의한 802 기술에서의 11번 기술
-
Carrier Sense Multiple Access with Collision Avoidance (CSMA/CA)
- 유선과 달리 Detect가 아닌 Avoid를 함.
-
CSMA/CD → 하드웨어 세계, CSMA/CA → 소프트웨어 세계라고 할 수 있음.
RTS, CTS 메시지
를 주고받아서, 에러를 최소화한 통신이므로.
- 최소화를 위한 노력인거지,
에러의 / 정보의 없어짐은 당연히 발생함
.
기본철학
- 목표: A → B
- 배경: A, B, C, D 모두 동일 방에 존재.
- 특징: 무선 - 내가 보내는 메시지를 다른 애들도 받을 수 있음.
기본 동작 방식
- A -(RTS) → B
- A입장: 자 모두들 들어! 내가 B한테 메시지 보낼거양.
- B입장: A가 나와 통신하고 싶구나
- B - (CTS) → A
- B입장: 나 A너랑 통신 가능!
- 결과:
- C, D: NAV(Non Allocation Vector)
- C와 D: CTS를 받았는데, B가 A와 통신한다고 하네. 난 조용히 있을게.
- 충돌 회피.
- A와 통신 시작.
- B ↔ A 통신
- B - (ACK) → A
메시지
- RTS (Request To Send)
- CTS (Clear To Send)
- 메시지 허용 + 주변 애들 모두 조용히 있으라는 의미
- 해당 메시지를 들은 다른 station은 무선 주파수를 사용 X → 충돌 회피.
문제점: Hidden Station Problem
(무선의 문제점)
- RTS, CTS, ACK를 보내지만,
이를 하나라도 듣지 못한 애가 무선 주파수에 개입하면, 충돌이 발생한다.
- CA(Avoid)인 이유: Avoid하려고 노력은 하지만, Hidden Station/Node 발생시, Error가 발생.
- CSMA/CD: 무선광랜이 등장하면서 하나의 줄을 여러명이 사용하는 일이 거의 없음.
- 무선: 천연 자원. 인간이 만들 수 X. 주파수 새롭게 만들 수 x → 여러명이 같이 사용해야함.
- 각자 알아서 시도 + 실패 해야함.
- 무선랜은 어쩔수없이 사용자가 많아지면 성능이 떨어지다가
성능 제로(불능) 상태
가 된다.
- 사용자가 많아지면 어쩔수 없이 충돌이 발생하므로 성능 (전송속도와 시간) 저하. 이떄 전송속도는 줄의 속도가 아닌 내가 체감하는 전송속도.
- 충돌이 발생할 때마다 뒤로 갈 테니, 시간 지연이 발생함.
- 따라서, 무선랜 장비는 무차별적으로 배포하면 안된다!
- 서로 거리가 너무 좁을 경우, 무선랜 AP간 간섭을 일으켜 성능을 떨어뜨림.
- 집에 성능 좋게 하겠다고 유무선 공유기 2개 만든 사람 하나 없애세용~~
** 안테나를 열면 몇도 간격으로 많은 AP들이 있음.
주파수를 실질적인 공간상에서 나눔.
- 왼쪽 사람이 쓰는 주파수는 왼쪽을 바라보는 AP를 쓸 수 있도록 함.
- 상황 1: 문제 X
- B → A: 가능.
- C → A: 가능
C ↔ B: 불가능
- B의 RTS를 C가 못받음.
- 하지만, A가 쏜 CTS/ACK를 듣고 해당 주파수 사용 X/0 → 충돌 회피 가능.
- 상황 2: 문제 0
- B와 C 사이에 벽 존재.
- C가 멀리 있어서 무선 주파수가 간당간당함.
- C가 이동.
- C가 원래 없다가 갑자기 나타나서, A와 B가 지금까지 어떤 통신을 주고 받았는지 모름.
결론
2계층
- 에러 검출 및 복구 기능
- 흐름제어(flow control) 기능
- 한쪽에서 어마어마하게 많이 보낸 트래픽으로 인하여 수신단이 죽지 않기 위해서는 적당히 보내라고 하는 기능.
그래도 에러는 불가피
함.
- 어떠한 통신 기술을 쓰더라도 몇번 시도하다가 버림.
- 따라서, 1.2계층에서 반드시 기억할 것은 거의 99% 통신은
Best-Effort
임.
- 에러에 대해서 할 때까지 해보다가 안되면 포기!라는 것.
MAC Layer 기술에 대한 시사점
무선랜
- 동시 사용자 많음 → 충돌 발생 → 성능(전송속도와 시간) 저하
- 줄의 전송속도는 변함 없지만, 사용자가 체감하는 속도는 저하.
- 충돌이 발생할 때마다 뒤로가니까, 시간 지연 발생.
- L1 전파 신호 불량 + L2 충돌 → 손실 발생
- 비. 천둥 등 여러가지 이유 존재.
- 이거는 다른 이동통신 기술에서도 발생함.
- 이동통신: 이동하고 있을 경우, 속도가 가변적임.
- 전자렌지 vs 무선랜 vs 블루투스
- 전자렌지 > 무선랜 > 블루투스
- 전자렌지 많은 곳에서 무선랜 잘 안됨: 전자렌지에서 발생시키는 전파가 우연히 무선랜과 블루투스가 사용하는 2.4 주파수를 뚫고 지나가서임.
- 무선랜 빵빵한 곳에서 블루투스 잘 안됨.
따라서, 서비스 품질을 지키기 위해서는 L1. L2를 이해해야한다!