いくらなんでも基本中の基本すぎて、釣りにしか見えん。
でも釣りじゃなかったら可哀そうだから答えるけど

send1回で送ったデータが、recv1回でとれるとは決まっていない。
なので文字列長とかは自前で受信側に通知する。

・文字列長を最初に送ってから、実際の文字列を送る
・'\0'を受け取るまで受信側がrecvを繰り返す
のどちらかが一般的だな。