サンプルプログラムserver.cの概要

サンプルプログラムserver.cの概要を説明する.

まず,main関数のパラメータによって,コマンドラインからの引数の個数 argcと,引数の配列argv(文字列配列)を参照できるようにしてお く.このサンプルでは,一つ目の引数 (argv[1]) でポート番号を取る.

以下の部分で接続を受けるサーバの情 報を設定し,bindシステムコールを用いてソケットsに関連づけてい る.

server.c:
   bzero(&sin, sizeof(sin));    (sinを0で初期化)
   sin.sin_family = AF_INET;    (AF_INETで固定)
   sin.sin_port = htons(port);    (ポート番号を設定)
   sin.sin_addr.s_addr = INADDR_ANY;
一般に,サーバは複数のIPアドレスを持つことができるが,s_addrINADDR_ANYとすることにより,どのアドレスに対する接続も受け付けるよ うにしておく.

その後,listen システムコールによりクライアントからの接続待ち状態に なり,接続があれば,acceptシステムコールによってこれを受け付ける.

データの送受信は

している[*]

NAKAZAWA Koji
2014-09-30