Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> ระบบ >> Mac

ทำความเข้าใจกับ Microsoft Windows BITS:อธิบายบริการถ่ายโอนอัจฉริยะเบื้องหลัง

โดย

  • ราหุล อวาติ
  • Stephen J. Bigelow บรรณาธิการอาวุโสด้านเทคโนโลยี

เผยแพร่:21 สิงหาคม 2023

Microsoft Windows Background Intelligent Transfer Service (BITS) เป็นบริการในระบบปฏิบัติการ Microsoft Windows (OS) ที่อนุญาตให้ดาวน์โหลดและอัปโหลดไฟล์ไปยังเว็บเซิร์ฟเวอร์ Hypertext Transfer Protocol (HTTP) และเซิร์ฟเวอร์ไฟล์ Server Message Block (SMB)

BITS ใช้แบนด์วิดท์เครือข่ายที่ไม่ได้ใช้งานเพื่อถ่ายโอนไฟล์ในพื้นหลังหรือเบื้องหน้า ดังนั้นประสบการณ์เบื้องหน้าของผู้ใช้จึงได้รับผลกระทบน้อยที่สุด การปิดใช้งานบริการจะป้องกันไม่ให้แอปพลิเคชันทั้งหมดที่ใช้ BITS ดาวน์โหลดโปรแกรมและข้อมูลสำคัญอื่น ๆ โดยอัตโนมัติ

BITS ใช้แบนด์วิธเครือข่ายที่ไม่ได้ใช้หรือไม่ได้ใช้งานเพื่อทำการถ่ายโอนไฟล์ - ดาวน์โหลดหรืออัพโหลด - จากหรือไปยังเว็บเซิร์ฟเวอร์ HTTP และเซิร์ฟเวอร์ไฟล์ SMB การถ่ายโอนไฟล์ เช่น ระหว่างเครื่องไคลเอนต์และเซิร์ฟเวอร์ เป็นแบบอะซิงโครนัสและเกิดขึ้นในเบื้องหน้าหรือเบื้องหลัง ซึ่งหมายความว่า เมื่อแอปพลิเคชันร้องขอ BITS สำหรับการถ่ายโอนไฟล์ แอปพลิเคชันจะสามารถทำงานอื่นใดได้อย่างอิสระ

BITS ประกอบด้วย PowerShell cmdlets สำหรับการสร้างและจัดการการถ่ายโอน และยูทิลิตี้บรรทัดคำสั่ง BITSAdmin สำหรับการสร้างงานดาวน์โหลดหรืออัพโหลดและติดตามความคืบหน้า บริการนี้ยังรวมถึงสิ่งอำนวยความสะดวกในการจัดการคิวเพื่อจัดลำดับความสำคัญของคำขอถ่ายโอนไฟล์จากแอปพลิเคชัน

หากการหยุดชะงักหรือการหยุดชะงักเกิดขึ้นบนเครือข่าย BITS จะเชื่อมต่อใหม่โดยอัตโนมัติและดำเนินการถ่ายโอนไฟล์ต่อเมื่อเครือข่ายหรือเครื่องกลับมาให้บริการอีกครั้ง BITS สามารถหยุดชั่วคราวและดำเนินการถ่ายโอนต่อโดยอัตโนมัติแม้ว่าจะรีบูตแล้วก็ตาม นอกจากนี้ยังถ่ายโอนไฟล์เมื่อเสียบปลั๊กเครื่องและอยู่ในโหมด Modern Standby จึงคำนึงถึงการใช้พลังงาน

วงจรชีวิตของงาน Background Intelligent Transfer Service

งาน BITS คือคอนเทนเนอร์ที่เก็บไฟล์ตั้งแต่หนึ่งไฟล์ขึ้นไปที่จะถ่ายโอนไปยังหรือจากเว็บเซิร์ฟเวอร์ HTTP และไฟล์เซิร์ฟเวอร์ SMB งานมีคุณสมบัติที่ระบุวิธีที่ BITS ถ่ายโอนไฟล์และโต้ตอบกับแอปพลิเคชัน

