Download presentation
Presentation is loading. Please wait.
1
IEEE 802.21 MEDIA INDEPENDENT HANDOVER DCN: 21-08-0109-02-0000
Title: MIH State Machines Figures Date Submitted: June 29, 2008 Authors or Source(s): Y. Alice Cheng Abstract: This document contains the updates on state machine figures for SB recirc 4. (Contribution : )
2
IEEE 802.21 presentation release statements
This document has been prepared to assist the IEEE Working Group. It is offered as a basis for discussion and is not binding on the contributing individual(s) or organization(s). The material in this document is subject to change in form and content after further study. The contributor(s) reserve(s) the right to add, amend or withdraw material contained herein. The contributor grants a free, irrevocable license to the IEEE to incorporate material contained in this contribution, and any modifications thereof, in the creation of an IEEE Standards publication; to copyright in the IEEE’s name any IEEE Standards publication even though it may include portions of this contribution; and at the IEEE’s sole discretion to permit others to reproduce in whole or in part the resulting IEEE Standards publication. The contributor also acknowledges and accepts that this contribution may be made public by IEEE The contributor is familiar with IEEE patent policy, as outlined in Section 6.3 of the IEEE-SA Standards Board Operations Manual < and in Understanding Patent Issues During IEEE Standards Development
3
Transaction Timer Sate Machine (Fig 22)
Initialize ONE_SECOND UCT Tick == TRUE TICK dec(TransactionStopWhen); dec(RetransmissionWhen); Tick=FALSE;
4
Transaction Source State Machine (Fig 23)
INIT TransactionStatus=ONGOING; ResponseReceived=FALSE; TransactionStopWhen=TransactionLifetime; Opcode=MsgOut.OPCODE; Transmit(MsgOut); StartAckRequestor=(MsgOut.ACK-Req==1?TRUE:FALSE); TID=MsgOut.TID; MyMihfID=SrcMIHF_ID(MsgOut); PeerMihfID= DstMIHF_ID(MsgOut); MsgOutAvail Opcode==Indication && StartAckRequestor Opcode==Request (Opcode==Indication && !StartAckRequestor) || Opcode==Response WAIT_RESPONSE_MSG !ResponseReceived && TransactionStopWhen== 0 ResponseReceived && TransactionStopWhen==0 MsgInAvail WAIT_ACK AckRequestorStatus=ONGOING; FAILURE TransactionStatus=FAILURE; PROCESS_MSG StartAckResponder= (MsgIn.ACK-Req == 1 ? TRUE : FALSE); Process(MsgIn); MsgInAvail=FALSE; ResponseReceived=TRUE; AckRequestorStatus==FAILURE AckRequestorStatus==SUCCESS SUCCESS TransactionStatus=SUCCESS;
5
Transaction Destination State Machine (Fig 24)
INIT TransactionStatus = ONGOING; (Opcode,MID,TID)=MsgIn.(OPCODE,MID,TID); TransactionStopWhen=TransactionLifetime; PeerMihfID=SrcMIHF_ID(MsgIn); MyMihfID=DstMIHF_ID(MsgIn); StartAckResponder=(MsgIn.ACK-Req==1 ? TRUE : FALSE); MsgOutAvail=Process(MsgIn); MsgInAvail=FALSE; MsgInAvail Opcode==Request WAIT_RESPONSE_PRM TransactionStopWhen==0 FAILURE TransactionStatus = FAILURE; Opcode==Indication || Opcode ==Response MsgOutAvail&& (!StartAckResponder || MsgOut.ACK-Rsp==1) AckRequestorStatus==FAILURE SEND_RESPONSE StartAckRequestor=(MsgOut.ACK-Req==1 ? TRUE : FALSE); AckRequestorStatus=ONGOING; Transmit(MsgOut); !StartAckRequestor || AckRequestorStatus==SUCCESS SUCCESS TransactionStatus = SUCCESS;
6
ACK Requestor State Machine (Fig 25)
StartAckRequestor INIT RtxCtr=0; UCT RetransmissionWhen==0&& RtxCtr<MaxRtxCtr WAIT_ACK RetransmissionWhen=RetransmissionInterval; RETRANSMIT Transmit(MsgOut); RtxCtr++; UTC MsgInAvail&& MsgIn.ACK-Rsp==1 RetransmissionWhen==0 && RtxCtr==MaxRtxCtr SUCCESS AckRequestorStatus=TRUE; FAILURE AckRequestorStatus=FALSE;
7
ACK Responder State Machine (Fig 26)
StartAckResponder INIT ACK.ACK-Req=0; ACK.ACK-Rsp=1; ACK.(MID, TID)=(MID,TID); SetMIHF_ID(ACK, MyMihfID, PeerMihfID); !MsgOutAvail MsgOutAvail MsgInAvail RETURN_ACK Transmit(ACK); MsgInAvail=FALSE; MsgOutAvail PIGGYBACKING MsgOut.ACK-Rsp=1; DUP=MsgOut; MsgInAvail RETURN_DUPLICATE Transmit(DUP); MsgInAvail=FALSE; MsgInAvail
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.