CS/네트워크

[네트워크] 6. Wireless and Mobile Networks

공영재 2023. 12. 14. 01:09

Reference - Computer Networking: a Top Down Approach

 

 

link layer는 자원(bandwidth, time, power)을 다뤘다. 자원을 더 투입하면 더 빠르게 데이터를 전송할 수 있다.

즉 주파수 대역(bandwidth)을 어떻게 활용해야 가장 효율적으로 쓸 수 있을지인데, 이 대역은 같은 주파수 대역을 여러 업체가 사용하면 collision이 발생하기 때문에 정부에서 SK, LG U+등에 판매한다(빌려준다). 알뜰폰의 경우는, 3사가 낙찰받은 주파수 대역을 알뜰폰 사업자에게 다시 판매하고, 알뜰폰 사업자가 이를 관리하는 것이다.

 

이때 유선 네트워크와 무선 네트워크는 명확한 차이가 있다. 이번 파트는 이전까지 교재에서 자세히 안다루어지다가 최근 개정판에 추가가 된 wireless and mobile network에 대해 알아볼 것이다. 최근 들어 스마트폰 보급률 증가 등 유저의 사용 경향이 바뀜에 따라 해당 파트가 더욱 중요해졌다.

 

무선 네트워킹에 있어서 중요한 challenge는 wireless와 mobility다.

 

Wireless and Mobile Networks

 

Wireless

 

wireless network의 edge 사용자는 smartphone이나 laptop이며, 정적 혹은 동적이다. Base station은 기지국, 셀룰러 네트워크의 cell tower와 무선 네트워크의 Access point를 의미하며, 안정성을 위해 core와 유선으로 연결되어 있고 유저와는 mobility 등을 고려해 wireless로 구성되어있다. wireless link는 backbone link에 사용되기도 한다. 

wireless link 종류는  coverage distance가 크고 data rate이 낮은 셀룰러 네트워크와 coverage가 작고 data rate이 높은 wifi가 있다. 또한 블루투스에 사용되는 coverage가 작고 data rate도 낮은 IEEE 표준 802.15도 존재한다.

 

Wireless link에는 두가지 mode가 있다. Infrastructure mode와 ad hoc mode다.

Infrastructure mode는 기지국/AP로 부터 service를 받는 통신이다. Wifi, 셀룰러 네트워크 등을 말하며 이때 host가 이동함에 따라 기지국에서 다른 기지국으로 연결을 넘겨주는 걸 handoff라 한다. 

 ad hoc mode는 기지국 없이 모바일 단말끼리 통신한다. 예시로 블루투스, 에어드랍, wifi direct등이 예시다.

또한 네트워크 연결을 위해 거치는 링크가 하나냐 여러개냐에 따라 single hop과 multi hop으로 나눈다. single hop은 익숙하지만 multi hop의 경우 현재 위성 간 통신등을 제외하면 잘 쓰지 않고 있다. 하지만 최근 완전자율주행 등으로 인해 관심이 높아지고 있는 추세라 한다. 종합하면 아래와 같이 분류할 수 있다.

 

 

Wireless link 특징 (Wired link와의 차이점)

1. decreased signal strength - 거리에 따라 strength가 줄어든다. (4pi*r^2) 해당 현상을 path loss라 한다. but 안테나가 여러개면 설계에 따라 구가 다양한 모양으로 변형된다.

2. interference from other sources - wired link는 다른 단말의 signal을 모르지만 wireless의 경우 broadcast 특성으로 간섭(interference) 발생한다.

3. multipath propagation - path가 하나인 유선과 달리 전자기파의 형태에 의해 처음에 보낸 signal 이후 이보다 작은 하울링 signal이 존재한다. 또한 신호가 건물 등을 맞고 산란이 되어 destination에 다른 시간에 도착하여, processing이 더 오래 걸린다.

4. SNR-BER tradeoffs : SNR은 noise 대비 신호가 얼마나 쎈지를 말한다. 신호가 좋을수록(=SNR 높을수록) BER(Bit Error Rate)은 떨어지는 반비례 관계다. 이때 하나의 신호를 몇 비트로 쪼개서 송수신할지 결정하는 BPSK, QAM16, QAM256등이 있다. 신호를 많이 쪼갤수록 더 많은 정보를 전달할 수 있지만 에러도 많이 발생시킨다.

5. Hidden terminal problem : 서로 거리가 먼 노드의 신호로 인해 interference가 발생한다. 이때 각 노드들은 멀어서 서로를 인식하지 못한다. 참고로 interference와 collision은 둘다 데이터 전송에 영향을 주는 요소지만, 차이는 interference는 작을수록 데이터를 빠른 속도로 전송할 수 있고, collision은 yes or no로 데이터 전송을 할지 말지를 결정한다.

6. signal attenuation : 신호가 무선 매체를 통과함에 따라 세기가 약해지는 현상을 말한다.

 

FDMA - TDMA - CDMA (1G, 2G, 3G)

CDMA - 코드를 나눠 서로 다른 코드들이 직교성이 있을 때 각각의 receiver가 데이터를 복구할 수 있기에 multiple access가 가능하다. code bit 수만큼의 user가 간섭없이 사용할 수 있다.

 

 

Wifi

 

802.11 Wireless LAN

- 802.11b : 2.4 / 5 GHz의 라이센스가 없는 스펙트럼을 가진다. 참고로 블루투스는 2.4 GHz를 쓰기에, 와이파이를 동시에 쓰는 경우 5GHz를 쓰는게 간섭이 덜할 것이다. 그리고 와이파이에서 2.4GHz와 5GHz를 비교하면, 주파수 대역이 높아질수록 직진성이 강해져 물체를 못뚫기때문에 통신에 불리하다. 역설적으로 속도는 2.4GHz가  좀 더 느릴 수 있다.

11Mbps까지 가능하고, 물리계층에는 DSSS(=CDMA)를 사용하며, 모든 host가 같은 chipping code를 가진다.

- 802.11a : 5-6 GHz range, 54 Mbps까지 가능.

- 802.11g : 2.4-5 GHz, 54 Mbps.

- 802.11n : multiple antennae를 지원하며, 안테나 수에 비례해서 속도가 증가한다.

모든 종류는 Link layer에서 CSMA/CA를 사용하며, base station(wifi의 경우 AP)과 ad-hoc network를 둘다 지원한다.

헷갈리면 안되는 점은, 물리계층 기술과 link layer의 기술은 다르다는 것이다.

physical layer에는 CDMA를 쓰고, link layer에선 CSMA/CA를 사용한다.

 

- 802.11 LAN architecture

wireless host는 base station과 통신한다.

host, AP, AP와 연결된 station, host간 ad hoc mode를 포함한 무선랜의 기본적인 망 단위를 Basic Service Set(BSS)라 한다. 이는 곧 wifi 명을 의미하기도 하며, 하나의 AP에 여러 BSS를 만들 수도 있다.

 

- 802.11 association

802.11b : 2.4GHz-2.485GHz를 11등분으로 나눈다. 이 중 하나의 channel을 사용한다.

host는 해당 ap에 associate해야되므로, AP의 이름(SSID)과 MAC address를 scan해서 사용한다. 이후 DHCP를 통해서 IP address를 얻는다.

 

- 802.11 passive/active scanning

passive scanning : 각 AP가 beacon frame(주기적으로 host를 찾는 메세지)를 뿌리고, 이걸 받은 host는 받는 signal strength가 더 큰 쪽으로 host가 association request를 보내고 ACK을 받 연결한다.

active scanning : host가 먼저 scanning message를 broadcasting하고, AP가 응답하면 host가 association request를 보내고 그에 대한 ACK을 받아 Associate되는 것이다

.

 

- 802.11 : multiple access

802.11은 802.3과 다르게 collision detection은 하지 않는다.

이때 CSMA/CA를 통해 collision을 피한다. 

