인터넷에서 동시 파일 전송을 효과적으로 지원하는 NFTP의 설계 및 구현

Next-Generation File Transfer Protocol Which support concurrent file transmissions effectively in Internet

  • 최재남 (한국통신 하이텔 연구소)
  • 발행 : 2002.01.01

초록

현재 인터넷 FTP(File Transfer Protocol)는 그 범용성과 안정성에도 불구하고 구조적인 문제로 인하여, 동시 다중 파일 송수신이 불가능하여 파일을 전송하려면 현재 진행중인 전송이 종료될 때까지 대기해야 하는 불편함이 있었다. 그리고 n(n>1)개의 파일을 동시에 송수신 하려면 사용자 측 PC와 서비스 제공자 호스트(HOST)에 n개의 클라이언트와 서버를 각각 띄워야 한다. 따라서, 메모리 및 네트워크 자원의 낭비와 허용 할 수 없는 시스템 부하를 초래하는 위험성까지 내포하고 있다. 앞서 기술한 이와 같은 문제를 해결하기 위하여 본 논문에서는 시스템부하를 최소화하고 효과적으로 동시에 다중 파일 송수신이 가능하도록 멀티쓰레드를 기반으로 한 NFTP(Next-Generation FTP)구조를 설계하였고, NFTP 프로토콜을 구현하였다. 본 논문에서 설계한 NFTP를 구현하여 실제 서비스에 적용한 결과, 이용자의 파일 전송 종료 대기 시간을 대폭 줄일 수 있었을 뿐만 아니라 시스템 부하도 적게 주어서 안정적으로 서비스를 제공할 수 있었다.

Though the FTP(File Transfer Protocol) has been used widely and stable, It has the structural weakness that can't support current file transmissions so that we have to wait the completion of previous file transmission when try to transmit another file. If try to transmit multiple files concurrently using this FTP, It has to forking multiple FTP servers and clients in each user's PC and ISP's host machine it would result in the waist of memory, resource of network and the high workload of system. In order to solving previous problem, in this paper I have designed the new model of FTP which based on multi-thread and created NFTP(Next-Generation FTP)protocol so that may reduce the workload of system and support current file transmission effectively. I have implemented NFTP and also applied to real service, as a result It have provided reliable service by reducing the workload of system and saved the waiting time which would happened.

키워드

참고문헌

  1. 최재남 '인터넷 파일 전송 프로토콜에서 파일 동시 송신 및 수신방법', 특허출원명세서, pp. 2-11, 2000
  2. 최재남, 정지은, 'Hitel FTP extension', H2K개발문서, pp. 10 -24, 1999
  3. J. Postel, J.Reynolds, 'File Transter Protocol,' RFC959, pp. 3-10, Oct 1985
  4. D. Crocker, P. Overell, 'ABNF', RFC2234, pp. 1-14, Nov 1997
  5. Hichkey,R 'Callbacks in C++ Using Template Functors', C++Report, pp. 43-50, Feb,1995
  6. Patrick Thompson, Greg Bumgardner, 'Thraed. h++ A Portable C++ Library for multithreaded Programming', C++Report, pp. 25-37, March, 1997