tcp

add buffer support