11State DiagramsEE 122: Intro to Communication NetworksFall 2007 (WF 4-5:30 in Cory 277)Vern PaxsonTAs: Lisa Fowler, Daniel Killebrew & Jorge Ortizhttp://inst.eecs.berkeley.edu/~ee122/Materials with thanks to Jennifer Rexford, Ion Stoica,and colleagues at Princeton and UC Berkeley2State Diagrams• For complicated protocols, operation depends critically on current mode of operation• Important tool for capture this: state diagram• At any given time, protocol endpoint is in a particular state– Dictates its current behavior• Endpoint transitions to other states on events– Interaction with lower layero Reception of certain types of packets– Interaction with upper layero New data arrives to send, or received data is consumed– Timers23TCP State Diagram4356client sendsother commandsor or or or errors on RCPT TO:orororor RCPT TO: 2xx closedclosedclosedclosed beginbeginbeginbeginconnectionestablishment2xxconnectionestablishment4xxwaitwaitwaitwaitclient sendsothercommandsHELOSMTP State DiagramServer Statesenvelopeenvelopeenvelopeenvelopecreated;created;created;created;no recipientsno recipientsno recipientsno recipientsMAIL FROM:2xxrecipientsrecipientsrecipientsrecipientssetsetsetsetRCPT TO:2xxclient sendsother commandsorororor errors onMAIL FROM: client sendsother commandsor or or or errors onRCPT TO: RSETwritingwritingwritingwritingmailmailmailmailDATAtextready to ready to ready to ready to deliverdeliverdeliverdeliver<CRLF>.<CRLF>RSETattempt toattempt toattempt toattempt todeliverdeliverdeliverdelivererrors47SMTP State DiagramCommand Stateswaitwaitwaitwaitsuccesssuccesssuccesssuccess
View Full Document