KR100365788B1 - 무선 패킷 데이터시스템의 수신 트래픽 양 결정방법 및 장치 - Google Patents

무선 패킷 데이터시스템의 수신 트래픽 양 결정방법 및 장치 Download PDF

Info

Publication number
KR100365788B1
KR100365788B1 KR1020000054749A KR20000054749A KR100365788B1 KR 100365788 B1 KR100365788 B1 KR 100365788B1 KR 1020000054749 A KR1020000054749 A KR 1020000054749A KR 20000054749 A KR20000054749 A KR 20000054749A KR 100365788 B1 KR100365788 B1 KR 100365788B1
Authority
KR
South Korea
Prior art keywords
tcp
traffic
amount
delay
buffer size
Prior art date
Application number
KR1020000054749A
Other languages
English (en)
Other versions
KR20020021577A (ko
Inventor
이성원
Original Assignee
삼성전자 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자 주식회사 filed Critical 삼성전자 주식회사
Priority to KR1020000054749A priority Critical patent/KR100365788B1/ko
Publication of KR20020021577A publication Critical patent/KR20020021577A/ko
Application granted granted Critical
Publication of KR100365788B1 publication Critical patent/KR100365788B1/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/0273Traffic management, e.g. flow control or congestion control adapting protocols for flow control or congestion control to wireless environment, e.g. adapting transmission control protocol [TCP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/0278Traffic management, e.g. flow control or congestion control using buffer status reports
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/0289Congestion control

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

전송제어프로토콜(TCP: Transport Control Protocol)에 따라 통신하는 시스템의 수신단에서 무선 상황에 적합하게 전송제어프로토콜의 흐름제어를 하는 방법 및 장치가 개시되어 있다. MS와 서버의 TCP을 수정하지 않고 BSS 혹은 IWF/PDSN/Proxy에서 단순한 모듈을 첨가하는 것만으로 TCP의 무선 링크에서의 성능을 향상시키는 방안을 구현하였다.

Description

무선 패킷 데이터시스템의 수신 트래픽 양 결정방법 및 장치{Method and Apparatus for deciding traffic capacity in Wireless Packet Data System}
본 발명은 전송제어 프로토콜(TCP)에 따라 통신하는 시스템의 수신단에서 수신할 수 있는 트래픽의 양을 결정하는 방법 및 장치에 관한 것으로, 특히 TCP의 성능 개선을 위한 방안에 대한 것이다.
전형적인 이동통신시스템의 구성 및 TCP(Transport Control Protocol, 이하 "TCP"라 칭함)의 종단(End-Point) 구성 방안이 도1에 나타나 있다.
현재의 이동통신시스템은 도1의 (a)에서 나타나듯이, 기본적으로 가입자 혹은 가입자의 단말기를 지칭하는 MS(Mobile Station 혹은 MT : Mobile Terminal)과 무선 자원의 관리 및 제어를 수행하는 BTS(Base Transceiver System), BTS를 제어하면서 유선 망과의 연결을 지원하는 BSC(Base Station Controller)로 이루어진다. 일반적으로 BTS 60와 BSC 50을 총칭하여 BSS 30(Base Station System)라고 한다. 인터넷에 접속하는 방식, 즉 IP(Internet Protocol)을 기반으로 구성된 통신망에 따라서 도1의 (b)와 같이 BSC 50이 IWF(Inter-Working Function)이나 PDSN(PacketData Service Node)을 통하여 인터넷에 접속하기도 한다. 도1의 (a)와 (b)의 경우에는 MS 40와 유선 망의 Node 10간에 종단간 '점대점(End-To-End)' 연결이 이루어지며, TCP의 모든 제어들은 BSS 30의 관여 없이 '점대점'으로 이루어진다. 즉, 도2와 같이 TCP의 에러 제어 및 흐름 제어 기능도 종단간에 이루어지는 특징을 가진다.
그러나, 무선에 비교하여 비교적 에러가 적은 환경을 대상으로 만들어진 TCP가 무선 통신망에서 사용되는 경우에는 많은 문제점을 보이고 있다. 이로 인하여, 최근에는 무선 통신망에 지리적으로 가까운 위치에 프록시 서버를 위치시키고, 단말이 유선 망의 서버를 직접 접속하지 않고, 프록시 서버를 경유하도록 함으로써 무선망에서의 TCP 성능을 개선하고자 하는 노력이 진행되었다. 즉, 무선 MS가 직접 유선 망에 접속하는 것을 허용하지 않고, 도1의 (c)나 (d)와 같이 MS 40은 무선에 적합한 설정을 갖춘 상태에서 프록시 서버(Proxy server) 80에 접속하며, 프록시 서버는 유선 망에 적합한 TCP 환경을 가지고서, 다시 유선 망의 서버로 접속하는 방식이다. 따라서, 무선 MS는 직접 유선 망의 서버로 접속하지 않는 간접적인 접속을 수행하게 된다.
이와 함께, 기존 이동통신시스템의 내부 모듈 구성도가 도3에 나타나 있다. 도1의 (a)와 같이 BSS가 직접 인터넷에 접속하는 경우의 구성도가 도3a에 나타나 있으며, 도1의 (b)∼(d)와 같은 경우의 모듈 구성도가 도3b에 나타나 있다.
도3a, 도3b에서 나타나듯이, BSS는 무선 MS와 통신을 수행하기 위한 RF(Radio Frequency) 송신기(Transmitter) 326과 수신기(Receiver) 325를 가지고있다. 아울러, 무선 상황을 관리하고 트래픽 채널을 제어하는 스케쥴러(Scheduler)가 동작하며, 상위 계층과 물리 계층의 인터페이스를 지원하는 MAC(Medium Access Control)이 동작한다. 또한, 무선 상황의 에러 검출 및 복구를 지원하는 RLP(Radio Link Protocol 혹은 RLC: Radio Link Control)가 동작한다. 그리고, 기본적으로 인터넷과 연동하기 위한 중앙처리기 3210이 동작하며, 중앙처리기 3210과 RLP/MAC/RF-스케줄러 324간의 데이터 버퍼링을 위한 송신버퍼 327과 수신버퍼 323이 존재한다.
프록시를 지원하는 경우를 고려한다면, 유선 망과 무선망에 적합한 TCP 설정을 찾아내서 사용자가 느끼기에는 논리적으로 무선 MS와 유선 서버와의 링크를 하나처럼 보이게 하지만, 물리적으로는 분리된 별도의 두개의 링크로 연결하자는 발상이다. 그러나, 궁극적으로 프록시를 사용하는 방안도 무선 MS가 접속하는 서버의 물리적인 위치가 이동통신망에 근접하도록 이동했을 때 무선에 적합한 TCP 설정을 찾는 효과를 프록시를 통하여 얻고자 하는데서 시작되었지만, 프록시와 무선 단말이 TCP 연결을 독립적으로 연결하므로 유선 망의 영향을 최소화했을 뿐, 궁극적으로 무선망에 적합한 구조라고 보기는 어렵다. 즉, 여전히 개별 TCP 연결들은 독립적으로 흐름제어 및 관리를 수행하므로, 무선 상황에서 이루어지는 어떠한 정보도 TCP의 성능 개선을 위하여 이용되고 있지 않다. 따라서, 프록시를 이용하는 방안은 무선망에서의 TCP 성능을 향상시키는 데에는 궁극적인 해결책이 되지 못한다. 더군다나 프록시는 동일한 하나의 서비스에 대한 두개의 링크를 프록시에서 직접 서버와 무선 MS에 대하여 관리해야 하므로 복잡도가 증가한다. 가장 큰 문제로서 논리적으로 동일한 서비스에 대하여 무선 MS와 유선 서버는 서로 다른 TCP 상태 정보를 갖게 되므로 상태 불일치에 따른 위험이 존재한다는 점이다.
가장 근본적으로 TCP가 무선 환경에서 안정적인 성능을 지원하지 못하는 이유는 무선 채널의 상황을 반영하지 못하는 TCP의 흐름제어 기능에 때문이다. 즉, 무선 채널은 유선 채널과 다르게 상황에 따라 달라지는 데이터 전송 속도와 유선 채널에 비교하여 비교적 높은 에러율을 보인다. 또한, 대개의 경우에 있어서 제한된 무선 채널을 복수의 사용자가 이용해야 하므로 스케쥴링 작업이 필요하다. 따라서 전파지연(Propagation delay)보다는 스케쥴링시 버퍼링에 소요되는 큐잉지연(Queuing delay)이 더 큰 문제가 된다. 그런데 유선 망에 적합하게 만들어진 TCP는 종단간에 흐름제어를 수행하므로 급변하는 무선 채널의 상황을 에러 상태로 인지하게되고, 또한 큐잉지연에 의하여 길어진 응답 지연(RTT : Round Trip Time)을 전파지연으로 인식한다.
상기 기술한 문제점을 보다 자세히 나타내기 위하여, TCP의 흐름제어 시에 결정적인 역할을 수행하는 수신단의 TCP 수신버퍼 크기를 계산하는 Bandwidth Product를 고려해 보자. 하기의 [수학식1] Bandwidth Product는 망의 상황에서 가장 효과적인 성능을 제공할 수 있는 수신단의 버퍼 크기를 계산하는 방법이다.
Receiver TCP Rx capacity (bits) = Bandwidth (bits/sec) × RTT(sec)
상기 [수학식1]에서 수신단의 버퍼 크기가 성능에 영향을 끼치는 이유는 다음과 같다. 수신단의 TCP는 자신이 수신할 수 있는 수신버퍼의 크기를 송신단에게 전송한다. 송신단은 수신한 수신단의 TCP 수신 버퍼를 보고 해당 버퍼를 채울 수 있는 수준의 트래픽을 전송한다. 따라서, 링크 상황과 독립적으로 수신버퍼의 크기가 크다면 송신단은 수신단의 버퍼 크기를 채우기 위하여 열악한 링크에 비교하여 많은 량의 트래픽을 송신할 수 있다. 이 경우, 무선 채널이 열악한 경우에는 많은 양의 트래픽이 동시에 BSS에 도착하게 되고, 큐잉 지연이 증가하게 된다. 증가한 큐잉 지연은 TCP의 재전송 타이머가 초과되게 만들 수 있으며, 재전송 타이머의 초과시에는 송신간의 TCP가 채널에 손실이 발생한 것으로 간주하여 재전송을 시도하게 된다. 또한, 송신하는 트래픽의 량을 급격하게 줄임으로서 링크에 소량의 트래픽만이 전송되는 현상이 야기된다. 따라서, 전체적인 처리율은 낮아지게 된다.
또한, 유선 망을 고려하여 설계된 Bandwidth Product를 고려하면, [수학식1]에서 나타났듯이 응답지연(Round-Trip Time)이 증가하면 전송할 양이 증가해야 하는 것으로 가정한다. 그러나, 이는 전파지연이 큰 경우를 가정한 것이다. 전파 지연이 커지므로 전송중인 트래픽이 수신단에 도착하는 데에 많은 시간이 소요되는 것으로 가정한다. 따라서, 송신단은 응답이 늦게 오기는 하지만 전송한 트래픽이 수신단까지 전송되는데 많은 지연이 소요되는 것으로 가정하고 송신단에서 보다 많은 트래픽을 링크로 전송하고자 한다.
그러나, 무선에서의 상황은 정반대의 경우이다.
즉, 무선 링크의 경우에는 대부분 전파지연보다는 버퍼링에 의한 큐잉 지연이 크다. 즉, 한정된 무선 링크를 복수의 사용자들이 공유하다보니, 트래픽이 도착하는 때마다 즉각 전송되지 못하고, 일정 시간이 지난 후에 채널이 수신할 수 있는 상태가 되면 전송되는 이유로 발생하는 지연이다. 따라서, 상기 [수학식1]과 같이 RTT가 증가하였다고 송신단이 트래픽의 전송량을 증가시키거나, 수신단의 TCP 수신버퍼 크기를 크게 설정하면, 현 상태에서도 곧바로 전송하지 못하는 트래픽의 양이 배가되는 결과를 야기하므로, 시스템의 성능은 더욱 낮아지게 된다. 유선상황과는 정반대의 현상이 야기되는 것이다.
그렇다고, 유선 MS의 TCP 수신버퍼 크기를 무선 상황에 맞게 변화시키는 것은 구현상의 문제가 있다. 즉, 이미 많은 단말과 노트북이 TCP을 사용하고 있으며, 어떠한 종류의 TCP 장비가 무선 MS에 접속할지 모르므로, MS의 TCP 프로그램을 변경한다는 것은 사실상 불가능한 것으로 보고 있다.
따라서 상기한 바와 같은 문제점을 해결하기 위한 본 발명의 목적은 MS와 서버의 TCP을 수정하지 않고 BSS 혹은 IWF/PDSN/Proxy에서 단순한 방법을 사용하여 TCP의 무선 링크에서의 성능 향상시키는 방안을 제공함에 있다.
본 발명의 다른 목적은 TCP의 흐름제어 기능을 무선링크의 환경을 고려함으로서 무선링크의 속도가 변하거나 에러율이 변하는 환경에서도 TCP 연결의 처리율이 안정적인 성능을 제공함에 있다.
본 발명의 다른 목적은 개별 TCP 연결이 종단간의 제어를 통하여 수신단의 TCP 수신버퍼 크기를 기반으로 하여 수행하던 흐름제어 기능을, 제한된 용량의 무선 링크 중심으로 변경함으로써 TCP 연결들이 무선 환경에 적응하지 못하여 흐름제어가 제대로 이루어지지 않던 문제점도 해결함을 제공함에 있다.
도 1은 일반적인 이동통신 시스템의 망 구성도 및 TCP 연결 종단 구성을 도시하는 도면.
도 2는 일반적인 이동통신 시스템에서 인터넷이 기지국에 직접 연결하는 구조에서의 TCP 흐름을 제어하는 방안을 도시하는 도면.
도 3a는 일반적인 이동통신 시스템에서 인터넷이 기지국에 접속하는 경우의 내부 동작을 도시하는 도면.
도 3b는 일반적인 이동통신 시스템에서 인터넷이 IWF/PDSN에 접속하는 경우의 내부 동작을 도시하는 도면.
도 4는 본 발명에서 제안하는 이동통신 시스템에서의 내부 동작을 도시하는 도면.
도 5a는 본 발명에서 제안하는 방안을 기반으로 하는 이동통신 시스템에서 인터넷이 기지국에 접속하는 경우의 내부 동작을 도시하는 도면.
도 5b는 본 발명에서 제안하는 방안을 기반으로 하는 이동통신 시스템에서 인터넷이 IWF/PDSN/Proxy에 접속하는 경우의 내부 동작을 도시하는 도면.
도 6은 본 발명에서 제안하는 TCP 수신버퍼 변경부의 동작을 도시하는 도면.
도 7은 본 발명에서 제안하는 TCP 수신버퍼 변경부의 내부 동작 과정을 도시하는 도면.
도 8은 본 발명에서 제안하는 TCP 수신버퍼 변경부의 흐름을 도시하는 도면.
무선 패켓 데이터 서비스를 지원하는 이동통신시스템에서는 FA/Sector당 유한개의 고속 채널을 지원하며, 복수의 사용자들이 유한개의 고속 채널에 다중화되어 서비스되는 구조를 가진다. 고속(Fat)의 무선 채널(Pipe)를 복수의 사용자가 사용하여 서비스되도록 하는 것으로서, 다중화시에는 사용자의 선택과 사용 기간의 할당을 위하여 스케쥴링 기법들이 적용된다.
무선 고속 채널 예로서는 cdma2000 1x 시스템에서의 SCH(Supplemental Channel), Qualcomm사의 HDR(High Data Rate), CDG 1xTREME 등을 살펴볼 수 있다.
본 발명은 매우 단순한 구조로 되어 있다. 다만 흐름제어를 위한 발상의 변화이다.
본 발명에서 제안한 방안의 기본 아이디어가 도4에 나타나 있다. 본 발명의 기본 아이디어는 무선에서의 TCP 흐름제어가 종단간에 이루어지는 것은 의미가 없다는 것과 흐름제어의 주체는 이동통신시스템이 되어야하고, 흐름제어에 무선 환경의 파라메타가 적용되어야 한다는 점이다. 또한, 기존 시스템과의 호환성을 위하여 MS나 서버의 수정은 없어야 한다는 점에서 출발한다.
이를 위하여 본 발명에서는 흐름제어의 주요한 파라메타가 되는 수신단의 TCP 수신 버퍼 크기를 종단간에 교환하던 구조를 변경하여, 이동통신시스템이 개입하여 무선 채널에 적합한 파라메타로 변경하도록 한다.
예를들어 cdma2000 1x 시스템에서 153.6kbps의 SCH를 무선 고속채널로 사용하는 구조를 가정하자. 여기에 10명의 TCP 사용자가 각각 독립적으로, 한개의 TCP 연결을 유선 망의 서버와 유지하고 각 TCP 수신 버퍼의 크기가 8kbytes로 가정하자. 이 경우에, 각 단말의 TCP들은 자신의 수신 버퍼 크기만을 관리하기 때문에 자신이 받을 수 있는 양을 독립적으로 유선 망의 서버로 전달한다. 따라서 모든 수신단이 8kbytes를 받을 수 있다고 서버로 알린다면 최대 "80kbytes = 8kbytes x 10사용자"의 트래픽이 동시에 기지국에 도착할 수 있다. 따라서, 153.6kbps의 무선 채널에 640kbits의 트래픽이 동시에 도착함으로서 큰 지연이 발생하고, 패켓의 오버플로우(Overflow)가 발생하지 않더라도 서버의 TCP가 ACK를 받지 못해서, 채널상에 손실이 발생한 것으로 보고 재전송을 시도할 수도 있다. 특히, 해당 채널의 FER이 증가하게 되어 채널의 전송속도가 낮아지는 경우에는 더욱 큰 성능 저하가 야기된다.
이러한 현상을 방지하기 위하여 본 발명에서는 흐름제어를 효과적으로 수행하기 위하여 현재의 무선 채널의 특성을 고려한 'TCP 수신 버퍼 크기'를 가상적으로 계산하고, 단말로부터 수신되는 TCP 패켓의 'TCP 수신 버퍼 크기' 필드를 계산한 가상의 값으로 변경하는 방안을 제공한다. 따라서, 서버는 종단의 단말의 상태가 아닌 무선 링크에 적합한 흐름제어를 통하여 현재 무선 채널이 지원할 수 있는 수준의 트래픽 만을 송신하게 됨으로서, 불필요한 재전송이나 오버플로우 현상을 방지한다.
본 발명의 실시 예에 대한 설명은 첨부된 도면과 함께 설명될 것이다. 도면들 중 참조번호들 및 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 참조번호들 및 부호들로 나타내고 있음에 유의해야 한다. 하기에서 본 발명을 설명함에 있어, 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다.
본 발명에서 제안하는 방안을 적용한 이동통신시스템 구성의 예가 도4에 나타나 있다. 도4에서 나타나듯이 본 발명을 적용한 경우에도 기존의 이동통신스템의 구조는 변하지 않는다.
아울러, 본 발명은 기본적으로 소프트웨어로도 구현이 가능하므로 기존의 이동통신시스템 장비의 내부에 첨가되어 동작할 수 있다. 기존의 MS 440∼442와 Node 410∼412간에 종단간 이루어지던 '점대점(End-To-End)' 연결이 아니고, TCP의 모든 흐름 제어들을 BSC 432의 'TCP 수신버퍼 크기 변경부'에서 관여함으로서 최적의 수신버퍼 크기에 맞추어 송수신하는 것을 볼 수 있다.
도5a, 도5b에 본 발명을 적용한 두 가지 실시예의 내부 모듈 구성도 및 연관성이 도식화되어 있다. 도5a에는 본 발명에서 제안한 기능을 BSS에서 수행하는 방안이 도식화되어 있다. 대부분의 기능은 도3a에서 상술한 내용과 동일하다. 다만 본 발명에서 제안한 기능을 수행하기 위하여 'TCP 수신버퍼 크기 변경부' 모듈이 새롭게 추가되어 있다.
도5b에는 본 발명에서 제안한 기능이 IWF/PDSN 혹은 프록시에서 구종하는 경우에 대하여 도식화하고 있다. 기본적으로 모든 기능은 도5a와 동일하다. 다만, 본 발명의 기술을 지원하는 모듈의 위치가 BSS에서 IWF/PDSN/Proxy로 이동한 형태이다. 상기 5a, 5b에 대한 상세한 동작설명은 도6에서 설명하고자 한다.
도6은 TCP에 따라 통신하는 시스템의 수신단에 있어서 'TCP 수신버퍼크기 변경부'의 동작을 도시하는 도면이다.
상기 도6을 참조하면, 중앙처리기 5210과 RLP/MAC/RF 스케쥴러 523간의 데이터 버퍼링을 위한 송신버퍼 522와 무선 상황의 에러 검출 및 복구를 지원하는 RLP와 상위 계측과 물리 계층의 인터페이스를 지원하는 MAC와 무선상환을 관리하고 트래픽 채널을 제어하는 스케쥴러를 포함하는 RLP/MAC/RF 스케쥴러 523과 인터넷과 연동하기 위한 중앙처리기 5210과 본 발명에서 새롭게 첨부된 모듈 'TCP 수신버퍼 크기 변경부'로 구성된다.
상기 'TCP 수신버퍼 크기 변경부'는 상기 송신버퍼 522로부터 송신할 트래픽 양을 입력받고또한, RLP/MAC/RF 스케쥴러 523으로부터는 FER(Frame Error Rate)정보와 현재 트래픽의 전송속도를 입력받는다. 상기 'TCP 수신버퍼 크기 변경부'는 상기 입력받은 정보를 가지고 현재 채널을 통해 수신할 수 있는 트래픽의 양을 결정한다. 즉, 해당 FA(Frequency Assignment)/Sector에 적합한 TCP 수신버퍼 크기를 결정한다. 상기 중앙처리기 5210은 수신버퍼 526으로부터 수신되는 TCP 프레임 정보를 상기 'TCP 수신버퍼 크기 변경부' 5220에 전달하고 'TCP 수신버퍼 크기 변경부' 5220는 새롭게 무선 링크에 적합하게 계산한 TCP 수신버퍼 크기를 가지고 상기 TCP 프레임 정보의 헤더 부분에 변경시킨다. 그리고는 변경된 TCP 프레임 정보를다시 중앙처리기 5210으로 출력한다. 상기 중앙처리기는 해당 TCP 프레임 정보를 인터넷이나 IWF/PDSN으로 전달한다.
하기의 설명을 쉽게 하기 위해 다음 값들을 표1에 정의했다.
Ca : BSS 무선 링크 전송지연값Cb : MS 무선 링크 전송 지연값Cc : BSS 프로세싱 지연 값Cd : MS 프로세싱 지연 값Ce : 인터넷 망 지연 값(변수)Rq : BSS 지연 가중치 값(BSS 가중치 변수)V_Wnd : 무선 고속 채널 상황을 고려하여 새롭게 정의된 Bandwidth Product로서 최적의 수신 버퍼 크기 계산부R_Wnd : 무선 고속 채널에 큐잉된 트래픽의 양을 고려하여 산출한 'V_Wnd' 기준시의 점유된 양 계산부T_Wnd : 최적의 수신버퍼 크기인 V_Wnd에서 이미 점유된 R_Wnd를 제외하고 새롭게 수신할 수 있는 트래픽의 양 계산부Queue-Length : 무선 고속 채널을 통해 전송되기 위하여 큐잉되어 있는 트래픽의 양
'BSS 무선 링크 전송 지연'은 BSS의 RF-송신기로부터 패켓이 출발하여 단말에 도착할 때까지의 BSS RF-송신기 전송 지연과 무선 채널 전송 지연을 의미하며, 대개의 경우 상수값으로서 표현이 가능하다. 'MS 무선 링크 전송 지연'은 MS의 RF-송신기로부터 패켓이 출발하여 BSS의 RF-수신기에 도착할 때까지의 MS RF-송신기 전송 지연과 무선 채널 전송 지연을 의미하며, 대개의 경우 상수값으로서 표현이 가능하다. 'BSS 프로세싱 지연'은 MS의 RF 수신기가 패켓을 수신한 후에 관련 이동 통신 프로토콜의 처리를 수행한 후에 MS의 TCP 프로토콜까지 이동하는데 소요되는 지연을 의미한다. 이 경우, RLP와 같은 에러 제어 프로토콜이 앞서 전송된 패켓이 도착하지 않아서 이후에 도착한 패켓을 TCP로 전달하지 않기에 발생하는 지연은 고려하지 않는다. 'MS 프로세싱 지연'은 BSS의 RF 수신기가 패켓을 수신한 후에 관련이동 통신 프로토콜의 처리를 수행한 후에 BSS의 TCP 프로토콜까지 이동하는데 소요되는 지연을 의미한다. 이 경우, RLP와 같은 에러 제어 프로토콜이 앞서 전송된 패켓이 도착하지 않아서 이후에 도착한 패켓을 TCP로 전달하지 않기에 발생하는 지연은 고려하지 않는다. '인터넷 망 지연'은 BSS와 인터넷에 존재하는 TCP 서버와의 전송 지연을 의미한다. 일반적으로 서버의 위치와 서버와 BSS간의 링크 품질에 따라서 모든 서버가 동일한 값을 갖지는 않는다. 따라서, 이 값은 본 발명을 운용하는 관리자 적절한 값으로 설정하여야 한다. 최적값은 BSS를 실제 운용하면서 BSS와 서버와의 지연값을 취합하여 평균을 취함으로서 산출할 수 있다. 향후 인터넷 백본이 고속화되고 이동 통신 서비스 전용의 서버들이 BSS 부근에 위치하여 등장함에 따라 본 값은 보다 작은 값으로 변해갈 것으로 예상한다.
'BSS 지연 가중치 값'은 본 발명에서 제안한 Fat-Pipe 중심으로 TCP 수신 버퍼 크기를 결정하는 중요한 파라메타 이며, 이 값은 다음과 같은 방법으로 산출할 수 있다. 이 값은 물리적으로 해당 BSS에서의 평균 큐잉 지연과 링크 제어 프로토콜의 동작으로 인한 버퍼링 지연을 의미한다.
지금까지의 파라메타들을 기반으로 하여 다음의 설명을 드리고자 한다.
도7은 'TCP 수신버퍼 변경부' 5220모듈의 내부 동작 과정을 도시하는 도면이다.
도7을 참조하면, 유무선 상황에서 발생할 수 있는 모든 지연값 계산부 D() 701과, 무선 고속 채널에서의 실제적인 전송율 계산부 Rate() 707과, 기지국내의 평균 큐잉지연과 링크제어 프로토콜로 인한 버퍼링 지연을 고려한 값 Rq 703와, 무선 고속 채널의 채널상황을 고려한 최적의 수신 버퍼 크기를 구하는 최적의 수신버퍼 크기 계산부 V_Wnd 711과 상기 최적의 수신 버퍼 크기를 기준으로 한 현재 채널에 큐잉된 트래픽의 양을 구하는 큐잉된 수신버퍼 크기 계산부 R_Wnd 713과 상기 최적의 수신 버퍼 크기에서 상기 큐잉된 트래픽의 양을 뺀 값, 즉 새롭게 수신할 수 있는 트래픽의 양을 구하는 가용 수신버퍼 계산부 T_Wnd 715와 TCP 프레임 정보를 변경하는 TCP 프레임 갱신부 717과 변경된 TCP 프레임 정보를 중앙처리기 5210에 전달하는 TCP 프레임 송신부 719와 하나의 승산기 709, 가산기 705로 구성된다.
상기 지연값 계산부 701은 유무선 상황에서 발생할 수 있는 지연의 상수값 계산부로서 하기의 [수학식2]로 표현할 수 있다.
D() = Ca+Cb+Cc+Cd+Ce
상기 무선 고속채널의 실제적인 전송율 계산부 707은 FER을 고려하여 하기의 [수학식3]와 같이 계산한다.
Rate() = (고속채널의 Physical Max Data Rate) ×(100%-고속채널의 Physical FER)
상기 최적의 수신버퍼 크기 계산부 711은 [수학식2]와 [수학식3]의 계산결과와 BSS에서의 각종 큐잉 및 버퍼링 지연을 고려하여, [수학식4]와 같이 나타낼 수 있다.
V_Wnd = Rate() × {D() + Rq}
상기 [수학식4]는 앞서의 [수학식1]의 유선 TCP에서의 Bandwidth Product와 유사한 구조를 가지고 있다. 다만, 무선 상황에 적합하게 변화하는 무선 채널 속도와 무선 채널의 FER을 적용한 점이 다르다. 이를 통하여, 단말의 TCP이 고정의 수신 버퍼 크기를 가지고 있으므로 무선 채널의 상황에 제대로 적응하지 못하던 문제점을 해결한다.
[수학식4]를 통하여 현재의 무선 고속 채널에 대한 최적의 수신 버퍼 크기를 산출했으므로, 이제 계산해야할 값은 실제로 해당 고속 채널에 대하여 버퍼링된 크기가 얼마인지를 감안하여 새롭게 수신할 수 있는 트래픽의 량을 산출하는 것이다. 특히, 계산의 대상이 해당 고속 채널의 전송 능력에 모아지므로, 현재 큐잉된 트래픽의 량은 해당 고속 채널을 통하여 정보를 송신하는 모든 사용자의 버퍼량을 합산한 값을 적용한다. 이에 대한 계산값이 상기 큐잉된 수신버퍼 크기 계산부 713에 해당하며, 이는 하기의 [수학식5]와 같이 나타낼 수 있다.
R_Wnd = Rate() × {D() +(Queue-Length ÷ Rate())}
상기의 [수학식5]를 통하여 해당 고속채널에 큐잉된 트래픽의 량을 계산했으므로, 이제 남은 것은 얼마나 많은 량의 트래픽을 새롭게 수신할 수 있는가를 계산하는 것이다. 이에 해당하는 것이 상기 가용 수신버퍼 계산부 715이며, 이에 대한 계산이 하기의 [수학식6]에 나타나 있다.
T_Wnd = V_Wnd - R_Wnd if V_Wnd ≥ R_Wnd,
T_Wnd = 0 otherwise.
상기 [수학식6]은 먼저 현재의 고속채널이 수용 가능한 트래픽의 량은 산출한 후에, 이 값에서 이미 큐잉된 트래픽의 량을 감산한다. 만약 감한 값이 0이하이면, 이것은 이미 해당 채널로 전송할 수 있는 용량의 트래픽이 BSS에 큐잉되어 있으므로, 결과 값인 T_Wnd를 0으로 하여 서버로 하여금 새로운 프레임을 전송하지 못하도록 막는다. 그렇지 않은 경우에는 T_Wnd 값으로서 TCP 프레임의 TCP 수신단의 수신버퍼 필드를 변경하고, 해당 TCP 헤더의 check-sum을 수정한다.
상기 TCP 프레임 갱신부 717은 앞단에서 결정된 TCP 수신버퍼 크기를 가지고 중앙처리기5210로부터 수신 받은 TCP 프레임의 헤더를 갱신하여 변경하고 해당 TCP 프레임 헤더의 Check-sum을 수정하여 상기 TCP 프레임 송신부 719로 출력한다. 상기 TCP 프레임 송신부 719는 변경된 TCP 프레임을 중앙처리기 5210으로 재전송한다.
도8은 지금까지 기술한 수식 및 절차를 도시한 것이다. 상기 도8에서 도시된 것은 기존의 MS와 TCP을 수정하거나 추가 장치 없이 소프트웨어로서 구현 가능하다는 것은 자명한 일이다
본 발명의 동작 원리와 절차를 다시 한번 간단히 살펴보면 다음과 같다.
첫째로 BSS의 수신버퍼는 특정 고속 채널을 통하여 전송되기 위하여 버퍼링되어 있는 트래픽의 양을 본 발명에서 제안한 'TCP 수신버퍼 크기 변경부' 모듈로 전달한다. 전달 방법은 주기적인 보고 혹은 필요시에 수행하면 된다.
둘째로 RF-스케쥴러는 고속채널의 채널 정보로서 평균 데이터 전송 속도와 FER을 산출하여 'TCP 수신버퍼 크기 변경부' 모듈로 주기적 혹은 필요시에 전달한다. 일반적으로 고속채널은 복수의 사용자가 공유하게되어 있으며, 채널의 속도와 FER도 단말의 환경에 따라 달라질 수 있으므로 일정 주기 단위로 평균을 계산하여 'TCP 수신버퍼 크기 변경부' 모듈로 전달하도록 한다.
셋째로 BSS 혹은 IWF/PDSN/Proxy의 중앙처리기는 단말로부터 수신한 프레임 가운데에서 TCP 프레임을 'TCP 수신버퍼 크기 변경부' 모듈로 전달한다. TCP 프레임에 대한 식별 방법은 수신한 프레임의 헤더 정보를 분석하면 산출할 수 있다. 이에 대해서는 이미 많은 방법들이 제공되고 있다.
넷째로 중앙처리기로부터 TCP 프레임을 수신한 'TCP 수신버퍼 크기 변경부' 모듈은 해당 가입자가 사용중인 고속 채널에 대한 버퍼량, 채널속도 및 FER을 검색하여 해당 고속 채널에 적합한 TCP 수신 버퍼 크기를 산출한 후, 현재의 TCP 프레임의 해당 필드를 변경한다.
중앙처리기는 'TCP 수신버퍼 크기 변경부' 모듈로부터 수신한 프레임을 인터넷으로 전송한다.
본 발명의 구현에서 발생할 수 있는 점은 먼저 TCP 프레임을 BSS에서 디코딩해야 하는 부하이다. 이는 소프트웨어적인 부하로서 구현시에 별도의 전담 프로세서를 할당하거나, 보다 강력한 프로세서를 이용함으로써 해결할 수 있다. 다음으로 제기될 수 있는 문제는 TCP 상에 IPsec 이나 SSL과 같은 암호화 프로토콜을 사용하는 경우이다. 이 경우에 대해서는 도1의 (c)나 (d)의 경우처럼 프록시를 활용하는방법이 가능하다. 즉, 프록시에서 본 발명의 방안을 추가로 활용하는 방안이다. 이 경우, 도5b처럼 무선의 정보는 프록시로 전달될 수 있어야 한다.
한편 본 발명의 상세한 설명에서는 구체적인 실시 예에 관해 설명하였으나, 본 발명의 범위에서 벗어나지 않는 한도 내에서 여러 가지 변형이 가능함은 물론이다. 그러므로 본 발명의 범위는 설명된 실시 예에 국한되어 정해져서는 안되며 후술하는 특허청구의 범위뿐만 아니라 이 특허청구의 범위와 균등한 것들에 의해 정해져야 한다.
상술한 바와 같은 본 발명에 의해 하기와 같은 효과를 얻을 수 있다.
첫 번째로, MS나 서버의 TCP을 수정하지 않고 TCP의 흐름제어를 무선 상황에서도 효과적으로 지원할 수 있으며, 두 번째로, 최적의 TCP 흐름제어가 가능하므로 BSS의 버퍼 요구량을 줄이는 효과가 있다. 세 번째로, 본 발명을 통하여 TCP 서버가 급격한 송신율의 변화 없이 안정적인 변위의 전송율을 유지할 수 있으므로 TCP 트래픽의 전송 지연이 줄어드는 효과가 있다. 네 번째로, 무선 채널 중심의 흐름제어가 가능하고 무선 채널로 유입되는 트래픽을 조절할 수 있으므로, TCP 송신단에서 발생할 수 있는 재전송 타이머 초과 및 TCP 연결 비정상 종료 현상을 방지할 수 있는 효과가 있다.

Claims (21)

  1. 전송제어 프로토콜(TCP)에 따라 통신하는 시스템의 수신단에서 수신할 수 있는 트래픽의 양을 결정하는 방법에 있어서,
    무선채널에 대한 최적의 수신버퍼크기 계산부를 구하는 과정과,
    현재 중앙처리기와 RLP/MAC/RF-스케쥴러간 데이터 버퍼링으로부터 큐잉된 트래픽 양 계산부를 구하는 과정과,
    상기 최적의 수신버퍼 크기로부터 상기 큐잉된 트래픽 양을 감산하고, 감산 결과를 수신 할 수 있는 트래픽 양으로 결정하는 과정을 포함함을 특징으로 하는 방법
  2. 제1항에 있어서, 상기 최적의 수신버퍼크기 계산부는 유무선 상황에서 발생할 수 있는 지연의 상수값 D()과, 상기 수신단의 지연 가중치 값 Rq를 더한 값에 해당 무선채널의 실제 전송율 Rate()을 곱한 값으로 표현됨을 특징으로 하는 방법
  3. 제2항에 있어서, 상기 지연의 상수는 다음의 [수학식7]와 같이 계산된다.
    D() = Ca+Cb+Cc+Cd+Ce
    여기서, Ca는 패킷을 기지국으로부터 단말로 송신하기까지 걸리는 지연값,
    Cb는 단말에서 수신한 프레임을 단말의 TCP까지 이동하는데 소요되는 지연값,
    Cc는 패킷을 단말로부터 기지국으로 송신하기 까지 걸리는 지연값,
    Cd는 기지국에서 수신한 패킷을 기지국의 TCP까지 이동하는데 소요되는 지연값,
    Ce는 기지국과 인터넷에 존재하는 TCP 서버와의 전송지연값
  4. 제2항에 있어서, 상기 지연 가중치 값 Rq는 기지국에서의 평균 큐잉 지연값과
    링크제어 프로토콜의 동작으로 인한 버퍼링 지연값을 고려하여 결정됨을 특징으로 하는 방법.
  5. 제2항에 있어서, 상기 전송율 Rate()은 해당 무선 채널의 최대 데이터 전송율에 프레임 에러율을 곱한 값임을 특징으로 하는 방법
  6. 제1항에 있어서, 상기 큐잉된 트래픽의 양 계산부(R_Wnd)의 출력값은 상기 최적의 수신버퍼 크기 계산부(V_Wnd)값을 기준으로 했을 때 해당 채널을 통해 정보를 송신하는 모든 단말의 버퍼량을 합산한 값을 특징으로 하는 방법.
  7. 제1항에 있어서, 상기 시스템의 수신단은 기지국임을 특징으로 하는 방법.
  8. 제1항에 있어서, 상기 시스템의 수신단은 인터-워킹 펑션(Inter-Working Function)임을 특징으로 하는 방법.
  9. 제1항에 있어서, 상기 시스템의 수신단은 패킷 데이터 서비스 망(PDSN)임을 특징으로 하는 방법.
  10. 제1항에 있어서, 상기 시스템의 수신단은 프락시서버(proxy server)임을 특징으로 하는 방법
  11. 전송제어 프로토콜에 따라 통신하는 시스템의 수신단에서 수신할 수 있는 트래픽의 양을 결정하는 방법에 있어서,
    상기 수신단은 상기 송신할 트래픽의 정보를 수신하는 과정과,
    상기 결정된 트래픽의 양을 가지고 전송제어 프로토콜 수신버퍼 크기를 변경하는 과정과,
    상기 변경된 전송제어 프로토콜 수신버퍼 크기 정보를 나타내는 전송 제어 프로토콜 프레임 정보를 갱신하여 송신하는 과정을 포함함을 특징으로 하는 방법
  12. 제11항에 있어서,
    상기 트래픽의 정보는 송신버퍼를 통해 수신된 트래픽의 양과
    RF 스케쥴러를 통해 수신된 트래픽 전송속도와 프레임 에러율로 구성됨을 특징으로 하는 방법
  13. 삭제
  14. 전송제어 프로토콜(TCP)에 따라 통신하는 시스템의 수신단에서 수신할 수 있는 트래픽의 양을 결정하는 장치에 있어서,
    무선채널에 대한 최적의 수신버퍼크기 계산부와,
    현재 중앙처리기와 RLP/MAC/RF-스케쥴러간 데이터 버퍼링으로 인해 큐잉된 트래픽 양 계산부와,
    상기 최적의 수신버퍼 크기로부터 상기 큐잉된 트래픽 양을 감산하고, 감산 결과를 수신 할 수 있는 트래픽 양으로 결정하는 계산부로 이루어짐을 특징으로 하는 장치
  15. 제14항에 있어서, 상기 최적의 수신버퍼크기 계산부는,
    유무선 상황에서 발생할 수 있는 모든 지연값 계산부와,
    상기 수신단의 지연 가중치 값과
    상기 무선채널의 실제 전송율 계산부와
    상기 지연값과 수신단의 지연 가중치 값을 가산하는 가산기와
    상기 가산기의 결과값에 상기 전송율 계산부를 승산하는 승산기로 이루어짐을 특징으로 하는 장치
  16. 제14항에 있어서, 상기 수신할 수 있는 트래픽 양을 결정하는 계산부는,
    상기 결정된 트래픽 양을 가지고 중앙처리기로 버퍼 수신한 TCP 프레임 헤더를 갱신하고 Check-Sum를 변경하는 TCP 프레임 갱신부와,
    상기 변경된 TCP 프레임값을 중앙처리기로 송신하는 TCP 프레임 송신부로 이루어짐을 특징으로 하는 장치.
  17. 제14항에 있어서, 상기 시스템의 수신단은 기지국임을 특징으로 하는 장치.
  18. 제14항에 있어서, 상기 시스템의 수신단은 인터-워킹 펑션(Inter-Working Funtion)임을 특징으로 하는 장치.
  19. 제14항에 있어서, 상기 시스템의 수신단은 패킷 데이터 서비스 망(PDSN)임을 특징으로 하는 장치.
  20. 제14항에 있어서, 상기 시스템의 수신단은 프락시서버(proxy server)임을 특징으로 하는 장치.
  21. 전송제어 프로토콜(TCP)에 따라 통신하는 시스템의 수신단에서 수신할 수 있는 트래픽의 양을 결정하는 장치에 있어서,
    중앙처리기와 RLP/MAC/RF-스케쥴러간에 트래픽 양을 버퍼링하는 송신버퍼와,
    FA(Frequency Assignement)/Sector의 트래픽 전송 속도와 프레임 에러율과 같은 무선 상황정보를 출력하는 RF-스케쥴러와,
    상기 트래픽 양과 상기 FA/Sector의 트래픽 전송 속도와 프레임 에러율을 가지고 중앙처리기로부터 수신한 TCP 프레임 정보를 변경하여 변경된 정보를 다시 중앙처리기로 출력하는 TCP 수신버퍼 크기 변경부와,
    상기 변경된 TCP 프레임 정보를 인터넷으로 전송하는 중앙처리기로 이루어짐을 특징으로 하는 장치.
KR1020000054749A 2000-09-14 2000-09-14 무선 패킷 데이터시스템의 수신 트래픽 양 결정방법 및 장치 KR100365788B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020000054749A KR100365788B1 (ko) 2000-09-14 2000-09-14 무선 패킷 데이터시스템의 수신 트래픽 양 결정방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020000054749A KR100365788B1 (ko) 2000-09-14 2000-09-14 무선 패킷 데이터시스템의 수신 트래픽 양 결정방법 및 장치

Publications (2)

Publication Number Publication Date
KR20020021577A KR20020021577A (ko) 2002-03-21
KR100365788B1 true KR100365788B1 (ko) 2002-12-26

Family

ID=19689198

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020000054749A KR100365788B1 (ko) 2000-09-14 2000-09-14 무선 패킷 데이터시스템의 수신 트래픽 양 결정방법 및 장치

Country Status (1)

Country Link
KR (1) KR100365788B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7782768B2 (en) 2005-09-16 2010-08-24 Samsung Electronics Co., Ltd. Wireless network apparatus and method for controlling transmission rate using the same

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020196743A1 (en) * 2001-06-20 2002-12-26 Sebastian Thalanany Apparatus and method for enhancing performance in a packet data system
KR100420601B1 (ko) 2001-11-22 2004-03-02 에스케이 텔레콤주식회사 비디오 데이터 스트리밍 서비스 방법
KR100945409B1 (ko) 2002-05-10 2010-03-04 인터디지탈 테크날러지 코포레이션 노드 b 내 버퍼의 선택적 퍼징을 용이하게 하는 rnc
KR100575734B1 (ko) 2003-08-30 2006-05-03 엘지전자 주식회사 이동 통신 단말기의 패킷 데이터 수신 방법
KR102146696B1 (ko) 2016-10-07 2020-08-21 에스케이 텔레콤주식회사 단말기 무선자원의 스케줄링을 위한 방법 및 장치

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7782768B2 (en) 2005-09-16 2010-08-24 Samsung Electronics Co., Ltd. Wireless network apparatus and method for controlling transmission rate using the same

Also Published As

Publication number Publication date
KR20020021577A (ko) 2002-03-21

Similar Documents

Publication Publication Date Title
US11432223B2 (en) Methods and apparatuses for selecting a first base station or a second base station to transmit a packet data unit (PDU) to a user equipment (UE)
JP4878391B2 (ja) 適応的なキュー待ち時間を伴うスケジューリング及びキューマネージメント
JP4738594B2 (ja) データフロー制御方法および装置
EP1449334B1 (en) Method and System of Transmitting Data
US6330451B1 (en) Selectively delaying data communications in a wireless communication system to provide voice communications capacity
US8630203B2 (en) Data transmission method and apparatus
US20040192312A1 (en) Communication system for voice and data with wireless TCP server
US6501732B1 (en) System and method for controlling data flow in a wireless network connection
EP1393497B1 (en) Dual mode service platform within network communication system
US20100172253A1 (en) Communication Apparatus, Communication Method, Communication Control Apparatus, Wireless Communication Apparatus, Communication Control Method, and Wireless Communication Method
JP5011515B2 (ja) データトラフィックシェーピング方法、装置、および、ワイヤレス機器
US20060291435A1 (en) Connection-oriented data transfer over wireless transmission paths
US8175059B2 (en) Buffer transfer in a communications network
WO2019144802A1 (zh) 一种数据的传输方法及其相关设备
WO2013094964A1 (ko) 프록시 서버에 의한 데이터 흐름 제어 방법 및 장치
CN111065128A (zh) 用于多连接的方法
CN107534890A (zh) 适应性tti调整的方法
CN113938431B (zh) 突发数据包传输方法、装置和电子设备
KR100365788B1 (ko) 무선 패킷 데이터시스템의 수신 트래픽 양 결정방법 및 장치
EP1279313B1 (en) Wireless channel allocation in a base station processor
US20040218632A1 (en) Method and apparatus of maximizing packet throughput
CN104580006B (zh) 一种移动网络发送速率控制方法、装置及系统
US20210127301A1 (en) Application Notifications from Network for Throughput and Flow Control Adaptation
CN113098580B (zh) 卫星空口报文缓存与限速处理方法、装置、设备及介质
KR102665409B1 (ko) 다중 접속에서 데이터 분할을 위한 방법 및 장치

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20081107

Year of fee payment: 7

LAPS Lapse due to unpaid annual fee