아래의 글은 LTE QoS에 관한 펌글로, 출처는
https://www.netmanias.com/ko/?m=view&id=blog&no=5380 입니다.
잘 정리된 글 같아서 한번 가져와 보았으며, 문제가 있다면 아래에 댓글로 달아 주시기 바랍니다.
https://www.netmanias.com/ko/?m=view&id=blog&no=5380 입니다.
잘 정리된 글 같아서 한번 가져와 보았으며, 문제가 있다면 아래에 댓글로 달아 주시기 바랍니다.
=================================================
오늘은 LTE QoS에 대해서 설명드리도록 하겠습니다.
유선통신망이던 무선통신망이던 모두 표준(IETF RFC, IEEE 802, 3GPP, NWG등)에 기반한 QoS 기능을 제공합니다. 통신 방식(유선 Ethernet/IP/MPLS, 무선 LTE/WiBro/Wi-Fi)에 따라 그 표준과 방식의 차이점은 있겠으나 QoS는 결국 (1) 돈을 많이낸 가입자의 트래픽은 그 품질을 보장해 주겠다. (2) 중요한 서비스 트래픽은 그 품질을 보장해 주겠다(Voice나 Video 트래픽은 Internet 트래픽보다 소중하니까...). 입니다.
사실 (1)번은 그리 일반적이지 않을 것 같구요(우리가 통신사업자에 서비스 가입할때 돈 많이 내면 QoS 보장해 주겠다는 상품은 없잖아요). 보통 통신사업자는 (2)번을 위해 QoS를 사용합니다. 유선망에서 가장 일반적으로 QoS가 적용되는 것이 아마도 VoIP나 IPTV 서비스 일것입니다. 저희 집은 KT IPTV를 이용하고 있는데요. KT는 인터넷 트래픽에 비해서 IPTV(Live & VoD) 트래픽의 QoS 등급을 더 높여서(L2 구간에서는 802.1p로, IP 구간에서는 DSCP로, MPLS 구간에서는 MPLS header의 EXP 필드를 이용하여 차별화함) 인터넷 트래픽이 아무리 많아도 IPTV 트래픽의 품질을 보장합니다. 그래서 저는 끊김없이 모자이크 없이 소녀시대를 잘 볼 수 있었습니다. ^^*
자 이제 무선통신서비스인 LTE에서의 QoS를 살펴 보도록 하겠습니다. 오늘은 LTE QoS에 기본적인 설명만 드리구요, 이후 후속편에서 LTE QoS에 대해 심도깊게 기술들을 설명 드리도록 하겟습니다.
전에도 설명드린 바와 같이 UE가 LTE 망에 접속을 하면 UE부터 P-GW까지(UE - eNB - S-GW - P-GW) EPS Bearer라는게 생성이 됩니다(GTP 방식의 터널). 그리고 이 EPS Bearer는 UE당 하나만 생성되지 않고 각 서비스 특성에 따라 여러개가 생성이 될 수도 있습니다(예를 들어, Internet용 EPS Bearer, IPTV용 EPS Bearer, VoIP용 EPS Bearer.... 이건 통신사업자의 정책입니다.). 이 EPS Bearer는 생성되는 시점에 따라 2가지 종류의 Bearer가 존재합니다.
Default EPS Bearer
- 단말(UE)이 LTE망에 접속하면 무조건 하나의 EPS Bearer가 생성되어야 하며, 이 Bearer를 "Default EPS Bearer"라고 합니다. 그리고 이 Bearer는 UE가 망에서 빠져나오기(Detach) 전까지 유지됩니다.
- Default EPS Bearer의 QoS 특성은 Non-GBR(Non-Guaranteed Bit Rate) 입니다. 즉, Best Effort (품질을 보장할 수 없는) 특성을 가집니다.
Dedicated EPS Bearer
- Default EPS Bearer가 생성된 후에 추가적으로 필요시 생성되는 Bearer를 Dedicated EPS Bearer라고 합니다. 예를 들어, 처음 LTE 망에서 접속한 UE는 Internet용으로 Default EPS Bearer만 생성이 됩니다. 그런데 이후 UE가 Voice(VoIP) 서비스를 사용하려 합니다. 그리고 이 Voice 서비스는 Internet 서비스에 비해 QoS 품질이 좋아야 하므로 Internet용 Default EPS Bearer를 통해 서비스가 될 수 없습니다. 따라서 이 경우, On-demand로 Voice용 Dedicated EPS Bearer가 생성될 수 있습니다.
- Dedicated EPS Bearer는 GBR로 생성될 수도 있고, Non-GBR로 생성될 수도 있습니다. 위의 예와 같이 Voice를 위한 Dedicated EPS Bearer라면 GBR로 생성이 되어야 QoS 품질을 보장 받을 수 있을 것입니다.
EPS Bearer는 UE와 P-GW간에 생성되는 터널로써, 이 터널(EPS Bearer)을 통해 다양한 종류의 트래픽(5-tuple로 구분되는 트래픽)이 지나 다니게 됩니다. 이 다양한 종류의 트래픽을 IP flow라고 부르고, 이 IP flow는 패킷의 5-tuple (Source IP, Destination IP, Protocol ID, Source Port, Destination Port)로 구분됩니다. 예를 들자면, 어떤 UE가 네이버에 접속을 한다면 5-tuple은 아래와 같게 될 것이고 이 트래픽이 하나의 IP flow로 정의 되는 것입니다.
- Source IP = UE IP 주소
- Destination IP = 네이버 서버 IP 주소
- Protocol ID = 6 (TCP를 의미함)
- Source Port = Random number (Ephemeral port number)
- Destination Port = 80 (WWW을 의미함)
IP Flow와 SDF(Service Data Flow)
그렇다면 하나의 UE가 사용하는 응용(서비스)에 따라(송수신하는 트래픽에 따라), 매우 많은 개수의 IP flow들이 존재하게 될 것인데요(네이버 접속, 다음 접속, 카톡, 게임, VoIP, YouTube 등등). 이 IP flow들은 P-GW의 5-tuple 기반의 classifier(일반 유선 장비의 ACL이라고 보시면 됨)에 의해서 SDF(Service Data Flow)로 매핑이 됩니다. 이 5-tuple 기반의 classifier를 LTE에서는 SDF Template이라고 부릅니다. 이렇게 여러개의 IP flow들이 각각 5-tuple 기반으로 분류되어 SDF로 매핑이 되면, 이제 P-GW는 SDF 별로 QoS를 처리하고(QoS 처리 방법은 다음 시간에...) 그 SDF가 EPS Bearer로 매핑이 되어 UE까지 전달되게 됩니다.
P-GW에서 SDF별로 QoS 처리가 된 후 ESP Bearer로 매핑이 되면, P-GW에서 UE까지는 SDF가 보이지 않고 EPS Bearer 단위로 QoS 처리가 됩니다.
어제에 이어 LTE QoS에 대해서 설명드리며, 오늘은 LTE에서 사용되는 QoS 파라미터의 의미를 살펴 보도록 하겠습니다.
EPS Bearer는 Default EPS Bearer와 Dedicated EPS Bearer로 나뉘어지며, 이 EPS Bearer는 다음과 같은 LTE QoS 파라미터를 가지고 LTE 망에서 QoS 제어를 받습니다.
- Resource Type: GBR or Non-GBR
- QCI
- ARP
- GBR
- MBR
- APN-AMBR
- UE-AMBR
이제 각 파라미터에 대해서 살펴 보도록 하겠습니다.
Resource Type = GBR (Guaranteed Bit Rate)
대역폭을 보장받을 수 있는 타입의 EPS Bearer를 나타냅니다. 자연스럽게 "보장받을 대역폭" 파라미터(GBR, 뒤에서 설명)가 QoS 파라미터에 함께 포함됩니다. Dedicated EPS Bearer만이 GBR 타입이 될 수 있고, Default EPS Bearer는 GBR 타입이 될 수 없습니다.
Resource Type = Non-GBR
대역폭을 보장받지 못하는 Best Effort형 타입의 EPS Bearer를 나타냅니다. Default EPS Bearer는 이 Non-GBR 타입만 될 수 있고, Dedicated EPS Bearer는 GBR 타입일 수도 있고 Non-GBR 타입일 수도 있습니다.
QCI (QoS Class Identifier)
QCI는 QoS 우선 순위를 정수값인 1~9로 표현한 것으로 표준에 근거하여 각 값마다 Resource Type (GBR or Non-GBR), Priority (1~9), Packet Delay Budget (패킷 지연 허용치가 50ms ~ 300ms로 표현), Packet Error Loss Rate (패킷 손실 허용치를 10에 -2에서 10에 -6으로 표현)의 특성(값)을 내포하고 있습니다. 자세한 값은 구글에서 "3GPP TS 23.203"이라고 검색하셔서 해당 문서 표 6.1.7를 참조하세요.
분명 이 QCI 값에 따라 EPS Bearer 혹은 SDF가 보장받을 수 있는 QoS 품질이 달라지는 것인데요. LTE 장비에서 이 QCI 값 기반으로 어떻게 QoS를 차등화하는지, 그 구현에 대해서는 저도 잘 모르겠네요(개발자가 아니라서... 쩝). 다만 확실한 것은 아래 3GPP 표준 내용과 같이 QCI=1이 가장 좋고 QCI=9가 가장 안좋습니다. ^^*
QCI=1
: Resource Type=GBR, Priority=2, Packet Delay Budget=100ms, Packet Error Loss Rate=10에 -2, Example Service=Voice
QCI=9
: Resource Type=Non-GBR, Priority=9, Packet Delay Budget=300ms, Packet Error Loss Rate=10에 -6, Example Service=Internet
제 생각에(맞을지는 모르겠어요) 본 QCI 값은 주로 eNB가 무선구간에서 패킷 전송 우선순위를 제어하는데 사용하는 듯 합니다. 왜냐면 유선구간 장비인 S-GW, P-GW가 패킷을 처리하면서 이와 같은 QCI별 특성을 고려하여 Packet Forwarding을 한다는게 쉽지 않거든요(시스코/주니퍼 라우터가 패킷별 QoS를 처리할 때 Delay나 Error Loss Rate를 고려하지는 않잖아요. 단순히 패킷의 우선순위(802.1p/DSCP/MPLS EXP) 기반에 스케쥴링(WFQ, DWRR, SPQ등)을 통해 어떤 패킷을 먼저 내보낼지만 제어하니까요).
ARP (Allocation and Retention Priority)
ARP(0~15 중에 하나의 우선순위 값을 가짐)는 LTE 망에 자원이 부족한 상황에서, 새로운 EPS Bearer가 생성되어야 하는 경우,
- 기존 EPS Bearer를 삭제하고 새로운 EPS Bearer를 생성할 것이냐, (High Priority ARP를 가진 EPS Bearer가 생성되기 위해 Low Priority ARP를 가진 EPS Bearer를 삭제한다)
- 아니면 이 새로운 EPS Bearer 생성을 거절 할 것이냐를 판단하는 파라미터입니다.
따라서 이 ARP 값은 새로운 EPS Bearer 생성/거절에만 관여하지, 일단 EPS Bearer가 생성이 되고 패킷들이 지나다니는 상황에서는 Packet Forwarding 우선 순위에는 관여하지 않습니다.
이 ARP의 쓰임새에 예로 많이 나오는 것이 Emergency VoIP call입니다. 즉, 119 긴급 VoIP 전화를 위한 EPS Bearer 생성을 위해서는 기존의 EPS Bearer를 삭제할 수 있다는 거죠.
GBR(UL/DL)
Resource Type이 GBR인 경우 사용되는 파라미터로 LTE망에서 보장해야 하는 대역폭(bitrate)을 명시하는 파라미터입니다. Non-GBR형인 경우 대역폭 보장이 없으므로 본 GBR 파라미터가 적용되지 않습니다. (UL은 상향 트래픽 대역폭, DL는 하향 트래픽 대역폭)
MBR(UL/DL)
Resource Type이 GBR인 경우 사용되는 파라미터로 LTE망에서 허용된 최대 대역폭을 명시하는 파라미터입니다. 만약 이 MBR에서 명시한 대역폭 이상으로 패킷이 유입되면 폐기됩니다.
APN-AMBR(UL/DL)
앞서 MBR 파라미터를 보시면서 왜 Resource Type이 Non-GBR형인 경우에는 "대역폭 제한"이 없을까?라고 의문을 가진 분들이 있을 것입니다. Non-GBR형인 경우, 모든 Non-GBR형 EPS Bearer를 합쳐서 "대역폭 제한"이 적용됩니다. 그리고 이를 제어하는 파라미터가 APN-AMBR(UL/DL)입니다. 위 그림의 예에서 보시는 바와 같이 2개의 Non-GBR형 EPS Bearer가 존재하고 이 2개의 EPS Bearer에게 허용된 최대 대역폭을 APN-AMBR(UL/DL)에서 명시합니다.
UE-AMBR(UL/DL)
위 그림 상에는 APN-AMBR과 UE-AMBR이 마치 같은 것처럼 보이는데요. 아래 그림을 봐 주시죠...
하나의 UE는 여러개의 PDN에 접속이 가능하고(예를 들어, PDN1은 인터넷용, PDN2는 IMS를 이용한 VoIP용) 각 PDN 접속마다 UE는 IP 주소를 가지게 됩니다. 이 경우, UE-AMBR(UL/DL)은 PDN에 상관없이 해당 UE가 송수신하는 모든 Non-GBR형 EPS Bearer에게 허용된 최대 대역폭을 명시하게 되는 것입니다.
오늘은 LTE QoS 실전 편으로 LTE망에서 LTE QoS를 이용하여 P2P 트래픽을 제어하는 예를 보여 드리도록 하겟습니다.
가상의 통신사업자 "NMC Telecom"이 있다 하구요, 이 통신사업자는 LTE 가입자에게 다음과 같은 상품(Service Plan)을 제공하고 있습니다.
- 인터넷 사용에 대해서는 대역폭 제어를 하지 않습니다.
- 다만 BitTorrent와 같은 P2P 트래픽에 대해서는 하향(Download) 512Kbps, 상향(Upload) 128Kbps로 속도 제어를 합니다.
이를 위한 LTE QoS 구조가 아래와 같습니다. UE(단말)와 eNB(무선 기지국)가 있구요, SAE-GW는 S-GW와 P-GW 기능을 하나로 합친 일체형 장비입니다.
설명을 시작하기에 앞서
일단 LTE 장비(SAE-GW)에서 P2P 트래픽을 검출하기 위해서는 DPI(Deep Packet Inspection) 기능이 포함되어 있어야 합니다. 이 DPI 기능은 Packet의 payload까지(L7 까지) 들여다 볼 수 있어 이를 통해 SAE-GW를 지나다니는 패킷이 Web인지, Voice인지, Video인지, P2P인지등의 트래픽의 응용을 모두 구분 할 수 있습니다. 참고로 이 DPI 기능만을 제공하는 독립형 장비(Cisco SCE, Sandvine PTS)도 시장에 나와 있습니다.
하향 트래픽 (DL)
- 트래픽이 인터넷(PDN)에서 SAE-GW로 유입이 되면, 일단 SAE-GW 내의 DPI 기능에 의해서 P2P 트래픽인지 아닌지를 구분합니다.
- P2P 트래픽에 대해서는 SDF(Service Data Flow)=1, EPS Bearer ID=5로 매핑이 됩니다. (SAE-GW는 P2P 트래픽을 어떤 SDF와 어떤 EPS Bearer ID로 매핑할지에 대한 정보를, 가입자가 LTE 망에 접속할때 PCRF로 부터 받습니다.)
- SDF=1에 대해서는 MBR(Maximum Bit Rate)=512Kbps로 정의되어 있어, P2P 트래픽들은 512Kbps로 Rate Policing이 됩니다. (512Kbps 이상 P2P 트래픽이 유입되면 discard)
- 한편 DPI 기능에 의해서 P2P가 아닌것으로 판명된 트래픽은 SDF Filter(5-tuple based Packet Classifier)에 의해서 분류 작업을 하는데, 여기서는 그 Filter가 (Source IP, Destination IP, Protocol ID, Source Port, Destination Port) = (*, UE IP, *, *, *)로 되어 있습니다. 여기서 '*'는 any, 즉 wildcard(무슨 값이든 상관없음)의 의미입니다. 따라서 해당 UE의 IP 주소를 목적지로 하는 모든 트래픽은 본 Rule에 match가 되고, 따라서 P2P가 아닌 나머지 인터넷 트래픽은 SDF=2, EPS Bearer ID=5로 매핑이 되어 집니다. (SAE-GW는 본 SDF Filter 정보 역시 가입자가 LTE 망에 접속할때, PCRF로 부터 받습니다.)
- SDF=2에 대해서는 MBR(Maximum Bit Rate)=Unlimited로 정의되어 있어, P2P가 아닌 나머지 인터넷 트래픽은 대역폭 제어(제한)를 받지 않습니다.
- SDF=1과 SDF=2는 모두 APN-AMBR(Non-GBR형 EPS Bearer들에 대해, 동일 APN(여기서는 Internet)으로 부터 수신된 트래픽의 대역폭을 제어하는 QoS 파라미터)=Unlimited에 의해서 대역폭 제어를 받지 않으며, 이 SDF들은 EPS Bearer ID=5에 매핑이 되어 GTP tunnel을 통해 eNB로 전달됩니다. 결과적으로 1~6의 과정을 통해 P2P는 512Kbps로 대역폭을 제어받고, 나머지 인터넷 트래픽은 대역폭 제어를 받지 않고 eNB로 전달이 됩니다.
- EPS Bearer ID=5를 통해 eNB로 전달된 트래픽은 eNB의 UE-AMBR(Non-GBR형 EPS Bearer들에 대해, UE로 향하는 모든 트래픽에 대한 대역폭 제어)=Unlimited에 의해서 대역폭 제어를 받지 않고 무선 구간의 리소스가 되는 선에서 eNB는 최선을 다해 트래픽을 UE로 전달합니다.
상향 트래픽 (UL)
- UE 내의 Application에서 트래픽이 발생하면, UE의 TFT Filter(UE는 SDF를 구분하지 못하고, 어떤 응용을 어떤 EPS Bearer에 실어야 할지만 압니다. SDF 구분은 SAE-GW(P-GW)에서만 !)에 의해서 EPS Bearer ID=5로 매핑이 되어 집니다.(UE는 본 TFT Filter 정보를, 가입자가 LTE 망에 접속할때 LTE 망으로 부터 받습니다.)
- Internet이란 APN으로 나가는 모든 Non-GBR형 EPS Bearer들(여기서는 Default EPS Bearer 하나이고, 이 Bearer는 Non-GBR 타입)의 트래픽은 모두 UE의 APN-AMBR에 의해서 대역폭을 제어 받는데, 여기서는 Unlimited이므로 UE는 P2P든 아니든 송신 가능한 최대 대역폭으로 보냅니다.
- 본 UE 트래픽은 eNB로 전달이 되고, eNB는 UE-AMBR에 의해서 해당 UE가 보낸 모든 Non-GBR형 EPS Bearer들의 트래픽에 대한 상향 대역폭 제어를 합니다. 사실 UE에서 최대 대역폭으로 보내고 eNB는 UE-AMBR로 제어한다는 말은 틀린 표현이구요. eNB에서 UE-AMBR 값에 의거하여 해당 UE에게 송신 가능한 기회(무선구간 time slot)를 주기 때문에 정확한 표현은 "eNB의 UE-AMBR 값에 의해서 UE는 무선 구간으로 트래픽을 전송할 대역폭을 제어 받는다"가 맞습니다. 여기서는 UE-AMBR=Unlimited이므로 대역폭 제한 없이 무선구간 상황에 맞게 최선을 다해 UE가 eNB로 트래픽을 보낼 것입니다.
- eNB로 부터 EPS Bearer ID=5를 통해 트래픽을 수신한 SAE-GW는 동일 APN(여기서는 Internet)으로 나가는 Non-GBR형 EPS Bearer들의 트래픽을 모두 모아 APN-AMBR로 대역폭을 제어합니다. 여기서도 역시 Unlimited로 대역폭 제어를 하지 않습니다.
- 이제 SAE-GW의 DPI가 P2P 트래픽과 아닌 트래픽을 분리시킵니다. (결국 상하향 모두 P2P를 검출하는건 SAE-GW이죠)
- P2P 트래픽은 SDF=1로 정의되어 SDF=1용 MBR=128Kbps에 의해서 대역폭이 128Kbps로 제한이 됩니다.
- 그리고 나머지 Internet 트래픽들은 SDF=2로 정의되어, SDF=2용 MBR=Unlimited에 의해서 대역폭 제어를 받지 않고 인터넷으로 나가게 됩니다.
이와 같은 방법을 통해 하나의 EPS Bearer ID를 통해 지나다니는 트래픽을 P2P와 나머지 Internet으로 구분하고, 이 중에 P2P만 상/하향 대역폭을 제어할 수 있습니다.
댓글 없음:
댓글 쓰기
글에 대한 의문점이나 요청점, 남기고 싶은 댓글이 있으시면 남겨 주세요. 단 악성 및 스팸성 댓글일 경우 삭제 및 차단될 수 있습니다.
모든 댓글은 검토 후 게시됩니다.