KR101546750B1 - 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 PDF

Info

Publication number
KR101546750B1
KR101546750B1 KR1020080086408A KR20080086408A KR101546750B1 KR 101546750 B1 KR101546750 B1 KR 101546750B1 KR 1020080086408 A KR1020080086408 A KR 1020080086408A KR 20080086408 A KR20080086408 A KR 20080086408A KR 101546750 B1 KR101546750 B1 KR 101546750B1
Authority
KR
South Korea
Prior art keywords
time
queue
application
qos
terminal
Prior art date
Application number
KR1020080086408A
Other languages
Korean (ko)
Other versions
KR20100027473A (en
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 KR1020080086408A priority Critical patent/KR101546750B1/en
Publication of KR20100027473A publication Critical patent/KR20100027473A/en
Application granted granted Critical
Publication of KR101546750B1 publication Critical patent/KR101546750B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2475Traffic characterised by specific attributes, e.g. priority or QoS for supporting traffic characterised by the type of applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/28Flow control; Congestion control in relation to timing considerations
    • H04L47/283Flow control; Congestion control in relation to timing considerations in response to processing delays, e.g. caused by jitter or round trip time [RTT]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/62Queue scheduling characterised by scheduling criteria
    • 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/10Flow control between communication endpoints

Landscapes

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

Abstract

본 발명은 QoS(Quality of Service)를 제공하기 위한 단말의 데이터 전송 장치 및 방법에 관한 것으로, 이러한 본 발명은 무선 통신 서비스 제공을 위한 다수의 어플리케이션을 실행하는 TE(Terminal Equipment) 및 상기 TE의 어플리케이션 실행에 따른 데이터를 무선 규격에 따라 전송하는 SS(Subscriber Station)를 포함하며, 상기 TE는 각 어플리케이션의 실행으로 발생하는 데이터를 출력하는 어플리케이션부와, 상기 출력된 데이터를 해당하는 어플리케이션의 QoS에 따라 스케줄링하여 상기 SS로 출력하는 네트워크 드라이버;를 포함하는 것을 특징으로 하는 QoS를 제공하기 위한 단말의 데이터 전송 장치 및 이에 따른 전송 방법을 제공한다. The present invention relates to an apparatus and method for transmitting data of a terminal for providing QoS (Quality of Service), and the present invention relates to a terminal equipment (TE) for executing a plurality of applications for providing a wireless communication service, And an SS (Subscriber Station) for transmitting data according to a wireless standard, wherein the TE comprises: an application unit for outputting data generated by execution of each application; And a network driver for scheduling and outputting the data to the SS. The data transmission apparatus and the transmission method of the terminal for providing QoS are provided.

TE, SS, QoS TE, SS, QoS

Description

큐오에스를 제공하기 위한 단말의 데이터 전송 장치 및 방법{A method for data transmission guaranteed Quality of Service in a terminal equipment and an apparatus thereof}BACKGROUND OF THE INVENTION 1. Field of the Invention [0001] The present invention relates to a data transmission apparatus and method for transmitting and receiving data,

본 발명은 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 that can efficiently guarantee 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 a mobile WiMAX (mWiMAX) includes a terminal equipment (TE) and a subscriber station (SS) connected to the TE and performing a wireless section connection. Generally, the TE may be a notebook, and the SS may be a network adapter.

모바일 와이맥스(mWiMAX)에서 QoS 서비스를 제공하기 위해서는, 맥 계층(MAC Layer)에서 분류기(Classifier)를 이용하여 스케줄링 서비스를 제공한다. 그러나 여러 가지 경우에서, 해당 QoS를 보장하기 어려운 경우가 발생한다. 즉, TE의 TCP/IP Stack으로부터 전달되는 데이터의 양이 장치의 처리 가능 용량(HW Interface Throughput) 이상의 데이터를 전송 하려 경우, 무선 구간(Air)의 전송 가능한 처리량(Throughput)이 저하된 경우, 특정 어플리케이션(Application)이 많은 양(High Data Rate)의 패킷을 전송하려 하는 경우 등에서 병목 현상이 생기게 된다. 이러한 경우에는 각 어플리케이션들의 QoS를 보장하기 어려워지고 성능 또한 보장하기 어렵게 된다. In order to provide QoS service in mobile WiMAX (mWiMAX), a scheduler is provided using a classifier in a MAC layer. However, in many cases, it may be difficult to guarantee the QoS. That is, when the amount of data transmitted from the TCP / IP Stack of the TE is greater than the HW Interface Throughput of the device, when the throughput of the wireless section (Air) decreases, A bottleneck occurs when an application tries to transmit a packet with a high data rate. In such a case, QoS of each application is difficult to guarantee and performance is also difficult to guarantee.

따라서 상술한 바와 같은 종래의 문제를 감안한 본 발명의 목적은, 병목 현상 없이 QoS를 보장하여 서비스를 제공할 수 있는 방법 및 장치를 제공함에 있다. SUMMARY OF THE INVENTION Accordingly, the present invention has been made keeping in mind the above problems occurring in the prior art, and it is an object of the present invention to provide a method and apparatus for providing a service without QoS bottleneck.

상기와 같은 목적을 달성하기 위한 본 발명의 바람직한 실시 예에 따른 QoS를 제공하기 위한 단말의 데이터 전송 장치는, 무선 통신 서비스 제공을 위한 다수의 어플리케이션을 실행하는 TE(Terminal Equipment) 및 상기 TE의 어플리케이션 실행에 따른 데이터를 무선 규격에 따라 전송하는 SS(Subscriber Station)를 포함하며, 상기 TE는 각 어플리케이션의 실행으로 발생하는 데이터를 출력하는 어플리케이션부와, 상기 출력된 데이터를 해당하는 어플리케이션의 QoS에 따라 스케줄링하여 상기 SS로 출력하는 네트워크 드라이버;를 포함하는 것을 특징으로 한다. According to another aspect of the present invention, there is provided a data transmission apparatus for providing a QoS according to a preferred embodiment of the present invention includes a terminal equipment (TE) for executing a plurality of applications for providing a wireless communication service, And an SS (Subscriber Station) for transmitting data according to a wireless standard, wherein the TE comprises: an application unit for outputting data generated by execution of each application; And a network driver for performing scheduling and outputting to the SS.

상기 네트워크 드라이버는 상기 어플리케이션부로부터 각 어플리케이션에 따른 QoS 프로파일을 수신하여 수신한 QoS 프로파일에 따라 큐를 할당하고, 할당된 큐로 입력되는 패킷들을 스케줄링하는 것을 특징으로 한다. The network driver receives a QoS profile according to each application from the application unit, allocates a queue according to the received QoS profile, and schedules packets input to the allocated queue.

상기 QoS 프로파일은 최대 및 최소 전송률, 지터 시간, 및 우선순위를 포함한다. The QoS profile includes maximum and minimum rate, jitter time, and priority.

상기와 같은 목적을 달성하기 위한 본 발명의 바람직한 실시 예에 따른 QoS를 제공하기 위한 단말의 데이터 전송 방법은, 각각이 무선 통신 연결을 통해 서비스를 제공하는 어플리케이션에 대응하는 큐를 각각 할당하는 과정과, 상기 큐 각각 에 할당된 어플리케이션의 패킷들을 입력하는 과정과, 상기 어플리케이션 각각의 기 설정된 QoS에 따라 상기 패킷들을 출력할 시간을 스케줄링하는 과정과, 상기 산출된 시간에 따라 상기 패킷들을 출력하는 과정을 포함한다. According to another aspect of the present invention, there is provided a method of transmitting data to a terminal for providing QoS according to a preferred embodiment of the present invention includes the steps of allocating a queue corresponding to an application providing a service through a wireless communication connection, Scheduling a time for outputting the packets according to a preset QoS of each application; and outputting the packets according to the calculated time, .

상기 할당하는 과정은 각 어플리케이션에 따른 QoS 프로파일을 수신하여 수신한 QoS 프로파일에 따라 큐를 할당하는 것을 특징으로 한다. The allocating process is characterized by 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, a network driver performs QoS-based scheduling, thereby ensuring QoS without bottleneck and providing a service. This has the advantage of increasing the use of the wireless communication network.

이하, 본 발명에 따른 바람직한 실시 예를 첨부한 도면을 참조하여 상세히 설명한다. 하기의 설명에서는 본 발명에 따른 동작을 이해하는데 필요한 부분만이 설명되며 그 이외 부분의 설명은 본 발명의 요지를 흩트리지 않도록 생략될 것이라는 것을 유의하여야 한다. Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. In the following description, only parts necessary for understanding the operation according to the present invention will be described, and the description of other parts will be omitted so as not to obscure 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 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 terminal 100, a base station device 200, and an IMS (IP Multimedia Subsystem) 300.

단말(100)은 무선채널의 종단점으로 무선접속 규격에 따라 기지국 장치(200)와 통신한다. 본 발명의 실시 예에 따른 단말(100)은 TE(Terminal Equipment)(110) 및 SS(Subscriber Station)(120)를 포함하여 구성된다. The terminal 100 communicates with the base station apparatus 200 according to the radio access standard as an end point of a radio channel. A terminal 100 according to an embodiment of the present invention includes a terminal equipment (TE) 110 and a subscriber station (SS)

기지국 장치(200)는 단말(100)과 IMS(300)간을 연결하는 역할을 수행한다. 특히, 기지국 장치(200)는 RAS(Radio Access Station)(210) 및 ACR(Access Control Router)(220)을 포함하여 구성된다. The base station apparatus 200 plays a role of connecting between the terminal 100 and the IMS 300. In particular, the base station apparatus 200 includes a Radio Access Station (RAS) 210 and an Access Control Router (ACR) 220.

RAS(Radio Access Station: 기지국)(210)는 무선망과 유선망을 연결하는 장치로써 각 망의 특성에 맞게 무선채널을 제어하며, 유선망과 연결되어 단말(100)에 직접적으로 무선 패킷 데이터 서비스를 제공한다. 주요 기능은 무선신호를 송수신하는 기능, 패킷트래픽 신호에 대한 변복조신호처리 기능, 프로토콜 처리 및 라우팅 기능을 수행한다. A radio access station (RAS) 210 is a device for connecting a radio network and a wired network, and controls a radio channel according to characteristics of each network. The RAS 210 is connected to a wired network and directly provides a wireless packet data service do. Its main functions are to transmit and receive wireless signals, to perform modulation and demodulation signal processing on packet traffic signals, and to perform protocol processing and routing functions.

ACR(Access Control Router: 제어국)(220)은 다수개의 RAS(210)들과 연결되어 이들을 관리하며, ACR(220) 내에서 고속의 이동성을 보장하기 위한 핸드오버 제어기능 등을 수행한다. ACR(220)은 단말(100)과 RAS(210)들을 제어하고 IP 패킷을 라우팅(routing)한다. 데이터 트래픽의 입장에서 볼 때, ACR(220)은 라우터로 볼 수 있다. An ACR (Access Control Router) 220 is connected to and manages a plurality of RASs 210, and performs a handover control function for ensuring high mobility in the ACR 220. The ACR 220 controls the terminal 100 and the RAS 210 and routes IP packets. From the perspective of data traffic, the ACR 220 can be viewed as a router.

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)라고 칭하기로 한다. The IP Multimedia Subsystem (IMS) 300 includes a home subscriber server (HSS), a subscriber location function (SLF), a session charging function (SCF), a call session control function (CSCF) (Policy Decision Function), AS (Application Server), MRF (Media Resource Function), BGCF (Breakout Gateway Control Function), MGCF (Media Gateway Controller Function) , A Charging Collector Function (CCF), and an Event Charging Function (ECF). IMS (IP Multimedia Subsystem) is a core network infrastructure (infra) that enables various multimedia services based on IP. As described above, the IMS 300 may have various entities, and a set of these entities will be referred to as an IMS 300. [

이러한 엔티티 중 SIP(Session Initiation Protocol) 네트워크를 위한 엔티티는 P-CSCF, I-CSCF, S-CSCF, BGCF, MRFC, MGCF, AS 등이 될 수 있다. Among these entities, entities for a Session Initiation Protocol (SIP) network may be P-CSCF, I-CSCF, S-CSCF, BGCF, MRFC, MGCF, AS,

HSS는 사용자 정보 데이터 베이스로 HLR의 진화된 형태로서 세션 제어를 수행하는 IMS 엔티티들을 지원한다. HSS는 멀티미디어 세션 제어와 관련된 사용자 관련 가입 정보, 즉 사용자의 위치 정보, 사용자의 인증 및 허용을 위한 보안 정보, 사용자가 가입한 서비스를 포함한 사용자 프로파일 정보를 담고 있다. The HSS supports the IMS entities that perform session control as an evolved form of HLR as a user information database. The HSS contains user related subscription information related to multimedia session control, i.e., location information of the user, security information for authentication and permission of the user, and user profile information including the service to which the user subscribes.

CSCF는 일종의 SIP 서버로 IMS(300)에서 SIP 신호를 처리한다. P-CSCF는 IMS 단말을 위한 첫 연결점이 되는 SIP 프록시 서버이다. P-CSCF는 홈망 또는 방문망에 존재할 수 있다. P-CSCF는 IMS 망에 등록시에 IMS 단말에 할당되고 등록기간 동안 변경되지 않는다. P-CSCF는 PDF를 포함하거나 별도로 구성될 수 있으며 이와 함께 정책 제어, 대역 관리 등의 QoS 제어 기능을 수행한다. The CSCF processes SIP signals in the IMS 300 as a kind of SIP server. The P-CSCF is a SIP proxy server that is the first connection point for the IMS terminal. The P-CSCF may reside in a home network or a visited network. The P-CSCF is assigned to the IMS terminal at the time of registration in the IMS network and is not changed during the registration period. The P-CSCF can include PDF or be separately configured and performs QoS control functions such as policy control and band management.

I-CSCF는 보더 기능이 존재하지 않을 경우 관리 도메인의 경계에 위치한다. 따라서 타 도메인의 서버에서 이를 찾아 네트워크의 입력 노드로 사용할 수 있도록 IP 주소를 도메인의 DNS에 공개한다. I-CSCF는 사용자의 위치를 HSS에 질의하고 사용자가 할당된 S-CSCF로 SIP 메시지를 전달한다. S-CSCF는 신호 계층의 중앙 노드로 하나의 SIP 서버로서 세션제어를 수행한다. 항상 홈망에 존재하며, HSS로부터 사용자 프로파일을 다운로드하고 업로드한다. SIP 등록 시에 사용자의 위치와 SIP 주소를 바인딩(binding)한다. The I-CSCF is located at the boundary of the management domain when the border function is not present. Therefore, the server of the other domain finds it and exposes the IP address to the DNS of the domain so that it can be used as the input node of the network. The I-CSCF queries the HSS for the user's location and forwards the SIP message to the user's assigned S-CSCF. The S-CSCF is a central node of the signaling layer and performs session control as one SIP server. Always exists in the home network, downloading and uploading user profiles from HSS. Binds the user's location and SIP address at SIP registration.

응용 서버(AS)들은 서비스를 주최하고 수행하며 SIP를 사용하여 S-CSCF와 인터페이스 한다. 이러한 서비스 예로 발신번호 관련 서비스(CLIP, CLIR 등), 호 대기, 호 보류, push-to-talk, 호 전환, 호 전달, 호 폐쇄 서비스, 합법적인 감청, 서비스 안내, 회의 통화 서비스, 음성 사서함, 문자와 음성 변환, 위치 기반 서비스, SMS, MMS, 프레전스 정보, 인스턴트 메시징 등의 서비스가 있다. 본 발명의 실시 예에서 사용되는 용어 "서비스"는 상술한 바와 같은 것들을 포함한다. Application servers (ASs) host and perform services, and interfaces with the S-CSCF using SIP. Examples of these services include Caller ID related services (CLIP, CLIR, etc.), call hold, call hold, push-to-talk, transfer, call forwarding, call blocking, legitimate interception, SMS, MMS, presence information, instant messaging, and so on. The term "service" as used in an embodiment of the present invention includes those described above.

다음으로, 본 발명의 실시 예에 따른 단말(100)의 구성에 대해서 좀 더 자세히 살펴보기로 한다. 도 2는 본 발명의 실시 예에 따른 단말의 개략적인 구성을 설명하기 위한 도면이다. Next, the configuration of the terminal 100 according to the embodiment of the present invention will be described in more detail. 2 is a diagram for explaining a schematic configuration of a terminal according to an embodiment of the present invention.

본 발명의 실시 예에 따른 단말(100)은, TE(Terminal Equipment)(110) 및 SS(Subscriber Station)(120)를 포함한다. 특히, TE(110)은 어플리케이션부(111) 및 네트워크 드라이버(113)를 포함한다. A terminal 100 according to an embodiment of the present invention includes a terminal equipment (TE) 110 and a subscriber station (SS) In particular, the TE 110 includes an application unit 111 and a network driver 113.

단말(100)의 각 구성 요소에 대해서 좀 더 자세히 살펴보면, TE(110)는 다양한 무선 통신을 이용한 서비스를 제공하기 위한 어플리케이션을 사용자에게 제공하며, SS(120)은 이러한 서비스를 제공하기 위한 무선 연결을 위한 것이다. 이에 따 라, TE(110)은 각 어플리케이션의 사용에 따라 발생하는 패킷 단위의 데이터를 SS(120)으로 제공하며, SS(120)는 이러한 데이터들을 기지국 장치(200)로 전송한다. 또한, SS(120)은 기지국 장치(200)로부터 데이터를 수신하여 TE(110)으로 전달한다. The TE 110 provides an application for providing services using various wireless communications to the user and the SS 120 provides a wireless connection for providing the service . Accordingly, the TE 110 provides the SS 120 with the packet-based data generated according to the use of each application, and the SS 120 transmits the data to the base station 200. In addition, the SS 120 receives data from the base station apparatus 200 and transmits the data to the TE 110.

어플리케이션부(111)는 다양한 서비스를 제공할 수 있는 다수개의 어플리케이션(application)을 가지며, 이를 소정의 인터페이스를 통해 사용자에게 제공한다. 또한, 어플리케이션부(111)는 각 어플리케이션의 QoS 프로파일을 포함하는 QoS 정보를 네트워크 드라이버(113)에 제공한다. 그리고 어플리케이션부(111)는 각 어플리케이션의 사용에 따라 발생되는 패킷들을 네트워크 드라이버(113)에 제공한다. The application unit 111 has a plurality of applications that can provide various services, and provides them to a user through a predetermined interface. In addition, the application unit 111 provides the QoS information including the QoS profile of each application to the network driver 113. The application unit 111 provides the network driver 113 with packets generated according to the usage of each application.

네트워크 드라이버(113)는 어플리케이션부(111)의 각 어플리케이션에서 발생되는 패킷을 스케줄링하여 SS(120)으로 전송한다. 이를 위하여, 네트워크 드라이버(113)는 어플리케이션부의 요청에 따라 각 어플리케이션에 따른 큐를 할당한다. 그런 다음, 패킷이 입력되면, 네트워크 드라이버(113)는 입력되는 패킷을 각 어플리케이션에 따라 분류하여 대응하는 큐에 패킷을 입력한다. 또한, 네트워크 드라이버(113)는 각 어플리케이션의 QoS에 따라 스케줄링하여 해당 패킷을 SS(120)으로 출력한다. 상술한 기능을 수행하기 위하여, 네트워크 드라이버(113)은 어플리케이션 벼로 수신되는 패킷을 할당된 큐에 입력하기 위한 분류 모듈(QoS Classification), 각 큐에 입력된 패킷의 입력 및 출력을 관리하기 위한 큐 관리 모듈(Queue Manager), 각 큐에 입력된 패킷들을 스케줄링하여 출력시키기 위한 스케줄러(Packet Scheduler) 등을 포함한다. The network driver 113 schedules a packet generated in each application of the application unit 111 and transmits the packet to the SS 120. To this end, the network driver 113 allocates a queue according to each application according to a request of the application unit. Then, when the packet is inputted, the network driver 113 classifies the input packet according to each application and inputs the packet to the corresponding queue. In addition, the network driver 113 schedules according to the QoS of each application and outputs the packet to the SS 120. In order to perform the above-described functions, the network driver 113 includes a classification module (QoS Classification) for inputting packets received in the application queue to the assigned queue, a queue management A module (Queue Manager), a scheduler (Packet Scheduler) for scheduling and outputting packets input to each queue, and the like.

SS(120)은 TE(110)로부터 입력되는 패킷을 무선 규격에 따라 기지국 장치(200)로 전송한다. 이를 위하여, SS(120)은 TE(110)과의 연결을 위한 장치 및 기지국 장치(200)와의 무선 통신을 수행하기 위항 무선 통신 모듈을 구비할 수 있다. SS(120) 또한 각 어플리케이션의 설정된 QoS에 따라 해당 어플리케이션에 따른 패킷을 전송한다. The SS 120 transmits a packet input from the TE 110 to the base station apparatus 200 according to the radio standard. For this purpose, the SS 120 may include a device for connection with the TE 110 and a wireless communication module for performing wireless communication with the base station 200. The SS 120 also transmits a packet according to the application according to the QoS set by each application.

본 발명의 실시 예에 따르면 단말(100)의 QoS에 따른 데이터 전송을 수행하기 위하여, 각 어플리케이션에 따른 QoS 별로 스케줄링을 수행한다. 예컨대, 데이터 전송률에 따른 스케줄링을 수행한다. 이를 위하여, 어플리케이션부(111)는 네트워크 드라이버(113)에 각 어플리케이션의 QoS 프로파일을 제공하고, 네트워크 드라이버(113)는 각 어플리케이션별로 큐를 할당한다. 큐를 할당한 후, 각 어플리케이션에 사용에 따른 데이터가 발생하면, 어플리케이션부(111)는 발생한 데이터를 패킷 별로 네트워크 드라이버에 제공한다. 그러면, 네트워크 드라이버(113)는 할당한 큐로 입력되는 패킷들을 QoS에 따라 스케줄링하여 SS(120)로 출력한다. According to an embodiment of the present invention, scheduling is performed for each QoS according to each application in order to perform data transmission according to the QoS of the terminal 100. For example, it performs scheduling according to the data rate. To this end, the application unit 111 provides the QoS profile of each application to the network driver 113, and the network driver 113 allocates a queue for each application. After the queues are allocated, if application-specific data is generated for each application, the application unit 111 provides the generated data to the network driver on a packet-by-packet basis. Then, the network driver 113 schedules the packets input to the assigned queue according to the QoS and outputs the packets to the SS 120.

상기한 TE(110) 및 SS(120)은 하나의 기기에 포함될 수 있으며, 서로 다른 기기인 경우, TE(110) 및 SS(120)은 특정 인터페이스를 통해 서로 연결된다. 특정 인터페이스는 유선 및 무선을 포함한다. 예컨대, TE(110)은 노트북(note book)과 같은 휴대 가능한 기기가 될 수 있으며, SS(120)은 소위 "네트워크 어답터", "네트워크 장치" 또는 "동굴" 등이 될 수 있다. The TE 110 and the SS 120 may be included in one device. In case of a different device, the TE 110 and the SS 120 are connected to each other through a specific interface. Specific interfaces include wired and wireless. For example, the TE 110 may be a portable device such as a notebook, and the SS 120 may be a so-called "network adapter "," network device "

본 발명의 실시 예에 따르면, 네트워크 드라이버(113)는 각 어플리케이션별로 큐를 할당하고, 각 큐에 입력되는 패킷을 QoS에 따라 SS(120)으로 출력함으로 써, SS(120)의 에어 전송 가능 능력이 저하되거나, 특정 어플리케이션이 과도한 트래픽을 발생한 경우에도, 전송 성능을 떨어뜨리지 않도록 할 수 있다. According to the embodiment of the present invention, the network driver 113 allocates a queue for each application and outputs a packet input to each queue to the SS 120 according to the QoS, The transmission performance is not deteriorated even when a specific application generates excessive traffic.

그러면, 좀 더 자세히 상술한 단말의 QoS 보장을 위한 데이터 전송 방법에 대해서 설명하기로 한다. 각 어플리케이션은 그 서비스를 제공하기 위한 QoS를 가진다. 예컨대, QoS는 해당 어플리케이션이 실행되어 사용자에게 서비스를 제공하기 위해 요구되는 최소 전송률 또는 최대 전송률 등이 될 수 있다. 본 발명의 실시 예에서는 어플리케이션이 실행시 해당 어플리케이션의 QoS를 보장하기 위해 QoS 설정을 수행하며, 해당 어플리케이션의 종료시 QoS 설정을 해제한다. A data transmission method for assuring the QoS of the MS will be described in more detail. Each application has QoS to provide its services. For example, the QoS may be a minimum transmission rate or a maximum transmission rate required for a corresponding application to be executed and to provide a service to a user. In the 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 canceled at the end of the application.

먼저, 본 발명의 실시 예에 따른 각 어플리케이션에 따른 서비스 요청시 QoS 설정 방법에 대해서 설명하기로 한다. 도 3은 본 발명의 실시 예에 따른 QoS 설정 방법을 설명하기 위한 도면이다. First, a description will be made of a QoS setting method in case of a service request according to each application according to an embodiment of the present invention. 3 is a diagram for explaining 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 TE 110 transmits a service request message (SIP INVITE) to the IMS 300 in step S301. In response to this, the IMS 300 transmits to the TE 110 an information message (SIP 183) including an authentication token for the service in step S303. The message exchange between the TE 110 and the IMS 300 is performed through the base station 200 and the SS 120.

인증 토큰(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)한다. The TE 110 having received the authorization token transmits the QoS reservation request message to the SS 120 in step S305. The QoS reservation request message includes an authorization token for the service and an application handle (App_Handle) for handling the application performing the service. Upon receiving the QoS reservation request message, the SS 120 reserves QoS for the base station 200 and the corresponding application in step S307.

그런 다음, SS(120)는 S309 단계에서 예약이 완료되었음을 알리도록 QoS 예약 응답 메시지(QoS RESERVATION RESPONSE)를 TE(110)로 전송한다. 여기서, QoS 예약 응답 메시지에는 QoS 핸들(QoS_Handle)이 포함된다. The SS 120 then transmits a QoS RESERVATION RESPONSE to the TE 110 to notify that the reservation is completed in step S309. Here, the QoS reservation response message includes a QoS handle (QoS_Handle).

이에 따라, TE(110)는 자체적으로 어플리케이션부(111) 및 네트워크 드라이버(113)간에 예약된 "QoS를 설정"하기 위한 프로세스를 수행한다. "QoS를 설정"은 단말의 입장에서 해당 어플리케이션에 대응하는 큐(Queue)를 할당함을 의미한다. Accordingly, the TE 110 itself performs a process of setting a QoS "reserved for QoS" between the application unit 111 and the network driver 113. "Setting QoS" means allocating a queue corresponding to the application from the viewpoint of the terminal.

"QoS를 설정"을 위해, 어플리케이션부(111)는 S311 단계에서 네트워크 드라이버(113)에 해당 어플리케이션의 QoS를 설정하도록 요청한다. 이때, 어플리케이션부(111)는 해당 어플리케이션의 QoS에 대응하는 식별자 및 QoS에 해당하는 프로파일을 전송한다. 그러면, 네트워크 드라이버(113)는 S313 단계에서 해당 어플리케이션에 대응하는 큐를 할당하고, S315 단계에서 해당 어플리케이션에 따른 큐를 할당하였음을 알리는 결과(Result)를 어플리케이션부(111)에 알린다. In order to "set QoS ", the application unit 111 requests the network driver 113 to set the QoS of the application in step S311. At this time, the application unit 111 transmits an identifier corresponding to the QoS of the application and a profile corresponding to the QoS. In step S313, the network driver 113 allocates a queue corresponding to the application. In step S315, the network driver 113 informs the application unit 111 of a result indicating that a queue corresponding to the application has been allocated.

이러한 설정이 완료된 후, TE(110) 및 IMS(300)는 S317 및 S319 단계에서 응답 메시지를 교환하여 세션 설정을 완료하면, S321 단계에서 앞서 설정한 QoS에 따른 미디어 채널이 형성된다. After the setting is completed, the TE 110 and the IMS 300 exchange a response message in steps S317 and S319 to complete the session setup, and a media channel according to the QoS set in advance is formed in step S321.

TE(110)는 전술한 S311 단계 내지 S315 단계의 과정을 통해, QoS를 설정하고, 이에 따라, 상술한 미디어 채널을 통해 QoS를 보장하는 서비스를 제공할 수 있다. 전술한 S311 단계 내지 S315 단계의 과정은 세션 설정의 완료 전에 수행됨이 바람직하다. The TE 110 may set the QoS through steps S311 to S315 and provide a service for guaranteeing QoS through the media channel. It is preferable that the processes of steps S311 to S315 are performed before completion of session setting.

이어서, TE(110) 및 IMS(300)는 S317 및 S319 단계에서 응답 메시지를 교환하여 세션 설정을 완료하면, S321 단계에서 앞서 설정한 QoS에 따른 미디어 채널이 형성된다. Then, the TE 110 and the IMS 300 exchange a response message in steps S317 and S319 to complete the session setup, and a media channel according to the QoS set in advance is formed in step S321.

앞서 설명한 바와 같이, "QoS를 설정"은 단말의 입장에서 해당 어플리케이션에 대응하는 큐(Queue)를 할당함을 의미한다. 이러한 큐 할당 방법에 대해서 설명하기로 한다. As described above, "QoS setting" means allocating a queue corresponding to the application from the viewpoint of the terminal. This queue allocation method will be described below.

도 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. Referring to FIG. 4, in step S401, the application unit 111 transmits a QoS profile for an application for which QoS is to be set, to the network driver 113. FIG. The QoS profile includes identifier information (QoS_ID_Offset, QoS_ID_Size, QoS_ID_Value), maximum and minimum transfer rates (Max_DataRate, Min_DataRate), tolerable jitter (abbreviated below as "jitter time"), do.

식별자 정보(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 an 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 a position where data in which an identifier (QoS_ID) is stored in an incoming packet is started, and "QoS_ID_Size" Also, "QoS_ID_Value" means a port number (Source Port Nuber) of the packet. Therefore, the network driver 113 can extract the identifier (QoS_ID) through "QoS_ID_Offset", "QoS_ID_Size" and "QoS_ID_Value".

최대 및 최소 전송률(Max_DataRate, Min_DataRate)은 해당 어플리케이션의 QoS를 보장하기 위한 패킷당 최대 및 최소 전송률을 의미하며, 단위는 "bps"가 될 수 있다. 지터 시간(Tolerated Jitter)은 해당 패킷이 지터의 발생으로 인해 지연되어도 무방한 시간을 의미한다. 지터 시간(Tolerated Jitter)의 단위는 "ms"가 될 수 있다. 또한, 우선순위(Priority)는 각 어플리케이션에 따라 기 설정된 것을 말한다. The maximum and minimum transmission rates (Max_DataRate, Min_DataRate) mean the maximum and minimum transmission rates per packet to guarantee the QoS of the application, and the unit may be "bps". Tolerated jitter means that the packet is delayed due to jitter. The unit of the jitter time (Tolerated Jitter) can be "ms". In addition, the priority refers to a predetermined one according to each application.

상술한 바와 같은 QoS 프로파일을 수신하면, 네트워크 드라이버(113)는 S403 단계에서 해당 어플리케이션의 QoS를 지원할 수 있는지 판단한다. 예컨대, 네트워크 드라이버의 최대 전송 가능 용량이 100bps이며, 기 할당된 큐들의 전송 용량이 80bps인 경우를 가정하면, 네트워크 드라이버는 최대 전송률(Max_DataRate)이 20bps 이하의 어플리케이션만 지원할 수 있다. Upon receiving the QoS profile, the network driver 113 determines whether the QoS of the application can be supported in step S403. For example, assuming that the maximum transferable capacity of the network driver is 100 bps and the transfer capacity of the pre-allocated queues is 80 bps, the network driver can only support applications with a maximum transfer rate (Max_DataRate) of 20 bps or less.

S403 단계의 판단 결과, 해당 어플리케이션의 QoS 지원이 가능하면, 네트워크 드라이버(113)는 S405 단계로 진행하여, 해당 어플리케이션에 따른 큐가 할당되어 있는지 검색한다. 이러한 검색은 식별자를 이용하여 이루어진다. If it is determined in step S403 that QoS support for the application is available, the network driver 113 proceeds to step S405 and searches for a queue according to the application. This search is done using an identifier.

검색 결과, 네트워크 드라이버(113)는 S407 단계에서 해당 식별자에 따른 큐가 할당되어 있지 않으면, 네트워크 드라이버(113)는 S409 단계로 진행하여 해당 어플리케이션에 따른 큐를 새로 할당한다. 그런 다음, 네트워크 드라이버(113)는 S411 단계에서 어플리케이션부(111)로 큐를 성공(SUCCESS)적으로 할당하였음을 알리는 결과를 리턴한다. 한편, 해당 식별자에 따라 기 할당된 큐가 존재하면 네트워크 드라이버(113)는 S413 단계에서 어플리케이션부(111)로 큐를 할당하는데 실패(FAIL)하였음을 알리는 결과를 리턴한다. If the queue is not allocated to the network driver 113 in step S407, the network driver 113 proceeds to step S409 and newly allocates a queue according to the application. Then, the network driver 113 returns a result indicating that the queue is successfully (SUCCESS) allocated to the application unit 111 in step S411. On the other hand, if there is a pre-allocated queue according to the identifier, the network driver 113 returns a result indicating that the application unit 111 fails to allocate the queue in step S413.

상술한 바와 같이 할당된 큐는 해당 어플리케이션에 따른 서비스가 종료될 때까지 유지된다. 서비스의 종료는 TE(110) 또는 IMS(300)의 요청에 따라 이루어진다. 그러면, TE(110) 및 IMS(300)의 각각의 요청에 따른 서비스 종료시 QoS 설정 해제 방법에 대해서 설명하기로 한다. The queue allocated as described above is maintained until the service according to the application is terminated. The termination of the service is performed at the request of the TE 110 or the IMS 300. A description will now be made of a method of releasing a QoS setting upon termination of service according to a request of each of the TE 110 and the IMS 300. FIG.

먼저, TE(110)의 요청에 따른 서비스 종료시 QoS 설정 해제 방법에 대해서 설명하기로 한다. 도 5는 본 발명의 실시 예에 따른 QoS 설정 해제 방법을 설명하기 위한 도면이다. First, a description will be given of a QoS setting release method upon termination of service according to a request of the TE 110. [ 5 is a diagram for explaining a QoS setting release method according to an embodiment of the present invention.

도 5를 참조하면, S501 단계는 앞선 도 3에서 설명한 바와 같은 방법에 따라 TE(110) 및 IMS(300) 간에 설정된 세션 연결을 통해 채널이 형성되어, 이를 통해 서비스가 제공됨을 나타낸다. Referring to FIG. 5, in step S501, a channel is formed through a session connection established between the TE 110 and the IMS 300 according to the method described with reference to FIG. 3, indicating that a service is provided through the channel.

S501 단계와 같은 서비스 제공 중, TE(110)는 S503 단계에서 IMS(300)로 서비스 종료 메시지(SIP BYE)를 전송한다. 이러한 서비스 종료 메시지(SIP BYE)를 전송은 기지국 장치(200) 및 SS(120)를 통하여 이루어진다. During the service provision in step S501, the TE 110 transmits a service end message (SIP BYE) to the IMS 300 in step S503. The transmission of the service termination message (SIP BYE) is performed through the base station apparatus 200 and the SS 120.

그런 다음, TE(110)는 S505 단계에서 QoS 삭제 요청 메시지(QoS DELETE REQUEST)를 전송한다. QoS 삭제 요청 메시지는 어플리케이션 핸들(App_Handle) 및 QoS 핸들(QoS_Handle)을 포함한다. Then, the TE 110 transmits a QoS DELETE REQUEST message in step S505. The QoS deletion request message includes an application handle (App_Handle) and a QoS handle (QoS_Handle).

그러면, 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 SS 120 and the base station 200 delete the QoS setting for the application (QoS DELETE procedure), and transmit a QoS delete response message (QoS DELETE RESPONSE) to the TE in step S509 do. The QoS deletion response message includes an application handle (App_Handle) and a QoS handle (QoS_Handle).

한편, TE(110)는 자체적으로 어플리케이션부(111) 및 네트워크 드라이버(113)간에 QoS 설정을 해제하기 위한 프로세스를 수행한다. "QoS를 설정 해제"는 TE(110)의 입장에서 해당 어플리케이션에 대응하는 큐(Queue)를 할당을 해제함을 의미한다. 이를 위하여, 어플리케이션부(111)는 S511 단계에서 네트워크 드라이버(113)에 해당 어플리케이션의 QoS 설정을 해제하도록 요청한다. 그러면, 네트워크 드라이버(113)는 S513 단계에서 해당 어플리케이션의 큐 할당을 해제하고, S515 단계에서 해당 어플리케이션에 따른 QoS 설정을 해제하였음을 알리는 결과를 어플리케이션부(111)에 리턴한다. On the other hand, the TE 110 itself performs a process for releasing the QoS setting between the application unit 111 and the network driver 113. The "QoS deactivation" means that the TE 110 releases the queue corresponding to the application. For this, the application unit 111 requests the network driver 113 to release the QoS setting of the application in step S511. Then, the network driver 113 cancels the queue allocation of the application in step S513, and returns to the application unit 111 a result indicating that the QoS setting according to the application is canceled in step S515.

상술한 과정들은 IMS(300)가 S517 단계에서 응답 메시지(SIP 200 OK)를 TE(110)으로 전송하기까지 수행된다. 이러한 응답 메시지가 전송됨에 따라 TE(110) 및 IMS(300)간에 세션 연결도 종료된다. 여기서, 응답 메시지(SIP 200 OK)는 앞선 단계(S501)의 종료 메시지에 대한 응답이다. The above-described processes are performed until the IMS 300 transmits a response message (SIP 200 OK) to the TE 110 in step S517. As this response message is transmitted, the session connection between the TE 110 and the IMS 300 is also ended. Here, the response message (SIP 200 OK) is a response to the end message of the preceding step S501.

앞선, 도 5에서는 TE(110)의 요청에 따른 서비스 종료시 QoS 설정 해제 방법에 대해서 설명하였다. 이어서, IMS(300)의 요청에 따른 서비스 종료시 QoS 설정 해제 방법에 대해서 설명하기로 한다. 도 6은 본 발명의 실시 예에 따른 QoS 설정 해제 방법을 설명하기 위한 도면이다. 5, a method of releasing the QoS setting upon termination of service according to the request of the TE 110 has been described. Next, a description will be given of a QoS setting release method upon termination of service in response to a request from the IMS 300. FIG. 6 is a diagram for explaining a QoS setting release method according to an embodiment of the present invention.

도 6을 참조하면, S601 단계는 앞선 도 3에서 설명한 바와 같은 방법에 따라 TE(110) 및 IMS(300) 간에 설정된 세션 연결을 통해 채널이 형성되어, 형성된 채널을 통해 서비스가 제공됨을 나타낸다. Referring to FIG. 6, in step S601, a channel is formed through a session connection established between the TE 110 and the IMS 300 according to the method described above with reference to FIG. 3, and a service is provided through the formed channel.

S601 단계와 같은 서비스 제공 중 서비스 종료로 인하여, S603 단계에서 세션 연결된 채널이 필요하지 않은 경우가 발생하였다고 가정한다. It is assumed that a session-connected channel is not required in step S603 due to the service termination during service provision as in 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 base station apparatus 200 and the SS 120 delete the QoS setting for the application (QoS DELETE procedure), and transmit a QoS delete notification message (QoS DELETE INDICATE) to the TE in step S607 do. The QoS deletion notification message includes an application handle (App_Handle) and a QoS handle (QoS_Handle).

그러면, TE(110)는 자체적으로 어플리케이션부(111) 및 네트워크 드라이버(113)간에 설정된 QoS를 해제하기 위한 프로세스를 수행한다. "QoS를 설정 해제"는 TE(110)의 입장에서 해당 어플리케이션에 대응하는 큐(Queue)를 할당을 해제함을 의미한다. 이를 위하여, 어플리케이션부(111)는 S609 단계에서 네트워크 드라이버(113)에 해당 어플리케이션의 QoS 설정을 해제하도록 요청한다. 그러면, 네트워크 드라이버(113)는 S611 단계에서 해당 어플리케이션의 큐 할당을 해제하고, S613 단계에서 해당 어플리케이션에 따른 QoS 설정을 해제하였음을 알리는 결과를 어플리케이션부(111)에 리턴한다. 이에 따라, TE(110) 및 IMS(300) 간에 세션 연결도 종료된다. Then, the TE 110 itself performs a process for releasing the QoS established between the application unit 111 and the network driver 113. The "QoS deactivation" means that the TE 110 releases the queue corresponding to the application. For this, the application unit 111 requests the network driver 113 to release the QoS setting of the application in step S609. Then, the network driver 113 cancels the queue allocation of the application in step S611, and returns to the application unit 111 a result indicating that the QoS setting according to the application is canceled in step S613. Accordingly, the session connection between the TE 110 and the IMS 300 is also ended.

앞서 설명한 바와 같이, "QoS를 설정 해제"는 TE(110)의 입장에서 해당 어플리케이션에 대응하는 큐(Queue)를 할당을 해제함을 의미한다. 이러한 큐 할당 해제 방법에 대해서 설명하기로 한다. 도 7은 본 발명의 실시 예에 따른 큐 할당 해제 방법을 설명하기 위한 흐름도이다. As described above, "deactivation of QoS" means releasing a queue corresponding to the application from the viewpoint of the TE 110. A method of releasing such a queue will be described below. 7 is a flowchart illustrating a queue deassigning method according to an embodiment of the present invention.

도 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, in step S701, the application unit 111 transmits an identifier (QoS_ID) of an application for which QoS setting is to be canceled to the network driver 113. FIG. Then, the network driver 113 searches for a queue corresponding to the identifier (QoS_ID) in step S703. If the corresponding queue exists in step S705, the network driver 113 releases the corresponding queue in step S707. Then, in step S709, the network driver 113 returns a result informing the application unit 111 that the queue has been released SUCCESS. On the other hand, if the corresponding queue does not exist in step S705, the network driver 113 returns to step S709 that the queue is released (SUCCESS) to the application unit 111 .

상술한 바와 같이 본 발명의 실시 예에 따르면, 네트워크 드라이버(113)는 각 어플리케이션 별로 큐를 할당한다. 이러한 큐에는 각 어플리케이션의 사용에 따른 패킷이 입력된다. 이와 같이 입력되는 패킷들은 각 어플리케이션의 QoS에 따라 스케줄링되어 전송된다. 이러한 QoS에 따른 스케줄링 방법과 스케줄링에 따른 데이터 전송 방법에 대해서 설명하기로 한다. As described above, according to the embodiment of the present invention, the network driver 113 allocates a queue for each application. Packets according to usage of each application are input to such a queue. The input packets are scheduled and transmitted according to the QoS of each application. A QoS scheduling method and a data transmission method according to scheduling will be described.

먼저, 본 발명의 실시 예에 따라 각 어플리케이션 별로 할당되는 큐의 구조에 대해서 설명하기로 한다. 도 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 diagram for explaining a 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 to each application. In FIG. 8, it is assumed that the first to third queues 10, 20, and 30 according to three applications are allocated.

도 8을 참조하면, 큐의 자료 구조는 QoS 프로파일(QoS_Profile), 스케줄 정보(Schedule_Info) 및 패킷 링크 정보(HeadListofPacketQueue)를 포함한다. Referring to FIG. 8, the data structure of the queue includes a QoS profile (QoS_Profile), schedule information (Schedule_Info), and packet link information (HeadList of PacketQueue).

앞서 설명한 바와 같이, 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 rate (Max_DataRate, Min_DataRate), jitter time (Tolerated Jitter), and 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 an 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 a position where data in which an identifier (QoS_ID) is stored in an incoming packet is started, and "QoS_ID_Size" Also, "QoS_ID_Value" means a port number (Source Port Nuber) of the packet. Therefore, the network driver 113 can extract the identifier (QoS_ID) through "QoS_ID_Offset", "QoS_ID_Size" and "QoS_ID_Value".

최대 및 최소 전송률(Max_DataRate, Min_DataRate)은 해당 어플리케이션의 QoS를 보장하기 위한 패킷당 최대 및 최소 전송률을 의미하며, 단위는 "bps"가 될 수 있다. 지터 시간(Tolerated Jitter)은 해당 패킷이 지터의 발생으로 인해 지연되어도 무방한 시간을 의미한다. 지터 시간(Tolerated Jitter)의 단위는 "ms"가 될 수 있다. 또한, 우선순위(Priority)는 각 어플리케이션에 따라 기 설정된 것을 말한다. The maximum and minimum transmission rates (Max_DataRate, Min_DataRate) mean the maximum and minimum transmission rates per packet to guarantee the QoS of the application, and the unit may be "bps". Tolerated jitter means that the packet is delayed due to jitter. The unit of the jitter time (Tolerated Jitter) can be "ms". In addition, the priority refers to a predetermined one 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 an output time (Next_Schedule_Time) and queue link information (Prev_Scheduled_Queue, 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)는 해당 큐에 입력되는 패킷들의 링크 정보를 말한다. Packet link information (HeadListofPacketQueue) is link information of packets input to the queue.

상술한 바와 같이 본 발명의 실시 예에 따른 큐는 각 큐에 입력되는 패킷들의 출력 시간을 저장하며, 이에 따라 패킷을 출력한다. 한편, 출력 시간이 같은 경우에는 QoS 프로파일을 참조하여, 지터 시간이 짧은 순서로 출력하며, 지터 시간도 같은 경우에는 우선순위에 따라 패킷을 출력한다. As described above, the queue according to the embodiment of the present invention stores the output time of packets input to each queue, and outputs a packet accordingly. On the other hand, when the output times are the same, the QoS profile is referred to, and the jitter time is output in a short sequence. When the jitter time is the same, the packet is output according to the priority order.

그러면, 상술한 큐의 구조를 바탕으로 본 발명의 실시 예에 따른 스케줄링 방법에 대해서 설명하기로 한다. 도 9는 본 발명의 실시 예에 따른 QoS에 따른 스케줄링 방법을 설명하기 위한 도면이다. A scheduling method according to an embodiment of the present invention will now be described based on the above-described structure of a queue. 9 is a diagram for explaining a QoS-based scheduling method according to an embodiment of the present invention.

도 9를 참조하면, 어플리케이션부(111)는 해당 어플리케이션에 따른 데이터가 발생하면 패킷별로 네트워크 드라이버(113)로 입력한다. 그러면, 네트워크 드라이버는 S901 단계에서 해당 패킷으로부터 식별자(QoS_ID)를 추출하고, S903 단계에서 추출한 식별자에 해당하는 큐가 존재하는지 검색한다. 9, the application unit 111 inputs data to the network driver 113 for each packet when data corresponding to the application is generated. Then, the network driver extracts the identifier (QoS_ID) from the packet in step S901 and searches for a queue corresponding to the extracted identifier in step S903.

S903 단계의 검색 결과에 따라 네트워크 드라이버(113)는 S905 단계에서 해당 큐가 존재하면, S907 단계로 진행하고, 그렇지 않으면, S909 단계로 진행한다. 즉, 식별자(QoS_ID)에 대응하는 큐가 존재하면 네트워크 드라이버(113)는 S907 단계에서 패킷을 해당 큐에 입력한다. 한편, 식별자(QoS_ID)에 대응하는 큐가 존재하지 않으면, 네트워크 드라이버(113)는 S909 단계에서 패킷을 정해진 큐(default Queue)에 입력한다. 즉, 특정 어플리케이션에 따라 큐가 할당되지 않은 경우, 네트워크 드라이버(113)는 임의의 정해진 큐에 패킷을 입력한다. If the queue exists in step S905, the network driver 113 proceeds to step S907 according to the search result in step S903, and otherwise proceeds to step S909. That is, if there is a queue corresponding to the identifier (QoS_ID), the network driver 113 inputs the packet to the queue in step S907. On the other hand, if there is no queue corresponding to the identifier (QoS_ID), the network driver 113 inputs the packet to the predetermined queue in step S909. That is, when a queue is not allocated according to a specific application, the network driver 113 inputs a packet to a predetermined queue.

상술한 바와 같이 패킷을 큐에 입력된 후, 네트워크 드라이버(113)는 S911 단계에서 스케줄링을 수행한다. After the packet is input to the queue as described above, the network driver 113 performs the scheduling in step S911.

본 발명의 실시 예에 따르면 할당된 다수의 큐들의 출력 순서를 결정하는 스케줄링에 따라 각 큐에 입력된 데이터를 패킷 단위로 출력하게 된다. 이때, 각 어플리케이션의 QoS에 따라 패킷 단위의 출력 시간을 산출하고, 산출한 출력 시간에 따라 출력시간이 빠른 패킷 순서대로 패킷을 출력한다. 이와 같은 출력 시간을 산출하는 방법에 대해서 설명하기로 한다. 도 10a 내지 도 10d는 각 어플리케이션의 QoS에 따른 출력 시간 산출 방법을 설명하기 위한 도면이다. According to an embodiment of the present invention, data input to each queue is output in a packet unit according to scheduling for determining an output order of a plurality of allocated queues. At this time, the output time of each packet is calculated according to the QoS of each application, and the packet is outputted in the order of the packets whose output time is fast according to the calculated output time. A method of calculating such an output time will be described. 10A to 10D are diagrams for explaining an output time calculating method according to the QoS of each application.

도 10을 참조하면, 네트워크 드라이버(113)는 각 큐 별로 하기의 흐름과 같은 출력 시간을 산출한다. 이때, 각 어플리케이션 별로 할당된 큐에 따른 QoS(특히, 최소 전송률)에 따라 스케줄링을 수행한다. Referring to FIG. 10, the network driver 113 calculates the output time as shown in the following flow for each queue. At this time, scheduling is performed according to the QoS (in particular, the minimum transmission rate) according to the queue allocated to each application.

네트워크 드라이버(113)는 S1001 단계에서 현재 시간이 해당 큐에 저장된 패킷의 출력 시간을 초과하였는지 판단한다. The network driver 113 determines whether the current time exceeds the output time of the packet stored in the queue in step S1001.

S1001 단계의 판단 결과 초과하는 경우, 네트워크 드라이버(113)는 S1003 단계로 진행하여, 다음의 <수학식 1>에 따라 해당 패킷의 출력 시간을 산출한다. If the determination result in step S1001 is exceeded, the network driver 113 proceeds to step S1003 and calculates the output time of the packet according to Equation (1) below.

Next_Schedule_Time = Current_Time + (Size of Next Packet / min_DataRate)Next_Schedule_Time = Current_Time + (Size of Next Packet / min_DataRate)

<수학식 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, and "Current_Time" means the current time. Also, "Size of Next Packet" indicates the size of a packet to be transmitted, and "min_DataRate" Therefore, the value obtained by dividing the packet size (b) by the minimum transmission rate (bps) as in the "Size of Next Packet / min_DataRate" indicates that the maximum transmission delay time of Next Packet / min_DataRate "). Therefore, packets not yet output according to Equation (1) are scheduled to be transmitted after the maximum delay time according to the QoS at least at the current time. An example of such a scheduling is shown in FIG. 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 result of the determination in step S1001 does not exceed the determination result, the network driver 113 proceeds to step S1005 and calculates the delay time according to the following equation (2).

diff_Time = (Size of Next Packet / min_DataRate) + Next_Schedule_Time - Current_Timediff_Time = (Size of Next Packet / min_DataRate) + Next_Schedule_Time - Current_Time

<수학식 2>를 살펴보면, "diff_Time"은 지연시간을 의미한다. 지연 시간은 기 출력된 패킷의 출력 시간 후 얼마의 시간이 지연되었는지 판단하기 위한 것이다. 여기서, "Next_Schedule_Time"은 기 출력된 패킷의 출력 시간, "Current_Time"은 현재 시간, "Size of Next Packet"은 전송될 패킷의 크기, "min_DataRate"은 최소 전송률이다. Referring to 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 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, and "min_DataRate"

네트워크 드라이버(113)는 S1007 단계에서 앞서 산출한 지연 시간이 음수이면, S1009 단계로 진행하여, 해당 패킷의 출력 시간을 현재 시간으로 설정한다. 이러한 출력 시간이 산출되는 예를 도 10c에 도시하였다. 도시한 바와 같이, S1009 단계의 경우는 기 출력된 패킷의 출력 시간 후, 최대 전송 지연 시간 이후에도 다음 패킷이 출력되지 않은 경우이다. 따라서 현재 시간에 바로 패킷을 출력하도록 스케줄링한다. If the delay time calculated in step S1007 is negative, the network driver 113 proceeds to step S1009 and sets the output time of the packet as the current time. An example in which such an output time is calculated is shown in Fig. 10C. As shown in the figure, in the case of step S1009, the next packet is not output even after the output time of the previously output packet and after the maximum transmission delay time. Therefore, it is scheduled to output the packet immediately at the current time.

한편, 네트워크 드라이버(113)는 S1007 단계에서 앞서 산출한 지연시간이 음수가 아니면, S1011 단계로 진행하여, 해당 패킷의 출력 시간을 현재 시간에서 지연 시간을 합한 시간으로 설정한다. 즉, S1011 단계에서 해당 패킷의 출력 시간은 기 출력된 패킷의 출력된 시간("Next Schedule Time")에서 최대 전송 지연 시간 후의 시간이다. 이러한 출력 시간이 산출되는 예를 도 10d에 도시하였다. 도시한 바와 같이, 현재 시간은 기 출력된 패킷의 출력 시간에서 최대 전송 지연 시간을 초과하지 않았다. 이러한 경우, 기 출력된 패킷의 출력 시간에서 최대 전송 지연 시간이 경과한 시점에 출력 시간을 설정한다. On the other hand, if the calculated delay time is not negative in step S1007, the network driver 113 proceeds to step S1011 and sets the output time of the packet as the sum of the current time and the delay time. That is, the output time of the packet in step S1011 is the time after the maximum transmission delay time in the output time of the previously output packet ("Next Schedule Time"). An example in which such an output time is calculated is shown in Fig. As shown in the figure, the current time does not exceed the maximum transmission delay time in the output time of the output packet. In this case, the output time is set at the point of time when the maximum transmission delay time elapses from the output time of the previously output packet.

상술한 바와 같이, 각 큐에 입력된 패킷의 출력 시간이 결정된다. 이를 바탕 으로 본 발명의 실시 예에 따른 데이터 전송 방법을 설명하기로 한다. 도 11은 본 발명의 실시 예에 따른 데이터 전송 방법을 설명하기 위한 도면이다. As described above, the output time of the packet input to each queue is determined. A data transmission method according to an embodiment of the present invention will now be described. 11 is a diagram for explaining a data transmission method according to an embodiment of the present invention.

도 11을 참조하면, 네트워크 드라이버(113)는 S1101 단계에서 도 10a에서 설명한 바에 따라 산출되는 각 큐에 저장된 패킷들의 출력 시간을 검색한다. 그런 다음, 네트워크 드라이버(113)는 S1103 단계에서 출력 시간 순으로 각 큐들을 정렬한다. Referring to FIG. 11, the network driver 113 retrieves the output times of the packets stored in the respective queues calculated as described with reference to FIG. 10A in step S1101. Then, the network driver 113 sorts each of the queues in output time order in step S1103.

이때, 네트워크 드라이버(113)는 S1105 단계에서 출력 시간이 동일한 큐가 존재하는지 판단한다. S1105 단계의 판단 결과, 출력 시간이 동일한 큐가 존재하면, 네트워크 드라이버(113)는 S1107 단계로 진행하여, 출력 시간의 동일한 큐의 지터 시간(Tolerated Jitter)을 비교한다. 여기서, 지터 시간은 QoS 프로파일을 참조한다. At this time, the network driver 113 determines whether a queue having the same output time exists in step S1105. If it is determined in step S1105 that there is a queue having the same output time, the network driver 113 proceeds to step S1107 and compares the jitter time (Tolerated jitter) of the same queue of the output time. Here, the jitter time refers to the QoS profile.

그런 다음, 네트워크 드라이버(113)는 S1109 단계에서 출력 시간의 동일한 큐들을 지터 시간이 짧은 순으로 정렬한다. Then, in step S1109, the network driver 113 arranges the same cues of the output time in the order of short jitter time.

이때, 네트워크 드라이버(113)는 S1111 단계에서 지터 시간이 짧은 순으로 정렬된 큐 중 지터 시간이 동일한 큐가 존재하는지 판단한다. At this time, in step S1111, the network driver 113 determines whether there is a queue having the same jitter time among queues arranged in order of short jitter time.

상기 S11111 단계의 판단 결과, 지터 시간이 동일한 큐가 존재하면, 네트워크 드라이버(113)는 S1113 단계에서 지터 시간이 동일한 큐들의 우선순위(Priority)를 검색한다. 여기서, 우선순위는 QoS 프로파일을 참조한다. 그런 다음, 네트워크 드라이버(113)는 S1115 단계에서 지터시간이 동일한 큐들을 우선순위가 높은 순으로 정렬한다. If it is determined in step S11111 that there is a queue having the same jitter time, the network driver 113 searches for priorities of queues having the same jitter time in step S1113. Here, the priority refers to the QoS profile. Then, the network driver 113 sorts cues having the same jitter time in descending order of priority in step S1115.

상술한 바와 같이, 산출된 출력 시간, 지터 시간 및 우선순위를 고려하여 큐들이 정렬되면, 네트워크 드라이버(113)는 S1117 단계에서 정렬된 큐 순으로 패킷을 SS(120)으로 출력한다. 한편, 큐가 할당되지 않은 어플리케이션의 경우 정해진 큐(Default Queue)에 입력되며, 이와 같은 큐에 입력되는 패킷은 전송 처리의 여유가 있는 경우에 전송된다. As described above, when the queues are sorted in consideration of the calculated output time, jitter time, and priority, the network driver 113 outputs the packet to the SS 120 in the sorted queue order in step S1117. On the other hand, in the case of an application to which a queue is not allocated, a packet is input to a predetermined queue (Default Queue).

상술한 바와 같이 본 발명의 실시 예에 따른 네트워크 드라이버(113)는 QoS(산출된 출력 시간, 지터 시간 및 우선순위)에 따라 스케줄링을 수행한다. 따라서 TE(110)에서 SS(120)로의 패킷 출력시, QoS를 보장할 수 있다. As described above, the network driver 113 according to the embodiment of the present invention performs scheduling according to QoS (calculated output time, jitter time, and priority). Therefore, when the packet is output from the TE 110 to the SS 120, QoS can be guaranteed.

이상 본 발명을 몇 가지 바람직한 실시 예를 사용하여 설명하였으나, 이들 실시 예는 예시적인 것이며 한정적인 것이 아니다. 이와 같이, 본 발명이 속하는 기술 분야에서 통상의 지식을 지닌 자라면 본 발명의 사상과 첨부된 특허청구범위에 제시된 권리범위에서 벗어나지 않으면서 균등론에 따라 다양한 변화와 수정을 가할 수 있음을 이해할 것이다. While the present invention has been described with reference to several preferred embodiments, these embodiments are illustrative and not restrictive. It will be understood by those skilled in the art that various changes and modifications may be made without departing from the spirit of the invention and the scope of the appended claims.

도 1은 본 발명의 실시 예에 따른 무선 네트워크 시스템의 구성을 도시한 도면. BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 is a diagram illustrating a configuration of a wireless network system according to an embodiment of the present invention; FIG.

도 2는 본 발명의 실시 예에 따른 단말의 개략적인 구성을 설명하기 위한 도면. 2 is a diagram for explaining a schematic configuration of a terminal according to an embodiment of the present invention;

도 3은 본 발명의 실시 예에 따른 QoS 설정 방법을 설명하기 위한 도면. 3 is a diagram for explaining 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 explaining a QoS setting release method according to an embodiment of the present invention;

도 6은 본 발명의 실시 예에 따른 QoS 설정 해제 방법을 설명하기 위한 도면. 6 is a diagram for explaining a QoS setting release method according to an embodiment of the present invention;

도 7은 본 발명의 실시 예에 따른 큐 할당 해제 방법을 설명하기 위한 흐름도. 7 is a flowchart illustrating a queue deassignment method according to an embodiment of the present invention.

도 8은 본 발명의 실시 예에 따른 큐의 구조를 설명하기 위한 도면. 8 is a diagram for explaining a structure of a queue according to an embodiment of the present invention.

도 9는 본 발명의 실시 예에 따른 QoS에 따른 스케줄링 방법을 설명하기 위한 도면. 9 is a diagram for explaining a QoS-based scheduling method according to an embodiment of the present invention.

도 10a 내지 도 10d는 각 어플리케이션의 QoS에 따른 출력 시간 산출 방법을 설명하기 위한 도면. 10A to 10D are diagrams for explaining an output time calculating method according to the QoS of each application.

도 11은 본 발명의 실시 예에 따른 데이터 전송 방법을 설명하기 위한 도면. 11 is a diagram for explaining a data transmission method according to an embodiment of the present invention.

Claims (12)

QoS를 제공하기 위한 단말의 데이터 전송 장치에 있어서, A data transmission apparatus of a terminal for providing QoS, 무선 통신 서비스 제공을 위한 다수의 어플리케이션을 실행하는 TE(Terminal Equipment) 및 상기 TE의 어플리케이션 실행에 따른 데이터를 무선 규격에 따라 전송하는 SS(Subscriber Station)를 포함하며, A terminal equipment (TE) 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, 상기 TE는, 각 어플리케이션의 실행으로 발생하는 데이터 패킷을 출력하는 어플리케이션부와, 각 어플리케이션에 큐(Queue)를 할당하고 상기 할당된 큐에 상기 데이터 패킷을 입력하고 상기 데이터 패킷을 해당하는 어플리케이션의 QoS에 따라 스케줄링하여 상기 SS로 출력하는 네트워크 드라이버;를 포함하는 것을 특징으로 하는 QoS를 제공하기 위한 단말의 데이터 전송 장치. The TE includes an application unit for outputting a data packet generated by execution of each application, a queue unit for assigning a queue to each application, inputting the data packet to the allocated queue, And outputting the data to the SS according to the scheduling information. QoS(Quality of Service)를 제공하기 위한 단말의 데이터 전송 방법에 있어서, A method of transmitting data in a terminal for providing QoS (Quality of Service) 상기 단말의 어플리케이션에 큐(Queue)를 할당하는 단계;Assigning a queue to an application of the terminal; 상기 할당된 큐에 상기 어플리케이션에서 발생한 데이터 패킷을 입력하는 단계;Inputting a data packet generated in the application to the allocated queue; 상기 어플리케이션의 기 설정된 QoS에 따라 상기 데이터 패킷을 출력할 시간을 스케줄링 하는 단계; 및Scheduling a time to output the data packet according to a predetermined QoS of the application; And 상기 스케줄링된 시간에 따라 상기 데이터 패킷을 출력하는 단계;를 포함하는 데이터 전송 방법.And outputting the data packet according to the scheduled time. 제 2항에 있어서, 상기 QoS는,3. The method of claim 2, 상기 어플리케이션이 실행되어 사용자에게 서비스를 제공하기 위해 요구되는 최소 전송률 또는 최대 전송률인 것을 특징으로 하는 데이터 전송 방법.Wherein the application is a minimum transmission rate or a maximum transmission rate required to provide a service to a user when the application is executed. 제 2항에 있어서, 상기 단말의 어플리케이션에 큐(Queue)를 할당하는 단계는,3. The method of claim 2, wherein allocating a queue to an application of the terminal comprises: 상기 어플리케이션의 QoS 식별자를 획득하는 단계;Obtaining a QoS identifier of the application; 상기 식별자를 이용하여 상기 어플리케이션에 기 할당된 큐가 존재하는지 여부를 판단하는 단계; 및Determining whether there is a pre-allocated queue in the application using the identifier; And 상기 어플리케이션에 기 할당된 큐가 부존재하는 경우, 상기 어플리케이션에 대응하는 큐를 할당하는 단계;를 포함하는 데이터 전송 방법.And allocating a queue corresponding to the application when a queue pre-allocated to the application does not exist. 제 2항에 있어서, 상기 어플리케이션의 기 설정된 QoS에 따라 상기 데이터 패킷을 출력할 시간을 스케줄링 하는 단계는,3. The method of claim 2, wherein scheduling the time to output the data packet according to a predetermined QoS of the application comprises: 상기 단말의 현재시간이 상기 큐에 입력된 데이터 패킷의 출력 시간을 경과하였는지 여부를 판단하는 단계; 및Determining whether a current time of the terminal has exceeded an output time of a data packet input to the queue; And 상기 판단결과 상기 단말의 시간이 상기 큐에 입력된 데이터 패킷의 출력 시간을 경과한 경우, QoS가 보장되는 최대 전송 지연 시간이 경과한 뒤에 출력되도록 스케줄링하는 단계;를 포함하는 데이터 전송 방법.And scheduling the terminal to output a QoS guaranteed maximum transmission delay time when a time of the terminal exceeds an output time of a data packet input to the queue. 제 2항에 있어서, 상기 어플리케이션의 기 설정된 QoS에 따라 상기 데이터 패킷을 출력할 시간을 스케줄링 하는 단계는, 3. The method of claim 2, wherein scheduling the time to output the data packet according to a predetermined QoS of the application comprises: 상기 단말의 현재시간이 상기 큐에 입력된 데이터 패킷의 출력 시간을 경과하였는지 여부를 판단하는 단계; Determining whether a current time of the terminal has exceeded an output time of a data packet input to the queue; 상기 판단결과 상기 단말의 시간이 상기 큐에 입력된 데이터 패킷의 출력 시간을 경과하지 않은 경우, 기 출력된 데이터 패킷의 출력시간 후 상기 단말의 시간에 이르는 시간인 지연시간을 계산하는 단계; 및Calculating a delay time that is a time until the terminal's time after the output time of the previously output data packet if the terminal's time does not pass the output time of the data packet input to the queue; And 상기 지연시간이 음수이면, 상기 단말의 현재시간을 출력시간으로 스케줄링하는 단계;를 포함하는 데이터 전송 방법.And scheduling the current time of the terminal as an output time if the delay time is negative. 제 2항에 있어서, 상기 어플리케이션의 기 설정된 QoS에 따라 상기 데이터 패킷을 출력할 시간을 스케줄링 하는 단계는, 3. The method of claim 2, wherein scheduling the time to output the data packet according to a predetermined QoS of the application comprises: 상기 단말의 현재시간이 상기 큐에 입력된 데이터 패킷의 출력 시간을 경과하였는지 여부를 판단하는 단계; Determining whether a current time of the terminal has exceeded an output time of a data packet input to the queue; 상기 판단결과 상기 단말의 시간이 상기 큐에 입력된 데이터 패킷의 출력 시간을 경과하지 않은 경우, 기 출력된 데이터 패킷의 출력시간 후 상기 단말의 시간에 이르는 시간인 지연시간을 계산하는 단계; 및Calculating a delay time that is a time until the terminal's time after the output time of the previously output data packet if the terminal's time does not pass the output time of the data packet input to the queue; And 상기 지연시간이 양수인 경우, QoS가 보장되는 최대 전송 지연 시간이 경과한 뒤에 출력되도록 스케줄링하는 단계;를 포함하는 데이터 전송 방법.And scheduling to output, when the delay time is a positive number, a maximum guaranteed transmission delay time after QoS has elapsed. 제 1항에 있어서, 상기 QoS는,2. The method of claim 1, 상기 어플리케이션이 실행되어 사용자에게 서비스를 제공하기 위해 요구되는 최소 전송률 또는 최대 전송률인 것을 특징으로 하는 데이터 전송 장치.Wherein the application is a minimum transmission rate or a maximum transmission rate required to provide a service to the user when the application is executed. 제 1항에 있어서, 상기 네트워크 드라이버는,The network device according to claim 1, 상기 어플리케이션의 QoS 식별자를 획득하고, 상기 식별자를 이용하여 상기 어플리케이션에 기 할당된 큐가 존재하는지 여부를 판단하고, 상기 어플리케이션에 기 할당된 큐가 부존재하는 경우, 상기 어플리케이션에 대응하는 큐를 할당하는 것을 특징으로 하는 데이터 전송 장치.Acquiring a QoS identifier of the application, determining whether a queue pre-allocated to the application is present using the identifier, and allocating a queue corresponding to the application when the pre-allocated queue does not exist And the data transmission apparatus. 제 1항에 있어서, 상기 네트워크 드라이버는,The network device according to claim 1, 상기 단말의 현재시간이 상기 큐에 입력된 데이터 패킷의 출력 시간을 경과하였는지 여부를 판단하고, 상기 판단결과 상기 단말의 시간이 상기 큐에 입력된 데이터 패킷의 출력 시간을 경과한 경우, QoS가 보장되는 최대 전송 지연 시간이 경과한 뒤에 출력되도록 스케줄링하는 것을 특징으로 하는 데이터 전송 장치.Determining whether or not the current time of the terminal has exceeded the output time of the data packet input to the queue and if the time of the terminal has exceeded the output time of the data packet input to the queue, And outputting the maximum transmission delay time after the maximum transmission delay time has elapsed. 제 1항에 있어서, 상기 네트워크 드라이버는,The network device according to claim 1, 상기 단말의 현재시간이 상기 큐에 입력된 데이터 패킷의 출력 시간을 경과하였는지 여부를 판단하고, 상기 판단결과 상기 단말의 시간이 상기 큐에 입력된 데이터 패킷의 출력 시간을 경과하지 않은 경우, 기 출력된 데이터 패킷의 출력시간 후 상기 단말의 시간에 이르는 시간인 지연시간을 계산하고, 상기 지연시간이 음수이면, 상기 단말의 현재시간을 출력시간으로 스케줄링하는 것을 특징으로 하는 데이터 전송 장치.The method comprising the steps of: determining whether the current time of the terminal has exceeded the output time of the data packet input to the queue; and if the time of the terminal is less than the output time of the data packet input to the queue, Wherein the scheduling unit schedules the current time of the terminal as an output time when the delay time is a negative number, and calculates a delay time that is a time until the terminal's time after the output time of the data packet. 제 1항에 있어서, 상기 네트워크 드라이버는,The network device according to claim 1, 상기 단말의 현재시간이 상기 큐에 입력된 데이터 패킷의 출력 시간을 경과하였는지 여부를 판단하고, 상기 판단결과 상기 단말의 시간이 상기 큐에 입력된 데이터 패킷의 출력 시간을 경과하지 않은 경우, 기 출력된 데이터 패킷의 출력시간 후 상기 단말의 시간에 이르는 시간인 지연시간을 계산하고, 상기 지연시간이 양수인 경우, QoS가 보장되는 최대 전송 지연 시간이 경과한 뒤에 출력되도록 스케줄링하는 것을 특징으로 하는 데이터 전송 장치. The method comprising the steps of: determining whether the current time of the terminal has exceeded the output time of the data packet input to the queue; and if the time of the terminal is less than the output time of the data packet input to the queue, Wherein the scheduling is performed such that a delay time which is a time until a time of the terminal after an output time of a data packet is calculated and is outputted after a maximum transmission delay time in which QoS is assured is elapsed when the delay time is positive. Device.
KR1020080086408A 2008-09-02 2008-09-02 A method for data transmission guaranteed Quality of Service in a terminal equipment and an apparatus thereof KR101546750B1 (en)

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 KR20100027473A (en) 2010-03-11
KR101546750B1 true 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)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101673622B1 (en) * 2011-01-28 2016-11-08 삼성전자주식회사 Method and apparatus for providing qos-based service in wireless communication system
KR102066591B1 (en) * 2015-03-30 2020-01-15 한국전자통신연구원 Apparatus and method for optimizing resource of system based on self-adaptive for natwork application

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1959614A1 (en) 2005-12-02 2008-08-20 Huawei Technologies Co., Ltd. A method and system for interconnecting the broadband wireless access network with the optical access broadband network

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1959614A1 (en) 2005-12-02 2008-08-20 Huawei Technologies Co., Ltd. A method and system for interconnecting the broadband wireless access network with the optical access broadband network

Also Published As

Publication number Publication date
KR20100027473A (en) 2010-03-11

Similar Documents

Publication Publication Date Title
CN109076399B (en) Flexible QOS strategy for in-stream packet prioritization and data correlation
CN109314710B (en) System and method for quality of service monitoring, policy enforcement and charging in a communication network
EP1964421B1 (en) Mapping of packet flows to bearers in a communication system
CN101336532B (en) Method and apparatus for mounting packet filter in data transmission
EP1762056B1 (en) Dynamic service information for the access network
EP1994783B1 (en) Method for the transfer of information during handovers in a communication system
EP2084853B1 (en) Quality of service mechanism
CN108259434B (en) Opening method for QoS guarantee capability of user side and server
CN101965724B (en) Precedence and preemption extension for remote terminals
CN108141867B (en) Method for improved priority handling of data stream transmissions in a communication system
KR20070039888A (en) Qos differentiation for wcdma services mapped onto an e-dch channel
WO2008116363A1 (en) Business processing method and system, policy control and charging rules function
US10555325B2 (en) Network resource prioritization for mobile termination services
WO2010081339A1 (en) Method, apparatus and system for network priority control
US9271255B1 (en) Providing wireless network communication among a plurality of wireless devices
EP2599359B1 (en) Methods for bearer reservation, maintenance, and use in a communication system
EP1686752B1 (en) A method for achieving the multimedia priority services
CN111200565A (en) Information transmission method, terminal and network equipment
CN106464538A (en) Service aware admission control of radio bearers
KR101546750B1 (en) A method for data transmission guaranteed Quality of Service in a terminal equipment and an apparatus thereof
CN104468481A (en) Method and device for realizing media QoS bearing resource control
KR101051023B1 (en) Mobile Communication System Supporting Multiple PCR and Its Method
KR100986841B1 (en) Method for providing prioritization of packet service in mobile communication system
JP2017120997A (en) Communication system, communication method and program
JP2017126955A (en) Information processing apparatus, information processing method, and program

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