KR20100027473A - A method for data transmission guaranteed quality of service in a terminal equipment and an apparatus thereof - Google Patents
A method for data transmission guaranteed quality of service in a terminal equipment and an apparatus thereof Download PDFInfo
- Publication number
- KR20100027473A KR20100027473A KR1020080086408A KR20080086408A KR20100027473A KR 20100027473 A KR20100027473 A KR 20100027473A KR 1020080086408 A KR1020080086408 A KR 1020080086408A KR 20080086408 A KR20080086408 A KR 20080086408A KR 20100027473 A KR20100027473 A KR 20100027473A
- Authority
- KR
- South Korea
- Prior art keywords
- qos
- application
- queue
- packet
- service
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
- H04L47/2475—Traffic characterised by specific attributes, e.g. priority or QoS for supporting traffic characterised by the type of applications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/28—Flow control; Congestion control in relation to timing considerations
- H04L47/283—Flow control; Congestion control in relation to timing considerations in response to processing delays, e.g. caused by jitter or round trip time [RTT]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
- H04L47/62—Queue scheduling characterised by scheduling criteria
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W28/00—Network traffic management; Network resource management
- H04W28/02—Traffic management, e.g. flow control or congestion control
- H04W28/10—Flow control between communication endpoints
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
Description
본 발명은 QoS를 제공하기 위한 단말의 데이터 전송 장치 및 방법에 관한 것으로, 데이터 전송이 원활하지 않은 경우에도 효율적으로 QoS를 보장할 수 있는 단말의 데이터 전송 장치 및 방법에 관한 것이다. The present invention relates to an apparatus and method for transmitting data of a terminal for providing QoS, and more particularly, to an apparatus and method for transmitting data of a terminal capable of efficiently guaranteeing QoS even when data transmission is not smooth.
모바일 와이맥스(mWiMAX)에서 무선 통신 서비스를 제공하기 위한 단말은, TE(Terminal Equipment)와, 상기 TE에 연결되어 무선 구간 연결을 수행하는 SS(Subscriber Station)를 포함한다. 일반적으로, TE는 노트북, SS는 네트워크 아답터 등이 될 수 있다. A terminal for providing a wireless communication service in mobile WiMAX (mWiMAX) includes a terminal (TE) and a subscriber station (SS) connected to the TE to perform a wireless section connection. In general, TE may be a notebook, SS may be a network adapter, and so on.
모바일 와이맥스(mWiMAX)에서 QoS 서비스를 제공하기 위해서는, 맥 계층(MAC Layer)에서 분류기(Classifier)를 이용하여 스케줄링 서비스를 제공한다. 그러나 여러 가지 경우에서, 해당 QoS를 보장하기 어려운 경우가 발생한다. 즉, TE의 TCP/IP Stack으로부터 전달되는 데이터의 양이 장치의 처리 가능 용량(HW Interface Throughput) 이상의 데이터를 전송 하려 경우, 무선 구간(Air)의 전송 가능한 처리량(Throughput)이 저하된 경우, 특정 어플리케이션(Application)이 많은 양(High Data Rate)의 패킷을 전송하려 하는 경우 등에서 병목 현상이 생기게 된다. 이러한 경우에는 각 어플리케이션들의 QoS를 보장하기 어려워지고 성능 또한 보장하기 어렵게 된다. In order to provide a QoS service in mobile WiMAX (mWiMAX), a scheduling service is provided using a classifier in the MAC layer. However, in many cases, it is difficult to guarantee the QoS. In other words, if the amount of data transferred from the TCP / IP stack of the TE is to transmit the data of more than the HW Interface Throughput of the device, and if the throughput of the wireless section is reduced, A bottleneck occurs when an application attempts to transmit a high data rate packet. In this case, it becomes difficult to guarantee the QoS of each application and also to guarantee the performance.
따라서 상술한 바와 같은 종래의 문제를 감안한 본 발명의 목적은, 병목 현상 없이 QoS를 보장하여 서비스를 제공할 수 있는 방법 및 장치를 제공함에 있다. Accordingly, an object of the present invention is to provide a method and apparatus capable of providing a service by guaranteeing QoS without a bottleneck.
상기와 같은 목적을 달성하기 위한 본 발명의 바람직한 실시 예에 따른 QoS를 제공하기 위한 단말의 데이터 전송 장치는, 무선 통신 서비스 제공을 위한 다수의 어플리케이션을 실행하는 TE(Terminal Equipment) 및 상기 TE의 어플리케이션 실행에 따른 데이터를 무선 규격에 따라 전송하는 SS(Subscriber Station)를 포함하며, 상기 TE는 각 어플리케이션의 실행으로 발생하는 데이터를 출력하는 어플리케이션부와, 상기 출력된 데이터를 해당하는 어플리케이션의 QoS에 따라 스케줄링하여 상기 SS로 출력하는 네트워크 드라이버;를 포함하는 것을 특징으로 한다. In order to achieve the above object, a data transmission apparatus of a terminal for providing QoS according to an exemplary embodiment of the present invention includes a terminal (TE) and a terminal application for executing a plurality of applications for providing a wireless communication service. And a subscriber station (SS) for transmitting data according to a wireless standard according to a wireless standard, wherein the TE includes an application unit for outputting data generated by execution of each application, and the output data according to a QoS of a corresponding application. It is characterized in that it comprises a; network driver for scheduling and outputting to the SS.
상기 네트워크 드라이버는 상기 어플리케이션부로부터 각 어플리케이션에 따른 QoS 프로파일을 수신하여 수신한 QoS 프로파일에 따라 큐를 할당하고, 할당된 큐로 입력되는 패킷들을 스케줄링하는 것을 특징으로 한다. The network driver may receive a QoS profile for each application from the application unit, allocate a queue according to the received QoS profile, and schedule packets input to the allocated queue.
상기 QoS 프로파일은 최대 및 최소 전송률, 지터 시간, 및 우선순위를 포함한다. The QoS profile includes maximum and minimum rate, jitter time, and priority.
상기와 같은 목적을 달성하기 위한 본 발명의 바람직한 실시 예에 따른 QoS를 제공하기 위한 단말의 데이터 전송 방법은, 각각이 무선 통신 연결을 통해 서비스를 제공하는 어플리케이션에 대응하는 큐를 각각 할당하는 과정과, 상기 큐 각각 에 할당된 어플리케이션의 패킷들을 입력하는 과정과, 상기 어플리케이션 각각의 기 설정된 QoS에 따라 상기 패킷들을 출력할 시간을 스케줄링하는 과정과, 상기 산출된 시간에 따라 상기 패킷들을 출력하는 과정을 포함한다. According to a preferred embodiment of the present invention, there is provided a data transmission method of a terminal for providing a QoS, comprising the steps of: allocating a queue corresponding to an application providing a service through a wireless communication connection; Inputting packets of an application allocated to each of the queues, scheduling a time for outputting the packets according to a predetermined QoS of each application, and outputting the packets according to the calculated time. Include.
상기 할당하는 과정은 각 어플리케이션에 따른 QoS 프로파일을 수신하여 수신한 QoS 프로파일에 따라 큐를 할당하는 것을 특징으로 한다. The assigning process may include receiving a QoS profile according to each application and allocating a queue according to the received QoS profile.
상기 QoS 프로파일은 최대 및 최소 전송률, 지터 시간, 및 우선순위를 포함한다. The QoS profile includes maximum and minimum rate, jitter time, and priority.
본 발명에 따르면, 네트워크 드라이버가 QoS에 따른 스케줄링을 수행함으로써, 병목 현상 없이 QoS를 보장하여 서비스를 제공할 수 있다. 이에 따라 무선 통신 네트워크의 이용을 늘리는 이점이 있다. According to the present invention, since the network driver performs scheduling according to QoS, it is possible to provide a service by guaranteeing QoS without a bottleneck. Accordingly, there is an advantage of increasing the use of a wireless communication network.
이하, 본 발명에 따른 바람직한 실시 예를 첨부한 도면을 참조하여 상세히 설명한다. 하기의 설명에서는 본 발명에 따른 동작을 이해하는데 필요한 부분만이 설명되며 그 이외 부분의 설명은 본 발명의 요지를 흩트리지 않도록 생략될 것이라는 것을 유의하여야 한다. Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings. It should be noted that in the following description, only parts necessary for understanding the operation according to the present invention will be described, and descriptions of other parts will be omitted so as not to distract from the gist of the present invention.
먼저, 본 발명의 실시 예에 따른 무선 네트워크 시스템에 대해서 설명하기로 한다. 도 1은 본 발명의 실시 예에 따른 무선 네트워크 시스템의 구성을 도시한 도면이다. First, a wireless network system according to an embodiment of the present invention will be described. 1 is a diagram illustrating a configuration of a wireless network system according to an exemplary embodiment of the present invention.
본 발명의 실시 예에 따른 무선 네트워크 시스템은, 단말(100), 기지국 장 치(200) 및 IMS(IP Multimedia Subsystem)(300)을 포함한다. A wireless network system according to an embodiment of the present invention includes a
단말(100)은 무선채널의 종단점으로 무선접속 규격에 따라 기지국 장치(200)와 통신한다. 본 발명의 실시 예에 따른 단말(100)은 TE(Terminal Equipment)(110) 및 SS(Subscriber Station)(120)를 포함하여 구성된다. The
기지국 장치(200)는 단말(100)과 IMS(300)간을 연결하는 역할을 수행한다. 특히, 기지국 장치(200)는 RAS(Radio Access Station)(210) 및 ACR(Access Control Router)(220)을 포함하여 구성된다. The
RAS(Radio Access Station: 기지국)(210)는 무선망과 유선망을 연결하는 장치로써 각 망의 특성에 맞게 무선채널을 제어하며, 유선망과 연결되어 단말(100)에 직접적으로 무선 패킷 데이터 서비스를 제공한다. 주요 기능은 무선신호를 송수신하는 기능, 패킷트래픽 신호에 대한 변복조신호처리 기능, 프로토콜 처리 및 라우팅 기능을 수행한다. RAS (Radio Access Station) 210 is a device that connects a wireless network and a wired network, controls a wireless channel according to the characteristics of each network, and is connected with a wired network to provide a wireless packet data service directly to the
ACR(Access Control Router: 제어국)(220)은 다수개의 RAS(210)들과 연결되어 이들을 관리하며, ACR(220) 내에서 고속의 이동성을 보장하기 위한 핸드오버 제어기능 등을 수행한다. ACR(220)은 단말(100)과 RAS(210)들을 제어하고 IP 패킷을 라우팅(routing)한다. 데이터 트래픽의 입장에서 볼 때, ACR(220)은 라우터로 볼 수 있다. An access control router (ACR) 220 is connected to and manages a plurality of
IMS(IP Multimedia Subsystem)(300)는 그 엔티티(entity)로 HSS(Home Subscriber Server), SLF(Subscriber Location Function), SCF(Session Charging Function), CSCF(Call Session Control Function)(P-CSCF, I-CSCF, S-CSCF 등을 포 함한다.), PDF(Policy Decision Function), AS(Application Server)들, MRF(Media Resource Function), BGCF(Breakout Gateway Control Function), MGCF(Media Gateway Controller Function), CCF(Charging Collector Function), ECF(Event Charging Function)를 포함할 수 있다. IMS(IP Multimedia Subsystem)는 IP를 기반으로 다양한 멀티미디어 서비스를 제공할 수 있도록 하는 코어 네트워크(Core Network) 인프라(infra)이다. 상술한 바와 같이 IMS(300)는 다양한 엔티티를 가질 수 있으며, 이러한 엔티티들의 집합을 IMS(300)라고 칭하기로 한다. IP Multimedia Subsystem (IMS) 300 is a home subscriber server (HSS), a subscriber location function (SLF), a session charging function (SCF), a call session control function (CSCF) (P-CSCF, I). (CSCF, S-CSCF, etc.), PDF (Policy Decision Function), Application Servers (AS), Media Resource Function (MRF), Breakout Gateway Control Function (BGCF), Media Gateway Controller Function (MGCF). It may include a charging collector function (CCF), an event charging function (ECF). IMS (IP Multimedia Subsystem) is a core network infrastructure that provides various multimedia services based on IP. As described above, the IMS 300 may have various entities, and the set of such entities will be referred to as the IMS 300.
이러한 엔티티 중 SIP(Session Initiation Protocol) 네트워크를 위한 엔티티는 P-CSCF, I-CSCF, S-CSCF, BGCF, MRFC, MGCF, AS 등이 될 수 있다. Among these entities, an entity for a Session Initiation Protocol (SIP) network may be P-CSCF, I-CSCF, S-CSCF, BGCF, MRFC, MGCF, AS, or the like.
HSS는 사용자 정보 데이터 베이스로 HLR의 진화된 형태로서 세션 제어를 수행하는 IMS 엔티티들을 지원한다. HSS는 멀티미디어 세션 제어와 관련된 사용자 관련 가입 정보, 즉 사용자의 위치 정보, 사용자의 인증 및 허용을 위한 보안 정보, 사용자가 가입한 서비스를 포함한 사용자 프로파일 정보를 담고 있다. HSS supports IMS entities that perform session control as an evolutionary form of HLR into a user information database. The HSS includes user related subscription information related to multimedia session control, that is, user location information, security information for authentication and permission of the user, and user profile information including a service subscribed to by the user.
CSCF는 일종의 SIP 서버로 IMS(300)에서 SIP 신호를 처리한다. P-CSCF는 IMS 단말을 위한 첫 연결점이 되는 SIP 프록시 서버이다. P-CSCF는 홈망 또는 방문망에 존재할 수 있다. P-CSCF는 IMS 망에 등록시에 IMS 단말에 할당되고 등록기간 동안 변경되지 않는다. P-CSCF는 PDF를 포함하거나 별도로 구성될 수 있으며 이와 함께 정책 제어, 대역 관리 등의 QoS 제어 기능을 수행한다. The CSCF is a SIP server that processes SIP signals in the
I-CSCF는 보더 기능이 존재하지 않을 경우 관리 도메인의 경계에 위치한다. 따라서 타 도메인의 서버에서 이를 찾아 네트워크의 입력 노드로 사용할 수 있도록 IP 주소를 도메인의 DNS에 공개한다. I-CSCF는 사용자의 위치를 HSS에 질의하고 사용자가 할당된 S-CSCF로 SIP 메시지를 전달한다. S-CSCF는 신호 계층의 중앙 노드로 하나의 SIP 서버로서 세션제어를 수행한다. 항상 홈망에 존재하며, HSS로부터 사용자 프로파일을 다운로드하고 업로드한다. SIP 등록 시에 사용자의 위치와 SIP 주소를 바인딩(binding)한다. I-CSCF is located at the boundary of the management domain if no border function exists. Thus, the IP address is published in the DNS of the domain so that it can be found by servers in other domains and used as input nodes of the network. The I-CSCF queries the HSS for the user's location and forwards the SIP message to the S-CSCF to which the user is assigned. S-CSCF is a central node of the signaling layer and performs session control as a SIP server. Always on your home network, download and upload user profiles from HSS. Binds user's location and SIP address when registering SIP.
응용 서버(AS)들은 서비스를 주최하고 수행하며 SIP를 사용하여 S-CSCF와 인터페이스 한다. 이러한 서비스 예로 발신번호 관련 서비스(CLIP, CLIR 등), 호 대기, 호 보류, push-to-talk, 호 전환, 호 전달, 호 폐쇄 서비스, 합법적인 감청, 서비스 안내, 회의 통화 서비스, 음성 사서함, 문자와 음성 변환, 위치 기반 서비스, SMS, MMS, 프레전스 정보, 인스턴트 메시징 등의 서비스가 있다. 본 발명의 실시 예에서 사용되는 용어 "서비스"는 상술한 바와 같은 것들을 포함한다. Application servers (ASs) host and run services and interface with the S-CSCF using SIP. Examples of such services include caller ID (CLIP, CLIR, etc.), call waiting, call hold, push-to-talk, call transfer, call forwarding, call closure service, legitimate interception, service announcement, conference call service, voice mail, Services include text and voice conversion, location-based services, SMS, MMS, presence information and instant messaging. The term "service" as used in the embodiments of the present invention includes those as described above.
다음으로, 본 발명의 실시 예에 따른 단말(100)의 구성에 대해서 좀 더 자세히 살펴보기로 한다. 도 2는 본 발명의 실시 예에 따른 단말의 개략적인 구성을 설명하기 위한 도면이다. Next, the configuration of the
본 발명의 실시 예에 따른 단말(100)은, TE(Terminal Equipment)(110) 및 SS(Subscriber Station)(120)를 포함한다. 특히, TE(110)은 어플리케이션부(111) 및 네트워크 드라이버(113)를 포함한다. The
단말(100)의 각 구성 요소에 대해서 좀 더 자세히 살펴보면, TE(110)는 다양한 무선 통신을 이용한 서비스를 제공하기 위한 어플리케이션을 사용자에게 제공하며, SS(120)은 이러한 서비스를 제공하기 위한 무선 연결을 위한 것이다. 이에 따 라, TE(110)은 각 어플리케이션의 사용에 따라 발생하는 패킷 단위의 데이터를 SS(120)으로 제공하며, SS(120)는 이러한 데이터들을 기지국 장치(200)로 전송한다. 또한, SS(120)은 기지국 장치(200)로부터 데이터를 수신하여 TE(110)으로 전달한다. Looking at each component of the
어플리케이션부(111)는 다양한 서비스를 제공할 수 있는 다수개의 어플리케이션(application)을 가지며, 이를 소정의 인터페이스를 통해 사용자에게 제공한다. 또한, 어플리케이션부(111)는 각 어플리케이션의 QoS 프로파일을 포함하는 QoS 정보를 네트워크 드라이버(113)에 제공한다. 그리고 어플리케이션부(111)는 각 어플리케이션의 사용에 따라 발생되는 패킷들을 네트워크 드라이버(113)에 제공한다.
네트워크 드라이버(113)는 어플리케이션부(111)의 각 어플리케이션에서 발생되는 패킷을 스케줄링하여 SS(120)으로 전송한다. 이를 위하여, 네트워크 드라이버(113)는 어플리케이션부의 요청에 따라 각 어플리케이션에 따른 큐를 할당한다. 그런 다음, 패킷이 입력되면, 네트워크 드라이버(113)는 입력되는 패킷을 각 어플리케이션에 따라 분류하여 대응하는 큐에 패킷을 입력한다. 또한, 네트워크 드라이버(113)는 각 어플리케이션의 QoS에 따라 스케줄링하여 해당 패킷을 SS(120)으로 출력한다. 상술한 기능을 수행하기 위하여, 네트워크 드라이버(113)은 어플리케이션 벼로 수신되는 패킷을 할당된 큐에 입력하기 위한 분류 모듈(QoS Classification), 각 큐에 입력된 패킷의 입력 및 출력을 관리하기 위한 큐 관리 모듈(Queue Manager), 각 큐에 입력된 패킷들을 스케줄링하여 출력시키기 위한 스케줄러(Packet Scheduler) 등을 포함한다. The
SS(120)은 TE(110)로부터 입력되는 패킷을 무선 규격에 따라 기지국 장치(200)로 전송한다. 이를 위하여, SS(120)은 TE(110)과의 연결을 위한 장치 및 기지국 장치(200)와의 무선 통신을 수행하기 위항 무선 통신 모듈을 구비할 수 있다. SS(120) 또한 각 어플리케이션의 설정된 QoS에 따라 해당 어플리케이션에 따른 패킷을 전송한다. The
본 발명의 실시 예에 따르면 단말(100)의 QoS에 따른 데이터 전송을 수행하기 위하여, 각 어플리케이션에 따른 QoS 별로 스케줄링을 수행한다. 예컨대, 데이터 전송률에 따른 스케줄링을 수행한다. 이를 위하여, 어플리케이션부(111)는 네트워크 드라이버(113)에 각 어플리케이션의 QoS 프로파일을 제공하고, 네트워크 드라이버(113)는 각 어플리케이션별로 큐를 할당한다. 큐를 할당한 후, 각 어플리케이션에 사용에 따른 데이터가 발생하면, 어플리케이션부(111)는 발생한 데이터를 패킷 별로 네트워크 드라이버에 제공한다. 그러면, 네트워크 드라이버(113)는 할당한 큐로 입력되는 패킷들을 QoS에 따라 스케줄링하여 SS(120)로 출력한다. According to an embodiment of the present invention, in order to perform data transmission according to QoS of the terminal 100, scheduling is performed for each QoS according to each application. For example, scheduling is performed according to the data rate. To this end, the
상기한 TE(110) 및 SS(120)은 하나의 기기에 포함될 수 있으며, 서로 다른 기기인 경우, TE(110) 및 SS(120)은 특정 인터페이스를 통해 서로 연결된다. 특정 인터페이스는 유선 및 무선을 포함한다. 예컨대, TE(110)은 노트북(note book)과 같은 휴대 가능한 기기가 될 수 있으며, SS(120)은 소위 "네트워크 어답터", "네트워크 장치" 또는 "동굴" 등이 될 수 있다. The
본 발명의 실시 예에 따르면, 네트워크 드라이버(113)는 각 어플리케이션별로 큐를 할당하고, 각 큐에 입력되는 패킷을 QoS에 따라 SS(120)으로 출력함으로 써, SS(120)의 에어 전송 가능 능력이 저하되거나, 특정 어플리케이션이 과도한 트래픽을 발생한 경우에도, 전송 성능을 떨어뜨리지 않도록 할 수 있다. According to an embodiment of the present invention, the
그러면, 좀 더 자세히 상술한 단말의 QoS 보장을 위한 데이터 전송 방법에 대해서 설명하기로 한다. 각 어플리케이션은 그 서비스를 제공하기 위한 QoS를 가진다. 예컨대, QoS는 해당 어플리케이션이 실행되어 사용자에게 서비스를 제공하기 위해 요구되는 최소 전송률 또는 최대 전송률 등이 될 수 있다. 본 발명의 실시 예에서는 어플리케이션이 실행시 해당 어플리케이션의 QoS를 보장하기 위해 QoS 설정을 수행하며, 해당 어플리케이션의 종료시 QoS 설정을 해제한다. Next, the data transmission method for guaranteeing QoS of the terminal described above will be described in more detail. Each application has a QoS to provide that service. For example, QoS may be a minimum or maximum transmission rate required for the corresponding application to be executed to provide a service to a user. According to an embodiment of the present invention, the QoS setting is performed to guarantee the QoS of the application when the application is executed, and the QoS setting is released when the application is terminated.
먼저, 본 발명의 실시 예에 따른 각 어플리케이션에 따른 서비스 요청시 QoS 설정 방법에 대해서 설명하기로 한다. 도 3은 본 발명의 실시 예에 따른 QoS 설정 방법을 설명하기 위한 도면이다. First, a description will be given of a QoS setting method when requesting a service according to each application according to an embodiment of the present invention. 3 is a diagram illustrating a QoS setting method according to an embodiment of the present invention.
특정 어플리케이션에 따른 서비스를 제공 받기 위해 TE(110)는 S301 단계에서 IMS(300)로 서비스 요청 메시지(SIP INVITE)를 전송한다. 이에 대한 응답으로 IMS(300)는 S303 단계에서 해당 서비스에 대한 인증 토큰(Authorization Token)을 포함하는 정보 메시지(SIP 183)를 TE(110)에 전송한다. 이러한 TE(110) 및 IMS(300) 간의 메시지 교환은 기지국 장치(200) 및 SS(120)를 통하여 이루어진다. In order to receive a service according to a specific application, the
인증 토큰(Authorization Token)을 수신한 TE(110)은 S305 단계에서 QoS 예약 요청 메시지(QoS RESERVATION REQUEST)를 SS(120)로 전송한다. QoS 예약 요청 메시지는 해당 서비스에 대한 인증 토큰(Authorization Token) 및 해당 서비스를 수행하는 어플리케이션을 다루기 위한 어플리케이션 핸들(App_Handle)을 포함한다. QoS 예약 요청 메시지를 수신한 SS(120)는 S307 단계에서 기지국 장치(200)와 해당 어플리케이션에 대한 QoS를 예약(QoS RESERVATION procedure)한다. Upon receiving the authentication token (Authorization Token), the
그런 다음, SS(120)는 S309 단계에서 예약이 완료되었음을 알리도록 QoS 예약 응답 메시지(QoS RESERVATION RESPONSE)를 TE(110)로 전송한다. 여기서, QoS 예약 응답 메시지에는 QoS 핸들(QoS_Handle)이 포함된다. Then, the
이에 따라, TE(110)는 자체적으로 어플리케이션부(111) 및 네트워크 드라이버(113)간에 예약된 "QoS를 설정"하기 위한 프로세스를 수행한다. "QoS를 설정"은 단말의 입장에서 해당 어플리케이션에 대응하는 큐(Queue)를 할당함을 의미한다. Accordingly, the
"QoS를 설정"을 위해, 어플리케이션부(111)는 S311 단계에서 네트워크 드라이버(113)에 해당 어플리케이션의 QoS를 설정하도록 요청한다. 이때, 어플리케이션부(111)는 해당 어플리케이션의 QoS에 대응하는 식별자 및 QoS에 해당하는 프로파일을 전송한다. 그러면, 네트워크 드라이버(113)는 S313 단계에서 해당 어플리케이션에 대응하는 큐를 할당하고, S315 단계에서 해당 어플리케이션에 따른 큐를 할당하였음을 알리는 결과(Result)를 어플리케이션부(111)에 알린다. In order to "set QoS", the
이러한 설정이 완료된 후, TE(110) 및 IMS(300)는 S317 및 S319 단계에서 응답 메시지를 교환하여 세션 설정을 완료하면, S321 단계에서 앞서 설정한 QoS에 따른 미디어 채널이 형성된다. After the setting is completed, the
TE(110)는 전술한 S311 단계 내지 S315 단계의 과정을 통해, QoS를 설정하고, 이에 따라, 상술한 미디어 채널을 통해 QoS를 보장하는 서비스를 제공할 수 있다. 전술한 S311 단계 내지 S315 단계의 과정은 세션 설정의 완료 전에 수행됨이 바람직하다. The
이어서, TE(110) 및 IMS(300)는 S317 및 S319 단계에서 응답 메시지를 교환하여 세션 설정을 완료하면, S321 단계에서 앞서 설정한 QoS에 따른 미디어 채널이 형성된다. Subsequently, when the
앞서 설명한 바와 같이, "QoS를 설정"은 단말의 입장에서 해당 어플리케이션에 대응하는 큐(Queue)를 할당함을 의미한다. 이러한 큐 할당 방법에 대해서 설명하기로 한다. As described above, "QoS setting" means that a queue corresponding to the application is allocated from the terminal's point of view. This queue allocation method will be described.
도 4는 본 발명의 실시 예에 따른 큐 할당 방법을 설명하기 위한 흐름도이다. 4 is a flowchart illustrating a queue allocation method according to an embodiment of the present invention.
도 4의 과정은 도 3의 S311 단계 내지 S315 단계에 대응될 수 있다. 도 4를 참조하면, 어플리케이션부(111)는 S401 단계에서 QoS를 설정할 어플리케이션에 대한 QoS 프로파일을 네트워크 드라이버(113)로 전송한다. QoS 프로파일은 식별자 정보(QoS_ID_Offset, QoS_ID_Size, QoS_ID_Value), 최대 및 최소 전송률(Max_DataRate, Min_DataRate), 수용 가능한 지터 시간(Tolerated Jitter, 이하, "지터 시간"으로 축약함), 우선순위(Priority) 등을 포함한다. The process of FIG. 4 may correspond to steps S311 to S315 of FIG. 3. Referring to FIG. 4, in step S401, the
식별자 정보(QoS_ID_Offset, QoS_ID_Size, QoS_ID_Value)는 식별자(QoS_ID)를 추출하기 위한 정보로, 식별자(QoS_ID)는 네트워크 드라이버로 패킷이 입력될시 해당 패킷에 대응하는 어플리케이션을 식별하기 위한 것이다. 이때, "QoS_ID_Offset"은 입력되는 패킷에서 식별자(QoS_ID)가 저장된 데이터가 시작되는 위치를 나타내며, "QoS_ID_Size"는 시작되는 위치로부터 식별자(QoS_ID)가 저장된 데이터의 크기를 나타낸다. 또한, "QoS_ID_Value"해당 패킷의 포트 번호(Source Port Nuber)를 의미한다. 따라서 네트워크 드라이버(113)는 "QoS_ID_Offset", "QoS_ID_Size" 및 "QoS_ID_Value"를 통해 식별자(QoS_ID)를 추출할 수 있다. The identifier information (QoS_ID_Offset, QoS_ID_Size, QoS_ID_Value) is information for extracting the identifier (QoS_ID), and the identifier (QoS_ID) is for identifying an application corresponding to the packet when the packet is input to the network driver. At this time, "QoS_ID_Offset" indicates the position where the data storing the identifier QoS_ID is started in the input packet, and "QoS_ID_Size" indicates the size of the data where the identifier QoS_ID is stored from the starting position. In addition, "QoS_ID_Value" means a port number (Source Port Nuber) of the corresponding packet. Accordingly, the
최대 및 최소 전송률(Max_DataRate, Min_DataRate)은 해당 어플리케이션의 QoS를 보장하기 위한 패킷당 최대 및 최소 전송률을 의미하며, 단위는 "bps"가 될 수 있다. 지터 시간(Tolerated Jitter)은 해당 패킷이 지터의 발생으로 인해 지연되어도 무방한 시간을 의미한다. 지터 시간(Tolerated Jitter)의 단위는 "ms"가 될 수 있다. 또한, 우선순위(Priority)는 각 어플리케이션에 따라 기 설정된 것을 말한다. The maximum and minimum data rates Max_DataRate and Min_DataRate mean the maximum and minimum data rates per packet to guarantee the QoS of the corresponding application, and the unit may be "bps". Tolerated Jitter means the time that the packet can be delayed due to the occurrence of jitter. The unit of jitter time can be "ms". In addition, priority refers to a preset value according to each application.
상술한 바와 같은 QoS 프로파일을 수신하면, 네트워크 드라이버(113)는 S403 단계에서 해당 어플리케이션의 QoS를 지원할 수 있는지 판단한다. 예컨대, 네트워크 드라이버의 최대 전송 가능 용량이 100bps이며, 기 할당된 큐들의 전송 용량이 80bps인 경우를 가정하면, 네트워크 드라이버는 최대 전송률(Max_DataRate)이 20bps 이하의 어플리케이션만 지원할 수 있다. Upon receiving the QoS profile as described above, the
S403 단계의 판단 결과, 해당 어플리케이션의 QoS 지원이 가능하면, 네트워크 드라이버(113)는 S405 단계로 진행하여, 해당 어플리케이션에 따른 큐가 할당되어 있는지 검색한다. 이러한 검색은 식별자를 이용하여 이루어진다. If it is determined in step S403 that the QoS support of the corresponding application is possible, the
검색 결과, 네트워크 드라이버(113)는 S407 단계에서 해당 식별자에 따른 큐가 할당되어 있지 않으면, 네트워크 드라이버(113)는 S409 단계로 진행하여 해당 어플리케이션에 따른 큐를 새로 할당한다. 그런 다음, 네트워크 드라이버(113)는 S411 단계에서 어플리케이션부(111)로 큐를 성공(SUCCESS)적으로 할당하였음을 알리는 결과를 리턴한다. 한편, 해당 식별자에 따라 기 할당된 큐가 존재하면 네트워크 드라이버(113)는 S413 단계에서 어플리케이션부(111)로 큐를 할당하는데 실패(FAIL)하였음을 알리는 결과를 리턴한다. As a result of the search, if the queue according to the identifier is not allocated in step S407, the
상술한 바와 같이 할당된 큐는 해당 어플리케이션에 따른 서비스가 종료될 때까지 유지된다. 서비스의 종료는 TE(110) 또는 IMS(300)의 요청에 따라 이루어진다. 그러면, TE(110) 및 IMS(300)의 각각의 요청에 따른 서비스 종료시 QoS 설정 해제 방법에 대해서 설명하기로 한다. As described above, the assigned queue is maintained until the service according to the corresponding application is terminated. Termination of the service is made at the request of the
먼저, TE(110)의 요청에 따른 서비스 종료시 QoS 설정 해제 방법에 대해서 설명하기로 한다. 도 5는 본 발명의 실시 예에 따른 QoS 설정 해제 방법을 설명하기 위한 도면이다. First, a description will be given of a method for canceling QoS setting upon termination of service according to a request of the
도 5를 참조하면, S501 단계는 앞선 도 3에서 설명한 바와 같은 방법에 따라 TE(110) 및 IMS(300) 간에 설정된 세션 연결을 통해 채널이 형성되어, 이를 통해 서비스가 제공됨을 나타낸다. Referring to FIG. 5, in operation S501, a channel is formed through a session connection established between the
S501 단계와 같은 서비스 제공 중, TE(110)는 S503 단계에서 IMS(300)로 서비스 종료 메시지(SIP BYE)를 전송한다. 이러한 서비스 종료 메시지(SIP BYE)를 전송은 기지국 장치(200) 및 SS(120)를 통하여 이루어진다. During service provision, such as step S501, the
그런 다음, TE(110)는 S505 단계에서 QoS 삭제 요청 메시지(QoS DELETE REQUEST)를 전송한다. QoS 삭제 요청 메시지는 어플리케이션 핸들(App_Handle) 및 QoS 핸들(QoS_Handle)을 포함한다. Then, the
그러면, SS(120) 및 기지국 장치(200)는 S507 단계에서, 해당 어플리케이션에 대한 QoS 설정을 삭제(QoS DELETE Procedure)하고, S509 단계에서 이를 알리는 QoS 삭제 응답 메시지(QoS DELETE RESPONSE)를 TE로 전송한다. QoS 삭제 응답 메시지는 어플리케이션 핸들(App_Handle) 및 QoS 핸들(QoS_Handle)을 포함한다. Then, in step S507, the
한편, TE(110)는 자체적으로 어플리케이션부(111) 및 네트워크 드라이버(113)간에 QoS 설정을 해제하기 위한 프로세스를 수행한다. "QoS를 설정 해제"는 TE(110)의 입장에서 해당 어플리케이션에 대응하는 큐(Queue)를 할당을 해제함을 의미한다. 이를 위하여, 어플리케이션부(111)는 S511 단계에서 네트워크 드라이버(113)에 해당 어플리케이션의 QoS 설정을 해제하도록 요청한다. 그러면, 네트워크 드라이버(113)는 S513 단계에서 해당 어플리케이션의 큐 할당을 해제하고, S515 단계에서 해당 어플리케이션에 따른 QoS 설정을 해제하였음을 알리는 결과를 어플리케이션부(111)에 리턴한다. Meanwhile, the
상술한 과정들은 IMS(300)가 S517 단계에서 응답 메시지(SIP 200 OK)를 TE(110)으로 전송하기까지 수행된다. 이러한 응답 메시지가 전송됨에 따라 TE(110) 및 IMS(300)간에 세션 연결도 종료된다. 여기서, 응답 메시지(SIP 200 OK)는 앞선 단계(S501)의 종료 메시지에 대한 응답이다. The above-described processes are performed until the
앞선, 도 5에서는 TE(110)의 요청에 따른 서비스 종료시 QoS 설정 해제 방법에 대해서 설명하였다. 이어서, IMS(300)의 요청에 따른 서비스 종료시 QoS 설정 해제 방법에 대해서 설명하기로 한다. 도 6은 본 발명의 실시 예에 따른 QoS 설정 해제 방법을 설명하기 위한 도면이다. In the foregoing, FIG. 5 has described a method of canceling QoS setting at the end of a service according to a request of the
도 6을 참조하면, S601 단계는 앞선 도 3에서 설명한 바와 같은 방법에 따라 TE(110) 및 IMS(300) 간에 설정된 세션 연결을 통해 채널이 형성되어, 형성된 채널을 통해 서비스가 제공됨을 나타낸다. Referring to FIG. 6, step S601 indicates that a channel is formed through a session connection established between the
S601 단계와 같은 서비스 제공 중 서비스 종료로 인하여, S603 단계에서 세션 연결된 채널이 필요하지 않은 경우가 발생하였다고 가정한다. It is assumed that a case in which the session-connected channel is not necessary in step S603 occurs due to service termination during service provision, such as step S601.
그러면, 기지국 장치(200) 및 SS(120)는 S605 단계에서, 해당 어플리케이션에 대한 QoS 설정을 삭제(QoS DELETE Procedure)하고, S607 단계에서 이를 알리는 QoS 삭제 통보 메시지(QoS DELETE INDICATE)를 TE로 전송한다. QoS 삭제 통보 메시지는 어플리케이션 핸들(App_Handle) 및 QoS 핸들(QoS_Handle)을 포함한다. Then, in step S605, the
그러면, TE(110)는 자체적으로 어플리케이션부(111) 및 네트워크 드라이버(113)간에 설정된 QoS를 해제하기 위한 프로세스를 수행한다. "QoS를 설정 해제"는 TE(110)의 입장에서 해당 어플리케이션에 대응하는 큐(Queue)를 할당을 해제함을 의미한다. 이를 위하여, 어플리케이션부(111)는 S609 단계에서 네트워크 드라이버(113)에 해당 어플리케이션의 QoS 설정을 해제하도록 요청한다. 그러면, 네트워크 드라이버(113)는 S611 단계에서 해당 어플리케이션의 큐 할당을 해제하고, S613 단계에서 해당 어플리케이션에 따른 QoS 설정을 해제하였음을 알리는 결과를 어플리케이션부(111)에 리턴한다. 이에 따라, TE(110) 및 IMS(300) 간에 세션 연결도 종료된다. Then, the
앞서 설명한 바와 같이, "QoS를 설정 해제"는 TE(110)의 입장에서 해당 어플리케이션에 대응하는 큐(Queue)를 할당을 해제함을 의미한다. 이러한 큐 할당 해제 방법에 대해서 설명하기로 한다. 도 7은 본 발명의 실시 예에 따른 큐 할당 해제 방법을 설명하기 위한 흐름도이다. As described above, "releasing QoS" means that the
도 7을 참조하면, 어플리케이션부(111)는 S701 단계에서 QoS 설정을 해제하고자하는 어플리케이션의 식별자(QoS_ID)를 네트워크 드라이버(113)에 전송한다. 그러면, 네트워크 드라이버(113)는 S703 단계에서 해당 식별자(QoS_ID)에 해당하는 큐를 검색한다. 검색 결과, 네트워크 드라이버(113)는 S705 단계에서 해당하는 큐가 존재하면, S707 단계에서 해당하는 큐를 해제(free)한다. 그런 다음, 네트워크 드라이버(113)는 S709 단계에서 어플리케이션부(111)에 성공(SUCCESS)적으로 큐가 해제되었음을 알리는 결과를 리턴한다. 한편, 네트워크 드라이버(113)는 S705 단계에서 해당하는 큐가 존재하지 않으면, 그런 다음, 네트워크 드라이버(113)는 S709 단계에서 어플리케이션부(111)에 성공(SUCCESS)적으로 큐가 해제되음을 리턴한다. Referring to FIG. 7, the
상술한 바와 같이 본 발명의 실시 예에 따르면, 네트워크 드라이버(113)는 각 어플리케이션 별로 큐를 할당한다. 이러한 큐에는 각 어플리케이션의 사용에 따른 패킷이 입력된다. 이와 같이 입력되는 패킷들은 각 어플리케이션의 QoS에 따라 스케줄링되어 전송된다. 이러한 QoS에 따른 스케줄링 방법과 스케줄링에 따른 데이터 전송 방법에 대해서 설명하기로 한다. As described above, according to an embodiment of the present invention, the
먼저, 본 발명의 실시 예에 따라 각 어플리케이션 별로 할당되는 큐의 구조에 대해서 설명하기로 한다. 도 8은 본 발명의 실시 예에 따른 큐의 구조를 설명하기 위한 도면이다. First, a structure of a queue allocated to each application according to an embodiment of the present invention will be described. 8 is a view for explaining the structure of a queue according to an embodiment of the present invention.
도 8을 참조하면, 본 발명의 실시 예에 따른 큐는 어플리케이션 별로 할당된 다. 도 8에서는 3개의 어플리케이션에 따른 제1 내지 제3 큐(10, 20, 30)가 할당되었다고 가정한다. Referring to FIG. 8, a queue according to an embodiment of the present invention is allocated for each application. In FIG. 8, it is assumed that first to
도 8을 참조하면, 큐의 자료 구조는 QoS 프로파일(QoS_Profile), 스케줄 정보(Schedule_Info) 및 패킷 링크 정보(HeadListofPacketQueue)를 포함한다. Referring to FIG. 8, a data structure of a queue includes a QoS profile (QoS_Profile), schedule information (Schedule_Info), and packet link information (HeadListofPacketQueue).
앞서 설명한 바와 같이, QoS 프로파일(QoS_Profile)은 식별자 정보(QoS_ID_Offset, QoS_ID_Size, QoS_ID_Value), 최대 및 최소 전송률(Max_DataRate, Min_DataRate), 지터 시간(Tolerated Jitter), 우선순위(Priority)를 포함한다. As described above, the QoS profile QoS_Profile includes identifier information QoS_ID_Offset, QoS_ID_Size, QoS_ID_Value, maximum and minimum data rates (Max_DataRate, Min_DataRate), jitter time (Tolerated Jitter), and priority (Priority).
식별자 정보(QoS_ID_Offset, QoS_ID_Size, QoS_ID_Value)는 식별자(QoS_ID)를 추출하기 위한 정보로, 식별자(QoS_ID)는 네트워크 드라이버로 패킷이 입력될시 해당 패킷에 대응하는 어플리케이션을 식별하기 위한 것이다. 이때, "QoS_ID_Offset"은 입력되는 패킷에서 식별자(QoS_ID)가 저장된 데이터가 시작되는 위치를 나타내며, "QoS_ID_Size"는 시작되는 위치로부터 식별자(QoS_ID)가 저장된 데이터의 크기를 나타낸다. 또한, "QoS_ID_Value"해당 패킷의 포트 번호(Source Port Nuber)를 의미한다. 따라서 네트워크 드라이버(113)는 "QoS_ID_Offset", "QoS_ID_Size" 및 "QoS_ID_Value"를 통해 식별자(QoS_ID)를 추출할 수 있다. The identifier information (QoS_ID_Offset, QoS_ID_Size, QoS_ID_Value) is information for extracting the identifier (QoS_ID), and the identifier (QoS_ID) is for identifying an application corresponding to the packet when the packet is input to the network driver. At this time, "QoS_ID_Offset" indicates the position where the data storing the identifier QoS_ID is started in the input packet, and "QoS_ID_Size" indicates the size of the data where the identifier QoS_ID is stored from the starting position. In addition, "QoS_ID_Value" means a port number (Source Port Nuber) of the corresponding packet. Accordingly, the
최대 및 최소 전송률(Max_DataRate, Min_DataRate)은 해당 어플리케이션의 QoS를 보장하기 위한 패킷당 최대 및 최소 전송률을 의미하며, 단위는 "bps"가 될 수 있다. 지터 시간(Tolerated Jitter)은 해당 패킷이 지터의 발생으로 인해 지연되어도 무방한 시간을 의미한다. 지터 시간(Tolerated Jitter)의 단위는 "ms"가 될 수 있다. 또한, 우선순위(Priority)는 각 어플리케이션에 따라 기 설정된 것을 말한다. The maximum and minimum data rates Max_DataRate and Min_DataRate mean the maximum and minimum data rates per packet to guarantee the QoS of the corresponding application, and the unit may be "bps". Tolerated Jitter means the time that the packet can be delayed due to the occurrence of jitter. The unit of jitter time can be "ms". In addition, priority refers to a preset value according to each application.
스케줄 정보(Schedule_Info)는 출력 시간(Next_Schedule_Time) 및 큐 링크 정보(Prev_Scheduled_Queue, Next_Scheduled_Queue)를 포함한다. 출력 시간(Next_Schedule_Time)은 스케줄링에 따라 해당 큐의 각 패킷의 출력 시간을 의미한다. 큐 링크 정보(Prev_Scheduled_Queue, Next_Scheduled_Queue)는 다른 큐와의 링크 정보이며, 출력 시간에 따라 각 큐가 링크된다. The schedule information Schedule_Info includes output time Next_Schedule_Time and queue link information Prev_Scheduled_Queue and Next_Scheduled_Queue. The output time (Next_Schedule_Time) means the output time of each packet of the corresponding queue according to the scheduling. The queue link information (Prev_Scheduled_Queue, Next_Scheduled_Queue) is link information with another queue, and each queue is linked according to the output time.
패킷 링크 정보(HeadListofPacketQueue)는 해당 큐에 입력되는 패킷들의 링크 정보를 말한다. The packet link information (HeadListofPacketQueue) refers to link information of packets input to the corresponding queue.
상술한 바와 같이 본 발명의 실시 예에 따른 큐는 각 큐에 입력되는 패킷들의 출력 시간을 저장하며, 이에 따라 패킷을 출력한다. 한편, 출력 시간이 같은 경우에는 QoS 프로파일을 참조하여, 지터 시간이 짧은 순서로 출력하며, 지터 시간도 같은 경우에는 우선순위에 따라 패킷을 출력한다. As described above, the queue according to an embodiment of the present invention stores the output time of packets input to each queue, and outputs the packet accordingly. On the other hand, when the output times are the same, the jitter time is output in the shortest order with reference to the QoS profile, and when the jitter times are the same, the packets are output in accordance with priority.
그러면, 상술한 큐의 구조를 바탕으로 본 발명의 실시 예에 따른 스케줄링 방법에 대해서 설명하기로 한다. 도 9는 본 발명의 실시 예에 따른 QoS에 따른 스케줄링 방법을 설명하기 위한 도면이다. Next, a scheduling method according to an embodiment of the present invention will be described based on the structure of the above-described queue. 9 is a diagram illustrating a scheduling method according to QoS according to an embodiment of the present invention.
도 9를 참조하면, 어플리케이션부(111)는 해당 어플리케이션에 따른 데이터가 발생하면 패킷별로 네트워크 드라이버(113)로 입력한다. 그러면, 네트워크 드라이버는 S901 단계에서 해당 패킷으로부터 식별자(QoS_ID)를 추출하고, S903 단계에서 추출한 식별자에 해당하는 큐가 존재하는지 검색한다. Referring to FIG. 9, when data according to a corresponding application is generated, the
S903 단계의 검색 결과에 따라 네트워크 드라이버(113)는 S905 단계에서 해당 큐가 존재하면, S907 단계로 진행하고, 그렇지 않으면, S909 단계로 진행한다. 즉, 식별자(QoS_ID)에 대응하는 큐가 존재하면 네트워크 드라이버(113)는 S907 단계에서 패킷을 해당 큐에 입력한다. 한편, 식별자(QoS_ID)에 대응하는 큐가 존재하지 않으면, 네트워크 드라이버(113)는 S909 단계에서 패킷을 정해진 큐(default Queue)에 입력한다. 즉, 특정 어플리케이션에 따라 큐가 할당되지 않은 경우, 네트워크 드라이버(113)는 임의의 정해진 큐에 패킷을 입력한다. According to the search result of step S903, the
상술한 바와 같이 패킷을 큐에 입력된 후, 네트워크 드라이버(113)는 S911 단계에서 스케줄링을 수행한다. After the packet is input to the queue as described above, the
본 발명의 실시 예에 따르면 할당된 다수의 큐들의 출력 순서를 결정하는 스케줄링에 따라 각 큐에 입력된 데이터를 패킷 단위로 출력하게 된다. 이때, 각 어플리케이션의 QoS에 따라 패킷 단위의 출력 시간을 산출하고, 산출한 출력 시간에 따라 출력시간이 빠른 패킷 순서대로 패킷을 출력한다. 이와 같은 출력 시간을 산출하는 방법에 대해서 설명하기로 한다. 도 10a 내지 도 10d는 각 어플리케이션의 QoS에 따른 출력 시간 산출 방법을 설명하기 위한 도면이다. According to an exemplary embodiment of the present invention, data input to each queue is output in packet units according to a scheduling that determines an output order of a plurality of allocated queues. At this time, the output time in packet units is calculated according to the QoS of each application, and the packets are output in the order of the packets having the fastest output time according to the calculated output time. A method of calculating such an output time will be described. 10A to 10D are diagrams for describing an output time calculation method according to QoS of each application.
도 10을 참조하면, 네트워크 드라이버(113)는 각 큐 별로 하기의 흐름과 같은 출력 시간을 산출한다. 이때, 각 어플리케이션 별로 할당된 큐에 따른 QoS(특히, 최소 전송률)에 따라 스케줄링을 수행한다. Referring to FIG. 10, the
네트워크 드라이버(113)는 S1001 단계에서 현재 시간이 해당 큐에 저장된 패킷의 출력 시간을 초과하였는지 판단한다. The
S1001 단계의 판단 결과 초과하지 않는 경우, 네트워크 드라이버(113)는 S1003 단계로 진행하여, 다음의 <수학식 1>에 따라 해당 패킷의 출력 시간을 산출한다. If the determination result of step S1001 does not exceed, the
<수학식 1>을 살펴보면, "Next_Schedule_Time"은 해당 패킷의 출력 시간을 의미하며, "Current_Time"은 현재 시간을 의미한다. 또한, "Size of Next Packet"은 전송될 패킷의 크기를 나타내며, "min_DataRate"는 최소 전송률이다. 따라서 "Size of Next Packet / min_DataRate"와 같이 패킷의 크기(b)를 최소 전송률(bps)로 나눈 값은 QoS가 보장되는 경우, 해당 큐에서 출력되는 패킷의 전송에 걸리는 최대 전송 지연 시간("Size of Next Packet / min_DataRate")이다. 따라서 <수학식 1>에 따라 아직 출력되지 않은 패킷은 최소한 현재 시간에서 QoS에 따라 최대 지연 시간후에 전송하도록 스케줄링 된다. 이러한 스케줄링의 예를 도 10b에 도시하였다. 도 10b 및 <수학식 1>에 따라 해당 패킷의 출력은 현재 시간에서 패킷의 최대 전송 지연 시간후에 수행된다. Referring to <Equation 1>, "Next_Schedule_Time" means the output time of the packet, "Current_Time" means the current time. In addition, "Size of Next Packet" represents the size of the packet to be transmitted, "min_DataRate" is the minimum transmission rate. Therefore, the value of the packet size (b) divided by the minimum transmission rate (bps), such as "Size of Next Packet / min_DataRate", is the maximum transmission delay time ("Size") required for transmission of packets output from the corresponding queue when QoS is guaranteed. of Next Packet / min_DataRate "). Therefore, according to Equation 1, a packet not yet output is scheduled to transmit after the maximum delay time according to QoS at least at the current time. An example of such scheduling is shown in FIG. 10B. According to Fig. 10b and Equation 1, the output of the packet is performed after the maximum transmission delay time of the packet at the current time.
S1001 단계의 판단 결과 초과하지 않는 경우, 네트워크 드라이버(113)는 S1005 단계로 진행하여, 다음의 <수학식 2>에 따라 지연 시간을 산출한다. If the determination result of step S1001 does not exceed, the
<수학식 2>를 살펴보면, "diff_Time"은 지연시간을 의미한다. 지연 시간은 기 출력된 패킷의 출력 시간 후 얼마의 시간이 지연되었는지 판단하기 위한 것이다. 여기서, "Next_Schedule_Time"은 기 출력된 패킷의 출력 시간, "Current_Time"은 현재 시간, "Size of Next Packet"은 전송될 패킷의 크기, "min_DataRate"은 최소 전송률이다. Looking at Equation 2, "diff_Time" means a delay time. The delay time is for determining how much time is delayed after the output time of the previously output packet. Here, "Next_Schedule_Time" is the output time of the previously output packet, "Current_Time" is the current time, "Size of Next Packet" is the size of the packet to be transmitted, "min_DataRate" is the minimum transmission rate.
네트워크 드라이버(113)는 S1007 단계에서 앞서 산출한 지연 시간이 음수이면, S1009 단계로 진행하여, 해당 패킷의 출력 시간을 현재 시간으로 설정한다. 이러한 출력 시간이 산출되는 예를 도 10c에 도시하였다. 도시한 바와 같이, S1009 단계의 경우는 기 출력된 패킷의 출력 시간 후, 최대 전송 지연 시간 이후에도 다음 패킷이 출력되지 않은 경우이다. 따라서 현재 시간에 바로 패킷을 출력하도록 스케줄링한다. If the delay time calculated in step S1007 is negative, the
한편, 네트워크 드라이버(113)는 S1007 단계에서 앞서 산출한 지연시간이 음수가 아니면, S1011 단계로 진행하여, 해당 패킷의 출력 시간을 현재 시간에서 지연 시간을 합한 시간으로 설정한다. 즉, S1011 단계에서 해당 패킷의 출력 시간은 기 출력된 패킷의 출력된 시간("Next Schedule Time")에서 최대 전송 지연 시간 후의 시간이다. 이러한 출력 시간이 산출되는 예를 도 10d에 도시하였다. 도시한 바와 같이, 현재 시간은 기 출력된 패킷의 출력 시간에서 최대 전송 지연 시간을 초과하지 않았다. 이러한 경우, 기 출력된 패킷의 출력 시간에서 최대 전송 지연 시간이 경과한 시점에 출력 시간을 설정한다. If the delay time calculated in step S1007 is not negative, the
상술한 바와 같이, 각 큐에 입력된 패킷의 출력 시간이 결정된다. 이를 바탕 으로 본 발명의 실시 예에 따른 데이터 전송 방법을 설명하기로 한다. 도 11은 본 발명의 실시 예에 따른 데이터 전송 방법을 설명하기 위한 도면이다. As described above, the output time of the packets input to each queue is determined. Based on this, a data transmission method according to an embodiment of the present invention will be described. 11 is a diagram illustrating a data transmission method according to an embodiment of the present invention.
도 11을 참조하면, 네트워크 드라이버(113)는 S1101 단계에서 도 10a에서 설명한 바에 따라 산출되는 각 큐에 저장된 패킷들의 출력 시간을 검색한다. 그런 다음, 네트워크 드라이버(113)는 S1103 단계에서 출력 시간 순으로 각 큐들을 정렬한다. Referring to FIG. 11, the
이때, 네트워크 드라이버(113)는 S1105 단계에서 출력 시간이 동일한 큐가 존재하는지 판단한다. S1105 단계의 판단 결과, 출력 시간이 동일한 큐가 존재하면, 네트워크 드라이버(113)는 S1107 단계로 진행하여, 출력 시간의 동일한 큐의 지터 시간(Tolerated Jitter)을 비교한다. 여기서, 지터 시간은 QoS 프로파일을 참조한다. In this case, the
그런 다음, 네트워크 드라이버(113)는 S1109 단계에서 출력 시간의 동일한 큐들을 지터 시간이 짧은 순으로 정렬한다. The
이때, 네트워크 드라이버(113)는 S1111 단계에서 지터 시간이 짧은 순으로 정렬된 큐 중 지터 시간이 동일한 큐가 존재하는지 판단한다. In this case, the
상기 S11111 단계의 판단 결과, 지터 시간이 동일한 큐가 존재하면, 네트워크 드라이버(113)는 S1113 단계에서 지터 시간이 동일한 큐들의 우선순위(Priority)를 검색한다. 여기서, 우선순위는 QoS 프로파일을 참조한다. 그런 다음, 네트워크 드라이버(113)는 S1115 단계에서 지터시간이 동일한 큐들을 우선순위가 높은 순으로 정렬한다. As a result of the determination in step S11111, if there are queues with the same jitter time, the
상술한 바와 같이, 산출된 출력 시간, 지터 시간 및 우선순위를 고려하여 큐들이 정렬되면, 네트워크 드라이버(113)는 S1117 단계에서 정렬된 큐 순으로 패킷을 SS(120)으로 출력한다. 한편, 큐가 할당되지 않은 어플리케이션의 경우 정해진 큐(Default Queue)에 입력되며, 이와 같은 큐에 입력되는 패킷은 전송 처리의 여유가 있는 경우에 전송된다. As described above, when the queues are aligned in consideration of the calculated output time, jitter time and priority, the
상술한 바와 같이 본 발명의 실시 예에 따른 네트워크 드라이버(113)는 QoS(산출된 출력 시간, 지터 시간 및 우선순위)에 따라 스케줄링을 수행한다. 따라서 TE(110)에서 SS(120)로의 패킷 출력시, QoS를 보장할 수 있다. As described above, the
이상 본 발명을 몇 가지 바람직한 실시 예를 사용하여 설명하였으나, 이들 실시 예는 예시적인 것이며 한정적인 것이 아니다. 이와 같이, 본 발명이 속하는 기술 분야에서 통상의 지식을 지닌 자라면 본 발명의 사상과 첨부된 특허청구범위에 제시된 권리범위에서 벗어나지 않으면서 균등론에 따라 다양한 변화와 수정을 가할 수 있음을 이해할 것이다. While the present invention has been described using some preferred embodiments, these embodiments are illustrative and not restrictive. As such, those of ordinary skill in the art will appreciate that various changes and modifications can be made according to equivalents without departing from the spirit of the present invention and the scope of rights set forth in the appended claims.
도 1은 본 발명의 실시 예에 따른 무선 네트워크 시스템의 구성을 도시한 도면. 1 is a diagram showing the configuration of a wireless network system according to an embodiment of the present invention.
도 2는 본 발명의 실시 예에 따른 단말의 개략적인 구성을 설명하기 위한 도면. 2 is a view for explaining a schematic configuration of a terminal according to an embodiment of the present invention.
도 3은 본 발명의 실시 예에 따른 QoS 설정 방법을 설명하기 위한 도면. 3 is a diagram illustrating a QoS setting method according to an embodiment of the present invention.
도 4는 본 발명의 실시 예에 따른 큐 할당 방법을 설명하기 위한 흐름도. 4 is a flowchart illustrating a queue allocation method according to an embodiment of the present invention.
도 5는 본 발명의 실시 예에 따른 QoS 설정 해제 방법을 설명하기 위한 도면. 5 is a diagram for describing a method of canceling QoS setting according to an embodiment of the present invention.
도 6은 본 발명의 실시 예에 따른 QoS 설정 해제 방법을 설명하기 위한 도면. 6 is a diagram for describing a method of canceling QoS setting according to an embodiment of the present invention.
도 7은 본 발명의 실시 예에 따른 큐 할당 해제 방법을 설명하기 위한 흐름도. 7 is a flowchart illustrating a queue allocating method according to an embodiment of the present invention.
도 8은 본 발명의 실시 예에 따른 큐의 구조를 설명하기 위한 도면. 8 is a view for explaining the structure of a queue according to an embodiment of the present invention.
도 9는 본 발명의 실시 예에 따른 QoS에 따른 스케줄링 방법을 설명하기 위한 도면. 9 is a diagram illustrating a scheduling method according to QoS according to an embodiment of the present invention.
도 10a 내지 도 10d는 각 어플리케이션의 QoS에 따른 출력 시간 산출 방법을 설명하기 위한 도면. 10A to 10D are diagrams for explaining an output time calculation method according to QoS of each application.
도 11은 본 발명의 실시 예에 따른 데이터 전송 방법을 설명하기 위한 도면. 11 is a view for explaining a data transmission method according to an embodiment of the present invention.
Claims (2)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020080086408A KR101546750B1 (en) | 2008-09-02 | 2008-09-02 | A method for data transmission guaranteed Quality of Service in a terminal equipment and an apparatus thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020080086408A KR101546750B1 (en) | 2008-09-02 | 2008-09-02 | A method for data transmission guaranteed Quality of Service in a terminal equipment and an apparatus thereof |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20100027473A true KR20100027473A (en) | 2010-03-11 |
KR101546750B1 KR101546750B1 (en) | 2015-08-24 |
Family
ID=42178432
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020080086408A KR101546750B1 (en) | 2008-09-02 | 2008-09-02 | A method for data transmission guaranteed Quality of Service in a terminal equipment and an apparatus thereof |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101546750B1 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20120087728A (en) * | 2011-01-28 | 2012-08-07 | 삼성전자주식회사 | Method and apparatus for providing qos-based service in wireless communication system |
KR20160116434A (en) * | 2015-03-30 | 2016-10-10 | 한국전자통신연구원 | Apparatus and method for optimizing resource of system based on self-adaptive for natwork application |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1959614B1 (en) | 2005-12-02 | 2014-02-19 | Huawei Technologies Co., Ltd. | A method and system for interconnecting the broadband wireless access network with the optical access broadband network |
-
2008
- 2008-09-02 KR KR1020080086408A patent/KR101546750B1/en active IP Right Grant
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20120087728A (en) * | 2011-01-28 | 2012-08-07 | 삼성전자주식회사 | Method and apparatus for providing qos-based service in wireless communication system |
WO2012102590A3 (en) * | 2011-01-28 | 2012-11-22 | Samsung Electronics Co., Ltd. | Method and apparatus for providing qos-based service in wireless communication system |
US8913987B2 (en) | 2011-01-28 | 2014-12-16 | Samsung Electronics Co., Ltd. | Method and apparatus for providing QoS-based service in wireless communication system |
KR20160116434A (en) * | 2015-03-30 | 2016-10-10 | 한국전자통신연구원 | Apparatus and method for optimizing resource of system based on self-adaptive for natwork application |
Also Published As
Publication number | Publication date |
---|---|
KR101546750B1 (en) | 2015-08-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1964421B1 (en) | Mapping of packet flows to bearers in a communication system | |
EP1762056B1 (en) | Dynamic service information for the access network | |
CN101336532B (en) | Method and apparatus for mounting packet filter in data transmission | |
CN100358291C (en) | System and realization for dynamic cooperating service quality in next generation network | |
WO2008116363A1 (en) | Business processing method and system, policy control and charging rules function | |
CN108259434B (en) | Opening method for QoS guarantee capability of user side and server | |
CN101965724B (en) | Precedence and preemption extension for remote terminals | |
KR20120103713A (en) | Group session management and admission control of multiple internet protocol flows | |
US9271255B1 (en) | Providing wireless network communication among a plurality of wireless devices | |
WO2007085195A1 (en) | System and method for handling resource request | |
KR20180038035A (en) | Improved priority handling for data flow transmission in communication systems | |
US8774207B2 (en) | Methods for bearer reservation, maintenance, and use in a communication system | |
WO2007085184A1 (en) | A method, system and entity for media negotiation | |
CN104468481A (en) | Method and device for realizing media QoS bearing resource control | |
CN101330469A (en) | Method for implementing collection of safety parameter of resource control part in the next generation network | |
KR101546750B1 (en) | A method for data transmission guaranteed Quality of Service in a terminal equipment and an apparatus thereof | |
KR101051023B1 (en) | Mobile Communication System Supporting Multiple PCR and Its Method | |
WO2011022961A1 (en) | Method for interaction between resource and admission control systems and resource and admission control system | |
KR20080080720A (en) | Apparatus and method for providing quality of service in portable communication system | |
CN101188518B (en) | System for dynamic service quality negotiation of next-generation network and its realization method | |
WO2007085199A1 (en) | Method, application and apparatus for identifying user state in networks | |
JP7030159B2 (en) | Communication systems, information processing methods and programs | |
KR101016634B1 (en) | Communication system and method for providing qos service to wireline customer premises equipment using ims network | |
EP2068508A1 (en) | Method, device and system for synchronizing user data in next generation network | |
JP6829290B2 (en) | Information processing device and information processing method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E90F | Notification of reason for final refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |