Java言語を用いて、インターネット プロトコルを利用したアプリケーションプログラミングを作成するための技法について習得する。本実験の目的は、Javaのプログラミングに習熟すること、および、実際のインターネット通信を経験することにある。
最初に組んだプログラムでは、udp_snd1は文字列入力後即座に終了してしまい、udp_rec1は空行を入力しても終了せず、Ctr+cで終了させていた。
これは送信側では繰り返し送信が、受信側では空行入力時の判定と終了が実現されていなかったからだと思われる。
これらの問題は、送信側はdo~while文にて繰り返し、受信送信共に文字列の長さを格納した変数lenを用意し、whileにてそれを判定させ、値が0のときにプログラムを終了させるようにした。
今回のプログラム作成によって、パケットの送信・受信、パケットからデータの抜き出し方などを知ることができた。
2)日本語通信を可能にするにはどうしたらよいか
まず、通信時のデータはただのバイトのかたまりとしてやり取りされている。
それを、実際に日本語として表示させるには、データ→文字列の変換作業が必要である。
このプログラムの中では
送信側の str = br.readLine(); で文字列を読み込み
送信側の pbuf = str.getBytes(); でバイトに変換
受信側の str = new String(pbuf,0,len); で文字列に変換している
さらに、英字と日本語を表現するのに必要なバイト数が関係している。
英字は1バイトで1文字表現できるのに対し、日本語は1文字表現するのに2バイト必要とする。
このことから、文字列の長さを測る時に、2バイト単位で読み込むことが必要である。
このプログラムではpbuf.lengthによって2バイト長でのパケット送信を行っている。
クライアント・サーバーシステム
1. 目的
Java言語を用いて、インターネット プロトコルを利用したアプリケーションプログラミングを作成するための技法について習得する。本実験の目的は、Javaのプログラミングに習熟すること、および、実際のインターネット通信を経験することにある。
2. 実験方法
2.1 課題1 実験環境の設定
2.1.1 実験概要
1) Javaを用いて任意のプログラムtestを作成し、実行せよ。
2) “ping”コマンドを使用して、各自のノート、パソコンがネットワークに接続されていることを確認せよ。たとえば、大学のWebサーバー(www.teu.ac.jp)に対してpingを実行せよ。
3) “ipconfig”コマンドを実行して、自分のIPアドレスを確認せよ
2.1.2 作成プログラムの仕様
最も基本的なプログラム、文字列表示プログラムを作成した。
2.2 課題2 インターネットアドレスの検索
2.2.1 実験概要
内容: ドメイン名を入力すると、そのIPアドレスを表示するプログラムip_seachを作成せよ。
条件: ドメイン名は、プログラムの...