KR101480059B1 - Method for Transmiting Data Packet, System, Service Box Apparatus And Access Box Apparatus Therefor - Google Patents
Method for Transmiting Data Packet, System, Service Box Apparatus And Access Box Apparatus Therefor Download PDFInfo
- Publication number
- KR101480059B1 KR101480059B1 KR20090030033A KR20090030033A KR101480059B1 KR 101480059 B1 KR101480059 B1 KR 101480059B1 KR 20090030033 A KR20090030033 A KR 20090030033A KR 20090030033 A KR20090030033 A KR 20090030033A KR 101480059 B1 KR101480059 B1 KR 101480059B1
- Authority
- KR
- South Korea
- Prior art keywords
- data packet
- box device
- response message
- terminal
- transmission rate
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
-
- 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/27—Evaluation or update of window size, e.g. using information derived from acknowledged [ACK] packets
-
- 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]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
본 발명은 데이터 패킷 전송 방법과 그를 위한 시스템, 서비스 박스 장치 및 액세스 박스 장치에 관한 것이다.The present invention relates to a data packet transmission method and a system therefor, a service box device, and an access box device.
본 발명은 정보 제공 서버로부터 수신된 데이터 패킷에 대한 제 1 응답 메시지를 전송하는 제 1 응답 메시지 전송부; 단말기까지의 라운드 트립 시간(RTT: Round-Trip-Time)과 액세스 박스 장치에 대한 수신자 윈도우(RWND: Receiver Window) 사이즈에 근거하여 단말기로의 전송 속도를 산출하는 전송 속도 산출부; 및 상기 산출된 전송 속도에 따라 버퍼링(Bufering)된 데이터 패킷을 상기 액세스 박스 장치를 경유하여 상기 단말기로 전송하는 서비스 박스 데이터 패킷 전송부를 포함하는 것을 특징으로 하는 서비스 박스 장치를 제공한다.A first response message transmission unit transmits a first response message to a data packet received from an information providing server. A transmission rate calculation unit for calculating a transmission rate to the terminal based on a round trip time (RTT) to a terminal and a receiver window size (RWND) for an access box apparatus; And a service box data packet transmitter for transmitting a data packet buffered according to the calculated transmission rate to the terminal via the access box device.
본 발명에 의하면, 기존의 유무선 통신 장치들에 영향을 주지않으며, 서비스 박스 장치 및 액세스 박스 장치의 추가만으로 TCP의 성능 개선이 가능한 장점이 있으며, FAST TCP와 같이 네트워크에 대한 정보를 입력하지 않아도 자동으로 망의 특성에 적응할 수 있는 효과가 있다.According to the present invention, there is an advantage that TCP can be improved only by adding a service box device and an access box device without affecting existing wired / wireless communication devices. Also, FAST TCP can automatically And can adapt to the characteristics of the network.
TCP, 데이터 패킷, 라운드 트립 시간, 수신자 윈도우 TCP, data packet, round trip time, recipient window
Description
본 발명은 데이터 패킷 전송 방법과 그를 위한 시스템, 서비스 박스 장치 및 액세스 박스 장치에 관한 것이다. 더욱 상세하게는, 서비스 박스 장치 및 액세스 박스 장치를 이용하여 TCP 성능을 개선하기 위한 발명으로서, 동적으로 상황이 변하는 무선 링크에서의 특성을 제대로 지원하지 못하던 종래 기술의 문제점을 개선하여, 단말기까지의 라운드 트립 시간(RTT: Round-Trip-Time)과 액세스 박스 장치에 대한 수신자 윈도우(RWND: Receiver Window) 사이즈에 근거하여 단말기로의 전송 속도를 산출하고, 산출된 전송 속도에 따라 버퍼링된 데이터 패킷을 단말기로 전송할 수 있는 데이터 패킷 전송 방법과 그를 위한 시스템, 서비스 박스 장치 및 액세스 박스 장치에 관한 것이다.The present invention relates to a data packet transmission method and a system therefor, a service box device, and an access box device. More particularly, the present invention relates to an improvement of TCP performance by using a service box device and an access box device, and it is an object of the present invention to solve the problems of the related art that do not properly support characteristics in a wireless link in which a situation changes dynamically, The transmission rate to the terminal is calculated based on the round trip time (RTT) and the receiver window size (RWND) of the access box device, and the buffered data packet is transmitted according to the calculated transmission rate A service box device and an access box device for the data packet transmission method.
TCP(Transport Control Protocol)는 송신자의 데이터를 수신자에게 신뢰성 있게 전송하는 방법으로서, 인터넷의 활성화한 후 TCP에 대한 성능 개선이 지속적으로 이루어져 왔다. TCP (Transport Control Protocol) is a method for reliably transmitting data of a sender to a receiver. After the activation of the Internet, the performance of TCP has been continuously improved.
유선망의 경우는 통신 링크의 오류율이 작고, 이동성이 없으며, 전송 지연이 상대적으로 작고 변화가 적은 특성을 보이면서 초고속 통신이 가능한 특성이 있으며, 무선망의 경우는 오류율이 상황에 따라 변화하고, 유선대비 비교적 크며, 전송 속도도 가변적이며 이동성 등으로 인한 통신링크의 불안정성도 높고, 전송지연도 유선대비 높다는 특징이 있다. In the case of the wired network, there is a characteristic that the communication rate of the communication link is small, there is no mobility, the transmission delay is relatively small and the change is small and the high speed communication is possible. In the case of the wireless network, The transmission speed is variable, the instability of the communication link due to mobility and the like is high, and the transmission delay is higher than that of the cable.
이에 따라 종래의 유선망에서의 TCP 성능 개선은 트래픽이 집중하는 지역에서의 혼잡 구간 제어를 해결하기 위한 목표로 많이 이루어져 왔으며, 무선의 경우는 가변적이고 오류율이 높은 상황에서의 성능 개선을 목표로 이루어져 왔다. Therefore, the TCP performance improvement in the conventional wired network has been aimed to solve the congestion interval control in the traffic concentration region, and the wireless has been aimed at improving the performance in the variable and error rate situations .
하지만, 이러한 유선과 무선을 구분한 연구는 최근 유무선 통합 환경이 대두되고 유선과 무선에서 동일한 서비스를 제공하는 환경이 도래함에 따라 점차 유무선 통합 서비스 및 망에 대한 연구로 진화되었다.However, researches that distinguish between wired and wireless have evolved into research on wired / wireless integrated services and networks as the wired / wireless integrated environment has recently emerged and the environment providing the same services in wired and wireless has arrived.
종래의 유무선 통합 서비스를 위한 방안 중, 가장 우수한 성능을 제공하는 방안은 무선 링크의 에러를 유선 단에서 볼 수 없도록 함으로서 성능 개선을 도모했던 에러 복구 기능과 고속 네트워크가 지연이 큰 경우에 사용하는 TCP 가속화 알고리즘을 함께 이용하는 기술이 있었다.Among the measures for the conventional wired / wireless integrated services, the best way to provide the best performance is to use the error recovery function, which improves the performance by preventing the error of the wireless link from being seen at the wired terminal, and the TCP There was a technique that used an acceleration algorithm together.
하지만, 이러한 종래의 기술은 비교적 고속이면서 네트워크 환경 변화가 거의 없는 경우는 네트워크를 일정 수준으로 계속 유지할 수 있으므로 높은 효율을 올릴 수 있으나, 전송 선로의 전송 속도를 잘못 판단하거나 네트워크 환경이 변하는 경우에는 문제가 발생하는 단점이 있다.However, if the conventional technology is relatively fast and there is little change in the network environment, the network can be maintained at a certain level, thereby achieving high efficiency. However, if the transmission speed of the transmission line is erroneously determined or the network environment changes, Is generated.
전술한 문제점을 해결하기 위해 본 발명은, 서비스 박스 장치 및 액세스 박스 장치를 이용하여 TCP 성능을 개선하기 위한 발명으로서, 동적으로 상황이 변하는 무선 링크에서의 특성을 제대로 지원하지 못하던 종래 기술의 문제점을 개선하여, 단말기까지의 라운드 트립 시간(RTT: Round-Trip-Time)과 액세스 박스 장치에 대한 수신자 윈도우(RWND: Receiver Window) 사이즈에 근거하여 단말기로의 전송 속도를 산출하고, 산출된 전송 속도에 따라 버퍼링된 데이터 패킷을 단말기로 전송할 수 있는 데이터 패킷 전송 방법과 그를 위한 시스템, 서비스 박스 장치 및 액세스 박스 장치를 제공하는 데 주된 목적이 있다.DISCLOSURE OF THE INVENTION In order to solve the above-described problems, the present invention is an invention for improving TCP performance by using a service box device and an access box device, and it is an object of the present invention to solve the problems of the prior art The transmission rate to the terminal is calculated on the basis of the round trip time (RTT) to the terminal and the receiver window size (RWND) of the access box device, A data packet transmission method capable of transmitting a buffered data packet to a terminal, and a system, a service box device and an access box device for the same.
전술한 목적을 달성하기 위해 본 발명은, 정보 제공 서버로부터 수신된 데이터 패킷에 대한 제 1 응답 메시지를 전송하는 제 1 응답 메시지 전송부; 단말기까지의 라운드 트립 시간(RTT: Round-Trip-Time)과 액세스 박스 장치에 대한 수신자 윈도우(RWND: Receiver Window) 사이즈에 근거하여 단말기로의 전송 속도를 산출하는 전송 속도 산출부; 및 상기 산출된 전송 속도에 따라 버퍼링(Bufering)된 데이터 패킷을 상기 액세스 박스 장치를 경유하여 상기 단말기로 전송하는 서비스 박스 데이터 패킷 전송부를 포함하는 것을 특징으로 하는 서비스 박스 장치를 제공한다.According to an aspect of the present invention, there is provided an information providing server comprising: a first response message transmitting unit for transmitting a first response message to a data packet received from an information providing server; A transmission rate calculation unit for calculating a transmission rate to the terminal based on a round trip time (RTT) to a terminal and a receiver window size (RWND) for an access box apparatus; And a service box data packet transmitter for transmitting a data packet buffered according to the calculated transmission rate to the terminal via the access box device.
또한, 본 발명의 다른 목적에 의하면, 서비스 박스 장치로부터 수신된 데이 터 패킷을 버퍼링한 후 상기 서비스 박스 장치에 의해 산출된 전송 속도에 따라 단말기로 전송하는 엑세스 박스 데이터 패킷 전송부; 및 수신 버퍼 사이즈로 상기 전송할 데이터 패킷의 수신자 윈도우 사이즈를 수정하는 수신자 윈도우 수정부를 포함하는 것을 특징으로 하는 액세스 박스 장치를 제공한다.According to another aspect of the present invention, there is provided an access box data packet transmission system comprising: an access box data packet transmission unit for buffering a data packet received from a service box apparatus and transmitting the buffered data packet to a terminal according to a transmission rate calculated by the service box apparatus; And a receiver window modifying unit for modifying the receiver window size of the data packet to be transmitted with the reception buffer size.
또한, 본 발명의 다른 목적에 의하면, 정보 제공 서버에서 데이터 패킷을 전송하는 데이터 패킷 전송 단계; 서비스 박스 장치에서 상기 데이터 패킷에 대한 제 1 응답 메시지를 상기 정보 제공 서버로 전송하는 제 1 응답 메시지 전송 단계; 상기 서비스 박스 장치에서 단말기까지의 라운드 트립 시간(RTT: Round-Trip-Time)과 액세스 박스 장치의 수신자 윈도우(RWND: Receiver Window) 사이즈에 근거하여 단말기로의 전송 속도를 산출하는 전송 속도 산출 단계; 및 상기 액세스 박스 장치에서 수신된 데이터 패킷을 버퍼링한 후 상기 산출된 전송 속도에 따라 상기 단말기로 전달하는 데이터 패킷 전달 단계를 포함하는 것을 특징으로 하는 데이터 패킷 전송 방법을 제공한다.According to another aspect of the present invention, there is provided a data packet transmission method including: a data packet transmission step of transmitting a data packet in an information providing server; A first response message transmission step of transmitting a first response message for the data packet from the service box device to the information providing server; A transmission rate calculation step of calculating a transmission rate to the terminal based on a round trip time (RTT) from the service box device to a terminal and a receiver window size of an access box device (RWND); And a data packet transmission step of buffering a data packet received from the access box device and transmitting the data packet to the terminal according to the calculated transmission rate.
또한, 본 발명의 다른 목적에 의하면, 정보 제공 서버로부터 데이터 패킷을 수신하면, 단말기까지의 라운드 트립 시간(RTT: Round-Trip-Time)과 액세스 박스 장치의 수신자 윈도우(RWND: Receiver Window) 사이즈에 근거하여 단말기로의 전송 속도를 산출하며, 상기 데이터 패킷에 대한 제 2 응답 메시지를 수신하면, 상기 제 2 응답 메시지에 해당하는 데이터 패킷의 라운드 트립 시간을 업데이트하고, 상기 업데이트한 라운드 트립 시간과 상기 수신자 윈도우 사이즈에 근거하여 상기 액세스 박스 장치로의 전송 속도를 업데이트하며, 수신 버퍼 사이즈에 따라 상기 제 1 응답 메시지를 제어하여 상기 정보 제공 서버로부터 수신되는 트래픽을 조절하는 서비스 박스 장치; 및 상기 산출된 전송 속도에 따라 상기 데이터 패킷을 상기 단말기로 전송하며, 수신 버퍼 사이즈로 상기 데이터 패킷의 수신자 윈도우 사이즈를 수정하며, 상기 단말기로부터 무선 링크의 에러로 인한 재전송 요청을 수신하는 경우, 에러 복구 알고리즘을 통해 상기 데이터 패킷을 재전송하며, 상기 서비스 박스 장치로 상기 데이터 패킷에 대한 상기 제 2 응답 메시지를 전송하는 액세스 박스 장치를 포함하는 것을 특징으로 하는 데이터 패킷 전송 시스템을 제공한다.According to another aspect of the present invention, when a data packet is received from an information providing server, the round trip time (RTT) to the terminal and the receiver window size of the access box device (RWND) Wherein the round trip time of the data packet corresponding to the second response message is updated when the second response message for the data packet is received and the round trip time of the data packet corresponding to the second response message is updated, A service box apparatus for updating a transmission rate to the access box apparatus based on a receiver window size and controlling traffic received from the information providing server by controlling the first response message according to a reception buffer size; And transmitting the data packet to the terminal according to the calculated transmission rate, modifying a receiver window size of the data packet to a reception buffer size, and receiving a retransmission request due to an error of a wireless link from the terminal, And an access box device for retransmitting the data packet through a recovery algorithm and transmitting the second response message for the data packet to the service box device.
이상에서 설명한 바와 같이 본 발명에 의하면, 서비스 박스 장치에서 단말기까지의 라운드 트립 시간(RTT: Round-Trip-Time)과 액세스 박스 장치에 대한 수신자 윈도우(RWND: Receiver Window) 사이즈에 근거하여 단말기로의 전송 속도를 산출하고, 산출된 전송 속도에 따라 버퍼링된 데이터 패킷을 단말기로 전송할 수 있는 효과가 있다.As described above, according to the present invention, when the round trip time (RTT) from the service box device to the terminal and the receiver window size of the access box device (RWND) It is possible to calculate the transmission rate and transmit the buffered data packet to the terminal according to the calculated transmission rate.
또한, 본 발명에 의하면, xDSL/FTTH 기반의 펨토셀(Femtocell), 유선 액세스 망, WLAN, 무선랜, WPAN 등에 적용하여 TCP에 기반하는 유무선 통합 서비스의 성능을 개선할 수 있는 효과가 있다.In addition, according to the present invention, it is possible to improve the performance of wired / wireless integrated services based on TCP by applying to femtocell based on xDSL / FTTH, wired access network, WLAN, wireless LAN, WPAN and the like.
또한, 본 발명에 의하면, 기존의 유무선 통신 장치들에 영향을 주지않으며, 서비스 박스 장치 및 액세스 박스 장치의 추가만으로 TCP의 성능 개선이 가능한 장점이 있으며, FAST TCP와 같이 네트워크에 대한 정보를 입력하지 않아도 자동으로 망의 특성에 적응할 수 있는 효과가 있다.In addition, according to the present invention, there is an advantage that the performance of TCP can be improved only by adding the service box device and the access box device without affecting the existing wired / wireless communication devices, and the information about the network Even if you do not have the effect of automatically adapt to the characteristics of the network.
이하, 본 발명의 일부 실시예들을 예시적인 도면을 통해 상세하게 설명한다. 각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.Hereinafter, some embodiments of the present invention will be described in detail with reference to exemplary drawings. It should be noted that, in adding reference numerals to the constituent elements of the drawings, the same constituent elements are denoted by the same reference numerals whenever possible, even if they are shown in different drawings. In the following description of the present invention, a detailed description of known functions and configurations incorporated herein will be omitted when it may make the subject matter of the present invention rather unclear.
또한, 본 발명의 구성 요소를 설명하는 데 있어서, 제 1, 제 2, A, B, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질이나 차례 또는 순서 등이 한정되지 않는다. 어떤 구성 요소가 다른 구성요소에 "연결", "결합" 또는 "접속"된다고 기재된 경우, 그 구성 요소는 그 다른 구성요소에 직접적으로 연결되거나 또는 접속될 수 있지만, 각 구성 요소 사이에 또 다른 구성 요소가 "연결", "결합" 또는 "접속"될 수도 있다고 이해되어야 할 것이다.In describing the components of the present invention, terms such as first, second, A, B, (a), and (b) may be used. These terms are intended to distinguish the constituent elements from other constituent elements, and the terms do not limit the nature, order or order of the constituent elements. When a component is described as being "connected", "coupled", or "connected" to another component, the component may be directly connected to or connected to the other component, It should be understood that an element may be "connected," "coupled," or "connected."
도 1은 본 실시예에 따른 데이터 패킷 전송 시스템을 개략적으로 나타낸 블럭 구성도이다.1 is a block diagram schematically showing a data packet transmission system according to the present embodiment.
본 실시예에 따른 데이터 패킷 전송 시스템은 TCP(Transport Control Protocol)를 기반으로 하며, 단말기(110), AP(Access Point)(120), 액세스 박스 장 치(130), 스위치(140), 인터넷망(150), 정보 제공 서버(160) 및 서비스 박스 장치(162)를 포함하여 구성될 수 있다.The data packet transmission system according to the present embodiment is based on TCP (Transport Control Protocol) and includes a
단말기(110)는 무선 통신으로 통상적인 음성 통화 또는 데이터 통신을 수행할 수 있는 모든 종류의 단말기를 의미한다.The
예를 들어서, 단말기(110)는 PDA(Personal Digital Assistant), 셀룰러폰, PCS(Personal Communication Service)폰, 핸드헬드 PC(Hand-Held PC), CDMA-2000 폰, WCDMA 폰, PMP(Portable Multimedia Player), PSP(PlayStation Portable) 및 MBS(Mobile Broadband System)폰 등이 될 수 있다.For example, the
AP(120)는 데이터 통신을 연결하는 장치로서, 송신측 정보에서 수신측 주소를 읽고 가장 적절한 통신 통로를 지정한 후 다른 통신망으로 전송할 수 있는 장치를 말한다. 즉, AP(120)는 데이터 패킷의 위치를 추출하며, 추출된 위치에 대한 최상의 통신 경로를 지정하며, 지정된 통신 경로를 따라 데이터 패킷을 다음 장치로 전향시킬 수 있으며, 일반적인 네트워크 환경에서 여러 회선을 공유할 수도 있다.The AP 120 is a device for connecting data communication. It is a device that reads a receiving side address from a transmitting side information, designates a most suitable communication path, and transmits the same to another communication network. That is, the AP 120 extracts the location of the data packet, specifies the best communication path to the extracted location, directs the data packet to the next device along the designated communication path, It can also be shared.
한편, 본 실시예에서 AP(120)는 라우터(Router), 리피터(Repeater), 중계기 및 브릿지(Bridge)를 포함한 개념으로 사용할 수 있으나 바람직하게는 AP(120)가 노드 B, RNC(Radio Network Controller), SGSN(Serving GPRS Support Node) 및 GGSN(Gateway GPRS Support Node)을 포함할 수 있다.In this embodiment, the AP 120 can be used as a concept including a router, a repeater, a repeater, and a bridge. Preferably, the AP 120 includes a Node B, an RNC ), Serving GPRS Support Node (SGSN), and Gateway GPRS Support Node (GGSN).
본 실시예에 따른 액세스 박스 장치(130)는 서비스 박스 장치(162)로부터 수신된 데이터 패킷을 버퍼링한 후 서비스 박스 장치(162)에 의해 산출된 전송 속도에 따라 단말기로 전송하며, 수신 버퍼 사이즈로 전송할 데이터 패킷의 수신자 윈 도우 사이즈를 수정하는 기능을 수행한다.The
또한, 액세스 박스 장치(130)는 액세스 망으로부터의 TCP 성능의 독립성을 보장하며, 액세스 망에서 발생하는 성능 저하 요인을 제거하면서, 서비스 박스 장치(162)를 도와 유선망의 성능 개선할 수 있는 장치이다.In addition, the
또한, 액세스 박스 장치(130)는 액세스 망의 특성에 적합한 파라미터로 동작하여, 각 액세스 망 기술에 최적화된 성능을 제공하며, 액세스 망에 독립적으로 TCP 성능을 제공할 수 있는 접점 역할 제공한다. In addition, the
또한, 액세스 박스 장치(130)는 공중 무선망(WCDMA/HSPA), WLAN, 블루투스 (Bluetooth), 3G, 4G, M-WiMAX, DSL, FTTH 등의 모든 엑세스 기술에 적용할 수 있다. The
또한, 액세스 박스 장치(130)는 엑세스 망의 속도 정보를 동적으로 예측하여 최적의 트래픽 공급을 수행할 수 있다. 예컨데, 3G 공중망의 경우는 GGSN 장비 뒤에 위치하여 ISP 또는 어플리케이션 서버에 대한 접점 역할 및 무선망 접점 역할 수행할 수 있다. 같은 기술을 xDSL/FTTH 기반 펨토셀, 유선 액세스 망, 무선랜, WPAN 등에도 적용할 수 있다. In addition, the
또한, 액세스 박스 장치(130)는 무선 액세스 망 지원 기능면에서 에러 복구 알고리즘처럼 무선 링크 성능 개선 및 트래픽 소스와의 흐름 제어 기능을 제공하며, 무선망의 에러 복구를 위해 스눕(Snoop)을 이용할 수도 있다.In addition, the
또한, 액세스 박스 장치(130)는 서비스 박스 장치(162)와 무선망 속도 기반의 흐름을 제어하고, 액세스 망으로의 트래픽 쉐이핑(Traffic Shaping) 기능을 제 공할 수 있으며, 향후 무선망에 대한 핸드오버 지원 기능과 이동체에 대한 TCP 성능 개선에도 적용될 수 있다.In addition, the
스위치(140)는 데이터 통신을 망 또는 서버로 스위칭하는 장치를 말한다.The
인터넷망(150)은 인트라넷망, 이동통신망, 위성 통신망 등 다양한 유무선 통신 기술을 이용하여 인터넷 프로토콜로 인터넷 컨텐츠(패킷 데이터)를 송수신할 수 있는 망을 말한다. The Internet 150 is a network capable of transmitting and receiving Internet contents (packet data) using an Internet protocol using various wired and wireless communication technologies such as an intranet network, a mobile communication network, and a satellite communication network.
인터넷망(140)은 사용자 단말기(112)들을 연결하는 망(Network)으로서 LAN(Local Area Network), WAN(Wide Area Network)등의 폐쇄형 네트워크일 수도 있으나, 인터넷(Internet)과 같은 개방형인 것이 바람직하다. 인터넷은 TCP/IP 프로토콜 및 그 상위계층에 존재하는 여러 서비스, 즉 HTTP(HyperText Transfer Protocol), Telnet, FTP(File Transfer Protocol), DNS(Domain Name System), SMTP(Simple Mail Transfer Protocol), SNMP(Simple Network Management Protocol), NFS(Network File Service), NIS(Network Information Service)를 제공하는 전세계적인 개방형 컴퓨터 네트워크 구조를 의미한다. The
정보 제공 서버(160)는 도 1에 도시된 바와 같이 통신 사용자용 정보 제공 서버와 써드 파티용 정보 제공 서버로 구분될 수 있으나, 본 실시예에서는 설명의 편의상 정보 제공 서버로 설명하도록 한다.As shown in FIG. 1, the
또한, 정보 제공 서버(160)는 하드웨어적으로는 통상적인 웹서버(Web Server)와 동일한 구성을 하고 있으나, 소프트웨어적으로는 C, C++, Java, Visual Basic, Visual C 등 여하한 언어를 통하여 구현되어 여러 가지 기능을 하는 프로그 램 모듈(Module)을 포함한다. Although the
또한, 정보 제공 서버(160)는 웹서버(Web Server)의 형태로 구현될 수 있으며, 웹서버는 일반적으로 인터넷과 같은 개방형 컴퓨터 네트워크를 통하여 불특정 다수 클라이언트 및/또는 다른 서버와 연결되어 있고, 클라이언트 또는 다른 웹서버의 작업수행 요청을 접수하고 그에 대한 작업 결과를 도출하여 제공하는 컴퓨터 시스템 및 그를 위하여 설치되어 있는 컴퓨터 소프트웨어(웹서버 프로그램)를 뜻하는 것이다. In addition, the
그러나, 전술한 웹서버 프로그램 이외에도, 웹서버상에서 동작하는 일련의 응용 프로그램(Application Program)과 경우에 따라 내부에 구축되어 있는 각종 데이터베이스를 포함하는 넓은 개념으로 이해되어야 할 것이다.However, in addition to the above-described web server program, it should be understood as a broad concept including a series of application programs running on a web server and various databases built in the case.
이러한 정보 제공 서버(160)는 일반적인 서버용 하드웨어에 도스(DOS), 윈도우(windows), 리눅스(Linux), 유닉스(UNIX), 매킨토시(Macintosh)등의 운영체제에 따라 다양하게 제공되고 있는 웹서버 프로그램을 이용하여 구현될 수 있으며, 대표적인 것으로는 윈도우 환경에서 사용되는 웹사이트(Website), IIS(Internet Information Server)와 유닉스환경에서 사용되는 CERN, NCSA, APPACH등이 이용될 수 있다. The
즉, 정보 제공 서버(160)는 TCP/IP 데이터 패킷을 단말기(110)에 전송하는 기능을 수행한다.That is, the
본 실시예에 따른 서비스 박스 장치(162)는 정보 제공 서버(160)로부터 수신된 데이터 패킷에 대한 제 1 응답 메시지를 전송하고, 단말기(110)까지의 라운드 트립 시간(RTT: Round-Trip-Time)과 액세스 박스 장치에 대한 수신자 윈도우(RWND: Receiver Window) 사이즈에 근거하여 단말기(110)로의 전송 속도를 산출하며, 산출된 전송 속도에 따라 버퍼링된 데이터 패킷이 액세스 박스 장치(130)를 경유하여 단말기(110)로 전송하는 기능을 수행한다.The
또한, 서비스 박스 장치(162)는 액세스 박스 장치(130)로부터 데이터 패킷에 대한 제 2 응답 메시지를 수신하면, 제 2 응답 메시지에 해당하는 데이터 패킷의 라운드 트립 시간을 업데이트하고, 업데이트한 라운드 트립 시간과 수신자 윈도우 사이즈에 근거하여 액세스 박스 장치(130)로의 전송 속도를 업데이트하는 기능을 수행한다.When receiving the second response message for the data packet from the
본 실시예에서는 서비스 박스 장치(162)가 도 1에 도시된 바와 같이 정보 제공 서버(160) 내에 포함되는 기재하고 있으나, 실제 발명의 구현에 있어서는 서비스 박스 장치(162)는 인터넷망(150)에 포함되어, 유무선 인터넷 사용자 단말기, 이동통신 사용자 단말기와의 통신에도 이용될 수 있는 것으로 구현될 수 있다.In this embodiment, the
또한, 본 실시예에 따른 서비스 박스 장치(162)는 IP 네트워크 및 써드-파티(Third Party) ISP/ASP로부터의 무선 성능 독립성 보장한다. 서비스 박스 장치(162)는 단말기(110)로 전송할 트래픽이 항상 무선망에 쌓여 있도록 하는 일종의 TCP 가상 종단 역할을 지원한다. 또한, 서비스 박스 장치(162)는 액세스 박스 장치(130)의 제어하에 네트워크에 트래픽을 항상 유지하며, 사업자 어플리케이션 서버 또는 써드 파티 ISP 쪽에 위치하는 스탠드 얼론 박스(Stand-Alone Box)이며, 유선망의 지연, 에러에 따른 손실, 라운드 트립 시간 변이 등을 제거할 수 있다.In addition, the
도 2는 본 실시예에 따른 서비스 박스 장치를 개략적으로 나타낸 블럭 구성도이다.2 is a block diagram schematically showing a service box apparatus according to the present embodiment.
본 실시예에 따른 서비스 박스 장치(162)는 제 1 응답 메시지 전송부(210), 전송 속도 산출부(220), 서비스 박스 데이터 패킷 전송부(230) 및 전송 속도 업데이트부(240)를 포함하여 구성된다.The
본 실시예에서는 서비스 박스 장치(162)가 제 1 응답 메시지 전송부(210), 전송 속도 산출부(220), 서비스 박스 데이터 패킷 전송부(230) 및 전송 속도 업데이트부(240)만을 포함하여 구성되는 것으로 기재하고 있으나, 이는 본 실시예의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 실시예의 본질적인 특성에서 벗어나지 않는 범위에서 서비스 박스 장치(162)에 포함되는 구성 요소에 대하여 다양하게 수정 및 변형하여 적용 가능할 것이다.The
제 1 응답 메시지 전송부(210)는 정보 제공 서버(160)로부터 수신된 데이터 패킷에 대한 제 1 응답 메시지를 전송하는 기능을 수행한다.The first response
제 1 응답 메시지 전송부(210)는 수신 버퍼 사이즈에 따라 제 1 응답 메시지를 제어하여 정보 제공 서버(160)로부터 수신되는 트래픽을 조절하는 기능을 수행한다.The first response
제 1 응답 메시지 전송부(210)는 수신 버퍼 사이즈가 일정한 사이즈 이상으로 증가하면 제 1 응답 메시지의 전송을 잠정 중단하여 정보 제공 서버(160)로부터의 트래픽 유입을 조절하는 기능을 수행한다.The first response
전송 속도 산출부(220)는 단말기(110)까지의 라운드 트립 시간과 액세스 박스 장치에 대한 수신자 윈도우 사이즈에 근거하여 단말기(110)로의 전송 속도를 산출하는 기능을 수행한다.The
서비스 박스 데이터 패킷 전송부(230)는 산출된 전송 속도에 따라 버퍼링된 데이터 패킷이 액세스 박스 장치(130)를 경유하여 단말기(110)로 전송하는 기능을 수행한다.The service box data
전송 속도 업데이트부(240)는 액세스 박스 장치(130)로부터 데이터 패킷에 대한 제 2 응답 메시지를 수신하면, 제 2 응답 메시지에 해당하는 데이터 패킷의 라운드 트립 시간을 업데이트하고, 업데이트한 라운드 트립 시간과 수신자 윈도우 사이즈에 근거하여 액세스 박스 장치(130)로의 전송 속도를 업데이트하는 기능을 수행한다.Upon receiving the second response message for the data packet from the
서비스 박스 데이터 패킷 전송부(230)는 업데이트된 전송 속도에 따라 버퍼링된 데이터 패킷을 액세스 박스 장치(130)를 경유하여 단말기(110)로 전송하는 기능을 수행한다.The service box data
전송 속도 업데이트부(240)는 제 2 응답 메시지를 기반으로 확보한 수신자 윈도우 사이즈를 액세스 박스 장치(130)의 수신 버퍼 사이즈로 변환한 값, 단말기(110)로 전송되는 데이터 패킷에 대한 응답 메시지가 도착하는 시간, 액세스 박스 장치(130)의 수신 버퍼에 대한 가중치(Sensitivity-Factor), 링크와 무선 접속망/제어 노드(RAN/CN)의 버퍼 상태를 반영하기 위한 가중치에 근거하여 업데이트된 전송 속도를 획득하는 기능을 수행한다.The transmission
전송 속도 업데이트부(240)는 업데이트된 전송 속도를 [수학식 1]에 의해 산출한다.The transmission
[수학식 1]에서 RWND size는 수신자 윈도우 사이즈를 액세스 박스 장치(130)의 수신 버퍼 사이즈로 변환한 값, RTT는 단말기(110)로 전송되는 데이터 패킷에 대한 응답 메시지가 도착하는 시간, TE_alpha는 액세스 박스 장치(130)의 수신 버퍼에 대한 가중치(Sensitivity-Factor), TE_beta는 무선 링크와 무선 접속망/제어 노드(RAN/CN)의 버퍼 상태를 반영하기 위한 가중치이다.In Equation (1), RWND size is a value obtained by converting the receiver window size to the reception buffer size of the
즉, 서비스 박스 장치(162)는 내부적으로 각 TCP 세션에 대한 라운드 트립 시간과 수신자 윈도우 사이즈를 관리한다. 여기서, 라운드 트립 시간은 서비스 박스 장치(162)에서 데이터 패킷을 송신하여 단말기(110)까지 도착한 후 그에 대한 제 2 응답 메시지가 다시 서비스 박스 장치(162)에 도착하는 시간을 나타내며, 수신자 윈도우 사이즈는 액세스 박스 장치(130)에서 단말기(110)로부터 서비스 박스 장치(162)로 전달되는 메시지의 수신자 윈도우 사이즈를 액세스 박스의 수신 버퍼 사이즈로 변환한 값을 의미한다. 즉, 서비스 박스 장치(162)는 수학식 1에 나타난 것과 같이 단말기(110)로의 데이터 패킷의 전송 속도를 계산하는 것이다.That is, the
또한, [수학식 1]에서 TE_alpha와 TE_beta는 트래픽 엔지니어링(Traffic Engineering)을 위한 파라미터이다. TE_alpha는 액세스 박스 장치(130)의 버퍼에 대한 흐름 제어를 위한 가중치(Sensitivity-Factor)로서 무선 링크를 통하여 전송할 만큼의 충분한 트래픽이 액세스 박스 장치(130)에 쌓여 있도록 하기 위한 파라미터이다. 이는 수신자 윈도우 사이즈와 라운드 트립 시간을 특정값으로 하여 해당 목표망에 최적화할 수 있다. TE_beta는 무선 링크와 무선 접속망/제어 노드(RAN/CN) 자체 버퍼 상태를 반영하기 위한 가중치로서 FER이 증가하거나 무선 접속망/제어 노드 내부에서 혼잡구간이 발생하면 이를 서비스 박스 장치(162)의 전송 속도 계산에 반영하기 위한 값이다. 예를 들어서, 3G 등과 같이 목표 망이 정해지면 해당 목표 망에 최적의 값을 정의할 수 있으며, 운용의 편이성을 위하여 (TE_alpha ÷ TE_beta)를 단일의 TE_factor로 변환하여 사용할 수 있다. 즉, 분모와 분수에 곱해지는 두 수를 하나의 숫자로 치환하여 운용하는 것도 가능할 수 있다.In Equation (1), TE_alpha and TE_beta are parameters for traffic engineering. TE_alpha is a parameter for allowing the
도 3은 본 실시예에 따른 액세스 박스 장치를 개략적으로 나타낸 블럭 구성도이다.3 is a block diagram schematically showing an access box apparatus according to the present embodiment.
본 실시예에 따른 액세스 박스 장치(130)는 액세스 박스 데이터 패킷 전송부(310), 수신자 윈도우 수정부(320) 및 제 2 응답 메시지 전송부(330)를 포함하여 구성된다.The
본 실시예에서는 액세스 박스 장치(130)가 액세스 박스 데이터 패킷 전송부(310), 수신자 윈도우 수정부(320) 및 제 2 응답 메시지 전송부(330)만을 포함하여 구성되는 것으로 기재하고 있으나, 이는 본 실시예의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 실시예의 본질적인 특성에서 벗어나지 않는 범위에서 액세스 박스 장치(130)에 포함되는 구성 요소에 대하여 다양하게 수정 및 변형하여 적용 가능할 것이다.The
액세스 박스 데이터 패킷 전송부(310)는 서비스 박스 장치(162)로부터 수신된 데이터 패킷을 버퍼링한 후 서비스 박스 장치(162)에 의해 산출된 전송 속도에 따라 단말기(110)로 전송하는 기능을 수행한다.The access box data
또한, 액세스 박스 데이터 패킷 전송부(310)는 단말기(110)로부터 무선 링크의 에러로 인한 재전송 요청을 수신하는 경우, 에러 복구 알고리즘을 통해 데이터 패킷을 재전송하는 기능을 수행한다.The access box data
수신자 윈도우 수정부(320)는 수신 버퍼 사이즈로 전송할 데이터 패킷의 수신자 윈도우 사이즈를 수정하는 기능을 수행한다.The recipient
제 2 응답 메시지 전송부(330)는 서비스 박스 장치(162)로 수신된 데이터 패킷에 대한 제 2 응답 메시지를 전송하는 기능을 수행한다.The second response
도 4는 본 실시예에 따른 데이터 패킷 전송 방법을 설명하기 위한 순서도이다.4 is a flowchart illustrating a data packet transmission method according to the present embodiment.
정보 제공 서버(160)는 서비스 박스 장치(162)로 데이터 패킷을 전송한다(S410).The
즉, 정보 제공 서버(160)가 FTP/Web 서버인 경우, FTP/Web 서버는 TCP/IP로 데이터 패킷을 전송하는 것이다.That is, when the
서비스 박스 장치(162)는 데이터 패킷에 대한 제 1 응답 메시지를 정보 제공 서버로 전송한다(S420).The
서비스 박스 장치(162)는 수신 버퍼가 일정한 사이즈 이상으로 증가하면, 제 1 응답 메시지의 전송을 잠정 중단하여, 정보 제공 서버로부터의 트래픽 유입을 조절할 수 있다.The
즉, 서비스 박스 장치(162)가 FTP/Web 서버(정보 제공 서버)로부터 수신한 TCP/IP로 수신된 데이터 패킷에 대한 제 1 응답 메시지를 전송함으로써, 서비스 박스 장치(162)는 가상적으로 정보 제공 서버(160)와 서비스 박스 장치(162)까지의 세션을 종단(End-to-End)하는 역할을 수행하게 되는 것이다.That is, by transmitting the first response message for the data packet received via TCP / IP received from the FTP / Web server (information providing server) by the
이러한 경우, 서비스 박스 장치(162)의 수신 버퍼가 일정 크기 이상으로 증가하면, 제 1 응답 메시지의 전송을 잠정 중단하여 FTP/Web 서버로부터의 트래픽 유입을 조절할 수 있다.In this case, if the reception buffer of the
서비스 박스 장치(162)는 단말기까지의 라운드 트립 시간과 액세스 박스 장치의 수신자 윈도우 사이즈에 근거하여 단말기로의 전송 속도를 산출한다(S430).The
액세스 박스 장치(130)는 서비스 박스 장치(162)로부터 수신된 데이터 패킷을 버퍼링한 후 산출된 전송 속도에 따라 단말기(110)로 전달한다(S440).The
이때, 단말기(110)는 무선 링크의 에러 발생시 액세스 박스 장치(130)로 데이터 패킷의 재전송을 요구할 수 있다.At this time, the terminal 110 may request retransmission of the data packet to the
즉, 서비스 박스 장치(162)는 단말기(110)까지의 라운드 트립 시간과 액세스 박스 장치(130)의 수신자 윈도우 사이즈를 기반으로 단말로의 전송 속도를 계산한 다. 서비스 박스 장치(162)는 TCP/IP 데이터 패킷을 버퍼링한 후 액세스 박스 장치(130)로 전송한다.That is, the
액세스 박스 장치(130)는 서비스 박스 장치(162)로부터 데이터 패킷을 수신하여 버퍼링한 후 단말기(110)로 전송한다.The
단말기(110)는 수신한 TCP/IP 데이터 패킷에 대한 제 2 응답 메시지를 액세스 박스 장치(130)로 전송하며, 무선 링크에서의 에러 발생시 TCP/IP 데이터 패킷의 재전송을 요구할 수 있다.The terminal 110 may transmit a second response message for the received TCP / IP data packet to the
액세스 박스 장치(130)는 수신 버퍼 사이즈로 전송할 데이터 패킷의 수신자 윈도우 사이즈를 수정한다(S450).The
또한, 액세스 박스 장치(130)는 서비스 박스 장치(162)로부터 데이터 패킷을 수신하고 그에 대한 제 2 응답 메시지를 서비스 박스 장치(162)로 전송할 때, 액세스 박스 장치(130)의 수신 버퍼 사이즈로 전송할 데이터 패킷의 수신자 윈도우 사이즈를 수정할 수 있다.The
액세스 박스 장치(130)는 단말기(110)로부터 무선 링크의 에러로 인한 재전송 요청을 수신하는 경우, 에러 복구 알고리즘을 통해 데이터 패킷을 재전송할 수 있다.When the
즉, 액세스 박스 장치(130)는 제 2 응답 신호를 서비스 박스 장치(162)로 전송할 때, 액세스 박스 장치(130)의 수신 버퍼 사이즈로 전송할 TCP/IP 데이터 패킷의 수신자 윈도우 상지를 수정한다. 이때, 단말기(110)로부터 무선 링크의 에러로 인한 재전송 요청이 있는 경우, 액세스 박스 장치(130)는 에러 복구 알고리즘인 스 눕(Snoop) 알고리즘 통해서 데이터 패킷을 재전송할 수 있다.That is, when the
액세스 박스 장치(130)는 서비스 박스 장치(162)로 수신된 데이터 패킷에 대한 제 2 응답 메시지를 전송한다(S460).The
즉, 액세스 박스 장치(130)는 데이터 패킷을 단말기(110)로 전송하고, 단말기로부터 데이터 패킷에 대한 제 2 응답 메시지를 수신한 후 이를 서비스 박스 장치로 전달하는 것이다.That is, the
서비스 박스 장치(162)는 제 2 응답 메시지에 해당하는 데이터 패킷의 라운드 트립 시간을 업데이트하고, 업데이트한 라운드 트립 시간과 수신한 수신자 윈도우 사이즈에 근거하여 액세스 박스 장치(130)로의 전송 속도를 업데이트한다(S470).The
즉, 서비스 박스 장치(162)는 가상적으로 종단한 TCP 세션에 대해서 제 2 응답 메시지가 도착하면, 해당 메시지에 대한 TCP/IP 데이터 패킷에 대한 라운드 트리 시간을 업데이트하고, 수신한 수신자 윈도우 사이즈에 근거하여 액세스 박스 장치(130)로의 전송 속도를 업데이트하는 것이다.That is, when the second response message arrives for the virtually end-of-TCP session, the
도 4에서는 서비스 박스 장치(162), 액세스 박스 장치(130) 및 단말기(110)가 단계 S410 내지 단계 S470을 순차적으로 실행하는 것으로 기재하고 있으나, 이는 본 실시예의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 실시예의 본질적인 특성에서 벗어나지 않는 범위에서 서비스 박스 장치(162), 액세스 박스 장치(130) 및 단말기(110)가 도 4에 기재된 순서를 변경하여 실행하거나 단계 S410 내지 단계 S470 중 하나 이상의 단계를 병렬적으로 실행하는 것으로 다양하게 수정 및 변형하여 적용 가능할 것이므로, 도 4는 시계열적인 순서로 한정되는 것은 아니다.4, it is described that the
전술한 바와 같이 도 4에 기재된 본 실시예에 따른 데이터 패킷 전송 방법은 프로그램으로 구현되고 컴퓨터로 읽을 수 있는 기록매체에 기록될 수 있다. As described above, the data packet transmission method according to the present embodiment described in FIG. 4 can be implemented as a program and recorded in a computer-readable recording medium.
본 실시예에 따른 데이터 패킷 전송 방법을 구현하기 위한 프로그램이 기록되고 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. A program for implementing the data packet transmission method according to the present embodiment is recorded and the computer-readable recording medium includes all kinds of recording devices for storing data that can be read by the computer system.
이러한 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어, 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수도 있다. Examples of such computer-readable recording media include ROM, RAM, CD-ROM, magnetic tape, floppy disk, optical data storage, etc., and also implemented in the form of a carrier wave (e.g., transmission over the Internet) . The computer readable recording medium may also be distributed over a networked computer system so that computer readable code is stored and executed in a distributed manner.
또한, 본 실시예를 구현하기 위한 기능적인(Functional) 프로그램, 코드 및 코드 세그먼트들은 본 실시예가 속하는 기술분야의 프로그래머들에 의해 용이하게 추론될 수 있을 것이다.In addition, functional programs, codes, and code segments for implementing the present embodiment can be easily inferred by programmers in the technical field to which the present embodiment belongs.
도 5는 본 실시예에 따른 데이터 패킷 전송 시간을 테이블에 저장하는 방법을 설명하기 위한 순서도이다.5 is a flowchart illustrating a method of storing a data packet transmission time in a table according to an embodiment of the present invention.
서비스 박스 장치(162)는 단말기까지의 라운드 트립 시간과 액세스 박스 장치의 수신자 윈도우 사이즈에 근거하여 단말기로의 전송 속도를 산출한다The
서비스 박스 장치(162)는 전송 속도가 산출되면, 일정 시간 단위로 데이터 패킷을 액세스 박스 장치(130)로 전송하기 위한 타이머를 구동한다(S510).When the transmission speed is calculated, the
또한, 서비스 박스 장치(162)는 [수학식 1]에 의해 업데이트된 전송 속도를 산출한 후 일정 시간 단위로 타이머를 구동할 수 있다.In addition, the
서비스 박스 장치(162)는 전송할 데이터 패킷이 버퍼링되어 있는지의 여부를 확인한다(S520).The
즉, 서비스 박스 장치(162)에서 구동된 타이머의 시간이 도래하면 서비스 박스 장치(162)는 버퍼를 확인하여 전송할 데이터 패킷이 버퍼링되어 있는지 확인한다.That is, when the timer of the
단계 S520의 확인 결과, 전송할 데이터 패킷이 버퍼링되어 있는 경우, 서비스 박스 장치(162)는 데이터 패킷을 액세스 박스 장치(130)로 전송하고, 단말기(110)까지의 라운드 트립 시간을 산출하기 위해 데이터 패킷 전송 시간을 테이블에 저장한다(S530).As a result of checking in step S520, if the data packet to be transmitted is buffered, the
즉, 서비스 박스 장치(162)는 데이터 패킷이 버퍼링 되어 있으면 해당 데이터 패킷을 전송하는 것이다. That is, if the data packet is buffered, the
서비스 박스 장치(162)는 업데이트된 전송 속도에 따라 데이터 패킷을 단말기(110)로 전송한다. 이때 단말까지의 라운드 트립 시간의 산출을 위하여, 해당 데이터 패킷의 전송 시간을 테이블에 저장한다. The
서비스 박스 장치(162)는 전송할 데이터 패킷이 버퍼에 남아 있는 경우, 타이머를 재구동한다(S540).If the data packet to be transmitted remains in the buffer, the
도 5에서는 서비스 박스 장치(162)가 단계 S510 내지 단계 S540을 순차적으 로 실행하는 것으로 기재하고 있으나, 이는 본 실시예의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 실시예의 본질적인 특성에서 벗어나지 않는 범위에서 서비스 박스 장치(162)가 도 5에 기재된 순서를 변경하여 실행하거나 단계 S510 내지 단계 S540 중 하나 이상의 단계를 병렬적으로 실행하는 것으로 다양하게 수정 및 변형하여 적용 가능할 것이므로, 도 5는 시계열적인 순서로 한정되는 것은 아니다.5, it is described that the
전술한 바와 같이 도 5에 기재된 본 실시예에 따른 데이터 패킷 전송 시간을 테이블에 저장하는 방법은 프로그램으로 구현되고 컴퓨터로 읽을 수 있는 기록매체에 기록될 수 있다. As described above, the method of storing the data packet transmission time in the table according to the present embodiment described in FIG. 5 can be implemented by a program and recorded in a computer-readable recording medium.
본 실시예에 따른 데이터 패킷 전송 시간을 테이블에 저장하는 방법을 구현하기 위한 프로그램이 기록되고 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. A program for implementing the method of storing the data packet transmission time in the table according to the present embodiment is recorded and the computer-readable recording medium includes all kinds of recording devices for storing data that can be read by the computer system .
이러한 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어, 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수도 있다. Examples of such computer-readable recording media include ROM, RAM, CD-ROM, magnetic tape, floppy disk, optical data storage, etc., and also implemented in the form of a carrier wave (e.g., transmission over the Internet) . The computer readable recording medium may also be distributed over a networked computer system so that computer readable code is stored and executed in a distributed manner.
또한, 본 실시예를 구현하기 위한 기능적인(Functional) 프로그램, 코드 및 코드 세그먼트들은 본 실시예가 속하는 기술분야의 프로그래머들에 의해 용이하게 추론될 수 있을 것이다.In addition, functional programs, codes, and code segments for implementing the present embodiment can be easily inferred by programmers in the technical field to which the present embodiment belongs.
도 6은 본 실시예에 따른 전송 속도를 업데이트하는 방법을 설명하기 위한 순서도이다.6 is a flowchart for explaining a method of updating the transmission rate according to the present embodiment.
서비스 박스 장치(162)는 데이터 패킷을 액세스 박스 장치(130)를 경유하여 단말기(110)로 전송한다(S610).The
서비스 박스 장치(162)는 단말기(110)로부터 데이터 패킷에 대한 제 2 응답 메시지가 수신되는지의 여부를 확인한다(S620).The
단계 S620의 확인 결과, 단말기(110)로부터 데이터 패킷에 대한 제 2 응답 메시지가 수신되는 경우, 서비스 박스 장치(162)는 제 2 응답 메시지의 수신자 윈도우 사이즈를 읽어들여 [수학식 1]의 수신자 윈도우 사이즈를 업데이트하며, 제 2 응답 메시지의 전송 시간과 회신 시간을 근거로 단말기(110)까지의 라운드 트립 시간을 업데이트한다(S630).If it is determined in step S620 that the second response message for the data packet is received from the terminal 110, the
서비스 박스 장치(162)는 단말기(110)로부터의 제 2 응답 메시지를 수신하여 서비스 박스 장치(162)로부터 단말기(110)까지의 라운드 트립 시간을 계산하고, 액세스 박스 장치(130)의 수신자 윈도우 사이즈를 읽어, 업데이트 전송 속도를 계산할 수 있다. The
서비스 박스 장치(162)는 업데이트한 라운드 트립 시간과 수신자 윈도우 사이즈에 근거하여 액세스 박스 장치(130)로의 전송 속도를 업데이트한다(S640).The
서비스 박스 장치(162)는 수신한 제 2 응답 메시지에 대한 수신자 윈도우 사이즈를 읽어서 [수학식 1]의 수신자 윈도우 사이즈를 업데이트할 수 있고, 제 2 응답 메시지가 회신한 데이터 패킷의 전송 시간을 테이블에서 검출하여, 단말기(110) 까지의 라운드 트립 시간을 업데이트 할 수 있으며, 업데이트된 수신자 윈도우 사이즈와 라운드 트립 시간에 근거하여 업데이트된 전송 속도를 산출할 수 있다.The
도 6에서는 서비스 박스 장치(162)가 단계 S610 내지 단계 S640을 순차적으로 실행하는 것으로 기재하고 있으나, 이는 본 실시예의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 실시예의 본질적인 특성에서 벗어나지 않는 범위에서 서비스 박스 장치(162)가 도 6에 기재된 순서를 변경하여 실행하거나 단계 S610 내지 단계 S640 중 하나 이상의 단계를 병렬적으로 실행하는 것으로 다양하게 수정 및 변형하여 적용 가능할 것이므로, 도 6은 시계열적인 순서로 한정되는 것은 아니다.6, it is described that the
전술한 바와 같이 도 6에 기재된 본 실시예에 따른 전송 속도를 업데이트하는 방법은 프로그램으로 구현되고 컴퓨터로 읽을 수 있는 기록매체에 기록될 수 있다. As described above, the method for updating the transmission rate according to the present embodiment described in FIG. 6 can be implemented by a program and recorded on a computer-readable recording medium.
본 실시예에 따른 전송 속도를 업데이트하는 방법을 구현하기 위한 프로그램이 기록되고 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다.A program for implementing the method for updating the transmission rate according to the present embodiment is recorded, and the computer-readable recording medium includes all kinds of recording devices for storing data that can be read by the computer system.
이러한 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어, 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수도 있다. Examples of such computer-readable recording media include ROM, RAM, CD-ROM, magnetic tape, floppy disk, optical data storage, etc., and also implemented in the form of a carrier wave (e.g., transmission over the Internet) . The computer readable recording medium may also be distributed over a networked computer system so that computer readable code is stored and executed in a distributed manner.
또한, 본 실시예를 구현하기 위한 기능적인(Functional) 프로그램, 코드 및 코드 세그먼트들은 본 실시예가 속하는 기술분야의 프로그래머들에 의해 용이하게 추론될 수 있을 것이다.In addition, functional programs, codes, and code segments for implementing the present embodiment can be easily inferred by programmers in the technical field to which the present embodiment belongs.
이상에서, 본 발명의 실시예를 구성하는 모든 구성 요소들이 하나로 결합되거나 결합되어 동작하는 것으로 설명되었다고 해서, 본 발명이 반드시 이러한 실시예에 한정되는 것은 아니다. 즉, 본 발명의 목적 범위 안에서라면, 그 모든 구성 요소들이 하나 이상으로 선택적으로 결합하여 동작할 수도 있다. 또한, 그 모든 구성 요소들이 각각 하나의 독립적인 하드웨어로 구현될 수 있지만, 각 구성 요소들의 그 일부 또는 전부가 선택적으로 조합되어 하나 또는 복수 개의 하드웨어에서 조합된 일부 또는 전부의 기능을 수행하는 프로그램 모듈을 갖는 컴퓨터 프로그램으로서 구현될 수도 있다. 그 컴퓨터 프로그램을 구성하는 코드들 및 코드 세그먼트들은 본 발명의 기술 분야의 당업자에 의해 용이하게 추론될 수 있을 것이다. 이러한 컴퓨터 프로그램은 컴퓨터가 읽을 수 있는 저장매체(Computer Readable Media)에 저장되어 컴퓨터에 의하여 읽혀지고 실행됨으로써, 본 발명의 실시예를 구현할 수 있다. 컴퓨터 프로그램의 저장매체로서는 자기 기록매체, 광 기록매체, 캐리어 웨이브 매체 등이 포함될 수 있다.While the present invention has been described in connection with what is presently considered to be the most practical and preferred embodiments, it is to be understood that the invention is not limited to the disclosed embodiments. That is, within the scope of the present invention, all of the components may be selectively coupled to one or more of them. In addition, although all of the components may be implemented as one independent hardware, some or all of the components may be selectively combined to perform a part or all of the functions in one or a plurality of hardware. As shown in FIG. The codes and code segments constituting the computer program may be easily deduced by those skilled in the art. Such a computer program can be stored in a computer-readable storage medium, readable and executed by a computer, thereby realizing an embodiment of the present invention. As the storage medium of the computer program, a magnetic recording medium, an optical recording medium, a carrier wave medium, or the like may be included.
또한, 이상에서 기재된 "포함하다", "구성하다" 또는 "가지다" 등의 용어는, 특별히 반대되는 기재가 없는 한, 해당 구성 요소가 내재될 수 있음을 의미하는 것이므로, 다른 구성 요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있는 것으로 해석되어야 한다. 기술적이거나 과학적인 용어를 포함한 모든 용어들 은, 다르게 정의되지 않는 한, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 사전에 정의된 용어와 같이 일반적으로 사용되는 용어들은 관련 기술의 문맥 상의 의미와 일치하는 것으로 해석되어야 하며, 본 발명에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.It is also to be understood that the terms such as " comprises, "" comprising," or "having ", as used herein, mean that a component can be implanted unless specifically stated to the contrary. But should be construed as including other elements. All terms, including technical and scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs, unless otherwise defined. Commonly used terms, such as predefined terms, should be interpreted to be consistent with the contextual meanings of the related art, and are not to be construed as ideal or overly formal, unless expressly defined to the contrary.
이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.The foregoing description is merely illustrative of the technical idea of the present invention, and various changes and modifications may be made by those skilled in the art without departing from the essential characteristics of the present invention. Therefore, the embodiments disclosed in the present invention are intended to illustrate rather than limit the scope of the present invention, and the scope of the technical idea of the present invention is not limited by these embodiments. The scope of protection of the present invention should be construed according to the following claims, and all technical ideas within the scope of equivalents should be construed as falling within the scope of the present invention.
이상에서 설명한 바와 같이 본 발명은 서비스 박스 장치 및 액세스 박스 장치를 이용하여 TCP 성능을 개선하기 위한 발명으로서, 동적으로 상황이 변하는 무선 링크에서의 특성을 제대로 지원하지 못하던 종래 기술의 문제점을 개선하여, 단말기까지의 라운드 트립 시간(RTT: Round-Trip-Time)과 액세스 박스 장치에 대한 수신자 윈도우(RWND: Receiver Window) 사이즈에 근거하여 단말기로의 전송 속도를 산출하고, 산출된 전송 속도에 따라 버퍼링된 데이터 패킷을 단말기로 전송할 수 있는 데이터 패킷 전송 방법과 그를 위한 시스템, 서비스 박스 장치 및 액세스 박스 장치 분야에 적용되어, 기존의 유무선 통신 장치들에 영향을 주지않으며, 서비스 박스 장치 및 액세스 박스 장치의 추가만으로 TCP의 성능 개선이 가능한 장점이 있으며, FAST TCP와 같이 네트워크에 대한 정보를 입력하지 않아도 자동으로 망의 특성에 적응할 수 있는 효과를 발생하는 매우 유용한 발명이다.As described above, the present invention improves the TCP performance by using the service box device and the access box device. The present invention improves the problem of the prior art which does not properly support the characteristics of the wireless link in which the situation changes dynamically, The transmission rate to the terminal is calculated on the basis of the round trip time (RTT) to the terminal and the receiver window size (RWND) of the access box apparatus, A data packet transmission method capable of transmitting a data packet to a terminal, and a system therefor, a service box device, and an access box device, which do not affect existing wired / wireless communication devices, It is advantageous to improve performance of TCP only by FAST TCP, Do not need to input the information is a very useful invention for automatically generating an effect that can adapt to the characteristics of the network.
도 1은 본 실시예에 따른 데이터 패킷 전송 시스템을 개략적으로 나타낸 블럭 구성도,1 is a block diagram schematically showing a data packet transmission system according to the present embodiment,
도 2는 본 실시예에 따른 서비스 박스 장치를 개략적으로 나타낸 블럭 구성도,2 is a block diagram schematically showing a service box apparatus according to the present embodiment,
도 3은 본 실시예에 따른 액세스 박스 장치를 개략적으로 나타낸 블럭 구성도,3 is a block diagram schematically showing an access box apparatus according to the present embodiment,
도 4는 본 실시예에 따른 데이터 패킷 전송 방법을 설명하기 위한 순서도,4 is a flowchart for explaining a data packet transmission method according to the present embodiment,
도 5는 본 실시예에 따른 데이터 패킷 전송 시간을 테이블에 저장하는 방법을 설명하기 위한 순서도,FIG. 5 is a flowchart illustrating a method of storing a data packet transmission time in a table according to an embodiment of the present invention.
도 6은 본 실시예에 따른 전송 속도를 업데이트하는 방법을 설명하기 위한 순서도이다.6 is a flowchart for explaining a method of updating the transmission rate according to the present embodiment.
< 도면의 주요 부분에 대한 부호의 설명 >Description of the Related Art
110: 단말기 120: AP110: Terminal 120: AP
130: 액세스 박스 장치 140: 스위치130: access box device 140: switch
150: 인터넷망 160: 정보 제공 서버150: Internet network 160: Information providing server
162: 서비스 박스 장치162: Service box device
Claims (16)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20090030033A KR101480059B1 (en) | 2009-04-07 | 2009-04-07 | Method for Transmiting Data Packet, System, Service Box Apparatus And Access Box Apparatus Therefor |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20090030033A KR101480059B1 (en) | 2009-04-07 | 2009-04-07 | Method for Transmiting Data Packet, System, Service Box Apparatus And Access Box Apparatus Therefor |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20100111546A KR20100111546A (en) | 2010-10-15 |
KR101480059B1 true KR101480059B1 (en) | 2015-01-13 |
Family
ID=43131777
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR20090030033A KR101480059B1 (en) | 2009-04-07 | 2009-04-07 | Method for Transmiting Data Packet, System, Service Box Apparatus And Access Box Apparatus Therefor |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101480059B1 (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11163936A (en) * | 1997-11-28 | 1999-06-18 | Toshiba Corp | Flow control method and device |
KR20040067343A (en) * | 2003-01-22 | 2004-07-30 | 삼성전자주식회사 | Network connecting device for controlling TCP transmission between wired network and wireless network |
JP2005218069A (en) | 2004-02-02 | 2005-08-11 | Ntt Docomo Inc | Communication system, communication device, program, and communication method |
-
2009
- 2009-04-07 KR KR20090030033A patent/KR101480059B1/en not_active IP Right Cessation
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11163936A (en) * | 1997-11-28 | 1999-06-18 | Toshiba Corp | Flow control method and device |
KR20040067343A (en) * | 2003-01-22 | 2004-07-30 | 삼성전자주식회사 | Network connecting device for controlling TCP transmission between wired network and wireless network |
JP2005218069A (en) | 2004-02-02 | 2005-08-11 | Ntt Docomo Inc | Communication system, communication device, program, and communication method |
Also Published As
Publication number | Publication date |
---|---|
KR20100111546A (en) | 2010-10-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7283469B2 (en) | Method and system for throughput and efficiency enhancement of a packet based protocol in a wireless network | |
Abdelsalam et al. | TCP Wave: A new reliable transport approach for future internet | |
EP3780542B1 (en) | Data transmission method and device | |
Abed et al. | Exploration and evaluation of traditional TCP congestion control techniques | |
JP4377326B2 (en) | How to calculate send window size | |
US20120163385A1 (en) | Systems and methods to improve performance of tcp over large bandwidth-delay-product networks | |
US20060209838A1 (en) | Method and system for estimating average bandwidth in a communication network based on transmission control protocol | |
EP2011303A1 (en) | Immediate ready implementation of virtually congestion free guaranteed service capable network: external internet nextgentcp nextgenftp nextgenudps | |
US20030031161A1 (en) | Uplink session extension | |
WO2017107148A1 (en) | Method of transmitting data and network equipment | |
JP4328794B2 (en) | COMMUNICATION SYSTEM, COMMUNICATION DEVICE, AND TRANSMISSION CONTROL METHOD | |
Kilinc et al. | A congestion avoidance mechanism for WebRTC interactive video sessions in LTE networks | |
KR101480059B1 (en) | Method for Transmiting Data Packet, System, Service Box Apparatus And Access Box Apparatus Therefor | |
KR101507347B1 (en) | Method for Transmiting Data Packet, System, Service Box Apparatus And Access Box Apparatus Therefor | |
Herrero | A comparison of mechanisms for RTC in the context of IoT | |
US8446835B2 (en) | Method and termination node for bundling multiple messages into a packet | |
Jung et al. | Novel fastest retransmission and rate control schemes for improving TCP performance in wireless ad hoc networks | |
Jacobsson | Dynamic modeling of Internet congestion control | |
Talau et al. | Improving TCP performance over a common IoT scenario using the Early Window Tailoring method | |
Guduru et al. | Reliable Session Initiation Protocol (RSIP) signaling with UDP transport using piggybacking method | |
Pei | A Mobility Management Algorithm in the Internet of Things (IoT) for Smart Objects based on Software-Defined Networking (SDN) | |
Kharat Prashant | Modified QUIC Protocol with Congestion Control for Improved Network Performance | |
Gurtov | Efficient Transport in 2.5 G3G Wireless Wide Area Networks | |
Argyriou | A joint performance model of TCP and TFRC with mobility management protocols | |
Dunaytsev | TCP performance evaluation over wired and wired-cum-wireless networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20171204 Year of fee payment: 4 |
|
LAPS | Lapse due to unpaid annual fee |