available은 전체 길이가 아니라 당장 블로킹 없이 읽을 수 있는 추정량입니다.
read == -1
헤더 길이만큼 정확히 읽기
delimiter까지 parser
length frame·protocol 종료
핵심: 무한 입력에는 EOF를 기다리는 대신 길이·구분자·프레임 같은 메시지 경계가 필요합니다.