>>5
read()で1バイトずつ読み込んでたら遅くなるのは当然
read(byte[])で一度にたくさん読み書きするといいよ