add tx loop function framework
add completion port support
add timer support