최근 TCP/IP 프로토콜을 네트워크 어댑터 상에서 처리함으로써 호스트 CPU의 부하를 줄이는 TOE (TCP/IP Offload Engine)에 대한 연구가 활발히 진행되고 있다. TOE의 구현 방안으로는 임베디드 프로세서를 사용하여 TCP/IP를 처리하는 소프트웨어적인 구현 방법과 TCP/IP의 모든 기능을 하드웨어로 구현하는 방법이 제안되어 왔다. 본 논문에서는 하드웨어적인 접근 방법과 소프트웨어적인 접근 방법을 결합한 Hybrid TOE 구조를 제안한다. Hybrid TOE는 많은 작업 부하로 인하여 임베디드 프로세서 상에서 성능을 확보하기 어려운 기능들은 하드웨어로 구현하고, 연결 설정과 같이 통신의 성능에 영향을 크게 끼치지 않는 기능들은 임베디드 프로세서 상에서 소프트웨어로 처리한다. 이 방법은TCP/IP의 모든 기능을 하드웨어로 구현하는 방법에 근접하는 성능을 제공할 수 있으며, 새로운 기능을 추가하거나 TCP/IP를 기반으로 하는 상위 계층 프로토콜까지 오프로딩하는 것이 가능하므로 구조의 유연성 측면에서 장점을 가진다. 본 논문에서는 Hybrid TOE의 프로토타입을 개발하기 위해 FPGA와 ARM 프로세서를 탑재한 프로토타입 보드를 개발하였고, 하드웨어 모듈과 소프트웨어 모듈을 각각 FPGA와 ARM 프로세서 상에 구현하였다. 또한 하드웨어 모듈과 소프트웨어 모듈의 연동 메커니즘을 개발하였다. 실험을 통해 Hybrid TOE 프로토타입이 호스트 CPU 상에 발생하는 부하를 줄여줌을 입증하고, 하드웨어/소프트웨어 연동 구조의 효과를 분석하였다. 그리고, Hybrid TOE의 완성을 위해 필요한 요소들을 분석하였다.
Hybrid TCP/IP Offload Engine 프로토타입의 설계 및 구현