[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

KR101073659B1 - Transparent Method for File Download to Reduce the Network Congestion - Google Patents

Transparent Method for File Download to Reduce the Network Congestion Download PDF

Info

Publication number
KR101073659B1
KR101073659B1 KR1020090133826A KR20090133826A KR101073659B1 KR 101073659 B1 KR101073659 B1 KR 101073659B1 KR 1020090133826 A KR1020090133826 A KR 1020090133826A KR 20090133826 A KR20090133826 A KR 20090133826A KR 101073659 B1 KR101073659 B1 KR 101073659B1
Authority
KR
South Korea
Prior art keywords
file
server
gateway
request
client
Prior art date
Application number
KR1020090133826A
Other languages
Korean (ko)
Other versions
KR20110077298A (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 KR1020090133826A priority Critical patent/KR101073659B1/en
Publication of KR20110077298A publication Critical patent/KR20110077298A/en
Application granted granted Critical
Publication of KR101073659B1 publication Critical patent/KR101073659B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • 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/12Avoiding congestion; Recovering from congestion
    • H04L47/125Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

본 발명은 하나의 네트워크에 속한 다수의 클라이언트에서 외부 네트워크에 있는 서버에서 동일한 콘텐츠를 내려받기(download) 하고자 할 때 서버 구간에 집중되는 트래픽을 분산시키는 대신에 클라이언트 구간의 게이트웨이에서 관련된 요청 메시지 수를 감소시켜 네트워크 트래픽을 감소시키는 방법을 제공하기 위한 것으로서, 클라이언트와, 게이트웨이와, 서버로 구성되는 네트워크 연결 구조에서의 파일 내려받기 방법에 있어서, 게이트웨이는 상기 클라이언트로부터 파일에 대한 내려받기 요청이 입력되면, 게이트웨이 내 파일 캐쉬에 상기 요청된 요청파일이 저장되어 있는지를 검색하는 단계와, 상기 검색결과 게이트웨이 내 파일 캐쉬에 요청파일이 저장되어 있지 않으면, 서버와의 TCP 연결을 통해 서버에서 요청파일을 수신하여 상기 파일 캐쉬에 저장하는 단계와, 상기 검색결과 게이트웨이 내 파일 캐쉬에 요청파일이 저장되어 있으면, 클라이언트에서 서버로 가는 TCP 연결을 게이트웨이 내 로컬 파일 서버로 재지정하여 외부 서버로 오가는 네트워크 트래픽을 제거하는 단계와, 상기 게이트웨이 내 파일 캐쉬에 저장된 요청파일을 검색하여 요청한 클라이언트로 검색된 파일을 전송하는 단계를 포함하는데 있다.According to the present invention, when a plurality of clients belonging to a network want to download the same content from a server in an external network, the number of request messages related to a client section is determined in the gateway of the client section instead of distributing traffic concentrated in the server section. A method for downloading a file in a network connection structure consisting of a client, a gateway, and a server, wherein the gateway receives a download request for a file from the client. Searching for whether the requested request file is stored in the file cache in the gateway; and if the request file is not stored in the file cache in the gateway, the request file is received from the server through a TCP connection with the server. The file cache Storing the request file in the file cache in the gateway, and redirecting the TCP connection from the client to the server to the local file server in the gateway to remove network traffic from the external server; And retrieving the request file stored in the file cache in the gateway and transmitting the retrieved file to the requesting client.

파일 내려받기, 네트워크 혼잡, 투명성, TCP 재지정 File Download, Network Congestion, Transparency, TCP Redirection

Description

네트워크 혼잡 감소를 위하여 파일을 투명하게 내려받기 위한 방법{Transparent Method for File Download to Reduce the Network Congestion}Transparent method for file download to reduce the network congestion

본 발명은 네트워크 통신 방법에 관한 것으로, 특히 하나의 네트워크에 속해있는 다수의 클라이언트에서 동일한 콘텐츠를 동시에 내려받기(download)할 때 네트워크 혼잡을 감소하기 위한 투명 파일 내려받기 방법에 관한 것이다.The present invention relates to a network communication method, and more particularly, to a transparent file download method for reducing network congestion when simultaneously downloading the same content from a plurality of clients belonging to one network.

인터넷이 발전함에 따라서 네트워크 통신을 통한 업무 처리, 파일 전송 등을 많은 애플리케이션이 활용하고 있다. 최근 들어서는 개인용 컴퓨터에서 사용되던 기존의 사무실용 애플리케이션들도 인터넷을 통한 SaaS(Software as a Service) 형태의 웹 애플리케이션으로 제공되어 문서 작업, 동영상 공유 및 공동 작업을 할 수 있게 되었다. 이에 따라서 사용자의 접근성이 향상되고, 정보 공유 및 보안 문제 등이 쉽게 해결될 수 있게 되었다. 그 외에도 웹을 이용한 교육 분야에서도 많은 방법이 제안되고 사용되어 인터넷에서 트래픽은 지속적으로 증가할 것으로 예상된다.With the development of the Internet, many applications are taking advantage of network communication and file transfer. In recent years, existing office applications used in personal computers have also been provided as web applications in the form of SaaS (Software as a Service) over the Internet, enabling document, video sharing and collaboration. Accordingly, the accessibility of the user is improved, and information sharing and security problems can be easily solved. In addition, many methods have been proposed and used in the field of education using the web, and the traffic on the Internet is expected to increase continuously.

최근 들어 유투브나 P2P를 통한 동영상, 정지영상 등의 대용량 파일을 내려받기(download) 하는 애플리케이션이 급증하고 있으며, 이에 따라서 인터넷 트래픽 이 더욱 많이 발생하게 되었다. 파일 내려받기 시 특정 서버에 이러한 인터넷 트래픽이 집중되어 서버 구간 네트워크에 트래픽이 증가하면 네트워크 성능이 급격히 저하되는 양상을 보이게 된다. 이러한 네트워크 트래픽을 감소시키기 위해 주로 사용되는 방법은 웹 트래픽을 다루는 웹 프록시(web proxy)와 같이 특정 콘텐츠를 캐슁(caching)하거나, 서버에 집중되는 트래픽을 분산시키기 위하여 미러링(mirroring) 기법을 많이 사용한다.Recently, there has been a rapid increase in applications that download large files such as videos and still images through YouTube or P2P, resulting in more Internet traffic. When downloading a file, the network traffic is concentrated on a specific server, and when the traffic is increased in the network between server sections, network performance decreases rapidly. Commonly used to reduce this network traffic is to use a lot of mirroring techniques for caching specific content, such as a web proxy that handles web traffic, or to distribute the traffic concentrated on the server do.

도 1 은 일반적인 네트워크 연결 구조를 나타낸 구성도로서, 클라이언트(10) 설정시 게이트웨이(30)를 지정하면, 상기 지정된 게이트웨이(30)를 통하여 인터넷 상의 다른 서버(40)와 연결이 이루어지게 된다. 그리고 대학의 컴퓨터 실습실처럼 한 곳에 많은 클라이언트가 있을 경우에는 트래픽 충돌을 방지하기 위하여 스위칭 허브 또는 스위치(20)를 사용하여 외부와 연결한다.1 is a block diagram illustrating a general network connection structure. When a gateway 30 is designated when a client 10 is set, a connection is made with another server 40 on the Internet through the designated gateway 30. When there are many clients in one place, such as a computer lab in a university, a connection hub or switch 20 is used to connect to the outside to prevent traffic collisions.

이와 같이 구성될 때, 도 2와 같이 클라이언트(10)에서 서버(40)로 파일 전송을 위한 TCP 연결을 요청(request)하면 게이트웨이(gateway : G/W)(또는 라우터(router))(30)를 통하여 서버(40)로 TCP 연결이 이루어진다. 이어 서버 쪽에서는 파일 내려받기 요청을 받으면 응답(response)과 함께 관련된 파일을 저장소에서 검색하여 클라이언트 쪽으로 요청된 파일을 보내준다. When configured in this manner, as shown in FIG. 2, when requesting a TCP connection for file transfer from client 10 to server 40, a gateway (G / W) (or router) 30 is requested. Through the TCP connection to the server 40 is made. When the server receives a file download request, the server retrieves the relevant file from the repository along with a response and sends the requested file to the client.

그러나 클라이언트-서버 구간 중 클라이언트 구간에서 비슷한 시간 구간동안 특정 서버의 동일한 콘텐츠를 접근할 경우 클라이언트들이 속해 있는 네트워크 구간에서 트래픽이 증가하여 기존의 서버 구간 트래픽 분산 방법으로는 이러한 문제를 해결하기 어렵다. 즉, 같은 네트워크 내에 있는 다수의 클라이언트가 동시에 동 일한 콘텐츠를 접근할 경우 해당 네트워크에서 다른 네트워크로 연결되는 지점의 게이트웨이나 라우터에서 트래픽이 증가하여 네트워크 성능이 저하된다. However, when accessing the same content of a specific server for a similar time interval in the client interval among the client-server interval, the traffic increases in the network interval to which the clients belong, so it is difficult to solve this problem by the existing server interval traffic distribution method. In other words, when multiple clients in the same network access the same content at the same time, the network performance decreases due to the increase of traffic at the gateway or router at the point connecting the network to another network.

이러한 네트워크 성능 저하를 완화시켜 전체적인 성능을 향상시켜 주기 위해서는 클라이언트가 속한 네트워크의 게이트웨이나 라우터에서 이러한 문제점을 해결하여야 한다.In order to alleviate such network degradation and improve overall performance, these problems must be solved at the gateway or router of the network to which the client belongs.

따라서 본 발명은 상기와 같은 문제점을 해결하기 위해 안출한 것으로서, 하나의 네트워크에 속한 다수의 클라이언트에서 외부 네트워크에 있는 서버에서 동일한 콘텐츠를 내려받기(download) 하고자 할 때 서버 구간에 집중되는 트래픽을 분산시키는 대신에 클라이언트 구간의 게이트웨이에서 관련된 요청 메시지 수를 감소시켜 네트워크 트래픽을 감소시키는 방법을 제공하는데 그 목적이 있다.Accordingly, the present invention has been made to solve the above problems, and distributed the traffic concentrated in the server interval when a plurality of clients belonging to one network to download the same content from a server in the external network The purpose of the present invention is to provide a method of reducing network traffic by reducing the number of related request messages at the gateway of the client interval.

본 발명의 다른 목적은 용량이 큰 파일을 다운로드하는 경우 종래와 같이 특정 서버로 오는 트래픽을 분산시키는 것만으로는 네트워크 성능을 보장할 수 없으므로, 다른 네트워크에 존재하는 클라이언트들과 공유하고 있는 외부 네트워크 대역폭에 영향을 줄일 수 있도록 외부 네트워크로 오가는 트래픽을 감소시킴으로써 외부 네트워크의 성능 저하를 완화시켜 전반적인 네트워크 통신 성능의 향상이 가능하도록 하는 네트워크 혼잡 감소를 위한 투명 파일 내려받기 방법을 제공하는데 있다.Another object of the present invention is to ensure that network performance is not guaranteed by simply distributing traffic to a specific server as in the case of downloading a large file, thus sharing external network bandwidth with clients existing in other networks. The present invention provides a method of downloading a transparent file for reducing network congestion that can reduce overall network communication performance by reducing traffic to and from the external network so as to reduce the impact on the network.

상기와 같은 목적을 달성하기 위한 본 발명에 따른 네트워크 혼잡 감소를 위한 투명 파일 내려받기 방법의 특징은 클라이언트와, 게이트웨이와, 서버로 구성되는 네트워크 연결 구조에서의 투명 파일 내려받기 방법에 있어서, 게이트웨이는 (A) 상기 클라이언트로부터 파일에 대한 내려받기 요청이 입력되면, 입력된 요청 파일(req)이 HTTP 파일인지 또는 FTP 파일인지를 판단하는 단계와, (B) 입력된 요청 파일이 HTTP 파일인지 또는 FTP 파일로 판단되면, 게이트웨이 내 파일 캐쉬에 상기 요청된 요청파일이 저장되어 있는지를 검색하는 제 1 검색 단계와, (C) 상기 제 1 검색결과, 게이트웨이 내 파일 캐쉬에 요청파일이 저장되어 있으면, 클라이언트에서 서버로 가는 TCP 연결을 게이트웨이 내 로컬 파일 서버로 재지정하여 외부 서버로 오가는 네트워크 트래픽을 제거하는 단계와, (D) 상기 게이트웨이 내 파일 캐쉬에 저장된 요청파일을 검색하여 요청한 클라이언트로 검색된 파일을 전송하는 단계를 포함하는데 있다.The transparent file download method for reducing network congestion according to the present invention for achieving the above object is a transparent file download method in a network connection structure consisting of a client, a gateway, and a server, (A) when a download request for a file is input from the client, determining whether the input request file req is an HTTP file or an FTP file, and (B) whether the input request file is an HTTP file or FTP. A first search step for searching whether the requested request file is stored in a file cache in the gateway, and (C) if the request file is stored in the file cache in the gateway, the client Network traffic to and from external servers by redirecting TCP connections from the server to the server And removing (D) retrieving the request file stored in the file cache in the gateway and transmitting the retrieved file to the requesting client.

바람직하게 (E) 상기 제 1 검색결과, 게이트웨이 내 파일 캐쉬에 요청파일이 저장되어 있지 않으면, 상기 서버로 TCP 연결을 통해 요청파일을 수신하는 단계와, (F) 상기 서버로부터 수신되는 요청파일을 게이트웨이 내 파일 캐쉬에 저장하고, 클라이언트로 상기 요청파일을 전송하는 단계를 더 포함하는 것을 특징으로 한다.Preferably, (E) if the request file is not stored in the file cache in the gateway, receiving the request file through the TCP connection to the server; and (F) requesting the file received from the server. And storing the file in the gateway and transmitting the request file to the client.

바람직하게 상기 (F) 단계는 상기 서버로부터 전송되는 파일을 패킷 스니핑(packet sniffing)을 통하여 파일 캐쉬에 저장하는 것을 특징으로 한다.Preferably, the step (F) is characterized by storing the file transmitted from the server in the file cache through packet sniffing (packet sniffing).

바람직하게 상기 파일 캐쉬의 상태 변화는 패킷 스니핑(packet sniffing)을 통하여 서버 쪽으로 송신중인 패킷을 검색하여 새로운 파일 요청이 있으면 'Request' 상태가 되는 단계와, 상기 서버로부터 해당 파일에 대한 파일 헤더가 오면 파일 캐쉬에 저장하기 시작하면서 'Download' 상태가 되는 단계와, 상기 'Download' 상태에서는 서버로부터 전송되는 파일 세그먼트(segment)를 패킷 스니핑을 통하여 저장하며, 파일 트레일러(file trailer)를 발견하게 되면 'Stored' 상태가 되는 단계와, 상기 'Stored' 상태에서 동일한 파일에 대한 요청이 새로 발견되면 'Service' 상태가 되며, 외부 서버로 전송되는 패킷을 게이트웨이 내 로컬 파일 서버로 전송되도록 경로를 재 지정하는 단계를 포함하는 것을 특징으로 한다.Preferably, the state change of the file cache is a step of retrieving a packet being transmitted to the server through packet sniffing and entering a 'Request' state when there is a new file request, and when a file header for the file is received from the server. Starting to store in the file cache is in the 'Download' state, and in the 'Download' state, the file segment (segment) transmitted from the server is stored through packet sniffing, and if a file trailer (file trailer) is found, Stored 'state, and if a new request for the same file is found in the' Stored 'state, it is placed in the' Service 'state, and redirects the packet transmitted to the external server to the local file server in the gateway. Characterized in that it comprises a step.

이상에서 설명한 바와 같은 본 발명에 따른 네트워크 혼잡 감소를 위한 투명 파일 내려받기 방법은 다음과 같은 효과가 있다.The transparent file download method for reducing network congestion according to the present invention as described above has the following effects.

첫째, 클라이언트 쪽에서의 네트워크 관련 설정 변화 없이 게이트웨이에서 관련 패킷에 대한 서비스를 하도록 하여 기존의 프록시 설정과 같이 명시적으로 클라이언트에서 네트워크 관련 설정을 해주지 않아도 되는 장점이 있다.First, there is an advantage that the network does not need to be explicitly configured in the client like the existing proxy configuration by allowing the gateway to service the related packet without changing the network-related configuration in the client side.

둘째, 클라이언트 구간의 네트워크 트래픽이 많이 감소되어 파일 내려받기 성능을 향상시킴으로 전반적으로 네트워크 성능을 향상시킬 수 있는 효과가 있다.Second, the network traffic in the client section is greatly reduced, thereby improving the file download performance, thereby improving overall network performance.

셋째, 클라이언트 구간의 게이트웨이가 서버처럼 사용되어 파일 내려받기가 처리되므로 클라이언트와 서버 간 연결 홉 수가 감소하여 전반적으로 네트워크 성능이 좋아지는 효과가 있다.Third, since the gateway of the client section is used as a server, file download is processed, and the number of connection hops between the client and the server is reduced, thereby improving overall network performance.

넷째, 동일한 콘텐츠에 대한 내려받기를 완전히 파일이 저장된 상태가 아니라 첫 번째 파일의 내려받기가 진행되는 동안에도 가능하게 함으로써 네트워크의 통신 성능을 보다 향상시킬 수 있다.Fourth, it is possible to improve the communication performance of the network by enabling the download of the same content even while the first file is being downloaded, rather than being completely stored.

본 발명의 다른 목적, 특성 및 이점들은 첨부한 도면을 참조한 실시예들의 상세한 설명을 통해 명백해질 것이다.Other objects, features and advantages of the present invention will become apparent from the following detailed description of embodiments with reference to the accompanying drawings.

본 발명에 따른 네트워크 혼잡 감소를 위한 투명 파일 내려받기 방법의 바람직한 실시예에 대하여 첨부한 도면을 참조하여 설명하면 다음과 같다. 그러나 본 발명은 이하에서 개시되는 실시예에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예는 본 발명의 개시가 완전하도록하며 통상의 지식을 가진자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이다. 따라서, 본 명세서에 기재된 실시예와 도면에 도시된 구성은 본 발명의 가장 바람직한 일 실시예에 불과할 뿐이고 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형예들이 있을 수 있음을 이해하여야 한다.A preferred embodiment of the transparent file download method for reducing network congestion according to the present invention will be described with reference to the accompanying drawings. However, the present invention is not limited to the embodiments disclosed below, but can be embodied in various forms, and only the present embodiments are intended to complete the disclosure of the present invention and to those skilled in the art to fully understand the scope of the invention. It is provided to inform you. Therefore, the embodiments described in the specification and the drawings shown in the drawings are only the most preferred embodiment of the present invention and do not represent all of the technical idea of the present invention, various modifications that can be replaced at the time of the present application It should be understood that there may be equivalents and variations.

도 3 은 본 발명의 실시예에 따른 네트워크 연결 구조를 나타낸 구성도이다.3 is a diagram illustrating a network connection structure according to an embodiment of the present invention.

도 3과 같이, 적어도 하나 이상의 클라이언트(100) 및 스위치(200)와, 다운로드 게이트웨이(300)와, 서버(400)로 구성된다.As shown in FIG. 3, at least one client 100, a switch 200, a download gateway 300, and a server 400 are configured.

기존의 네트워크 연결 구조와의 차이로는 게이트웨이(300)에 내려받기를 하는 파일에 대한 정보를 저장하는 파일 캐쉬와, 이를 관리하는 다운로드 관리부(350)를 추가로 구성하여, 내려받기를 하는 파일에 대한 정보를 서버(400)가 아닌 게이트웨이(300)에서 관리하도록 구성하고 있다.The difference from the existing network connection structure includes a file cache for storing information on a file to be downloaded to the gateway 300 and a download management unit 350 for managing the file to further download the file to the file to be downloaded. Information is configured to be managed by the gateway 300 instead of the server 400.

즉, 도 4(a)와 같이 서버(400)에서 전송되는 파일을 게이트웨이(300)에서 파일 캡쳐하여 파일 캐쉬에 일정기간 동안 보관한다. 이후, 클라이언트(100)를 통해 게이트웨이(300)내 파일 캐쉬에 있는 파일에 대한 내려받기 요청이 시작되면, 도 4(b)와 같이 서버(400)로 내려받기 요청을 보내지 않고 게이트웨이(400)로 파일 요청을 전송 처리하고, 파일 캐쉬에 저장된 파일을 이용하여 클라이언트(100)로의 요청파일 내려받기를 처리한다. That is, as shown in FIG. 4 (a), the file transmitted from the server 400 is captured by the gateway 300 and stored in the file cache for a certain period of time. Subsequently, when a download request for a file in a file cache in the gateway 300 is started through the client 100, as shown in FIG. 4 (b), the download request is not sent to the server 400 to the gateway 400. The file request is transmitted and processed to download the request file to the client 100 using the file stored in the file cache.

이처럼, 게이트웨이(300)는 내부 파일 캐쉬에 저장되어 있는 요청파일에 대한 내려받기 요청을 서버(400)로 보내지 않음으로써 서버(400)의 부하를 줄임과 동시에 게이트웨이(300)로 집중되는 서버(400)를 통한 내려받기 파일 재전송에 의한 부하를 급격하게 감소시킬 수 있어 네트워크 성능을 향상시킬 수 있다.As such, the gateway 300 reduces the load of the server 400 and concentrates the gateway 400 at the same time as the server 400 does not send a download request for the request file stored in the internal file cache. Download can be drastically reduced the load due to file retransmission, thereby improving network performance.

이와 같은 구조를 갖는 네트워크 연결 구조를 통해 본 발명에 따른 투명 파일 내려받기 방법을 첨부한 도면을 참조하여 상세히 설명하면 다음과 같다. With reference to the accompanying drawings, the transparent file download method according to the present invention through the network connection structure having such a structure will be described in detail as follows.

도 5 는 본 발명의 실시예에 따른 네트워크 혼잡 감소를 위한 투명 파일 내려받기 방법을 설명하기 위한 흐름도이다.5 is a flowchart illustrating a transparent file download method for reducing network congestion according to an embodiment of the present invention.

도 5를 참조하여 설명하면, 먼저 클라이언트(100)로부터 파일에 대한 내려받기 요청이 입력되면(S10), 입력된 요청 파일(req)이 HTTP 파일인지 또는 FTP 파일인지를 판단한다(S20). 즉, 클라이언트(100)에서 FTP 프로그램이나 웹 브라우저를 통하여 파일 내려받기를 요청하므로, 상기 요청 파일(req)이 HTTP 파일인지 또는 FTP 파일이 아닌 경우는 클라이언트(100)로부터의 요청파일이 아닌 것으로 판단한다.Referring to FIG. 5, if a download request for a file is input from the client 100 (S10), it is determined whether the input request file req is an HTTP file or an FTP file (S20). That is, since the client 100 requests to download a file through an FTP program or a web browser, it is determined that the request file req is not a request file from the client 100 when the request file req is an HTTP file or not an FTP file. do.

이어, 입력된 요청 파일이 HTTP 파일인지 또는 FTP 파일로 판단되면, 다운로드 관리자(310)는 게이트웨이(300) 내 파일 캐쉬에 상기 클라이언트(100)로부터 요청된 요청파일이 저장되어 있는지를 검색한다(제 1 검색)(S30).Subsequently, if it is determined that the input request file is an HTTP file or an FTP file, the download manager 310 searches whether the request file requested from the client 100 is stored in the file cache in the gateway 300. 1 search) (S30).

상기 제 1 검색결과(S30), 게이트웨이(300) 내 파일 캐쉬에 요청파일이 저장되어 있지 않은 경우, 클라이언트(100)에서 서버(400)로 파일 전송을 위해 요청된 TCP 연결을 게이트웨이(300)를 통하여 서버(400)로 TCP 연결이 이루어진다. 그러면, 서버(400)측은 파일 내려받기 요청을 받으면 요청되는 신호의 트래픽에서 파일 세그먼트를 검출한다(S40).When the request file is not stored in the first search result (S30) or the file cache in the gateway 300, the gateway 300 connects the gateway 300 to the requested TCP connection for the file transfer from the client 100 to the server 400. Through the TCP connection to the server 400 is made. Then, when the server 400 receives the file download request, the server 400 detects the file segment in the traffic of the requested signal (S40).

그리고 상기 검출된 파일 세그먼트가 클라이언트(100)에서 요청된 파일 세그먼트인지를 판단한 후(S50), 상기 판단결과 관련된 파일 세그먼트를 게이트웨 내 파일캐쉬에 저장하고, 저장된 파일 세그먼트를 클라이언트(100) 쪽으로 전송한다(S60). 이어 서버(400)는 모든 요청파일이 저장소에서 모두 검출될 때 까지 상기 전송과정을 반복한다(S70).After determining whether the detected file segment is a file segment requested by the client 100 (S50), the determination result stores the related file segment in a file cache in the gateway and transmits the stored file segment to the client 100. (S60). Subsequently, the server 400 repeats the transmission process until all request files are detected in the storage (S70).

이때, 게이트웨이(300)는 서버(400)로부터 해당 파일에 대한 파일 헤더가 전송되면, 이를 통해 파일 포맷의 시작부분과 끝부분에 대한 정보를 환경설정 파일에서 참조하여 캡쳐한다. 참고로, 네트워크에서 전송 중인 파일을 캡쳐하는 방법은 네트워크 패킷 캡쳐가 가능한 libpcap 라이브러리를 사용하는 tcpxtract와 같은 도구에서 사용하는 방식을 사용하면 쉽게 처리할 수 있다.In this case, when the file header for the corresponding file is transmitted from the server 400, the gateway 300 captures the information about the beginning and the end of the file format by referring to the configuration file. Note that the method of capturing files in transit on the network can be easily handled by using a tool such as tcpxtract that uses the libpcap library to capture network packets.

그리고 이렇게 캡쳐된 파일 포맷의 시작부분과 끝부분에 대한 정보를 기반으로 게이트웨이(300)는 서버(400)로부터 전송되는 파일 세그먼트를 패킷 스니핑(packet sniffing)을 통하여 파일 캐쉬에 저장하며, 파일 트레일러(file trailer)를 발견하게 되면 상기 저장을 종료한다.Based on the information about the beginning and end of the captured file format, the gateway 300 stores the file segment transmitted from the server 400 in a file cache through packet sniffing, and stores a file trailer ( If the file trailer is found, the storing is terminated.

또한, 상기 제 1 검색결과(S30), 게이트웨이(300) 내 파일 캐쉬에 요청파일이 저장되어 있는 경우 다운로드 관리자(310)는 클라이언트(100)에서 서버(400)로 가는 TCP 연결을 게이트웨이(300) 내 로컬 파일 서버로 재지정하여 외부 서버(400)로 오가는 네트워크 트래픽을 제거하게 된다(S80). 참고로 서버(400)로 가는 TCP 연결을 게이트웨이(300) 내 로컬 파일 서버로 재지정하는 것은 iptables에서처럼 INPUT, OUTPUT, FORWARD 체인에 대한 설정을 변경하면 가능하다.In addition, when the request file is stored in the first search result S30 and the file cache in the gateway 300, the download manager 310 makes a TCP connection from the client 100 to the server 400. Redirection to my local file server will remove network traffic to and from the external server 400 (S80). Note that redirecting a TCP connection to the server 400 to a local file server in the gateway 300 is possible by changing the settings for the INPUT, OUTPUT, and FORWARD chains as in iptables.

그리고 게이트웨이(300)는 게이트웨이(300)내 파일 캐쉬에 저장된 요청파일을 검색하여 요청한 클라이언트(100)로 검색된 파일을 전송한다(S90).The gateway 300 searches for the request file stored in the file cache in the gateway 300 and transmits the searched file to the requesting client 100 (S90).

도 6 은 본 발명의 실시예에 따른 게이트웨이 내에서 사용하는 파일 캐쉬의 상태 변화를 UML 상태도를 사용하여 나타낸 도면이다.FIG. 6 is a diagram illustrating a state change of a file cache used in a gateway according to an embodiment of the present invention using a UML state diagram. FIG.

도 6과 같이, 게이트웨이(400) 내의 다운로드 관리부(350)는 패킷 스니핑(packet sniffing)을 통하여 서버(400) 쪽으로 송신중인 패킷을 검색하여 새로운 파일 요청이 있으면 'Request' 상태가 된다. 이때 서버(400)로부터 해당 파일에 대한 파일 헤더가 오면 파일 캐쉬에 저장하기 시작하면서 'Download' 상태가 된다. 그리고 'Download' 상태에서는 서버(400)로부터 전송되는 파일 세그먼트(segment)를 패킷 스니핑을 통하여 저장하며, 파일 트레일러(file trailer)를 발견하게 되면 'Stored' 상태가 된다. 또한, 'Stored' 상태에서는 동일한 파일에 대한 요청이 새로 발견되면 'Service' 상태가 되며, 외부 서버(400)로 전송되는 패킷을 게이트웨이(300) 내 로컬 파일 서버로 전송되도록 하여 파일 내려받기가 이루어지도록 경로 를 재 지정함으로써 외부 서버(400)로 오가는 네트워크 트래픽을 제거하는 것이 가능하다. As illustrated in FIG. 6, the download manager 350 in the gateway 400 searches for a packet being transmitted to the server 400 through packet sniffing and enters a 'Request' state when there is a new file request. At this time, when the file header for the file is received from the server 400, the file is started to be stored in the file cache and is in a 'download' state. In the 'Download' state, the file segment transmitted from the server 400 is stored through packet sniffing, and when the file trailer is found, the file segment is in the 'Stored' state. In addition, in the 'Stored' state, when a new request for the same file is found, the service is in the 'Service' state. It is possible to eliminate network traffic to and from the external server 400 by rerouting.

이렇게 게이트웨이(300)에서 외부 서버(400)의 파일 내려받기 기능을 대신해 줌으로써 서버 구간의 네트워크에 미치는 영향을 감소시켜 전체적인 네트워크 성능을 향상시킬 수 있게 된다.Thus, by replacing the file download function of the external server 400 in the gateway 300, it is possible to reduce the effect on the network of the server section to improve the overall network performance.

홉 수Hop count 무선 네트워크 처리율Wireless network throughput 유선 네트워크 처리율
(95% 신뢰 구간)
Wired Network Throughput
(95% confidence interval)
1One 515.00515.00 1236.30±1.941236.30 ± 1.94 22 253.75253.75 696.34±1.78696.34 ± 1.78 33 160.00160.00 463.79±0.89463.79 ± 0.89 44 127.50127.50 347.39±1.36347.39 ± 1.36 55 97.5097.50 277.95±1.29277.95 ± 1.29 66 66.2566.25 231.81±0.87231.81 ± 0.87

표 1에서 기재하고 있는 유선 네트워크 처리율은 ns-2 시뮬레이터를 사용하여 실험한 결과로서, 노드 간 연결은 유선이며 연결 속도는 10Mbps로 가정하였다. 시뮬레이션 결과의 신뢰성을 높이기 위하여 20회 반복 실험을 하였으며, t-분포를 사용하여 95% 신뢰구간을 구하였다. The throughput of wired network shown in Table 1 is the result of experiment using ns-2 simulator. It is assumed that the connection between nodes is wired and the connection speed is 10Mbps. In order to increase the reliability of the simulation results, we performed 20 iterations and obtained 95% confidence intervals using the t-distribution.

표 1과 같이, 노드 간 홉 수를 1~6으로 변화시킬 때 평균 처리율은 급격하게 감소함을 알 수 있다. 이는 전송 경로 길이가 길어질수록 네트워크 처리율이 감소함을 의미하며, 따라서 본 명세서에서 제안한 방법을 사용할 경우 외부 네트워크에 있는 서버(400)가 아니라 같은 네트워크에 있는 게이트웨이(300)가 서버(400)의 역할을 대신해 주게 되어 전체 전송 경로가 짧아지게 되어 유무선 환경에 관계없이 네트워크 성능 향상이 가능해지게 된다.As shown in Table 1, it can be seen that when the number of hops between nodes is changed to 1 to 6, the average throughput decreases rapidly. This means that as the transmission path length increases, network throughput decreases. Therefore, when using the method proposed in this specification, the server 300 plays a role of the gateway 300 in the same network instead of the server 400 in the external network. In this case, the entire transmission path is shortened, thereby improving network performance regardless of the wired or wireless environment.

클라이언트 노드수Number of client nodes 기존의 방법
(95% 신뢰 구간)
Traditional way
(95% confidence interval)
제안된 방법
(95% 신뢰 구간)
Proposed method
(95% confidence interval)
성능 향상률
((A-B)*100
/A %)
Performance improvement
((AB) * 100
/ A%)
55 133.20±0.99133.20 ± 0.99 104.55±0.67104.55 ± 0.67 21.6021.60 1010 275.75±0.44275.75 ± 0.44 120.49±1.40120.49 ± 1.40 56.3056.30 1515 412.78±0.41412.78 ± 0.41 144.67±3.48144.67 ± 3.48 64.9564.95 2020 530.64±0.32530.64 ± 0.32 167.62±6.14167.62 ± 6.14 68.4168.41 2525 655.56±0.10655.56 ± 0.10 195.31±8.66195.31 ± 8.66 70.2170.21 3030 785.91±0.07785.91 ± 0.07 218.52±9.63218.52 ± 9.63 72.2072.20

표 2는 기존의 네트워크 구조와 제안된 방법을 적용한 네트워크 구조에서 클라이언트 노드수를 5~30으로 변화시켜 네트워크 트래픽을 증가하도록 하여 전체 네트워크 성능을 분석한 것이다. 시뮬레이션 결과의 신뢰성을 높이기 위하여 각 실험당 20회 반복 실험을 하였으며, t-분포를 사용하여 95% 신뢰구간을 구하였다. Table 2 analyzes the overall network performance by increasing the network traffic by changing the number of client nodes from 5 to 30 in the existing network structure and the proposed network structure. To increase the reliability of the simulation results, 20 replicates were performed for each experiment, and the 95% confidence intervals were determined using the t-distribution.

표 2와 같이, 동시에 파일 내려받기를 요청하는 클라이언트 노드의 수가 많아질수록 기존의 방법에 비해 성능 향상이 약 21%에서 72%까지 있음을 알 수 있다. 즉, 기존의 방법에서는 게이트웨이에서 트래픽 충돌로 인한 병목현상이 발생하여 클라이언트 구간의 네트워크 대역폭을 충분히 활용하지 못하기 때문이다. 반면에 본 명세서에서 제안하는 방법을 적용하면 동시에 파일 내려받기를 요청하더라도 동일한 파일의 경우 하나의 파일 내려받기 요청만 게이트웨이를 통하여 처리되므로 외부 구간의 네트워크에서 트래픽 충돌로 인한 병목현상이 감소하게 되고, 파일 내려받기가 완료되는 시점에서 게이트웨이가 FTP서버의 기능을 대신해주어 전체적인 네트워크 성능이 향상되게 된다.As shown in Table 2, it can be seen that as the number of client nodes requesting file downloads increases, the performance improvement is about 21% to 72% compared to the conventional method. In other words, the existing method is a bottleneck caused by traffic collision at the gateway, it does not fully utilize the network bandwidth of the client interval. On the other hand, if the method proposed in the present specification is applied, even if a file download request is made at the same time, since only one file download request is processed through the gateway, the bottleneck caused by traffic collision in the network of the external section is reduced. When the file download is complete, the gateway replaces the FTP server's functionality, improving overall network performance.

상기에서 설명한 본 발명의 기술적 사상은 바람직한 실시예에서 구체적으로 기술되었으나, 상기한 실시예는 그 설명을 위한 것이며 그 제한을 위한 것이 아님을 주의하여야 한다. 또한, 본 발명의 기술적 분야의 통상의 지식을 가진자라면 본 발명의 기술적 사상의 범위 내에서 다양한 실시예가 가능함을 이해할 수 있을 것이다. 따라서 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다. Although the technical spirit of the present invention described above has been described in detail in a preferred embodiment, it should be noted that the above-described embodiment is for the purpose of description and not of limitation. In addition, those skilled in the art will understand that various embodiments are possible within the scope of the technical idea of the present invention. Therefore, the true technical protection scope of the present invention will be defined by the technical spirit of the appended claims.

도 1 은 일반적인 네트워크 연결 구조를 나타낸 구성도1 is a block diagram showing a general network connection structure

도 2 는 도 1의 구조를 통해 클라이언트에서 FTP 프로그램이나 웹 브라우저를 통하여 서버에서 파일 내려받기(download)를 할 때의 TCP 연결 과정을 나타내는 도면FIG. 2 is a diagram illustrating a TCP connection process when a file is downloaded from a server through an FTP program or a web browser on a client through the structure of FIG.

도 3 은 본 발명의 실시예에 따른 네트워크 연결 구조를 나타낸 구성도3 is a configuration diagram showing a network connection structure according to an embodiment of the present invention;

도 4(a)(b)는 도 3의 구조를 통해 클라이언트에서 FTP 프로그램이나 웹 브라우저를 통하여 서버에서 파일 내려받기(download)를 할 때의 TCP 연결 과정을 나타내는 도면4 (a) and (b) are diagrams illustrating a TCP connection process when a file is downloaded from a server through an FTP program or a web browser on a client through the structure of FIG.

도 5 는 본 발명의 실시예에 따른 네트워크 혼잡 감소를 위한 파일 내려받기 방법을 설명하기 위한 흐름도5 is a flowchart illustrating a file download method for reducing network congestion according to an embodiment of the present invention.

도 6 은 본 발명의 실시예에 따른 게이트웨이 내에서 사용하는 파일 캐쉬의 상태 변화를 UML 상태도를 사용하여 나타낸 도면FIG. 6 is a diagram illustrating a state change of a file cache used in a gateway according to an embodiment of the present invention using a UML state diagram. FIG.

*도면의 주요부분에 대한 부호의 설명DESCRIPTION OF THE REFERENCE NUMERALS

100 : 클라이언트 200 : 스위치100: client 200: switch

300 : 게이트웨이 310 : 다운로드 관리자300: Gateway 310: Download Manager

400 : 서버400: server

Claims (4)

클라이언트와, 게이트웨이와, 서버로 구성되는 네트워크 연결 구조에서의 투명 파일 내려받기 방법에 있어서, 상기 게이트웨이는In the transparent file download method in a network connection structure consisting of a client, a gateway, and a server, the gateway (A) 상기 클라이언트로부터 파일에 대한 내려받기 요청이 입력되면, 입력된 요청 파일(req)이 HTTP 파일인지 또는 FTP 파일인지를 판단하는 단계와,(A) when a download request for a file is input from the client, determining whether the input request file req is an HTTP file or an FTP file; (B) 입력된 요청 파일이 HTTP 파일인지 또는 FTP 파일로 판단되면, 게이트웨이 내 파일 캐쉬에 상기 요청된 요청파일이 저장되어 있는지를 검색하는 제 1 검색 단계와,(B) if it is determined that the input request file is an HTTP file or an FTP file, a first search step of searching whether the requested request file is stored in a file cache in a gateway; (C) 상기 제 1 검색결과, 게이트웨이 내 파일 캐쉬에 요청파일이 저장되어 있으면, 클라이언트에서 서버로 가는 TCP 연결을 게이트웨이 내 로컬 파일 서버로 재지정하여 외부 서버로 오가는 네트워크 트래픽을 제거하는 단계와,(C) if the request file is stored in the file cache in the gateway, redirecting a TCP connection from the client to the server to a local file server in the gateway to eliminate network traffic to and from an external server; (D) 상기 게이트웨이 내 파일 캐쉬에 저장된 요청파일을 검색하여 요청한 클라이언트로 검색된 파일을 전송하는 단계와,(D) searching for the request file stored in the file cache in the gateway and transmitting the searched file to the requesting client, (E) 상기 제 1 검색결과, 게이트웨이 내 파일 캐쉬에 요청파일이 저장되어 있지 않으면, 상기 서버로 TCP 연결을 통해 요청파일을 수신하는 단계와,(E) if the request file is not stored in the file cache in the gateway, receiving the request file through the TCP connection to the server; (F) 상기 서버로부터 수신되는 요청파일을 게이트웨이 내 파일 캐쉬에 저장하고, 클라이언트로 상기 요청파일을 전송하는 단계를 포함하는 것을 특징으로 하는 네트워크 혼잡 감소를 위한 파일 내려받기 방법.(F) storing the request file received from the server in a file cache in the gateway, and transmitting the request file to a client. 삭제delete 제 1 항에 있어서, The method of claim 1, 상기 (F) 단계는 상기 서버로부터 전송되는 파일을 패킷 스니핑(packet sniffing)을 통하여 파일 캐쉬에 저장하는 것을 특징으로 하는 네트워크 혼잡 감소를 위한 파일 내려받기 방법.The step (F) is a file download method for reducing network congestion, characterized in that for storing the file transmitted from the server through a packet sniffing (packet sniffing). 제 1 항에 있어서, 상기 파일 캐쉬의 상태 변화는 The method of claim 1, wherein the state change of the file cache is 패킷 스니핑(packet sniffing)을 통하여 서버 쪽으로 송신중인 패킷을 검색하여 새로운 파일 요청이 있으면 'Request' 상태가 되는 단계와,Searching for packets being sent to the server through packet sniffing and entering a 'Request' state when there is a new file request, 상기 서버로부터 해당 파일에 대한 파일 헤더가 오면 파일 캐쉬에 저장하기 시작하면서 'Download' 상태가 되는 단계와,When the file header for the file comes from the server, the step of starting to store in the file cache to the 'Download' state, 상기 'Download' 상태에서는 서버로부터 전송되는 파일 세그먼트(segment)를 패킷 스니핑을 통하여 저장하며, 파일 트레일러(file trailer)를 발견하게 되면 'Stored' 상태가 되는 단계와,In the 'Download' state, the file segment transmitted from the server is stored through packet sniffing, and when the file trailer is found, the file segment is placed in the 'Stored' state. 상기 'Stored' 상태에서 동일한 파일에 대한 요청이 새로 발견되면 'Service' 상태가 되며, 외부 서버로 전송되는 패킷을 게이트웨이 내 로컬 파일 서버로 전송되도록 경로를 재 지정하는 단계를 포함하는 것을 특징으로 하는 네트워크 혼잡 감소를 위한 파일 내려받기 방법.If a new request for the same file is found in the 'Stored' state, the service is in a 'Service' state, and rerouting the packet transmitted to the external server to the local file server in the gateway. How to download files to reduce network congestion.
KR1020090133826A 2009-12-30 2009-12-30 Transparent Method for File Download to Reduce the Network Congestion KR101073659B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090133826A KR101073659B1 (en) 2009-12-30 2009-12-30 Transparent Method for File Download to Reduce the Network Congestion

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090133826A KR101073659B1 (en) 2009-12-30 2009-12-30 Transparent Method for File Download to Reduce the Network Congestion

Publications (2)

Publication Number Publication Date
KR20110077298A KR20110077298A (en) 2011-07-07
KR101073659B1 true KR101073659B1 (en) 2011-10-14

Family

ID=44916896

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090133826A KR101073659B1 (en) 2009-12-30 2009-12-30 Transparent Method for File Download to Reduce the Network Congestion

Country Status (1)

Country Link
KR (1) KR101073659B1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101504191B1 (en) * 2013-07-31 2015-03-24 아토리서치(주) Distributed processing system using of packet sniffing and the method

Also Published As

Publication number Publication date
KR20110077298A (en) 2011-07-07

Similar Documents

Publication Publication Date Title
US11297140B2 (en) Point of presence based data uploading
US11194719B2 (en) Cache optimization
US10491657B2 (en) Network acceleration method, apparatus and device based on router device
US10567287B2 (en) System and methods for efficient media delivery using cache
EP2719133B1 (en) A generalized dual-mode data forwarding plane for information-centric network
US9021128B2 (en) Request routing using network computing components
US8392448B2 (en) Method and apparatus for transmitting packets in the network
US9621671B2 (en) Method of packet transmission from node and content owner in content-centric networking
US20090259667A1 (en) Method, device and system for distributing file data
US10225201B2 (en) Scalable multicast for notification-driven content delivery in information centric networks
US8526318B2 (en) Method and device of identifying the payload of a data packet in a TCP stream
WO2013029569A1 (en) A Generalized Dual-Mode Data Forwarding Plane for Information-Centric Network
KR101573197B1 (en) Control method for transmitting distributed file based on P2Peer and P2P communication control apparatus therefor
CN103001964A (en) Cache acceleration method under local area network environment
WO2012034414A1 (en) Method and system for processing peer to peer (p2p) services
KR20160072186A (en) Delivering managed and unmanaged content across a network
US9350822B2 (en) Distributed web object identification for web caching
KR101469310B1 (en) Method and system for end-to-end QoS guaranteed content delivery on service overlay network
KR101073659B1 (en) Transparent Method for File Download to Reduce the Network Congestion
KR101243071B1 (en) Source switching method, system and device
CN107404438A (en) Network route method and network route system
US8756272B1 (en) Processing encoded content
Bostami et al. The information-centric networking
KR20070003920A (en) Cache server network and method of scheduling the distribution of content files

Legal Events

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

Payment date: 20141007

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20151007

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee