• 締切済み

XMLで電文を送受信するプログラムの設計について

システム間で電文を送受信する機能の設計を 担当することになり悩んでおります。 「相手システムに電文を送信して、その結果を受信する」または、 「相手から送信されてきた電文を受け取って、その結果を返す」 っといった設計に関してまったくの素人です。 なぜ素人に担当させるのかっといった事で突っ込まれると、 みもふたもないので、その点に関して触れないで下さい m(_ _)m とりあえず、私のレベル(下記)にあった 分かりやすい参考書、またはインターネットのサイトを見て 基礎勉強(下記)からはじめたいのですが、参考資料/サイト の紹介をお願いします。 <開発環境(案)> OS:Solaris 言語:Java(自分からAシステムへ)とPerl(自分からBシステムへ) プロトコル:https 電文形式:XML <私のレベル> https,SSL、SOAPといった通信用語の意味は知っている(つもり) Javaは実装の経験は無いが解析は出来る。 <知りたいと思っている事> ※「思っている」の意味は、今まで見た事・聞いた事からインスピレーション的に、 「多分、この辺を押さえておかなければいけないんだろうな...」っと思っている事です。 ・送受信処理のJavaの実装例 ・送受信が1秒間に100回あってもレスポンス悪化しない方法  (100回という数値は適当です。普通どれくらいを目標にするのですか?) ・通信エラー等の例外処理の実装方法  (通信エラー発生時の電文はロストするのですか?それってどうリカバリー   するのですか? その当たりに関する事) ・「なりすまし,盗聴,改ざん」っといった事に対する防御方法とその実装方法に関する事

みんなの回答

  • sha-girl
  • ベストアンサー率52% (430/816)
回答No.2

>・送受信が1秒間に100回あってもレスポンス悪化しない方法 根本的にはサーバー側のネットワーク環境を改善する以外ありません。 >(100回という数値は適当です。普通どれくらいを目標にするのですか?) 回数だけでは指標になりません。データ量にも依ります。 >・通信エラー等の例外処理の実装方法 >通信エラー発生時の電文はロストするのですか? TCPというプロトコルにはエラーチェックや再送信の機能が 備わっています。ですからTCPを使う限り基本的にエラーチェックをする必要はありません。 あるとするならタイムアウトしてコネクションが切れる事です。 その場合、再度TCPのコネクションをはりなおします。 >・「なりすまし,盗聴,改ざん」っといった事に対する防御方法とその実装方法に関する事 まず、httpsを使っている時点でやりとりするデータは暗号化されています。 秘密鍵を入手しない限り、そう簡単にデータを解読する事は出来ません。問題は「なりすまし」ですが HTTPS通信をおこなう場合、認証証明書が必要になります。この認証証明書は自分で作る事 も可能ですが、「なりすまし」を防ぐため 商用で使う場合にはベリサイン等から発行してもらいます。 手数料として大体10万円/年の費用がかかります。 http://www.verisign.co.jp/ (探せばもっと安いところはあります。)

すると、全ての回答が全文表示されます。
  • ngsvx
  • ベストアンサー率49% (157/315)
回答No.1

「相手システムに電文を送信して、その結果を受信する」 →クライアント 「相手から送信されてきた電文を受け取って、その結果を返す」 →サーバー クライアントとサーバーではプログラムの構造が全く違います。 別物だと思って下さい。 実装例ですが、クライアントはともかく、サーバーは用途によってまるで異なるため、 例として挙げられるのはごく基本的な部分しかありません。 JAVAの標準APIではHTTPSのクライアントは比較的簡単に作れますが、 HTTPSサーバーを作るのは大変です。 サーバーはTOMCATなど既存のサーバーを利用するのがいいでしょう。 送受信が100回で妥当かどうかは、システムの種類やユーザーの数、その他の条件によって決まることであり、 普通かと聞かれてもわかりません。 >通信エラー発生時の電文はロストするのですか?それってどうリカバリーするのですか? エラー内容によると思います。 また、そもそもリカバリーが必要なのかもシステムの要件で決めることです。 「なりすまし,盗聴,改ざん」ですが、「盗聴」は暗号化で防ぎ、「なりすまし,改ざん」は 電子署名という技術で防ぎます。 とりあえず、プロトコルに関しての理解が少し浅いように思えますので、次のサイトでも見てください。 http://www.atmarkit.co.jp/fnetwork/index_index.html ページの真ん中あたりの「TCP/IP」 暗号に関しての理解を深めるため、次の本を読むことをお勧めします。 暗号技術入門-秘密の国のアリス 暗号に関しては、この本で用語などの意味を理解しておかないと、 実装するときにもさっぱりわかりません。

すると、全ての回答が全文表示されます。

関連するQ&A