गो-बैक-एन एआरक्यू

गो-बैक-एन एआरक्यू स्वचालित रिपीट रिक्वेस्ट (एआरक्यू) प्रोटोकॉल का एक विशिष्ट उदाहरण है, जिसमें भेजने की प्रक्रिया रिसीवर से पावती (डेटा नेटवर्क) (एसीके) पैकेट प्राप्त किए बिना भी विंडो आकार द्वारा निर्दिष्ट कई डेटा ढांचा भेजना जारी रखती है। यह ट्रांसमिट विंडो आकार के साथ सामान्य स्लाइडिंग विंडो प्रोटोकॉल का एक विशेष मामला है N और 1 का विंडो आकार प्राप्त करें। यह संचारित कर सकता है N ACK की आवश्यकता से पहले सहकर्मी को फ्रेम।

रिसीवर प्रक्रिया अगले फ्रेम के अनुक्रम संख्या पर नज़र रखती है जिसे वह प्राप्त करने की उम्मीद करता है। यह ऐसे किसी भी फ्रेम को हटा देगा जिसमें सटीक अनुक्रम संख्या नहीं है जिसकी वह अपेक्षा करता है (या तो एक डुप्लिकेट फ्रेम जिसे उसने पहले ही स्वीकार कर लिया है, या एक आउट-ऑफ-ऑर्डर फ्रेम जिसे वह बाद में प्राप्त करने की उम्मीद करता है) और अंतिम सही इन-ऑर्डर फ्रेम के लिए एक एसीके भेजेगा। एक बार जब प्रेषक अपनी विंडो में सभी फ़्रेम भेज देता है, तो यह पता लगाएगा कि पहले खोए हुए फ़्रेम के बाद से सभी फ़्रेम बकाया हैं, और रिसीवर प्रक्रिया से प्राप्त अंतिम ACK के अनुक्रम संख्या पर वापस जाएगा और उस फ़्रेम से शुरू करके अपनी विंडो को भर देगा और प्रक्रिया को फिर से जारी रखेगा।

गो-बैक-एन एआरक्यू रुकें और प्रतीक्षा करें ARQ की तुलना में कनेक्शन का अधिक कुशल उपयोग है, क्योंकि प्रत्येक पैकेट के लिए पावती की प्रतीक्षा करने के विपरीत, कनेक्शन अभी भी पैकेट भेजे जाने के दौरान उपयोग किया जा रहा है। दूसरे शब्दों में, उस समय के दौरान जो अन्यथा प्रतीक्षा में व्यतीत होता, अधिक पैकेट भेजे जा रहे हैं। हालाँकि, इस पद्धति के परिणामस्वरूप फ़्रेम को कई बार भेजना पड़ता है - यदि कोई फ़्रेम खो गया है या क्षतिग्रस्त हो गया है, या उन्हें स्वीकार करने वाला ACK खो गया है या क्षतिग्रस्त हो गया है, तो वह फ़्रेम और सेंड विंडो में निम्नलिखित सभी फ़्रेम (भले ही वे त्रुटि के बिना प्राप्त हुए हों) फिर से भेजे जाएंगे। इससे बचने के लिए चयनात्मक दोहराएँ ARQ का इस्तेमाल किया जा सकता है।

स्यूडोकोड
ये उदाहरण अनुक्रम और अनुरोध संख्याओं की अनंत संख्या मानते हैं। एन := विंडो का आकार आरएन:= अनुरोध संख्या एसएन: = अनुक्रम संख्या एसबी := अनुक्रम आधार एसएम:= अनुक्रम अधिकतम 'फ़ंक्शन' रिसीवर 'है' आरएन := 0 निम्नलिखित हमेशा के लिए करें: 'यदि' पैकेट प्राप्त हुआ = Rn और पैकेट त्रुटि रहित है 'तब' पैकेट स्वीकार करें और इसे उच्च परत पर भेजें आरएन := आरएन + 1 'अन्य' मना पैकेट आरएन के लिए अनुरोध भेजें 'फ़ंक्शन' प्रेषक 'है' एसबी := 0 एसएम := एन + 1 निम्नलिखित चरणों को हमेशा दोहराएँ: 'यदि' आपको एक अनुरोध संख्या प्राप्त होती है जहां Rn > Sb 'तो' एसएम:= (एसएम − एसबी) + आरएन एसबी := आरएन 'यदि' कोई पैकेट ट्रांसमिशन में नहीं है 'तो' एक पैकेट संचारित करें जहां Sb ≤ Sn ≤ sm। पैकेट क्रम से प्रसारित होते हैं।

विंडो का आकार चुनना (एन)
किसी मूल्य का चयन करते समय कुछ बातें ध्यान में रखनी चाहिए N:


 * 1) प्रेषक को बहुत तेजी से संचारित नहीं करना चाहिए. N पैकेट को संसाधित करने की रिसीवर की क्षमता से बंधा होना चाहिए।
 * 2) N अनुक्रम संख्याओं की संख्या से छोटी होनी चाहिए (यदि उन्हें शून्य से क्रमांकित किया गया है N)  किसी भी पैकेट (कोई डेटा या ACK पैकेट) गिराए जाने की स्थिति में ट्रांसमिशन को सत्यापित करने के लिए। # (1) और (2) में प्रस्तुत सीमाओं को देखते हुए चुनें N संभव सबसे बड़ी संख्या होना।

यह भी देखें

 * विश्वसनीय डेटा स्थानांतरण
 * पाइपलाइन (सॉफ्टवेयर)
 * स्वचालित दोहराव अनुरोध
 * कम्प्यूटर नेट्वर्किंग
 * चयनात्मक दोहराएँ ARQ

बाहरी संबंध

 * Go-Back-N ARQ demonstration in a Java applet

ARQ-Protokoll Automatic repeat request