Design and implementation of real-time TCP

실시간 전송기능을 지원하는 TCP의 설계 및 구현

  • Woo, Jung-Man (Fumate. Co. Ltd.) ;
  • Cho, Sung-Eon (Dept. of information & Communications engineering, Sunchon National University) ;
  • Kim, Eun-Gi (Dept. of information & Communications engineering, Hanbat National University) ;
  • Kwon, Yong-Do (Dept. of information & Communications engineering, Hanbat National University)
  • Received : 2005.05.21
  • Published : 2005.06.30

Abstract

TCP and UDP is a transport layer protocol of Internet. TCP is a connection oriented protocol which supports a reliable data transfer by offering error and flow control, but it bring a transmission delay. On the other hand, the UDP is a connectionless protocol which does not carry out error and flow control, but it guarantees a realtime transmission. There are hardly any protocols which supports not only realtime functions but also data reliability. In this paper, we have designed and implemented a new TCP mode option which supports reliable realtime transmission. Our designed TCP performs an error recovery process during a fixed amount of time. This time is negotiated during the connection establishment phase. Our designed TCP is tested in real environments, and we find that it is relatively faster than the standard TCP and more reliable than the UDP. It can be used for the reliable transfer of realtime multimedia data.

인터넷 전송계층 프로토콜에는 TCP와 UDP가 있다. TCP는 연결형 프로토콜로서 에러 제어 및 흐름 제어를 제공하여 신뢰성있는 데이터 전송은 보장하지만 그에 따른 전송 지연이 발생한다. 반면에 UDP는 비연결형 프로토콜로서 에러 제어 및 흐름 제어를 수행하지 않으므로 데이터 전송에 있어 지연이 발생되지 않아 실시간 전송은 보장하나 신뢰성있는 데이터 전송을 보장할 수 없다. 따라서 현재의 인터넷 전송계층 프로토콜에서는 실시간 전송기능을 제공하는 동시에 높은 수준의 신뢰성을 보장하여야 하는 데이터의 전송에 적당한 프로토콜이 없다. 본 논문에서는 리눅스(Linux) 커널(Kernel)의 TCP의 에러제어 및 흐름제어를 수정하여 실시간 전송기능을 제공하는 동시에 높은 수준의 신뢰성을 보장하는 새로운 프로토콜을 설계, 구현하였다. 본 연구에서 설계된 실시간 전송기능을 지원하는 TCP 프로토콜은 기존의 TCP에 새로운 옵션을 추가함으로써, 기존 TCP와의 호환성을 유지할 수 있도록 하였다.

Keywords