Technology
TCP/IP系アプリケーションプロトコル(HTTP/SMTP/FTP/TFTP/NTP)
(TCP/IPけいアプリケーションプロトコル)
通信プロトコル開発
TCP/IP系アプリケーションプロトコルとは、IPネットワーク上でWeb表示、メール送信、ファイル転送、時刻同期など、特定の用途を実現するための通信規約です。
同じEthernet回線を使用していても、Web画面にはHTTP、メール通知にはSMTP、ファイル転送にはFTP、時刻同期にはNTPというように、目的に応じて使用するプロトコルが異なります。
ハカルプラスでは、HTTP、SMTP、FTP、TFTP、NTPなどを利用し、計測機器、IoTゲートウェイ、PLC、SBC、FAパソコン、サーバー、上位システムを連携する製品・システムを開発しています。
アプリケーションプロトコルの役割
TCP/IPは、異なる機器同士がネットワークを通じてデータを届けるための基本的な仕組みです。その上で、データの意味、形式、要求と応答の手順などを定めるのがアプリケーションプロトコルです。
| プロトコル | 主な用途 | 主に使用する通信 |
|---|---|---|
| HTTP・HTTPS | Web画面・API連携 | TCPまたはQUIC |
| SMTP | 電子メールの送信 | TCP |
| FTP・FTPS | ファイル転送 | TCP |
| TFTP | 簡易的なファイル転送 | UDP |
| NTP | 時刻同期 | UDP |
HTTP・HTTPS
HTTPは、WebブラウザとWebサーバーの間で、HTML、画像、JSONなどをやり取りするためのプロトコルです。
産業用システムでは、計測値や設備状態の表示、設定値の変更、履歴検索、Web APIによる上位システム連携などに使用されます。
HTTP通信は基本的に暗号化されません。認証情報、設定値、計測データなどを安全に扱う場合は、TLSで通信を暗号化するHTTPSを使用します。
組込み機器では処理能力や対応ライブラリの制約があるため、新しい通信方式へ対応できるかだけでなく、証明書の保存・更新方法も確認します。
SMTP
SMTPは、電子メールを送信・中継するためのプロトコルです。設備異常、上限値超過、停電、通信異常などを担当者へ通知する用途に利用されます。
現在のメールサーバーでは、SMTP認証とTLS暗号化を求められることが一般的です。古い計測機器が新しい認証方式や暗号化方式へ対応できない場合は、社内メールリレーやゲートウェイを介して送信します。
通信復旧後に同じ警報メールを繰り返し送らないよう、送信済み状態や再送回数を管理することも重要です。
FTP・FTPS・SFTP
FTPは、ファイルのアップロード、ダウンロード、一覧取得、名称変更などを行うプロトコルです。
- 計測値や製造実績のCSVファイル転送
- 設定ファイルの配布
- ログや保守データの回収
- 上位システムへの定期実績送信
FTPは、制御用接続とデータ転送用接続を分けて使用します。ファイアウォールやルーターを介する場合は、アクティブモードとパッシブモードの違いを考慮します。
通常のFTPでは利用者名、パスワード、転送データが暗号化されません。暗号化が必要な場合は、TLSを利用するFTPSや、SSH上で動作するSFTPを検討します。SFTPは名称が似ていますが、FTPとは別のプロトコルです。
TFTP
TFTPは、指定したファイルを簡単な手順で送受信するためのプロトコルです。利用者認証、フォルダー一覧、名称変更などの機能を基本的に持たず、読込みと書込みに機能を絞っています。
処理能力やメモリが限られた組込み機器へのファームウェア転送、設定ファイルの配布、起動用ファイルの取得などに利用されます。
TFTPには標準的な認証や暗号化がないため、外部ネットワークへ公開せず、設備内や保守専用の閉じたネットワークで使用します。不要な場合はサーバー機能を停止します。
NTPによる時刻同期
NTPは、パソコン、サーバー、計測機器などの内部時計を、ネットワーク上の基準時刻へ同期させるプロトコルです。
複数機器の時刻がずれていると、警報の発生順序を正しく判断できない、PLCとサーバーの履歴を照合できない、日報の集計範囲がずれるといった問題が起こります。
工場内では、各機器が外部の時刻サーバーへ直接接続するのではなく、社内NTPサーバーへ同期させる構成があります。
時刻が急激に変更されると、実績の重複や順序逆転が起こる場合があります。システムによっては、時刻差を徐々に補正する方法や、大きな差を警報として扱う方法を採用します。
通信異常時の設計
ネットワーク通信は、ケーブル断線、相手機器の停止、アドレス重複、通信混雑、サーバー保守などによって途切れる可能性があります。
- 接続・応答のタイムアウト
- 通信失敗時の再接続・再送
- 未送信データの一時保存
- 重複送信・重複登録の防止
- 古い受信データの無効化
- 通信履歴・エラーログの保存
- 復旧後の自動再開
計測実績や製造実績では、送信元でデータ番号を付与し、受信側からの応答を確認して送信済みにするなど、欠損と二重登録を防ぐ仕組みを設けます。
セキュリティ上の注意点
HTTP、FTP、TFTPなどには、標準状態では認証や暗号化が十分でないものがあります。
- HTTPS、FTPS、SFTPなどを使用する
- 設備ネットワークと社内ネットワークを分離する
- 接続元・接続先のIPアドレスを制限する
- 不要なポートやサービスを停止する
- 初期パスワードを変更する
- 証明書や認証情報を適切に管理する
- 通信ログと操作履歴を保存する
旧型機器が暗号化通信に対応していない場合は、外部ネットワークへ直接接続せず、ゲートウェイや中継サーバーを介して保護します。
ハカルプラスの対応
ハカルプラスでは、Web監視画面、Web API、警報メール、CSV・ログファイル転送、組込み機器へのファイル配布、機器間の時刻同期などに対応しています。
プロトコル単体の実装だけでなく、PLC、計測機器、SBC、FAパソコン、データベース、基幹システムを含め、通信異常時の動作やセキュリティまで考慮したシステムとして設計します。
よくある質問
Q. HTTPとHTTPSはどのように使い分けますか?
A. 閉じたネットワークで認証情報を扱わない場合はHTTPを使用することもありますが、ログイン、設定変更、外部接続を伴う場合はHTTPSを基本として検討します。
Q. 古い機器から現在のメールサービスへ警報メールを送れますか?
A. 機器が必要な認証やTLSへ対応していない場合、直接送信できないことがあります。社内メールリレーやゲートウェイを介する方法を検討します。
Q. FTPで送信中に通信が切れた場合はどうなりますか?
A. 不完全なファイルが残る可能性があります。一時ファイル名で転送し、完了後に正式名称へ変更する方法や、ファイルサイズ・チェック値を確認する方法があります。
Q. NTP同期によって装置の時刻が急に変わることはありますか?
A. 設定や時刻差によっては変わる可能性があります。実績管理への影響を避けるため、大きな時刻差を警報にする、徐々に補正するなどの方法を検討します。
Q. 暗号化に対応していない既設機器を上位システムへ接続できますか?
A. 設備内の閉じたネットワークで通信し、ゲートウェイ側で暗号化や認証を行う構成を検討できます。既設機器を外部へ直接公開しないことが重要です。
関連ワード
同じカテゴリの『ハカル技術辞典』を見る