วงจรชีวิตของงานเริ่มต้นด้วยการสร้างงาน นี่คือเวลาที่ผู้ใช้ระบุลำดับความสำคัญของงาน ไม่ว่าจะเป็นการอัพโหลดหรือดาวน์โหลด และเหตุการณ์ใดที่พวกเขาต้องการรับการแจ้งเตือน เมื่อสร้างงานแล้ว คุณสามารถเพิ่มไฟล์เข้าไปได้ โดยสามารถอัปโหลดงานได้สูงสุด 1 ไฟล์ คุณสมบัติของงานยังสามารถเปลี่ยนแปลงได้ขึ้นอยู่กับการใช้งาน เมื่อเพิ่มไฟล์ตั้งแต่หนึ่งไฟล์ขึ้นไปในงาน สิ่งสำคัญคือต้องระบุชื่อในเครื่อง (ไคลเอนต์) และระยะไกล (เซิร์ฟเวอร์) ของไฟล์

เมื่อมีการสร้างงาน BITS จะระงับงานโดยอัตโนมัติ ผู้ใช้จะต้องกลับมาทำงานต่อเพื่อเปิดใช้งานในคิวการถ่ายโอน กล่าวคือ เพื่อย้ายงานจากสถานะที่ถูกระงับไปยังสถานะที่อยู่ในคิว มันยังคงอยู่ในสถานะเข้าคิวจนกว่าตัวกำหนดเวลา BITS จะกำหนดรอบในการถ่ายโอนไฟล์ ณ จุดนี้ งานจะย้ายไปยังสถานะการเชื่อมต่อ และ BITS จะเชื่อมต่อกับเซิร์ฟเวอร์ระยะไกล จากนั้นจะย้ายไปยังสถานะการถ่ายโอนและคงอยู่ที่นั่นจนกว่าเงื่อนไขใดเงื่อนไขหนึ่งจากสี่จะเกิดขึ้น:

  1. การแบ่งเวลาสิ้นสุดลง
  2. การโอนเสร็จสมบูรณ์
  3. มีข้อผิดพลาด
  4. แอปพลิเคชันระงับงาน

งานจะย้ายไปยังสถานะที่ถ่ายโอนเมื่อ BITS ถ่ายโอนไฟล์ทั้งหมด ไฟล์ที่ถ่ายโอนจะพร้อมใช้งานสำหรับไคลเอนต์เมื่อแอปพลิเคชันเรียกใช้เมธอด IBackgroundCopyJob::Complete และความเป็นเจ้าของไฟล์ถูกโอนจาก BITS ไปยังผู้ใช้

BITS รักษาประสบการณ์ผู้ใช้อย่างไร

ขึ้นอยู่กับแบนด์วิธเครือข่ายที่ไม่ได้ใช้งาน BITS จะเพิ่มหรือลดอัตราการถ่ายโอนไฟล์ หากแอปพลิเคชันเริ่มใช้แบนด์วิธมากขึ้น BITS จะลดอัตราการถ่ายโอนไฟล์โดยอัตโนมัติ ดังนั้นจึงรักษาประสบการณ์โดยรวมของผู้ใช้และทำให้มั่นใจว่าการถ่ายโอนในเบื้องหลังมีความเหมาะสมที่สุด

ตราบใดที่ผู้ใช้ที่เริ่มต้นการถ่ายโอนไฟล์ยังคงล็อกออนเข้าสู่เครือข่ายและการเชื่อมต่อเครือข่ายยังคงอยู่ BITS จะยังคงถ่ายโอนไฟล์ต่อไป แม้ว่าแอปพลิเคชันจะออกเองก็ตาม ดังที่กล่าวไปแล้ว BITS จะไม่บังคับการเชื่อมต่อเครือข่ายหากสูญหายหรือหากผู้ใช้ออกจากระบบ แต่จะระงับงานการถ่ายโอนไว้ก่อนแล้วจึงดำเนินการต่อหลังจากการเชื่อมต่อที่สูญเสียไปได้รับการสร้างขึ้นใหม่หรือหลังจากที่ผู้ใช้ที่ออกจากระบบกลับเข้าสู่ระบบอีกครั้ง

BITS จะพิจารณาต้นทุนของการถ่ายโอนไฟล์และการใช้งานเครือข่ายตลอดจนความแออัดของเครือข่ายเสมอ นอกจากนี้ยังใช้นโยบายการถ่ายโอนที่ระบุโดยแอปเพื่อป้องกันการถ่ายโอนไฟล์บนการเชื่อมต่อเครือข่ายที่มีค่าใช้จ่าย ข้อควรพิจารณาเหล่านี้มีความสำคัญอย่างยิ่งกับเครือข่ายโรมมิ่งที่ค่าใช้จ่ายอาจสูงขึ้นอย่างรวดเร็ว BITS ยังช่วยลดผลกระทบต่อ -- หรือการรบกวน -- งานเบื้องหน้าของผู้ใช้ ซึ่งช่วยรักษาประสบการณ์ในการทำงานกับระบบได้ในที่สุด

แอปพลิเคชันของ Background Intelligent Transfer Service

BITS มีประโยชน์มากที่สุดสำหรับผู้ดูแลระบบที่ต้องการดาวน์โหลดไฟล์จากหรืออัปโหลดไฟล์ไปยังเว็บเซิร์ฟเวอร์ HTTP และการแชร์ไฟล์ SMB นอกจากนี้ยังมีอินเทอร์เฟซ Component Object Model ที่เป็นประโยชน์สำหรับโปรแกรมเมอร์ C, C++ และ .NET Microsoft ไม่แนะนำ BITS application programming interface (API) สำหรับโปรแกรมเมอร์ Universal Windows Platform พวกเขาควรใช้ Windows.Networking.BackgroundTransfer API แทน

Windows ใช้ BITS เพื่อดาวน์โหลดการอัพเดตไปยังระบบภายในเครื่องของผู้ใช้ แอปพลิเคชันอื่นๆ จำนวนมากยังใช้ BITS รวมถึงแอปพลิเคชันที่ต้องการดาวน์โหลดหรืออัปโหลดไฟล์ไปยัง HTTP หรือเว็บเซิร์ฟเวอร์การถ่ายโอนสถานะการแสดงหรือเซิร์ฟเวอร์ไฟล์ SMB แอปพลิเคชันที่ต้องการดำเนินการถ่ายโอนไฟล์ต่อโดยอัตโนมัติหลังจากเครือข่ายตัดการเชื่อมต่อหรือรีสตาร์ทคอมพิวเตอร์ก็ใช้ BITS เช่นกัน สุดท้ายนี้ BITS สามารถใช้เพื่อเพิ่มประสิทธิภาพการรับส่งข้อมูลเครือข่ายบริเวณกว้างได้เมื่อใช้กับ BranchCache ซึ่งเป็นเทคโนโลยีเพิ่มประสิทธิภาพ WAN ที่รวมอยู่ในระบบปฏิบัติการ Windows และ Windows Server บางรุ่น

ทำความเข้าใจกับ Microsoft Windows BITS:อธิบายบริการถ่ายโอนอัจฉริยะเบื้องหลัง ผู้ดูแลระบบสามารถใช้ Microsoft Windows BITS เพื่อจัดการการรับส่งข้อมูล WAN

ประเภทของงานการโอนและสถานะของงานใน BITS

BITS รองรับงานการโอนสามประเภท:

  1. ดาวน์โหลดงาน มันดาวน์โหลดไฟล์ไปยังไคลเอนต์ นอกจากนี้ ไฟล์ทั้งหมดจะถูกถ่ายโอนแบบไม่พร้อมกันในเบื้องหน้าหรือเบื้องหลัง
  2. อัพโหลดงาน จะอัปโหลดไฟล์จากไคลเอ็นต์ไปยังเซิร์ฟเวอร์
  3. อัพโหลด-ตอบกลับงาน ขั้นแรกจะอัปโหลดไฟล์ไปยังเซิร์ฟเวอร์ จากนั้นจะได้รับไฟล์ตอบกลับจากแอปพลิเคชันเซิร์ฟเวอร์ที่การอัปโหลดเสร็จสมบูรณ์