collision avoidance의 idea는 random backoff로 가장 빠른 backoff를 가진 node가 채널을 예약한다.

굉장히 작은 prove packet인 RTS(Request to send)를 먼저 보내고 BS는 CTS(clear to send)를 broadcast해서 collision이 발생안하는 것을 확인하고 본래 데이터를 보낸다.

 

이 RTS-CTS exchange는 hidden terminal problem을 해결할 수 있다.

A도 AP한테, B도 AP한테 보내고 싶을 때 우선 RTS를 보내고, 충돌이 발생하면 AP는 CTS를 보내지 않는다.

이렇게 되면 두 노드는 random backoff를 거친 뒤 다시 RTS를 전송하고, 그 중 random이 짧은 노드가 보낸 RTS를 AP가 받아 CTS를 응답할 수 있다. 이러한 과정을 통해 두 노드가 서로의 존재를 몰라도 collision을 회피할 수 있다.

 

 

- 802.11 frame: addressing

 

802.11은 link layer이므로 MAC address가 표기되어 있을 것이다.

addressing의 과정은, 단말이 AP에게 associate할 때 AP MAC address - Host MAC Address - Router MAC address를 보내고, AP가 router와 연결할 땐 Router MAC address와 Host mac address를 보낸다. frame 안에는 RTS/CTS, frame type등이 정의되어 있다.

 

- 802.11: mobility within same subnet

한 subnet 안에서 AP를 바꾸면, 같은 ip를 사용할 수 있다,

 

- 802.11: advanced capabilities

Rate adaptation은 물리계층에서 정의되는데, 아래 그래프에서 SNR이 줄어들면 BER이 늘어난다.

BER이 지나치게 높으면 trasmission을 제대로 못하므로 modulation을 바꾼다.

 

wireless는 여러 요인에 의해 unstable하기 때문에, channel 환경이 dynamic하게 변한다.

채널의 strength가 높으면 SNR이 좋다. 그 경우 QAM256을 통해 높은 속도로 transmission한다. QAM256을 쓰는 도중 채널의 strength가 안좋아지면, BER이 높아지므로 modulation을 변경해서 BER을 낮춘다.

즉 채널 환경에 따라 SNR은 바뀌는데, 이에 맞춰서 modulation을 adaptation하는 것을 말한다.

 

- Power management

보낼 데이터가 없으면 power를 saving하기 위해 AP나 device가 slepp하는 것이다. 

일정 주기마다 깨어나서 보낼 데이터가 있는지 확인한다.

 

- 802.15: personal area network (Bluetooth)

LAN은 100m 정도의 반경을 가지지만, PAN은 10m 정도의 반경을 가진다.

PAN은 master/slave로 나뉘어 연결을 요청하게 된다.

 

Cellular network

 

Cellular network의 각 cell은 MSC(Mobile switching Center)를 통해 Public telephone network로 간다. 이때 cell은 base station, mobile user 등을 포함한다. MSC는 PTN과 cell을 유선으로 연결해주고, mobility를 handling하는 역할을 한다.

 

자원은 시간과 주파수로 이루어져 있는데, 이를 어떻게 분할하느냐에 따라 FDMA/TDMA로 나뉜다.

1세대의 경우 FDMA, 2세대는 TDMA, 3세대는 CDMA(cellular)다. 4세대는 OFDMA(LTE)다.

 

2G (voice) network 기지국을 BTS라 한다. BTS들이 하나의 BSC에 묶이고, BSC가 MSC에 묶인 형태다.

 

3G (voice+data) network에서 기지국들은 radio network controller에 붙어있고, 이는 MSC에 붙어있다. MSC에 SGGN이 결합하여, public internet도 이어지게 되어 전화망과 인터넷이 같이 연결된다.

 

이때 중요한 것은 새로운 cellular data network는 기존 cellular voice network와 병렬적으로 작동한다.

 

4세대 LTE는 전화망이 사라지고, 모두 IP가 되었다. 모든 트래픽이 IP 위에 올라간다. 음성은 VoIP를 사용한다.

단말들의 Mobility를 관리하는 MME, 기지국에 S-GW와 P-GW의 gateway가 추가되었다.

 

 

- LTE

 

LTE에서 단말과 기지국을 E-UTRAN이라 하며, 기지국은 eNodeB라고 한다. eNodeB는 무선 자원 관리를 포함한 여러가지 일을, MME는 연결 및 인증, 이동성 관련 일을 한다. 이 둘을 WLAN의 AP라고 생각하면 된다.

추가로 HSS는, 이동 장치의 홈 네트워크에 위치하여 가입자에 대한 다양한 정보(인증과 권한, 접속할 수 있는 서비스 등)을 관리한다.

S-GW는 내부에서 데이터 전송을 처리하며, P-GW는 모든 단말에 IP를 할당하고 NAT 서비스(Network Address translation, 패킷의 주소를 변환하여 ip주소를 절약하고 보안성을 높임)를 제공한다.


- Radio + Tunneling

ue는 휴대폰과 같은 user equipment, eNodeB는 ue와 무선연결을 하는 장비다.

연결을 도식화하면 아래와 같다.

 

 

여기서 터널링이 사용되는데, GTP라는 터널링 프로토콜을 통해 UDP 패킷에 캡슐화된 데이터를 담아 S-GW로 전달한다.

이렇게 전송 과정에서 캡슐화되기 때문에, transmission의 endpoint만 바꿔서 통신이 가능하다.

 

- QoS in LTE

LTE는 돈을 받고 서비스를 제공하기에 Quality가 중요하다. LTE는 서비스 별로 다른 Quality를 제공한다.

 

- home network and visited network

셀룰러는 기기를 식별하는 SIM card를 통해 네트워크 유저를 관리하므로 Home network라는 개념이 있다.

 HSS에 사용자 정보를 가지고 있다. mobile은 foreign agent에 연락하여 visited network에 들어왔다고 말한다.

그 후 foreign agent가 home agent에게 연락하여 해당 mobile이 자기 network에 있다고 말한다.

이러한 방법으로 foreign agent는 mobile에 대해 알고, home agent는 mobile의 location을 알게 된다.

 

이동장치가 홈네트워크가 아닌 다른 셀룰러 네트워크와 연결되면, 그 장치를 visited network에서 roaming한다고 한다.

이동 장치가 home network를 갖는다는 것은 두 장점이 있다.

1. 홈 네트워크가 해당 장치에 대한 정보를 제공할 수 있는 위치 제공

2. 로밍 중인 이동 장치와의 통신을 위한 조정 지점

 

- Handling mobility in LTE

mobility는 end system이 handling한다.

그 방법은 indirect routing과 direct routing이 있다.

indirect routing의 경우 correspondent가 mobile에 데이터를 전송할 때, 데이터가 mobile의 permanent address로 전달된다. 이후 홈 네트워크 게이트웨이가 패킷을 가로채서 HSS로 mobile이 위치한 visited network care-of-address의 gateway router로 전달한다. visited network의 gateway router는 NAT 변환 수행 및 패킷을 mobile로 전달한다.

이때 correspondent는 mobile이 어디있는지 몰라도 된다.(transparent to correspondent)

이 방식은 triangle routing problem이라 불리는, correspondent가 보내는 packet이 항상 home agent를 거쳐서 전달되기 때문에 비효율적이라는 문제가 있다.

 

direct routing의 경우 triangle routung 문제가 없으나, 좀 더 복잡하다.

먼저 correspondent가 mobile의 home network에 request를 보내 mobile의 foreign address를 받고, correspondent가 직접 foreign agent에 전송해서 foreign agent가 패킷을 mobile에 전달한다. 이후 mobile은 correspondent에 바로 응답한다.

triangle routing problem은 없지만, correspondent는 home agent로부터 care-of-address를 알아내야한다. (non-transparent to correspondent)

이 경우 mobile이 다른 foreign network로 이동하는 경우 그 주소를 추적하는 anchor foreign agent가 필요하다.

 

 

loading