Abstract
Network-based computing such as cluster computing requires a reliable high-speed transport protocol. TCP is a representative reliable transport protocol on the Internet, which implements many mechanisms, such as flow control, congestion control, and retransmission, for reliable packet delivery. This paper, however, finds out that Myrinet does not incur any packet losses caused by network congestion. In addition, we ascertain that Myrinet supports reliable and ordered packet delivery. Consequently, most of reliable routines implemented in TCP produce unnecessarily additional overheads on Myrinet. In this paper, we show that we can attain the reliability only by flow control on Myrinet and propose a new reliable protocol based on UDP named RUM (Reliable UDP on Myrinet) that performs a flow control. As a result, RUM achieves a higher throughput by 45% than TCP and shows a similar one-way latency to UDP.
클러스터와 같은 네트워크 컴퓨팅 환경에서는 신속하고 신뢰성이 보장되는 데이타 전송이 요구된다. 일반적으로 신뢰성을 보장하기 위해서 사용되는 전송 프로토콜은 TCP이다. TCP는 신뢰성을 보장하기 위해서 혼잡 제어, 흐름 제어, 재전송 둥을 수행한다. 본 논문은 클러스터의 하부 네트워크로서 많이 사용되는 Myrinet을 분석한 결과, 네트워크 혼잡으로 인한 패킷 손실이 Myrinet에서는 발생하지 않음을 새롭게 보인다. 또한 Myrinet에서는 패킷의 순서 뒤바뀜과 손실이 발생하지 않음을 확인한다. 따라서 TCP의 혼잡 제어, 패킷 순서화, 재전송 등과 같은 신뢰성을 위한 기법들은 불필요한 오버헤드를 발생시킨다. 본 논문은 Myrinet에서 신뢰성을 보장하기 위한 최소한의 기능이 흐름 제어임을 보이고, TCP보다 오버헤드가 적은 UDP에 흐름 제어만을 구현한 RUM(Reliable UDP on Myrinet)을 제안한다. 성능 측정결과, RUM은 신뢰성을 보장함과 동시에, TCP보다 최대 45% 높은 처리량을 보이며 UDP와 비슷한 낮은 단방향 지연시간을 가짐을 알 수 있다.