![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
システム間で電文を送受信する機能の設計を
担当することになり悩んでおります。
「相手システムに電文を送信して、その結果を受信する」または、
「相手から送信されてきた電文を受け取って、その結果を返す」
っといった設計に関してまったくの素人です。
なぜ素人に担当させるのかっといった事で突っ込まれると、
みもふたもないので、その点に関して触れないで下さい m(_ _)m
とりあえず、私のレベル(下記)にあった
分かりやすい参考書、またはインターネットのサイトを見て
基礎勉強(下記)からはじめたいのですが、参考資料/サイト
の紹介をお願いします。
<開発環境(案)>
OS:Solaris
言語:Java(自分からAシステムへ)とPerl(自分からBシステムへ)
プロトコル:https
電文形式:XML
<私のレベル>
https,SSL、SOAPといった通信用語の意味は知っている(つもり)
Javaは実装の経験は無いが解析は出来る。
<知りたいと思っている事>
※「思っている」の意味は、今まで見た事・聞いた事からインスピレーション的に、
「多分、この辺を押さえておかなければいけないんだろうな...」っと思っている事です。
・送受信処理のJavaの実装例
・送受信が1秒間に100回あってもレスポンス悪化しない方法
(100回という数値は適当です。普通どれくらいを目標にするのですか?)
・通信エラー等の例外処理の実装方法
(通信エラー発生時の電文はロストするのですか?それってどうリカバリー
するのですか? その当たりに関する事)
・「なりすまし,盗聴,改ざん」っといった事に対する防御方法とその実装方法に関する事
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
>・送受信が1秒間に100回あってもレスポンス悪化しない方法
根本的にはサーバー側のネットワーク環境を改善する以外ありません。
>(100回という数値は適当です。普通どれくらいを目標にするのですか?)
回数だけでは指標になりません。データ量にも依ります。
>・通信エラー等の例外処理の実装方法
>通信エラー発生時の電文はロストするのですか?
TCPというプロトコルにはエラーチェックや再送信の機能が
備わっています。ですからTCPを使う限り基本的にエラーチェックをする必要はありません。
あるとするならタイムアウトしてコネクションが切れる事です。
その場合、再度TCPのコネクションをはりなおします。
>・「なりすまし,盗聴,改ざん」っといった事に対する防御方法とその実装方法に関する事
まず、httpsを使っている時点でやりとりするデータは暗号化されています。
秘密鍵を入手しない限り、そう簡単にデータを解読する事は出来ません。問題は「なりすまし」ですが
HTTPS通信をおこなう場合、認証証明書が必要になります。この認証証明書は自分で作る事
も可能ですが、「なりすまし」を防ぐため
商用で使う場合にはベリサイン等から発行してもらいます。
手数料として大体10万円/年の費用がかかります。
http://www.verisign.co.jp/
(探せばもっと安いところはあります。)
No.1
- 回答日時:
「相手システムに電文を送信して、その結果を受信する」
→クライアント
「相手から送信されてきた電文を受け取って、その結果を返す」
→サーバー
クライアントとサーバーではプログラムの構造が全く違います。
別物だと思って下さい。
実装例ですが、クライアントはともかく、サーバーは用途によってまるで異なるため、
例として挙げられるのはごく基本的な部分しかありません。
JAVAの標準APIではHTTPSのクライアントは比較的簡単に作れますが、
HTTPSサーバーを作るのは大変です。
サーバーはTOMCATなど既存のサーバーを利用するのがいいでしょう。
送受信が100回で妥当かどうかは、システムの種類やユーザーの数、その他の条件によって決まることであり、
普通かと聞かれてもわかりません。
>通信エラー発生時の電文はロストするのですか?それってどうリカバリーするのですか?
エラー内容によると思います。
また、そもそもリカバリーが必要なのかもシステムの要件で決めることです。
「なりすまし,盗聴,改ざん」ですが、「盗聴」は暗号化で防ぎ、「なりすまし,改ざん」は
電子署名という技術で防ぎます。
とりあえず、プロトコルに関しての理解が少し浅いように思えますので、次のサイトでも見てください。
http://www.atmarkit.co.jp/fnetwork/index_index.h …
ページの真ん中あたりの「TCP/IP」
暗号に関しての理解を深めるため、次の本を読むことをお勧めします。
暗号技術入門-秘密の国のアリス
暗号に関しては、この本で用語などの意味を理解しておかないと、
実装するときにもさっぱりわかりません。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- ガラケー・PHS SMSメールの受信遅延原因はガラケー自体の欠陥では 8 2022/08/06 11:46
- 所得税 電子税?のメールについて教えてください 8 2022/09/04 21:38
- ガラケー・PHS 携帯電話の居場所信号の発信タイミング 3 2022/07/27 14:39
- 固定電話・IP電話・FAX 業務用ファックスについて 5 2022/09/28 19:08
- 中途・キャリア さて、社会人になってから13年目。 今まで、機械設計、機械製品の品質管理、部門の経営企画をやってきま 4 2023/07/17 08:59
- 大学受験 高3。通信制高校生。英検四九レベル偏差値は30も無いでしょう。社会不適合者です。 中学は2年から頭に 1 2022/05/12 22:06
- 宇宙科学・天文学・天気 宇宙人との通信方法を考えました。 8 2022/05/14 15:59
- 政治 NHKの受信料は月300円 6 2022/11/04 10:27
- その他(職業・資格) 来年、仕事の都合でエネルギー管理士の資格試験を受験しようと考えているのですが、難易度について教えて下 1 2022/09/24 12:14
- ビジネスマナー・ビジネス文書 応募したバイト先から、電話で、適性検査をインターネット上で受けてほしいと言われました。その後メールで 1 2022/10/27 14:46
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
サーブレットをapacheで公開す...
-
マイクラでPythonのプログラミ...
-
htmlのinput type="date"をgett...
-
直し方について教えて頂きたい...
-
正規表現について質問です。 カ...
-
session,requestはjspで未定義...
-
下記のリストならno002が含まれ...
-
is this even a thing?
-
JAの支部?地域の農協のカード...
-
えハミルトン路と全域木のちが...
-
CSV出力を画面から選択したデー...
-
ショートカットキーについて
-
list の空は [] ってあわらすのに
-
あんまりお料理しないのに台所...
-
質問です。 配列が100以上の場...
-
次のhtml・cssでspan内の文字を...
-
Jupyter notebookですわかりま...
-
Eclipse 動的プロジェクトで404...
-
下記問題の答えが"D"になる意味...
-
改行含むテキストの表示の仕方
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
C# try-catch でcatchに飛ばす方法
-
FileCopy時のエラー
-
fopenでエラーとなる
-
エラー 'ASP 0115' について
-
エラー 'ASP 0115'
-
EXECLマクロでshapeがグルーフ...
-
IIS7.5の設定の仕方
-
CreateObject("Excel.Applicati...
-
ASP.NETで使用しているJavascri...
-
winsock通信時エラーの回避
-
ASP.NET C# ローカルのパスが呼...
-
VBSからPDFファイルを開きたい...
-
【C#】アップロード時に「アプ...
-
VBA RemoveDuplicatesで「アプ...
-
ASPからWscriptを利用して外部...
-
オーバーフローが発生します
-
ページでエラーが、発生しました。
-
エラーの意味が??
-
このページの状態情報は無効で...
-
Outlookで添付ファイルの有無を...
おすすめ情報