ほっしーの技術ネタ備忘録

技術ネタの備忘録です。基本的に私が忘れないためのものです。他の人の役にも立つといいなぁ。

2005-12-01から1ヶ月間の記事一覧

なんちゃってWebサーバ

できちゃいました。(笑) ついでに全体をリファクタリング。 基本的にずーっと RFC と Ethereal とにらめっこしただけなので、 技術的に特筆すべきことはないっぽいです。 現在の手抜き タイムアウト処理がない ルーティングテーブルがないので、TCP受け側の…

TCPできた〜

ただし、connect ができない。Listen 側しかできないけどちゃんと全二重通信。 とりあえずサーバが作りたかったからまぁ問題ないでしょう。 結構複雑そうに見えたけど、実際に実装してみると意外とすんなりと実装できたTCP。 実作業時間5〜6時間程度。 と…

パケットのチェックサム再利用コード片

// チェックサム算出 uint32_t sum = 0; for(size_t i=0; i<size; i+=2) { sum += (buffer[i] << 8) | buffer[i+1]; } if( size & 1 ) sum += (data[size-1] << 8); sum = (sum >> 16) + (sum & 0xffff); sum = (sum >> 16) + (sum & 0xffff); checksum = htons(~sum);// チェックサム確認 uint32_t sum = 0; for(size_t i=0; i</size;>

PING 応答きた〜

C:\Program Files>ping 192.168.1.16 Pinging 192.168.1.16 with 32 bytes of data: Reply from 192.168.1.16: bytes=32 time=1ms TTL=128 Reply from 192.168.1.16: bytes=32 time<10ms TTL=128 Reply from 192.168.1.16: bytes=32 time<10ms TTL=128 Reply…