งาน BITS สามารถอยู่ในสถานะใดสถานะหนึ่งจากสี่สถานะ:

  1. การเริ่มต้น โดยค่าเริ่มต้น สถานะเริ่มต้นจะถูกระงับ จากสถานะนี้ ผู้ใช้สามารถเพิ่มไฟล์ลงในงานและตั้งค่าคุณสมบัติงานและไฟล์ได้
  2. การดำเนินการ อาจมีสถานะการดำเนินการหลายสถานะที่แสดงกิจกรรมภายในปัจจุบันของงาน เช่น QUEUED, CONNECTING และ TRANSFERRING สถานะการดำเนินการอื่นคือข้อผิดพลาดชั่วคราว ซึ่งบ่งชี้ว่างานล้มเหลวในการถ่ายโอนไฟล์
  3. โอนแล้ว สถานะนี้เกิดขึ้นเมื่อการโอนสำเร็จและไม่ต้องโอนอีกต่อไป
  4. รอบชิงชนะเลิศ งานนี้ได้รับการยอมรับแล้วและไฟล์ที่ดาวน์โหลดเสร็จแล้วทั้งหมดก็พร้อมให้ใช้งาน

ในขณะที่งาน BITS ทำงาน งานจะเปลี่ยนระหว่างรัฐในคลาสสถานะที่แตกต่างกัน แต่เมื่อถึงสถานะสุดท้าย มันจะไม่ย้ายออกจากสถานะนั้น ซึ่งหมายความว่าไม่สามารถเรียกวิธีการเปลี่ยนสถานะใดๆ ได้ มันจะไม่แสดงในการแจงนับงานด้วย หากมีข้อผิดพลาดเกิดขึ้น งานจะย้ายไปยังสถานะข้อผิดพลาดร้ายแรง (BITS ไม่สามารถกู้คืนได้) หรือสถานะข้อผิดพลาดชั่วคราว (ข้อผิดพลาดอาจแก้ไขได้เองและ BITS จะลองทำงานอีกครั้งจนกว่าการถ่ายโอนจะสำเร็จหรือจนกว่างานจะหมดเวลาภายในระยะเวลาที่กำหนดของแอปพลิเคชัน) หากงานหมดเวลาในสถานะข้อผิดพลาดชั่วคราว BITS จะย้ายงานนั้นไปยังสถานะข้อผิดพลาดร้ายแรง

ระดับความสำคัญของบริการถ่ายโอนข้อมูลอัจฉริยะเบื้องหลัง

BITS สามารถเลือกงานถ่ายโอนที่จะรันและเมื่อใดได้อย่างชาญฉลาด เนื่องจากแอปพลิเคชันสามารถใช้ระดับความสำคัญที่แตกต่างกัน:หนึ่งระดับสำหรับเบื้องหน้าและสามระดับสำหรับพื้นหลัง ระดับความสำคัญจะกำหนดว่างานการถ่ายโอนจะถูกประมวลผลเมื่อใดโดยสัมพันธ์กับงานอื่นในคิวการถ่ายโอน ดังนั้น:

  • งานที่มีลำดับความสำคัญสูงกว่าจะมีความสำคัญมากกว่างานที่มีลำดับความสำคัญต่ำกว่า
  • งานที่มีลำดับความสำคัญต่ำกว่าจะไม่ได้รับเวลาการโอนจนกว่างานที่มีลำดับความสำคัญสูงกว่าทั้งหมดจะถูกโอนหรืออยู่ในสถานะข้อผิดพลาด
  • งานที่มีลำดับความสำคัญเท่ากันจะใช้เวลาในการโอนร่วมกัน ดังนั้นจึงไม่มีงานขนาดใหญ่ที่สามารถปิดกั้นคิวการโอนและทำให้เกิดความล่าช้าได้

ในการกำหนดเวลางานที่มีลำดับความสำคัญเท่ากัน BITS จะใช้การกำหนดเวลาแบบวนซ้ำ โดยที่แต่ละงานจะได้รับส่วนแบ่งของเวลาในการประมวลผลไฟล์ หากงานใดงานหนึ่งไม่เสร็จสมบูรณ์ในช่วงเวลาที่กำหนด งานนั้นจะกลับไปยังสถานะที่อยู่ในคิวโดยอัตโนมัติ และงานถัดไปในคิวจะถูกเรียกใช้งานแบบเข้าก่อนออกก่อน (FIFO) สิ่งสำคัญที่ควรทราบคือ BITS ไม่รับประกันการประมวลผล FIFO แม้ว่าจะพยายามอย่างดีที่สุดก็ตาม

ทำความเข้าใจกับ Microsoft Windows BITS:อธิบายบริการถ่ายโอนอัจฉริยะเบื้องหลัง Windows BITS ใช้การกำหนดเวลาแบบวนรอบเพื่อกำหนดเวลางานที่ระดับความสำคัญเท่ากัน

ใน BITS 1.5 และเวอร์ชันก่อนหน้า งานเบื้องหน้าจะได้รับการจัดลำดับความสำคัญมากกว่างานเบื้องหลัง ในความเป็นจริง งานเบื้องหน้ามีลำดับความสำคัญสูงสุด และ BITS จะประมวลผลงานได้ครั้งละหนึ่งงานเท่านั้น ในเวอร์ชัน BITS ที่ใหม่กว่า การถ่ายโอนเบื้องหน้าหลายครั้งสามารถเกิดขึ้นพร้อมกันได้ แต่ไฟล์หลายไฟล์ในงานเดียวกันจะถูกถ่ายโอนตามลำดับหรือต่อเนื่องกันเสมอ

ประวัติความเป็นมาของ Background Intelligent Transfer Service

Microsoft ได้อัปเดต BITS หลายครั้ง:

  • Microsoft เปิดตัว BITS เวอร์ชัน 1.0 ใน Windows XP ในปี 2544
  • เวอร์ชัน 1.2 มาถึงในช่วงกลางปี 2002 เพื่อเพิ่มบริการ Automatic Updates ให้กับ Windows 2000
  • เวอร์ชัน 1.5 เปิดตัวปลายปี 2003 พร้อม Windows Server 2003 และให้การสนับสนุนบรรทัดคำสั่ง คุณลักษณะการอัปโหลดเพิ่มเติม และการปรับปรุงความปลอดภัย
  • เวอร์ชัน 2.0 ซึ่งเปิดตัวในช่วงกลางปี 2004 เพื่อเป็นการอัปเดตสำหรับการปรับใช้ระบบปฏิบัติการหลายระบบ ได้เพิ่มคุณลักษณะการดาวน์โหลด การควบคุมปริมาณแบนด์วิธ และการสนับสนุนสำหรับ SMB
  • เปิดตัวในช่วงกลางปี 2550 BITS 2.5 ได้เพิ่มการรองรับสำหรับ IPv6 และส่วนหัว HTTP ที่กำหนดเอง และการรักษาความปลอดภัย HTTP ที่ดีขึ้น
  • BITS 3.0 ซึ่งรวมอยู่ใน Windows Vista และ Windows Server 2008 เพิ่มการแคชเพียร์ การแจ้งเตือน การเข้าถึงไฟล์ชั่วคราว การจัดการการเปลี่ยนเส้นทาง HTTP การควบคุมนโยบายกลุ่มเพิ่มเติม และการบันทึกเหตุการณ์
  • BITS 4.0 ซึ่งเปิดตัวในช่วงกลางปี 2009 พร้อมด้วย Windows 7 และ Windows Server 2008 R2 ได้นำการรักษาความปลอดภัยแบบโทเค็น คุณลักษณะเซิร์ฟเวอร์ไฟล์แบบสแตนด์อโลน การควบคุมปริมาณแบนด์วิดท์ที่ได้รับการปรับปรุง และการแก้ไขแคชเพียร์
  • BITS 5.0 ซึ่งมาพร้อมกับ Windows 10 ในช่วงกลางปี 2016 ได้เพิ่มการปรับปรุงงานการคัดลอกในเบื้องหลัง การสนับสนุนงานการคัดลอกในเบื้องหลังแบบเก่า และความสามารถในการใช้ BITS ผ่าน API และ PowerShell cmdlets
  • BITS เวอร์ชัน 10.1 ซึ่งเป็นส่วนหนึ่งของ Windows 10 เวอร์ชัน 1703 หรือที่เรียกว่า Windows 10 Creators Update ซึ่งเป็นฟีเจอร์การดาวน์โหลดและการแจ้งเตือนที่ได้รับการปรับปรุง
  • BITS เวอร์ชัน 10.2 ซึ่งเป็นส่วนหนึ่งของการอัปเดต Windows 10 เดือนตุลาคม 2018 ได้เพิ่มการเรียงลำดับพร็อกซีเริ่มต้น ตลอดจนการสนับสนุนนโยบายและนโยบายกลุ่มของ Modern Standby และตัวจัดการอุปกรณ์เคลื่อนที่
  • BITS เวอร์ชัน 10.3 ซึ่งเป็นส่วนหนึ่งของการอัปเดต Windows 10 เดือนพฤษภาคม 2562 ช่วยให้สามารถทำเครื่องหมายส่วนหัว HTTP เป็นการเรียกกลับสำหรับการเขียนเท่านั้นและการตรวจสอบใบรับรองเซิร์ฟเวอร์

