[국내논문]고성능 네트워크에서 병렬 전송 기술을 이용한 전송률 극대화 메커니즘 A Maximum Mechanism of Data Transfer Rate using Parallel Transmission Technology on High Performance Network원문보기
NGI나 Internet2와 같은 프로젝트로 인해 인터넷 백본 속도가 상당히 높아졌음에도 불구하고, 분산된 응용 프로그램들은 고성능의 네트워크를 제대로 활용하지 못하고 있다. 이러한 현상이 발생하는 원인으로 표준 전송 프로토콜(TCP)을 들 수 있다. TCP는 안전성/신뢰성을 보장하기 위해 설계되어 있으나, 이로 인해 발생될 수 있는 성능 저하에 관한 문제는 고려되지 않았다. 이러한 문제를 해결하고자 여러 기술들이 연구되고 있으며, 그 중 병렬 전송 기술은 응용레벨에서 다중 스트림을 이용하여 데이타를 전송하는 기술로써, 호환성 문제까지 해결하고 있다. 최근 병렬 전송 기술을 연구하는 연구자들은 최적의 병렬연결 개수의 범위를 찾는데 연구의 초점을 맞추고 있다. 그러나 이러한 연구들에서는 최적의 병렬연결 개수를 실험을 통해 경험적으로 결정하고 있으며, 데이타를 전송하는 호스트의 성능이나 전송 거리는 고려하지 않고 있다. 따라서 본 논문에서는 호스트의 성능과 병렬 전송과의 관계, 전송 거리와 병렬 전송 관계를 분석하고, 그 결과를 토대로 효율적이면서 최대 전송 성능을 확보할 수 있는 최적의 병렬연결 개수 결정 메커니즘을 논의하고자 한다.
NGI나 Internet2와 같은 프로젝트로 인해 인터넷 백본 속도가 상당히 높아졌음에도 불구하고, 분산된 응용 프로그램들은 고성능의 네트워크를 제대로 활용하지 못하고 있다. 이러한 현상이 발생하는 원인으로 표준 전송 프로토콜(TCP)을 들 수 있다. TCP는 안전성/신뢰성을 보장하기 위해 설계되어 있으나, 이로 인해 발생될 수 있는 성능 저하에 관한 문제는 고려되지 않았다. 이러한 문제를 해결하고자 여러 기술들이 연구되고 있으며, 그 중 병렬 전송 기술은 응용레벨에서 다중 스트림을 이용하여 데이타를 전송하는 기술로써, 호환성 문제까지 해결하고 있다. 최근 병렬 전송 기술을 연구하는 연구자들은 최적의 병렬연결 개수의 범위를 찾는데 연구의 초점을 맞추고 있다. 그러나 이러한 연구들에서는 최적의 병렬연결 개수를 실험을 통해 경험적으로 결정하고 있으며, 데이타를 전송하는 호스트의 성능이나 전송 거리는 고려하지 않고 있다. 따라서 본 논문에서는 호스트의 성능과 병렬 전송과의 관계, 전송 거리와 병렬 전송 관계를 분석하고, 그 결과를 토대로 효율적이면서 최대 전송 성능을 확보할 수 있는 최적의 병렬연결 개수 결정 메커니즘을 논의하고자 한다.
Even though Internet backbone speeds have increased in the last few years due to projects like Internet 2 and NGI, many high performance distributed applications are able to achieve only a small fraction of the available bandwidth. The cause of such problem is due to a character of TCP/IP. The prima...
Even though Internet backbone speeds have increased in the last few years due to projects like Internet 2 and NGI, many high performance distributed applications are able to achieve only a small fraction of the available bandwidth. The cause of such problem is due to a character of TCP/IP. The primary goal of this protocol is reliable data transmission. Therefore high speed data transmission didn't be considered when TCP/IP is designed. Hence several researchers have been studied in order to solve the problem of TCP/IP. One of these research results, parallel transfer technique, solves this problem to use parallel TCP connections on application level. Additionally, this technique is compatibility. Recently, these researchers have been studied a mechanism to decide the number of parallel TCP connections. However, some researchers reported the number of parallel TCP connection base on only empirical results. Although hardware performance of host affects transmission rate, the hardware performance didn't be considered in their works. Hence, we collect all data related to transmission rate, such as hardware state information (cpu utilization, interrupt, context switch). Then, we analyzed collected data. And, we suggest a new mechanism determining number of parallel TCP connections for maximization of performance based on our analysis.
Even though Internet backbone speeds have increased in the last few years due to projects like Internet 2 and NGI, many high performance distributed applications are able to achieve only a small fraction of the available bandwidth. The cause of such problem is due to a character of TCP/IP. The primary goal of this protocol is reliable data transmission. Therefore high speed data transmission didn't be considered when TCP/IP is designed. Hence several researchers have been studied in order to solve the problem of TCP/IP. One of these research results, parallel transfer technique, solves this problem to use parallel TCP connections on application level. Additionally, this technique is compatibility. Recently, these researchers have been studied a mechanism to decide the number of parallel TCP connections. However, some researchers reported the number of parallel TCP connection base on only empirical results. Although hardware performance of host affects transmission rate, the hardware performance didn't be considered in their works. Hence, we collect all data related to transmission rate, such as hardware state information (cpu utilization, interrupt, context switch). Then, we analyzed collected data. And, we suggest a new mechanism determining number of parallel TCP connections for maximization of performance based on our analysis.
* AI 자동 식별 결과로 적합하지 않은 문장이 있을 수 있으니, 이용에 유의하시기 바랍니다.
문제 정의
SivakumaH8]의 논문에서는 며러 차례의 실험을 거쳐 최적의 병렬연결 개수 범위는 8~12개라고 밝히고 있으며, Thomas⑼의 논문에서는 packet loss를 이용하여 최적의 병렬연결 개수를 결정하는 방법을 제시하고 있다[8, 9丄 그러나 이들 연구에서는 최적의 병렬연결 개수는 경험적으로 결정된 값이며, 데이타를 전송하는 호스트의 성능과 전송 거리는 고려되지 않았다. 따라서 본 논문에서는 호스트의 성능과 병렬 전송과의 관계, 전송 거리와 병렬 전송과의 관계를 분석하고, 그 결과를 토대로 효율적이면서 최대 전송 성능을 확보할 수 있는 최적의 병렬연결 개수 결정 메커니즘을 논의하고자 한다.
그러나 본 논문에서는 지면관계상 RTT 20ms,60ms, 80ms, 100ms에서 측정된 데이타만을 표기하며, 가장 밀접한 관계를 보인 CPU 시스템 사용률과 병렬연결과의 관계만을 서술하고자 한다.
따라서 현재 측정되는 CPU 시스템 사용률을 이용한다면 최대 전송 성능을 낼 수 있는 병렬연결의 개수를 예측할 수 있을 것으로 사료된다. 이에 CPU 시스템 사용률의 병렬연결 개수에 따른 변화를 분석하고자 한다. 수집된 데이타를 보면 병렬연결 개수와 CPU 시스템 사용률의 증가는 어느 정도 비례함을 알수 있었는데, 이번 단락에서 이를 확인하고자 한다.
이에 CPU 시스템 사용률의 병렬연결 개수에 따른 변화를 분석하고자 한다. 수집된 데이타를 보면 병렬연결 개수와 CPU 시스템 사용률의 증가는 어느 정도 비례함을 알수 있었는데, 이번 단락에서 이를 확인하고자 한다.
유사함을 위의 3절에서 확인하였다. 본 논문에서는 이러한 특성을 이용하여 최대 성능을 발휘할 수 있는 병렬연결 개수를 예측한다. 즉, 어느 한 RTT에서 PG로 CPU 시스템 사용률을 측정할 경우, 다른 RTT 에서 PCi 사용할 수 있는 CPU 시스템 사용률을 예측할 수 있다.
본 논문에서는 다중 TCP 연결과 호스트 성능과의 관계를 분석하고 이를 이용하여 데이타 전송에서 최대 성능을 획득할 수 있는 병렬연결 개수 결정 메커니즘을연구하였다. 수집된 데이타 분석을 통하여 CPU 시스템사용량과 병렬연결 개수와의 밀접한 관계가 있음을 밝혔고, 이를 이용해 최대 활용 가능한 CPU 시스템 사용량을 예측함으로써 데이타 전송 성능을 극대화하였다.
제안 방법
Hostl에는 Nistnet[14]가 설치되어있어 Hostl과 Host2~4 간에 RTT를 조절한다. Hostl과 Host2, Hostl과 Host3, Hostl과 Host4 간에 RTT 는 20ms에서 100ms까지 5ms씩 증가시키며 설정하고, 각각의 경우마다 IGbytes의 데이타를 다중 TCP 연결을 이용하여 전송하고 전송률과 시스템 데이타를 수집하였다. TCP 연결의 개수는 1, 4, 8, 12, 16, 20, 24, 28, 32, 36, 40(이하 PQ, , 는 1~40)을 이용하였다.
수집된 데이타들을 전송률과 병렬연결의 관계, CPU 시스템 사용률과 병렬연결의 관계, Context switch와병렬연결과의 관계, Interrupt 와 병렬연결의 관계, Memory 사용량과 병렬연결의 관계를 중심으로 정리하였다. 그러나 본 논문에서는 지면관계상 RTT 20ms,60ms, 80ms, 100ms에서 측정된 데이타만을 표기하며, 가장 밀접한 관계를 보인 CPU 시스템 사용률과 병렬연결과의 관계만을 서술하고자 한다.
앞으로 호스트 CPU의성능은 계속 향상될 것이며, 낮은 성능의 호스트에서 최대 CPU 시스템 활용률을 높게 설정함으로써 전송 능력을 끌어올리기 위함이다. 따라서 본 연구에서는 단거리, 즉, 20ms 이하에서 측정된 최대 CPU 시스템 사용률을모든 RTT에서 얻을 수 있는 최대 CPU 시스템 사용률로 적용한다.
PCN을 계산하고 그 결과를 표 13에 나타냈다. 또한 계산된 PCN을 이용하여 실제 데이타 전송을 수행하고 측정된 MCU와 목표 MCU를 비교하고 있다.
위의 실험은 packet loss가 발생되는 환경과 그렇지않은 환경에서 수행하여 packet loss가 PCN의 계산에 영향을 미치는지 알아보았고, , 또한 다른 종류의 Lan card를 사용하여 실험을 함으로써 PCN 예측이 Lan card의 영향을 받는지를 확인해 보았다. 표 12~15에서 볼 수 있듯이 packet loss와 Lan card는 PCN 결정에 큰 영향을 미치지 않는 것으로 나타났다.
대상 데이터
TCP 연결의 개수는 1, 4, 8, 12, 16, 20, 24, 28, 32, 36, 40(이하 PQ, , 는 1~40)을 이용하였다. 수집하는 데이타는 전송률(Mbps), CPU 사용률(的, context switch 수 interrupt 수 buff 에서 사용되고 있는 memory 양(KB), cache에서 사용되는 memory 양(KB) 이며, 이들은 vmstat를 이용하여 1초 주기로 수집되었다. 실험 시 각 호스트에서는 실험 이외에 다른 목적으로 실행되는 프로세스는 없는 상태로 실험 전용으로 사용된다.
성능/효과
각각의 RTT에서 TCP 연결 개수의 증가로 인해 CPU 시스템 사용률이 약 70%이상에 도달하게 되면 TCP 연결의 개수가 더 증가하더라도 CPU 시스템 사용률은 더 이상 증가하지 않음을 알 수 있다. 또한 RTT가 증가할수록 래프의 기울기가 낮아지는 현상을 볼 수 있는데, 이러한 현상은 전송 거리가 멀어질수록 ACK가 그만큼 늦게 회신되고 그에 따라 다음 데이타가 전송되지 못하고 대기하게 되어 전송 지연이 발생되기 때문으로 판단할 수 있다.
따라서 RTT가 짧은 경우 상관관계 계수는 낮게 나타난다. 또한 R* TT"] 길어질수록 상관계수가 증가하며, 결국, RTT 100m河서는 세 호스트 모두 상관관계 계수가 0.9 이상으로 매우 밀접한 관계를 나타냈다. 이는 RTT가 길어질수록 더 많은 TCP 연결이 요구되기 때문이다.
이 표를 통해 FG과 PC坦의 지수승 평균 오차가 0.05로, 세 호스트의 CPU 시스템 사용률 감소 비율이 가장 유사함을 확인할 수 있다. 즉, 이것은 한 RTT에서 PG 시 사용되는 CPU 시스템 사용률을 측정하였을경우, 다른 RTT에서 PCi 사용 시 이용될 CPU 시스템 활용률을 예측할 수 있음을 의미한다.
01%이다. 또한 PCs 을 사용할 경우에는 예측되는 값이 26.67%이며, 실제 측정값은 25.90%로 오차는 0.77%로 나타났다.
따라서 목표 MCU가 Host5와 다르게 매우 낮은 현상이 나타난다. 이렇게 특수한 Lan card를 이용할 경우에 실험 결과는 측정된 MCU과 예측된 MCU 간의 평균 오차가 4.52로 Host5 의 경우에 비해 다소 오차가 나는 것으로 나타났다. 그러나 근소한 차이이므로 최대 성능에 근접하였다고 볼수 있다.
CUrtt 오차가 작다는 것은 임의의 RTT에서 사용될 CPU 시스템사용률을 정확하게 예측하고 있다는 의미가 되며, 이는곧 최대 전송 성능을 획득할 수 있는 다중 TCP 연결개수를 보다 정확하게 계산 가능함을 의미한다. 또한 MCU 오차가 작다는 것은 계산된 PCN을 이용할 경우 목표 MCU에 근접함을 의미하는 것으로 본 논문에서 제안한 메커니즘의 정확성을 보여준다.
수집된 데이타 분석을 통하여 CPU 시스템사용량과 병렬연결 개수와의 밀접한 관계가 있음을 밝혔고, 이를 이용해 최대 활용 가능한 CPU 시스템 사용량을 예측함으로써 데이타 전송 성능을 극대화하였다.
측정된 데이타를 분석한 결과 CPU 시스템 사용률이병렬연결 개수, 전송률, RTT와 밀접한 관계가 있음을알 수 있었다. 따라서 현재 측정되는 CPU 시스템 사용률을 이용한다면 최대 전송 성능을 낼 수 있는 병렬연결의 개수를 예측할 수 있을 것으로 사료된다.
후속연구
수 있었다. 따라서 현재 측정되는 CPU 시스템 사용률을 이용한다면 최대 전송 성능을 낼 수 있는 병렬연결의 개수를 예측할 수 있을 것으로 사료된다. 이에 CPU 시스템 사용률의 병렬연결 개수에 따른 변화를 분석하고자 한다.
즉, 네트워크에 트래픽이 많을 경우 병렬 전송 기술을 사용하게 되면 TCP 연결들 간의 간섭현상이 발생하며, 또한 네트워크 혼잡등의 다른 문제도 발생하게 된다. 따라서 본 논문에서는트래픽에 관련된 연구는 향후로 미루고 다루지 않았다.
참고문헌 (15)
T. Dunigan, M. Mathis and B. Tierney, 'A TCP Tuning Daemon,' Proceeding of IEEE Supercomputing 2002 Conference, Baltimore, Maryland, LBNL-51022, Nov. 2002
Yunhong Gu, Xinwei Hong, Marco Mazzucco, Robert Grossman, 'SABUL: A High Performance Data Transfer Protocol,' IEEE COMMUNICATIONS LETTERS, 2003
Aaron falk, Ted Faber, Joseph Bannister, Andrew Chien, Robert Grossman, Jason Leigh, 'Transport Protocols for High Performance,' Communications of The ACM, Vol.46, No11, November 2003
Eric Weigle, Wu-chun Feng, 'Dynamic Right- Sizing: A Simulation Study,' IEEE ICCCN, 2001
Gi-chul Yoo, Eun-sook Sim, Dongkyun Kim, Taeyoung Byun, Kookhan Kim, Okh- wan Byun, 'An Efficient TCP Buffer Tuning Technique Based on Packet Loss Ratio (TBT-PLR),' International Conference on Internet Computing, 2004
White paper GridFTP Universal Data Transfer for the Grid, 2000
Harimath Sivakumar, Stuart Bailey, Robert L.Grossman, 'PSockets: The Case for Applicationlevel Network Striping for Data Intensive Applications using High Speed Wide Area Networks,' SC2000: High-Performance Network and Computing, 2000
Thomas J. Hacker, Brain D. Athey, 'The End-to-End Performance Effects of Parallel TCP Sockets on a Lossy Wide-Area Network,' Parallel and Distributed Processing Symposium (IPDPS), 2002
Bill Allcock, Igor Mandrichenko, Timur Perelmutov, 'GridFTP v2 Protocol Description,' Germi National Accelerator Laboratory, 2004
W. Allcock, J. Bester, J. Bresnahan, A. Chervenak, L. Liming, and S. Tuecke, 'GridFTP: Protocol Extensions to FTP for the Grid,' Argonne National Lab., April 2002
Pawel Plaszczak, Joe Link, Rich Wellner, 'Grid- FTPexplained,' Paul Hubbard, http://www.icslab. agh.edu.pl/~kzajac/pa-wel/GridFTPexplained.doc
Kun Myon Choi, Eui-Nam Huh, and Hyunseung Choo, 'Efficient Resource Management for TCP Parallel Streams with Buffer Tuning,' Springer- Verlag Lecture Notes in Computer Science, Vol. 3823, pp. 683-692, December 2005
'NISTnet A Linux based Network Emulation Tool,' http://snad.ncsl.nist.gov/nistnet/, retrieved on June 2003
Young-Sin Kim, Eui-Nam Huh, 'Analysis of the Interference between Parallel Sockets Connections and Predictions of the Bandwidth,' International Journal of Computer Science and Network Security, 2005
이 논문을 인용한 문헌
저자의 다른 논문 :
활용도 분석정보
상세보기
다운로드
내보내기
활용도 Top5 논문
해당 논문의 주제분야에서 활용도가 높은 상위 5개 콘텐츠를 보여줍니다. 더보기 버튼을 클릭하시면 더 많은 관련자료를 살펴볼 수 있습니다.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.