2016年12月16日金曜日

Windows UpdateのトラブルはP2Pのせい?

最近Windows 10において、WindowsUpdateにやたら時間がかかるという現象があちこちのブログなどで散見されるが、前エントリーでもちらっと触れた『Windows10におけるWindows UpdateではP2P利用がデフォルトでオンになっている』ことに起因しているのではないか?という仮定を立ててみた。


通常、P2Pを利用したこの手のアップデートでは巨大なプログラムファイルを丸ごと配信させるのではなく、分割したパッケージにして配信。そしてパッケージが集まり、ファイルが完成したらインストールとなる。

この仕組みについては、下記のリンク先の記事がわかりやすい
参考:
阿久津良和のWindows Weekly Report(マイナビニュース)
Windows 10 更新プログラムにおけるP2P配信の仕組み

Windows 10, Delivery Optimization, and WSUS: Take #2
-Michael Niehaus' Windows and Office deployment ramblings

つまり、P2Pにおける欠点「パッケージ提供しているP2P参加者の一部の環境が悪いとダウンロードに大きく時間がかかる」(回線品質が悪いとデータの欠落・化けが発生、リトライが増えるため。)という現象が起こる。

その結果として、パッケージが揃わなければなかなかインストールが実施されない」また大型のファイルになるほど、各パッケージの検証やダウンロードのリトライ、ファイルの結合に大きく時間を消費している(これらをすべて『ダウンロードしています』表示の裏側で作業しており、結合・確認が終わらないと『インストールしています』に進まない)のではなかろうか?

セキュリティは担保されているのだろうけど、WUSUの失敗に繋がる不安定な要素は少ないに越したことはない(他人のネット環境なんぞ知ったこっちゃない)ので、自分の場合はOFFにさせていただいた。

◆Windows Update等におけるP2P利用を無効(またはLAN内のみ)にする方法
(1)設定→更新とセキュリティを開く。

(2)WindowsUpdate→更新プログラムの設定→詳細オプションを開く(下図参照)

(3)詳細オプションが開いたら、『更新プログラムの提供方法を選ぶ』を選択。(下図参照)

(4)更新プログラムの提供方法を選ぶのウインドウが開いたら、オフもしくはオン→ローカルネットワーク上のPCを選択しておく。(下図参照)

補足事項
・持ち歩いてモバイル環境で使うことの多いPCでは、余計なパケット消費を抑える意味でも、P2P無効(オフ)にしておくことが望ましい。
・企業等PCの台数が多い環境ではLAN内でのP2Pを有効にしておいたほうが、外部とのトラフィックの節約になると思われる。
・P2Pが動作する環境としてPCのメモリが4GB以上、かつ空きストレージ256GB以上必要となっているので、満たさないモバイルPC等ではP2Pは稼働しない。

2016年12月15日木曜日

Windows10で12/9以降ネット接続できない不具合多発

Windows10で12月9日に配布されたKB3201845について、ネットに接続できなくなるトラブルが多発している模様。(ほかにもディスク使用率100%とか様々な被害が散見される)





参考:
New Bug In Windows 10 Anniversary Update Brings Wi-Fi Disconnects(slashdot 2016/12/10)
英語投稿なので、読めない人は機械翻訳で雰囲気だけ掴んで下さい。

症状:DHCPによるIP取得ができないためネット接続できない(有線・無線関係なし)

対策:再起動(またはシャットダウンする)

最近のPCでは電源ボタンがシャットダウンではなくスリープになっているケースもあるので、かならずスタート→電源→再起動を選択すること。
どうやら、上記パッチが導入後PCの再起動が必要なのだが、その仕込みに失敗しそのまま使用していると、不具合が発生するらしい。※未検証

一部のPCでWi-Fi周りの設定が変わってしまっている(アクセスポイントへの自動接続が解除されていたり、Wi-Fi設定(設定→ネットワーク→Wi-Fi)が変わってたりするので一応要確認。

ただし、上記パッチのインストールが完了しないと、12月14日の定例アップデートの導入がスタートしない。

その後、12月14日に公開されたWindowsUpdateで配布されたKB3206632他を導入ということになる。
※サーバーの混み加減ではダウンロードがとにかく時間がかかる(95%で進まない等)という現象もあるようですが、気長に待つこと。(この現象についてはP2P配信の影響も無視できないと思われる。詳細は以下に。)

参考記事:Windows10はWindows Update時に他ユーザーの帯域を使うことが判明(GIGAZINE 2015/8/5)


2016年12月6日火曜日

Android7.1.1登場 ※Android 12月のセキュリティ更新(12/6更新)

Googleが2016年12月の定期アップデートの配布開始になりました。今回からAndroidの新バージョン、7.1.1が配布されます。
※一部の機種では7.0.0からいきなり7.1.1になっています。

Android開発者ブログの投稿:
http://android-developers.blogspot.jp/2016/12/welcoming-android-711-nougat.html

Android7.1.1の新機能について:
https://blog.google/products/android/sweet-update-nougat-android-711/
・絵文字の追加
・一部のアプリからGIFが送れるようになる
・ホーム画面上のアイコンにショートカットが紐付けできる
など

一方で、カーネルメモリサブシステムにおける権限昇格の脆弱性、NVIDIA GPUドライバーの脆弱性など緊急11件、危険度高43件、危険度中20件の脆弱性が修正されて12/1,12/5に分けてアナウンスされています。
ビルド番号はAndroid7.1.1でNMF26F/J/O,NBD91U(Nexus6のみ7.0.0)が最新のビルド番号となります。

Nexus Security Bulletin (December 2016)
https://source.android.com/security/bulletin/2016-12-01.html


OTAファイルのリンクが判明次第、この記事を随時アップデートします。
◆各OTAファイルへのリンク(2016/12/6更新)
※Nexus6はグローバル版のリンクです

OTA Images for Nexus Devices
https://developers.google.com/android/nexus/ota

●機種別リンク
Pixel 7.1.1(NMF26O):Link
Pixel XL 7.1.1(NMF26O):Link
Nexus5X 7.1.1(NMF26F):Link
Nexus6 7.0.0(NBD91U):Link
Nexus6P 7.1.1(NMF26F):Link
※ベライゾン版を除く
Nexus9(Wi-Fi) 7.1.1(NMF26F):Link
Nexus9(LTE) 7.1.1(NMF26F):Link
Nexus Player 7.1.1(NMF26J):Link


OTA(差分)ファイルを利用したアップデートの場合、SDKツールのadbコマンドを利用して手動更新すれば現在の設定を保持したままアップデートできます。
※設定→端末情報→システムアップデートで更新する方法と同じ。
※adbコマンドの利用方法はこちらを参考にしてください。

それが待てないという方は、先行して公開されたファクトリーイメージからインストールしてください。
※本体は初期化されますので、設定が面倒という場合にはOTAアップデートをお待ち下さい。
※アーカイブのバッチファイルを加工(fastboot -wの部分の-wを削除することでユーザーデータは保持したまま更新されます)することにより、そのまま更新されます。ただし、ブートローダーのアンロック必須です。

Factory Images for Nexus Devices
https://developers.google.com/android/nexus/images