詞彙表/你會看到的程序

nsurlsessiond

又稱:背景下載

簡短回答

nsurlsessiond是代替App和系統在背景下載和上傳檔案的macOS程序。當App把傳輸交給macOS,好讓傳輸在App關閉後繼續進行時,就由nsurlsessiond負責,所以即使沒有開啟任何App,它也可能顯示大量網路用量。

它的名稱來自NSURLSession,也就是App用來發出網路要求的macOS元件。背景工作階段是App要求系統代為執行的傳輸。iCloud、App Store、軟體更新、「音樂」、「Podcast」和許多第三方App都會使用它,所以nsurlsessiond顯示的是所有正在下載者的合計流量。

這也是它難以解讀的原因:nsurlsessiond可能排在活動監視器「網路」標籤頁的最上方,但那裡沒有任何資訊說明是哪個App要求了下載。

nsurlsessiond為什麼使用這麼多網路

有大型檔案正在傳輸:macOS或App的更新、「iCloud照片」上傳、Podcast的過往單集,或某個App在同步資料。流量屬於那個App,nsurlsessiond只是負責傳送。

若要查看它連線到哪裡,請在「終端機」中執行nettop -p nsurlsessiond。遠端位址通常能讓來源一目了然:更新和iCloud使用Apple的內容伺服器,第三方App則是它自己的網域。

如何讓它停止

從源頭停止傳輸:暫停App Store下載、查看「系統設定」→「一般」→「軟體更新」、在「照片」設定中暫停「iCloud照片」,或在要求下載的App中關閉自動下載。

在活動監視器中結束nsurlsessiond撐不了多久。macOS會再次啟動它,傳輸也會繼續,因為App仍然需要這些傳輸。

如何查看nsurlsessiond在下載什麼

nsurlsessiond有兩個程序,看哪一個在忙,就知道該往哪裡找。

  1. 打開活動監視器,選擇「顯示方式」→「所有程序」,按一下「網路」標籤頁,然後在搜尋欄位中輸入nsurl。
  2. 看「使用者」欄位。_nsurlsessiond帳號底下的實例負責macOS本身的下載,例如軟體更新。你名稱底下的那個則負責你的App和iCloud的下載。
  3. 觀察「已接收位元組」和「已傳送位元組」欄位。「已接收位元組」增加表示在下載,「已傳送位元組」增加表示在上傳,例如照片正在上傳到iCloud。
  4. 如果忙的是系統實例,就打開「終端機」並執行softwareupdate --list,看看是否有可用的macOS更新。你也可以查看「系統設定」→「一般」→「軟體更新」。
  5. 如果忙的是你自己的實例,就想想哪些App會在背景下載:App Store、「音樂」、「Podcast」、「照片」和雲端儲存App最常見。一次暫停一個,看看流量會不會停止。

nsurlsessiond的正常用量與異常情況

正常:流量大一陣子,然後歸零。更新或上傳都有固定的大小,傳完之後nsurlsessiond就會安靜下來。

值得檢查:它連續好幾天都在傳資料,或一遍又一遍傳送同樣多的資料。常見原因如下:

  • 下載快完成時失敗又從頭開始,常見於連線不穩時下載大型更新。
  • 「iCloud照片」第一次上傳大型圖庫,上傳速度慢時可能要好幾天。
  • 「Podcast」設定成下載許多節目的每一集。
  • 某個App在背景同步一個很大的檔案夾,卻始終追不上進度。
  • 網路很慢,把一次短短的下載拖成一整天。

如何在個人熱點上限制背景下載

在iPhone個人熱點或任何有流量上限的網路上,為該網路開啟「低數據模式」:打開「系統設定」→「Wi-Fi」,按一下該網路旁邊的「詳細資訊」,然後開啟「低數據模式」。Apple說這是減少在該網路上用量的一種方式。遵守這項設定的功能會暫緩在該網路上的自動傳輸,「iCloud照片」同步也是其中之一。

這項設定只屬於那一個網路,所以家裡的Wi-Fi仍會照常下載。

大家常問的問題

Mac上的nsurlsessiond是什麼?

它是為App和系統執行背景下載和上傳的macOS程序,例如更新、iCloud和Podcast。它的網路用量是所有背景傳輸的總和。

nsurlsessiond為什麼用掉這麼多流量?

某個App或macOS本身正在背景下載大型檔案,通常是軟體更新或iCloud同步。在「終端機」中執行nettop -p nsurlsessiond可以看到它連線到哪裡。

可以停用nsurlsessiond嗎?

不行,而且結束它只會讓傳輸暫停,直到macOS再次啟動它。請改為在App或「系統設定」中關閉你不想要的自動下載。

nsurlsessiond安全嗎?

安全。它是macOS的一部分,位於/usr/libexec/nsurlsessiond,在磁碟上只有Apple更新才能更改的密封區域中。它只會傳輸App或macOS要求它傳輸的資料。

為什麼有兩個nsurlsessiond程序?

一個以_nsurlsessiond系統帳號執行,負責macOS自己的下載;另一個以你的身分執行,為你的App服務。活動監視器中的「使用者」欄位會顯示哪個是哪個。

相關詞條

想找比活動監視器更好的工具?請參閱Mac上最好用的活動監視器替代方案,或瀏覽詞彙表中的所有詞條。