Ағылшыншамен салыстырыңыз: абзацты басыңыз — түпнұсқа терезеде ашылады. Абзац астындағы EN түймесі оны мәтін ішінде көрсетеді.
Кіріспе
Екі бағытты байланыста кадр қабылданғанда қабылдаушы күтеді және бақылау кадрын (жауап немесе ACK) жөнелтушіге бірден жібермейді. Қабылдаушы өзінің желілік қабаты келесі дерек пакетін жібергенше күтеді. Кейіннен жауап осы шығарылатын дерек фрейміне қоса тіркеледі. Жауапты уақытша кешіктіріп, оны келесі шығарылатын дерек фреймімен біріктіру әдісі "пиггибэкинг" деп аталады.
In two way communication, whenever a frame is received, the receiver waits and does not send the control frame (acknowledgment or ACK) back to the sender immediately. The receiver waits until its network layer passes in the next data packet. The delayed acknowledgment is then attached to this outgoing data frame. This technique of temporarily delaying the acknowledgment so that it can be hooked with next outgoing data frame is known as piggybacking.
Жұмыс принципі
Piggybacking деректері OSI моделінде қолданылатын жылжымалы терезе протоколдарынан сәл өзгеше. Деректер фреймінің өзінде растау үшін қосымша бір өріс (яғни ACK) қосады. A тарап B тарапқа деректерді жібергісі келгенде, PUSH-пен бірге қосымша ACK ақпаратын да жібереді. Мысалы, егер A B-ден 12340-тан бастап (12344-ке дейін) 5 байт алған болса, A ағымдағы PUSH пакетіне "ACK 12345" деп қояды, осылайша B-ге 12344-ке дейінгі байттарды алғанын және келесі жолы 12345 нөміріндегі деректерді күтетінін хабарлайды. (ACK нөмірі – екінші тарап жіберуге тиіс деректердің келесі реттік нөмірі.) Деректерді жіберуді басқарудың үш ережесі бар. Егер A станциясы деректерді де, растауды да жібергісі келсе, екі өрісті де сақтайды. Егер A станциясы растауды ғана жібергісі келсе, қысқа уақыт күтіп, дерек фреймін жіберу қажеттігін анықтағаннан кейін, ACK фреймін жеке жіберуді немесе оған дерек фреймін қосуды шешеді. Егер A станциясы тек деректерді жібергісі келсе, бұрынғы растау өрісі деректермен бірге жіберіледі. B станциясы осы қайталама ACK фреймін қабылдағанда назарға алмайды.
Piggybacking data is a bit different from sliding window protocols used in the OSI model. In the data frame itself, we incorporate one additional field for acknowledgment (i. e., ACK). Whenever party A wants to send data to party B, it will carry additional ACK information in the PUSH as well. For example, if A has received 5 bytes from B, with a sequence number starting from 12340 (through 12344), A will place "ACK 12345" as well in the current PUSH packet to inform B it has received the bytes up to sequence number 12344 and expects to see 12345 next time. (ACK number is the next sequence number of the data to be pushed by the other party.) Three rules govern the piggybacking data transfer. If station A wants to send both data and an acknowledgment, it keeps both fields there. If station A wants to send the acknowledgment, after a short period of time to see whether a data frame needs to be sent, then decide whether send an ACK frame alone or attach a data frame with it. If station A wants to send just the data, then the previous acknowledgment field is sent along with the data. Station B simply ignores this duplicate ACK frame upon receiving.