通信PG

このところ通信関係のPGを作っておりました。A地点からB地点までファイルを運ぶような、複数の中継地点もあったりして。作ってるうちになんかあまりよくないものを作ってるんじゃないかとか錯覚してきたりしましたが、それはいいとして。
TCP勉強しました。つまりは通り道でしかないと。その上を流れるデータには何の意味も無く、ただ到達順を保証してくれたり届かなかった場合は再要求したり、基本的な通信に対する面倒は見てくれてUDPよりは信頼性が高い。で、データに意味を持たせたり、データをやり取りするタイミングを決めるのは作る側だと。
最初はこの意味付けをやっていなかったんですね。ぶっちゃけまとめて送信したものは、その単位で届くもんだと思ってました。社内では確かに動く。でも納品先に持っていくと動かない。原因は回線の太さにあって納品先では1回では届かず何回かに分けて届いていました。到達分を1回の送信と考えていたわけですから動くわけ無いですね。結局送信データに開始、終了マークを付けて受信側はこれを頼りに処理するように修正しましたよ。
週末修正したPGを動かしてきます。どうなることやら・・・。