द्वारा
- राहुल अवती
- स्टीफन जे. बिगेलो, वरिष्ठ प्रौद्योगिकी संपादक
प्रकाशित: 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 फ़ाइलों को कैसे स्थानांतरित करता है और एप्लिकेशन के साथ कैसे इंटरैक्ट करता है।
जॉब का जीवनचक्र इसके निर्माण से शुरू होता है। यह तब होता है जब उपयोगकर्ता जॉब की प्राथमिकता निर्दिष्ट करता है, चाहे वह अपलोड या डाउनलोड हो और किन घटनाओं के लिए वे सूचना प्राप्त करना चाहते हैं। एक बार जॉब बन जाने के बाद, फ़ाइलों को इसमें जोड़ा जा सकता है - अपलोड जॉब के लिए अधिकतम एक फ़ाइल के साथ। एप्लिकेशन के आधार पर जॉब गुण भी बदले जा सकते हैं। एक या अधिक फ़ाइलों को जॉब में जोड़ते समय, फ़ाइल के स्थानीय (क्लाइंट) और दूरस्थ (सर्वर) नाम को निर्दिष्ट करना महत्वपूर्ण है।
जब जॉब बनाए जाते हैं, तो BITS स्वचालित रूप से जॉब को निलंबित कर देता है। उपयोगकर्ता को ट्रांसफर क्यू में इसे सक्रिय करने के लिए जॉब को फिर से शुरू करना होगा, यानी इसे निलंबित स्थिति से क्यूड स्थिति में ले जाना होगा। यह क्यूड स्थिति में तब तक रहता है जब तक BITS शेड्यूलर फ़ाइलों को स्थानांतरित करने के लिए इसकी बारी निर्धारित नहीं करता। इस बिंदु पर, जॉब कनेक्टिंग स्थिति में चला जाता है, और BITS दूरस्थ सर्वर से जुड़ता है। यह फिर ट्रांसफरिंग स्थिति में चला जाता है और वहां तब तक रहता है जब तक चार स्थितियों में से एक नहीं होती:
- टाइम स्लाइस समाप्त होता है।
- स्थानांतरण पूरा हो जाता है।
- कोई त्रुटि होती है।
- एप्लिकेशन जॉब को निलंबित करता है।
जॉब ट्रांसफर्ड स्थिति में चला जाता है जब BITS इसकी सभी फ़ाइलों को स्थानांतरित कर देता है। स्थानांतरित फ़ाइलें केवल क्लाइंट के लिए उपलब्ध होंगी जब एप्लिकेशन IBackgroundCopyJob::Complete विधि को कॉल करता है और फ़ाइल स्वामित्व BITS से उपयोगकर्ता को स्थानांतरित हो जाता है।
BITS उपयोगकर्ता अनुभव को कैसे संरक्षित करता है
उपलब्ध निष्क्रिय नेटवर्क बैंडविड्थ के आधार पर, BITS फ़ाइलों के स्थानांतरण की दर को बढ़ाता या घटाता है। यदि कोई एप्लिकेशन अधिक बैंडविड्थ का उपभोग करना शुरू कर देता है, तो BITS स्वचालित रूप से फ़ाइल स्थानांतरण दर को कम कर देता है, इस प्रकार उपयोगकर्ता के समग्र अनुभव को बनाए रखता है और यह सुनिश्चित करता है कि बैकग्राउंड ट्रांसफर इष्टतम हैं।
जब तक फ़ाइल स्थानांतरण शुरू करने वाला उपयोगकर्ता नेटवर्क पर लॉग ऑन रहता है और नेटवर्क कनेक्शन बनाए रखा जाता है, BITS फ़ाइलों को स्थानांतरित करना जारी रखता है, भले ही एप्लिकेशन स्वयं बाहर निकल जाए। उस ने कहा, BITS नेटवर्क कनेक्शन को मजबूर नहीं करता है यदि यह खो जाता है या यदि कोई उपयोगकर्ता लॉग ऑफ करता है। इसके बजाय, यह पहले ट्रांसफर जॉब को निलंबित करता है और फिर खोए हुए कनेक्शन के पुनर्स्थापित होने या लॉग ऑफ किए गए उपयोगकर्ता के वापस लॉग इन करने के बाद इसे फिर से शुरू करता है।
BITS हमेशा फ़ाइल स्थानांतरण की लागत और नेटवर्क उपयोग, साथ ही नेटवर्क कंजेशन पर विचार करता है। साथ ही, यह ऐप-निर्दिष्ट ट्रांसफर नीतियों का उपयोग करके लागत वाले नेटवर्क कनेक्शन पर फ़ाइलों के स्थानांतरण को रोकता है। ये विचार विशेष रूप से रोमिंग नेटवर्क पर मायने रखते हैं जहां लागत तेजी से बढ़ सकती है। BITS उपयोगकर्ता के फोरग्राउंड कार्य पर प्रभाव या हस्तक्षेप को कम करने में भी मदद करता है, अंततः सिस्टम के साथ काम करने के उनके अनुभव को संरक्षित करने में मदद करता है।
Background Intelligent Transfer Service के अनुप्रयोग
BITS सिस्टम एडमिनिस्ट्रेटर के लिए सबसे उपयोगी है जो HTTP वेब सर्वर और SMB फाइल शेयर से फ़ाइलों को डाउनलोड या अपलोड करना चाहते हैं। इसके अलावा, यह एक कंपोनेंट ऑब्जेक्ट मॉडल इंटरफेस प्रदान करता है जो C, C++ और .NET प्रोग्रामर के लिए उपयोगी है। Microsoft यूनिवर्सल Windows प्लेटफॉर्म प्रोग्रामर के लिए BITS एप्लिकेशन प्रोग्रामिंग इंटरफेस (API) की अनुशंसा नहीं करता है। उन्हें इसके बजाय Windows.Networking.BackgroundTransfer API का उपयोग करना चाहिए।
Windows उपयोगकर्ता के स्थानीय सिस्टम पर अपडेट डाउनलोड करने के लिए BITS का उपयोग करता है। कई अन्य एप्लिकेशन भी BITS का उपयोग करते हैं, जिनमें एप्लिकेशन शामिल हैं जिन्हें HTTP या प्रतिनिधि स्टेट ट्रांसफर वेब सर्वर या SMB फाइल सर्वर से फ़ाइलों को डाउनलोड या अपलोड करने की आवश्यकता होती है। एप्लिकेशन जिन्हें नेटवर्क डिस्कनेक्ट या कंप्यूटर पुनरारंभ के बाद फ़ाइल स्थानांतरण को स्वचालित रूप से फिर से शुरू करने की आवश्यकता होती है, वे भी BITS का उपयोग करते हैं। अंत में, BITS का उपयोग BranchCache के साथ वाइड एरिया नेटवर्क ट्रैफिक को अनुकूलित करने के लिए किया जा सकता है, एक WAN अनुकूलन तकनीक जो Windows और Windows Server OS के कुछ संस्करणों में शामिल है।
एडमिन Microsoft Windows BITS का उपयोग WAN ट्रैफिक प्रबंधित करने के लिए कर सकते हैं।
BITS में ट्रांसफर जॉब के प्रकार और जॉब स्टेट
BITS तीन प्रकार के ट्रांसफर जॉब का समर्थन करता है:
- डाउनलोड जॉब। यह क्लाइंट पर फ़ाइलें डाउनलोड करता है। साथ ही, सभी फ़ाइलों को फोरग्राउंड या बैकग्राउंड में अतुल्यकालिक रूप से स्थानांतरित किया जाता है।
- अपलोड जॉब। यह क्लाइंट से सर्वर पर एक फ़ाइल अपलोड करता है।
- अपलोड-रिप्लाई जॉब। यह पहले सर्वर पर एक फ़ाइल अपलोड करता है और फिर सर्वर एप्लिकेशन से एक रिप्लाई फ़ाइल प्राप्त करता है कि अपलोड पूरा हो गया है।
एक BITS जॉब चार स्थितियों में से एक में हो सकता है:
- शुरुआत। डिफ़ॉल्ट रूप से, शुरुआती स्थिति SUSPENDED है। इस स्थिति से, उपयोगकर्ता जॉब में फ़ाइलें जोड़ सकता है और जॉब और फ़ाइल गुण भी सेट कर सकता है।
- कार्रवाई। कई कार्रवाई स्थितियां संभव हैं जो जॉब की वर्तमान आंतरिक गतिविधि दिखाती हैं, जैसे QUEUED, CONNECTING और TRANSFERRING। एक और कार्रवाई स्थिति TRANSIENT ERROR है, जो इंगित करती है कि जॉब फ़ाइल को स्थानांतरित करने में विफल रहा।
- स्थानांतरित। यह स्थिति तब होती है जब स्थानांतरण सफल हो जाता है और कोई और स्थानांतरण नहीं किया जाना है।
- अंतिम। जॉब ACKNOWLEDGED है और सभी पूर्ण डाउनलोड की गई फ़ाइलें उपलब्ध हैं।
जैसे-जैसे BITS जॉब चलता है, यह विभिन्न स्थिति वर्गों में स्थितियों के बीच संक्रमण करता है। लेकिन, एक बार अंतिम स्थिति में पहुंच जाने पर, यह उस स्थिति से बाहर नहीं निकलेगा, जिसका अर्थ है कि किसी भी स्थिति-बदलने वाले तरीकों को कॉल करना संभव नहीं है। यह जॉब गणना में भी दिखाई नहीं देगा। यदि कोई त्रुटि होती है, तो जॉब घातक त्रुटि स्थिति (BITS इससे उबर नहीं सकता) या क्षणिक त्रुटि स्थिति (त्रुटि स्वयं हल हो सकती है और BITS तब तक जॉब को पुनः प्रयास करता है जब तक स्थानांतरण सफल न हो जाए या जब तक जॉब एप्लिकेशन-निर्दिष्ट अवधि के भीतर टाइम आउट न हो जाए) में चला जाता है। यदि जॉब क्षणिक त्रुटि स्थिति में टाइम आउट हो जाता है, तो BITS इसे घातक त्रुटि स्थिति में ले जाता है।
Background Intelligent Transfer Service प्राथमिकता स्तर
BITS बुद्धिमानी से चुन सकता है कि कौन से ट्रांसफर जॉब चलाने हैं और कब। ऐसा इसलिए है क्योंकि एप्लिकेशन विभिन्न प्राथमिकता स्तरों का उपयोग कर सकता है: फोरग्राउंड के लिए एक और बैकग्राउंड के लिए तीन। एक प्राथमिकता स्तर निर्धारित करता है कि ट्रांसफर क्यू में अन्य जॉब के सापेक्ष एक ट्रांसफर जॉब कब संसाधित होता है, इसलिए इसलिए:
- एक उच्च-प्राथमिकता वाला जॉब निम्न-प्राथमिकता वाले जॉब पर पूर्वता लेता है।
- निम्न-प्राथमिकता वाले जॉब को ट्रांसफर समय नहीं मिलता जब तक कि सभी उच्च-प्राथमिकता वाले जॉब स्थानांतरित न हो जाएं या त्रुटि स्थिति में न हों।
- समान प्राथमिकता स्तर पर जॉब ट्रांसफर समय साझा करते हैं, इसलिए कोई बड़ा जॉब ट्रांसफर क्यू को ब्लॉक नहीं कर सकता और देरी का कारण नहीं बन सकता।
समान प्राथमिकता स्तर पर जॉब शेड्यूल करने के लिए, BITS राउंड-रॉबिन शेड्यूलिंग का उपयोग करता है, जहां प्रत्येक जॉब को अपनी फ़ाइलों को संसाधित करने के लिए समय का एक टुकड़ा दिया जाता है। यदि कोई विशेष जॉब अपने आवंटित समय टुकड़े के दौरान पूरा नहीं होता है, तो यह स्वचालित रूप से क्यूड स्थिति में वापस चला जाता है, और क्यू में अगला जॉब पहले-आओ-पहले-पाओ (FIFO) आधार पर सक्रिय हो जाता है। यहां, यह ध्यान रखना महत्वपूर्ण है कि BITS FIFO प्रसंस्करण की गारंटी नहीं देता, हालांकि यह अपना सर्वश्रेष्ठ प्रयास करता है।
Windows BITS समान प्राथमिकता स्तर पर जॉब शेड्यूल करने के लिए राउंड-रॉबिन शेड्यूलिंग का उपयोग करता है।
BITS 1.5 और पहले के संस्करणों में, फोरग्राउंड जॉब को बैकग्राउंड जॉब पर प्राथमिकता दी जाती है। वास्तव में, फोरग्राउंड जॉब की उच्चतम प्राथमिकता होती है, और BITS एक समय में केवल एक जॉब को संसाधित करता है। बाद के BITS संस्करणों में, एक साथ कई फोरग्राउंड ट्रांसफर हो सकते हैं, लेकिन एक ही जॉब में कई फ़ाइलों को हमेशा अनुक्रमिक या क्रमिक रूप से स्थानांतरित किया जाता है।
Background Intelligent Transfer Service का इतिहास
Microsoft ने BITS को कई बार अपडेट किया है:
- Microsoft ने 2001 में Windows XP में BITS के संस्करण 1.0 की शुरुआत की।
- संस्करण 1.2 2002 के मध्य में Windows 2000 में Automatic Updates सेवा जोड़ने के लिए आया।
- संस्करण 1.5 2003 के अंत में Windows Server 2003 के साथ आया और कमांड-लाइन समर्थन, अधिक अपलोड सुविधाएँ और सुरक्षा सुधार लाया।
- संस्करण 2.0, कई OS तैनाती के लिए अपडेट के रूप में 2004 के मध्य में जारी किया गया, अधिक डाउनलोड सुविधाएँ, बैंडविड्थ थ्रॉटलिंग और SMB के लिए समर्थन जोड़ा।
- 2007 के मध्य में जारी BITS 2.5 ने IPv6 और कस्टम HTTP हेडर के लिए समर्थन और बेहतर HTTP सुरक्षा जोड़ी।
- Windows Vista और Windows Server 2008 के साथ शामिल BITS 3.0 ने पीयर कैशिंग, सूचनाएं, अस्थायी फ़ाइल एक्सेस, HTTP रीडायरेक्ट हैंडलिंग, अतिरिक्त Group Policy कंट्रोल और इवेंट लॉगिंग जोड़े।
- Windows 7 और Windows Server 2008 R2 के साथ 2009 के मध्य में जारी BITS 4.0, टोकन-आधारित सुरक्षा, स्टैंडअलोन फाइल सर्वर सुविधाएँ, परिष्कृत बैंडविड्थ थ्रॉटलिंग और संशोधित पीयर कैशिंग लाया।
- 2016 के मध्य में Windows 10 के साथ शामिल BITS 5.0 ने बैकग्राउंड कॉपी जॉब में सुधार, पुराने बैकग्राउंड कॉपी जॉब के लिए समर्थन और API और PowerShell cmdlets के माध्यम से BITS का उपयोग करने की क्षमता जोड़ी।
- BITS का संस्करण 10.1, Windows 10 संस्करण 1703 का हिस्सा, जिसे Windows 10 Creators Update के रूप में भी जाना जाता है, ने डाउनलोड और अधिसूचना सुविधाओं को परिष्कृत किया।
- BITS का संस्करण 10.2, Windows 10 October 2018 Update का हिस्सा, डिफ़ॉल्ट प्रॉक्सी ऑर्डरिंग, साथ ही Modern Standby और मोबाइल डिवाइस मैनेजर नीतियों और ग्रुप नीतियों के लिए समर्थन जोड़ा।
- BITS का संस्करण 10.3, Windows 10 May 2019 Update का हिस्सा, HTTP हेडर को राइट-ओनली के रूप में चिह्नित करने की क्षमता और सर्वर प्रमाणपत्र सत्यापन कॉलबैक को सक्षम किया।
PowerShell File Transfer Protocol स्क्रिप्ट के साथ फ़ाइलों को अपलोड और डाउनलोड करना सीखें, और एंटरप्राइज के लिए आठ सुरक्षित फ़ाइल स्थानांतरण सेवाओं के बारे में पढ़ें।
Microsoft Windows Background Intelligent Transfer Service (BITS) के बारे में आगे पढ़ें
- PowerShell क्या है और इसका उपयोग कैसे करें: अंतिम ट्यूटोरियल
- Windows 11 प्रदर्शन मुद्दों की पहचान और समाधान के 5 चरण
- बड़ी फ़ाइलों को स्थानांतरित करने के लिए टूल: कैसे खोजें और खरीदें सर्वश्रेष्ठ
- डेस्कटॉप एडमिनिस्ट्रेटर के लिए Windows 11 माइग्रेशन टूल
- Windows 11 अपग्रेड मुद्दे जो डेस्कटॉप एडमिन को पता होने चाहिए
IT संचालन और इन्फ्रास्ट्रक्चर मैनेजमेंट पर गहराई से जानें
-
Simple Struts 2 फ़ाइल अपलोड उदाहरण

द्वारा: कैमरन मैकेंजी
-
JCL (Job Control Language) क्या है?
द्वारा: TechTarget योगदानकर्ता
-
नेटवर्क पर फ़ाइलें स्थानांतरित करने के लिए TFTP का उपयोग कैसे करें

द्वारा: डेमन गार्न
-
CLI से नेटवर्क फ़ाइलें डाउनलोड करने के लिए cURL और Wget का उपयोग करें

द्वारा: डेमन गार्न