ぼくです。テレワーク(リモートワーク)でVPN越しに遠隔地のWindows PCにリモートデスクトップ(RDP)で接続して作業されている方も増えたんじゃないでしょうか。
リモートデスクトップを使っていると頻繁に固まることがありました。接続し直せば元通り繋がるので、ホスト側PCがフリーズしたわけではなさそうです。Wi-Fiで使っているのを有線LANに切り換えるといくらか改善する気がしましたがそれでもまだダメみたいです。ググってみたところ、設定でUDPの接続をつかわないようにするとうまくいくという情報を見つけたので、メモっておきます。クライアント側、サーバ側どちらかを変更すれば大丈夫ということなので状況に応じて試してみてください。Windows10で設定し動作確認をしています。Windows7には設定項目がなかったため、この問題は発生しないかもしれません。(Windows7はサポート期限が切れているため企業では使用していないと思いますが。。。)
RDPクライアントの設定を変更する
1. グループポリシーエディタを起動する
Windowsボタンを押して、”gpedit.msc” と入力して Enter
2. 「リモートデスクトップ接続のクライアント」の設定を開く
[ローカルコンピューターポリシー] > [コンピューターの構成] > [管理用テンプレート] > [Windowsコンポーネント] > [リモートデスクトップサービス] > [リモートデスクトップ接続のクライアント] > [クライアントの UDP を無効にする] を開く
3. 「クライアントのUDPを無効にする」を有効にする。
「未構成」や「無効」になっている場合は、これを「有効」にします。
RDPホストの設定を変更する
1.グループポリシーエディタを起動する
Windowsボタンを押して、”gpedit.msc” と入力して Enter
2. [ローカルコンピューターポリシー] > [コンピューターの構成] > [管理用テンプレート] > [Windowsコンポーネント] > [リモートデスクトップサービス] > [リモートデスクトップセッションホスト] > [接続] > [RDPトランスポートプロトコルの選択] を開く
3. 有効 :「TCP のみを使用」を選択して適用する
未構成や無効になっている場合は、これを有効にして、オプションからトランスポートの種類の選択 で「TCPのみを使用」を選び、適用する。
まとめ
UDP通信はTCPに比べて高速、軽量である反面、送達確認がないため、途中でパケットが失われた場合、プロトコルレベルで検出して自動的に再送してくれません。Wi-Fi や VPN を通してリモートデスクトップの通信を行うと意図せずパケットが失われる可能性が高くなっているのかもしれません。デフォルト設定がUDPを使うということは、標準的な使い方では(同じLAN内における使用?)ではパケットが失われることはほとんど発生しないため、UDPを使った方がパフォーマンス(レスポンス)が良いことがあるのでしょう。デフォルト値を変更したということは忘れずに、状況に応じて切り換えて運用してみてください。
VPN越しにリモートデスクトップを使用する場合できるだけネットワークを安定させるため、無線よりも有線LANを使うことをオススメしておきます。ノートPCに有線LANがない場合はUSBイーサネットアダプタで追加できます。
I-O DATA ギガLANアダプター USB3.0対応 Nintendo Switch 動作確認済 1000BASE-TX対応 US3-HB3ETG
古いLANケーブルを使っていると速度が出ないことがあります。ギガビット(1GbEや10GbE)に対応した品質の良いケーブルを使いましょう。カテゴリー5e(CAT5e)以上のケーブルが目印です。
他にもリモートデスクトップ関連の記事をいくつか書いているので参考にしてみてください。