เรียนรู้วิธีอัปโหลดและดาวน์โหลดไฟล์ด้วยสคริปต์ PowerShell File Transfer Protocol และอ่านเกี่ยวกับบริการถ่ายโอนไฟล์ที่ปลอดภัยแปดบริการสำหรับองค์กร

อ่านต่อเกี่ยวกับ Microsoft Windows พื้นหลัง Intelligent Transfer Service (BITS)

  • PowerShell คืออะไรและใช้งานอย่างไร:สุดยอดบทช่วยสอน
  • 5 ขั้นตอนในการระบุและแก้ไขปัญหาประสิทธิภาพของ Windows 11
  • เครื่องมือในการถ่ายโอนไฟล์ขนาดใหญ่:วิธีค้นหาและซื้อสิ่งที่ดีที่สุด
  • เครื่องมือการย้ายข้อมูล Windows 11 สำหรับผู้ดูแลระบบเดสก์ท็อป
  • ปัญหาการอัปเกรด Windows 11 ที่ผู้ดูแลระบบเดสก์ท็อปควรทราบ

เจาะลึกการดำเนินงานด้านไอทีและการจัดการโครงสร้างพื้นฐาน

  • ทำความเข้าใจกับ Microsoft Windows BITS:อธิบายบริการถ่ายโอนอัจฉริยะเบื้องหลัง
    ตัวอย่างการอัพโหลดไฟล์ Simple Struts 2

    ทำความเข้าใจกับ Microsoft Windows BITS:อธิบายบริการถ่ายโอนอัจฉริยะเบื้องหลัง

    โดย:คาเมรอน แมคเคนซี

  • ทำความเข้าใจกับ Microsoft Windows BITS:อธิบายบริการถ่ายโอนอัจฉริยะเบื้องหลัง
    JCL (ภาษาควบคุมงาน) คืออะไร

    โดย:TechTarget Contributor

  • ทำความเข้าใจกับ Microsoft Windows BITS:อธิบายบริการถ่ายโอนอัจฉริยะเบื้องหลัง
    วิธีใช้ TFTP เพื่อถ่ายโอนไฟล์ข้ามเครือข่าย

    ทำความเข้าใจกับ Microsoft Windows BITS:อธิบายบริการถ่ายโอนอัจฉริยะเบื้องหลัง

    โดย:เดมอน การ์น

  • ทำความเข้าใจกับ Microsoft Windows BITS:อธิบายบริการถ่ายโอนอัจฉริยะเบื้องหลัง
    ใช้ cURL และ Wget เพื่อดาวน์โหลดไฟล์เครือข่ายจาก CLI

    ทำความเข้าใจกับ Microsoft Windows BITS:อธิบายบริการถ่ายโอนอัจฉริยะเบื้องหลัง

    โดย:เดมอน การ์น