🔹 이더넷(Ethernet) 기술 개요
12장은 대부분의 유선 LAN에서 사용되는 이더넷(Ethernet) 기술을 학습한다. 이더넷은 IEEE 802.3 CSMA/CD 기반으로 **매체 접근 제어(medium access control, MAC)**를 수행한다. 12장 초반에 소개되는 세 가지 랜덤 접근(Random access) MAC 알고리즘 분석은 학습의 흥미를 더한다.
MAC의 목표: 충돌(collision)을 줄여 **처리량(throughput, 링크 효율)**을 높이고 **지연(latency)**을 감소시킨다.
랜덤 접근(Random access, 콘텐츠 기반) MAC 알고리즘
- (순수/슬롯) 알로하(pure/slotted ALOHA): 캐리어 감지(carrier sensing)를 수행하지 않으며, 캐리어 감지를 통한 충돌 감지(collision detection)도 없다. MAC 서브 계층에서 **ACK 프레임(ACK frame)**을 사용하여 충돌을 감지하고 해결하며, 재전송 대기 시간(back-off time)은 무작위이다.
- (비고정/1-고정/p-고정) CSMA(non-/1-/p- persistent CSMA): 캐리어 감지를 통한 충돌 감지가 없다. MAC 서브 계층에서 **ACK 프레임(ACK frame)**을 사용하여 충돌을 감지하고 해결한다. 재전송 대기 시간은 비고정(non-persistent)의 경우 무작위이며, 1-고정(1-persistent)은 대기 시간이 없으며, p-고정(p-persistent)은 한 번의 전파 시간(T_prop)이다.
- CSMA/CD: MAC 서브 계층에서 ACK 프레임(ACK frame) 없이 물리 계층(Layer 1)에서 캐리어 감지를 통해 **충돌을 감지(collision detection)**한다. (LLC 타입 2(LLC type 2)에서는 ACK가 사용될 수 있다.) 재전송 대기 시간은 이진 지수 백오프(Binary Exponential Backoff, BEB) 방식을 사용하며, 재전송 시도 횟수 k에 따라 [0, 2^k-1] 범위에서 무작위로 결정된다.
🔹 순수 알로하(Pure ALOHA) vs. 슬롯 알로하(Slotted ALOHA)
차이점
- **순수 알로하(Pure ALOHA)**는 각 스테이션(station)들이 임의의 시간에 전송(TX)을 시작한다.
- **슬롯 알로하(Slotted ALOHA)**는 시간을 슬롯(slot)으로 나누어 스테이션들이 슬롯 시작 시간에만 전송(TX)하도록 동기(sync)를 맞춘다.
공통점
- 송신자(sender)는 수신자(receiver)가 보내는 **ACK 프레임(ACK frame)**으로 충돌 여부를 판단한다.
- 전송 실패 시 무작위 시간(random amount of time)만큼 대기했다가 다시 전송(TX)한다.
슬롯 알로하의 취약 시간(vulnerable time)이 순수 알로하의 절반으로 줄어드는 이유
- **순수 알로하(Pure ALOHA)**에서는 다른 전송(TX) 중에 내가 전송을 시작하는 경우, 또는 내가 전송(TX) 중에 다른 전송이 발생하는 경우 모두 충돌이 발생한다.
- **슬롯 알로하(Slotted ALOHA)**에서는 특정 슬롯 안에 발생한 전송 시도(TX attempt)들을 모두 대기시켰다가 다음 슬롯 시작 시에 전송을 하므로, 해당 슬롯에서 진행 중인 전송에는 영향(충돌)을 주지 않는다. 즉, 순수 알로하에서 충돌이 발생하게 되는 '다른 전송 중에 내가 전송을 시작하는 경우'가 슬롯 알로하에서는 제거되므로, 슬롯 알로하에서는 충돌이 발생할 수 있는 전송 시도 패턴이 순수 알로하보다 절반으로 줄어든다.
활용률(Utilization, U)
- 순수 알로하(Pure ALOHA): ; 는 성공적으로 전송할 확률이다. (일 때). 이는 네트워크에 단위 시간당 평균 0.5개의 프레임을 전송할 경우, 충돌 도메인(collision domain)에서 공유하는 링크 대역폭의 최대 18%만 사용할 수 있다는 의미이다.
- 슬롯 알로하(Slotted ALOHA): ; 는 성공적으로 전송할 확률이다. (일 때). 이는 네트워크에 단위 시간당 평균 1개의 프레임을 전송했을 때 링크 대역폭의 최대 37%를 사용하는 성능을 의미한다.
- = 네트워크 부하(Network load): (충돌 도메인 내에서 스테이션들의 전송(TX) 패턴이 포아송 분포로 흩어져 있을 때) 단위 시간(프레임 시간)당 평균 몇 번의 전송 시도가 발생했는지를 나타내는 지표이다.
요약하면, **슬롯 알로하(Slotted ALOHA)**는 취약 시간(vulnerable time)을 줄여 하나의 전송(TX)이 충돌 없이 성공적으로 완료될 확률을 높인다. 이로 인해 **순수 알로하(Pure ALOHA)**보다 더 높은 부하(load)의 상황에서도 약 두 배의 높은 링크 효율(throughput도 당연히)을 나타낸다.
슬롯 알로하의 충돌 감소 비용
충돌 도메인(collision domain) 안의 스테이션들이 동일한 **클록 시간(clock time)**을 유지해야 하는 방법을 추가로 구현해야 하는 비용이 발생한다.
🔹 CSMA
비고정 CSMA(Nonpersistent CSMA)와 1-고정 CSMA(1-persistent CSMA)의 장단점
- **비고정 CSMA(Nonpersistent CSMA)**는 유휴 시간(idle time)으로 인해 링크 효율이 떨어지고 불필요한 종단 간 지연(end-to-end delay)이 증가하므로 저부하 네트워크(low-load network)에 적합하지 않다. 반면 **1-고정 CSMA(1-persistent CSMA)**는 저부하 네트워크에 적합하다.
- **고부하 네트워크(high-load networks)**의 경우, **1-고정 CSMA(1-persistent CSMA)**는 과부하로 인해 충돌이 증가하므로, **비고정 CSMA(Nonpersistent CSMA)**가 **더 높은 처리량(throughput)**을 생성한다.
CSMA의 효율성
CSMA는 전파 시간(propagation time)이 짧고 프레임 크기(frame size)가 큰 네트워크에서 더 잘 작동하며 처리량을 증가시킨다. 이는 CSMA가 충돌을 피하기 위해 프레임을 전송하기 전에 캐리어 감지(carrier sensing)를 수행하고, 전송 성공 여부를 확인하기 위해 프레임을 전송한 후 ACK를 기다리기 때문이다.
알로하(ALOHA)와 CSMA의 유사점 및 차이점
공통점: 둘 다 프레임의 모든 비트(bits)를 전송하고 ACK를 기다려 충돌을 추론한다.
🔹 CSMA/CD
1-고정 CSMA(1-persistent CSMA) + 이진 지수 백오프(BEB)
CSMA/CD가 (전송 시간 2 x 종단 간 전파 시간)을 요구하는 이유
이는 송신기(transmitter)가 전송 중에 충돌을 감지할 수 있어야 하기 때문이다. CSMA/CD는 CSMA처럼 전송 시작 전에도 캐리어 감지를 수행하고, 추가로 전송 시간 동안 계속 캐리어 감지를 수행한다. 전송 중 발생하는 모든 충돌을 감지하기 위해서는 전송 시간(transmission time)이 네트워크에서 가장 멀리 떨어진 두 스테이션 사이에 충돌 후 재밍 신호(jamming signal)가 도착할 때까지 소요되는 시간, 즉 **슬롯 시간(slot time)**에 해당해야 한다. 슬롯 시간은 만큼 길어야 한다.
만일 프레임이 너무 작아 전송 시간(transmission time)이 충분히 길지 않으면, 충돌 감지가 실패하며 CSMA/CD는 효율성이 떨어지고 CSMA보다 더 나쁜 성능을 보인다. 이는 CSMA/CD가 CSMA와 달리 ACK를 사용하지 않기 때문이다.
슬롯 시간(Slot time)
슬롯 시간은 (버스 링크의 양쪽 끝에 A와 D가 연결되어 있다고 가정할 경우) A를 출발한 신호가 D에 도착할 즈음 충돌이 발생하여 D가 전송한 재밍 신호(jamming signal)를 A가 받기까지 필요한 시간, 즉 충돌을 제대로 감지하기 위해 필요한 최소 시간(the time required for a signal to traverse from one end of the network to another, plus the time required to send the jam signal in case of collision)을 의미한다.
따라서, CSMA/CD가 충돌을 제대로 감지하기 위한 조건을 슬롯 시간으로 설명하면 다음과 같다:
- 프레임 전송 중에 충돌 감지를 위해, 전송 시간(T_trans)은 슬롯 시간(slot time)보다 작으면 안 된다. 즉, .
- 충돌 발생 시 슬롯 시간 안에 재밍 신호(jamming signal)를 받아야 하므로, 최대 왕복 전파 지연(max. round-trip propagation delay)은 슬롯 시간보다 커서는 안 된다. 즉, $(2 \times T_{\text{e2e_prop}}) \le \text{slot time}$.
10Mbps 이더넷(Ethernet)의 슬롯 시간은 IEEE 802.3 표준에서 51.2 마이크로초(microsecond)로 정해져 있다. (1)에 따라 10Mbps 링크를 사용할 때, MAC 프레임 크기는 최소 가 되어야 CSMA/CD가 정상적으로 작동할 수 있다.
만일 프레임 크기(L)가 1500 byte이고 링크 속도(R)가 100Mbps일 때 신호 전파 속도(V)를 로 가정하면, 링크 길이(d)는 최대 를 넘지 않아야 CSMA/CD가 제대로 동작하게 된다. 이때 만일 링크 속도만 100Gbps로 높이면 d의 길이에 대한 조건이 더 까다로워져서, 를 넘지 않아야 한다.
500m 길이의 100Mbps 링크 양 끝에 스테이션 A와 D가 연결되어 있고, CSMA/CD를 이용하여 통신하고 있다고 가정하자. 이 링크의 전파 지연(propagation delay)은 10 마이크로초/km(microsecond/km)라고 가정할 때, 만일 A가 전송을 시작한 후 D에서 충돌이 발생하였다면 A는 전체 프레임 중 만 전송하고 나서 충돌 감지로 인해 전송을 멈추게 된다. 반면 CSMA는 전체 프레임을 모두 전송하고도 이후 최소 이상은 대기해야 (ACK를 받지 못해서) 충돌을 유추하게 된다.
이진 지수 백오프(Binary Exponential Backoff, BEB)
- 동작 방식: 충돌이 발생할 경우, 재전송 대기 시간 범위를 지수적으로 증가시킨다. (예: 첫 충돌 시 슬롯, 두 번째 충돌 시 슬롯, 세 번째 충돌 시 슬롯 등 슬롯)
- CSMA/CD 효율성 증대 원리: 네트워크가 혼잡해질수록(heavier), 더 긴 재전송 대기 시간(back-off time)을 부여하여 충돌 확률을 줄인다.
- 단점: **불공정성(unfairness)**이 발생할 수 있다. 즉, 재전송 시도 횟수가 많은 스테이션(station with more transmission attempts)은 재전송 성공 확률이 낮아진다. (전송 경쟁에 늦게 진입한 스테이션이 이미 여러 번 충돌을 겪는 스테이션보다 전송을 할 확률이 더 높다.)
🔹 MAC 주소
MAC 주소는 6 옥텟(octets) 즉 **48 비트(bits)**로 구성된다. IP 주소와는 다르게 구조적인 지역 정보를 포함하지 않는다.
단, 6 옥텟 중 첫 번째 옥텟의 **최하위 비트(LSB)**가 0이면 유니캐스트(unicast) 주소를, 1이면 멀티캐스트(multicast) 주소를 의미한다. 예를 들어 MAC 주소가 0x446A03015C49인 경우, 0x44가 첫 번째 옥텟이고 0x44는 이진수로 01000100이다. 여기서 LSB가 0이므로 이 MAC 주소는 유니캐스트 주소이다.
🔹 이더넷의 역사
- **전통적인 공유 이더넷(Traditional shared Ethernet, 10Mbps)**은 허브(hub)를 사용하여 하프 듀플렉스(half-duplex) 방식으로 작동한다. (한 번에 하나의 스테이션만 전송할 수 있다.) 따라서 CSMA/CD가 필수적으로 요구된다. 최대 1Gbps 이더넷도 하프 듀플렉스 NIC와 허브를 사용하여 구현될 수 있다.
하프 듀플렉스 1G 이더넷에서 CSMA/CD의 원활한 작동을 위한 두 가지 기술
- 캐리어 확장(Carrier extension): 조건에 맞지 않게 길이가 짧은 MAC 프레임 뒤에 의미 없는 값인 확장 헤더(extension header)를 추가하여 전송한다.
- 프레임 버스팅(Frame bursting): 짧은 프레임 여러 개를 연속적으로 전송할 때, 각 프레임에 확장 헤더를 추가하는 방법보다, 여러 개의 짧은 프레임을 하나의 전송(TX)으로 전송하여 충돌을 감지할 만큼의 충분한 전송 시간을 얻는 방법이다. 이는 불필요한 정보를 추가로 전송하지 않아 캐리어 확장 방법보다 링크 효율이 더 좋다.
- **고속 스위치 이더넷(High-speed switched Ethernet)**은 풀 듀플렉스(full-duplex) 방식으로 작동한다. (스테이션이 동시에 전송 및 수신할 수 있으며, 두 스테이션이 동시에 전송할 수 있다.) 따라서 CSMA/CD를 요구하지 않는다. 그러나 이전 프레임 포맷과의 **하위 호환성(backward compatibility)**을 위해 이를 준수한다.
🔹 멀티레인 분배(Multilane Distribution, MLD)
100-Gbps 이더넷과 같은 고속 전송을 구현하는 기술이다.
- 큰 프레임(large frame)을 66비트 워드(66-bit word)로 분할하여 여러 병렬 채널로 각각 전송한다.
🔹 가상 LAN (Virtual LAN, VLAN)
**"일부 스테이션이 동일한 LAN에 속한다"**는 것은 그들이 **동일한 브로드캐스트 도메인(broadcast domain)**에 속한다는 의미이다.
다수의 LAN을 사용하는 이유
- 네트워크의 성능 향상: 트래픽을 분리하여 불필요한 브로드캐스트(broadcast)를 줄인다.
- 보안 강화: 서로 다른 네트워크 세그먼트 간 접근을 제어할 수 있다.
- 관리 용이성: 네트워크를 논리적으로 분할하여 관리를 효율화한다.
가상 LAN (Virtual LAN)이란?
가상 LAN (VLAN)은 물리적 위치에 관계없이 논리적으로 그룹화된 장치들의 모음이다. 즉, 하나의 물리적 스위치 내에서 여러 개의 독립적인 브로드캐스트 도메인을 생성하는 기술이다.
VLAN이 필요한 경우
- 부서별, 기능별, 또는 프로젝트별로 네트워크를 논리적으로 분리해야 할 때.
- 보안 강화를 위해 특정 트래픽을 격리해야 할 때.
- 잦은 물리적 재배치 없이 네트워크 구성을 유연하게 변경해야 할 때.
VLAN 멤버십 구성 방법
- 포트 기반 VLAN(Port-based VLAN): 스위치 포트를 특정 VLAN에 할당한다. 해당 포트에 연결된 모든 장치는 해당 VLAN에 속한다.
- MAC 주소 기반 VLAN(MAC address-based VLAN): 장치의 MAC 주소를 기반으로 VLAN 멤버십을 할당한다. 장치가 어느 포트에 연결되든 동일한 VLAN에 속한다.
- 프로토콜 기반 VLAN(Protocol-based VLAN): IP, IPX 등과 같은 네트워크 계층 프로토콜을 기반으로 VLAN 멤버십을 할당한다.
다른 VLAN 간의 통신
서로 다른 VLAN에 속한 스테이션들 간의 통신은 반드시 L3 라우팅(routing) 기능, 즉 **IP 주소 기반 라우팅(IP address based routing)**을 필요로 한다. 이는 다른 VLAN들이 서로 다른 LAN(다른 IP 서브넷)에 속하기 때문이다. 이를 위해 라우터(router) 또는 **레이어 3 스위치(Layer-3 switch)**가 필요하다. (L3 스위치는 MAC 주소 기반 L2 라우팅과 IP 주소 기반 L3 라우팅을 모두 수행할 수 있으나, 기존 라우터가 수행하는 에지 기능(firewall, NAT, Tunneling, QoS 등)이 없으므로 LAN과 WAN의 경계 즉, **보더 장비(border equipment)**로는 사용되지 않는다.)
'CS > 정보통신공학' 카테고리의 다른 글
[정보통신공학] CH09~13 문제풀이 암기 식 (1) | 2025.06.14 |
---|---|
[정보통신공학] CH13 교수님 요약 정리 (1) | 2025.06.09 |
[정보통신공학] 연습문제 ch13 (0) | 2025.06.04 |
[정보통신공학] 연습문제 ch12 (1) | 2025.06.04 |
[정보통신공학] 연습문제 ch11 (0) | 2025.06.04 |