Announcement.ppt
《Announcement.ppt》由会员分享,可在线阅读,更多相关《Announcement.ppt(29页珍藏版)》请在麦多课文档分享上搜索。
1、1,Announcement,Project 2 out Much harder than project 1, start early!Homework 2 due next Tuesday,2,Previous Lecture,Reliable transfer protocols rdt 2.0: data corruption - ACK/NAK rdt2.1: ACK/NAK corruption - Seq # in data rdt2.2: a NAK-free protocol - Seq # in ACKs rdt3.0: channels with errors and l
2、oss Retransmission timeout Pipelined protocols Go-back-N Selective repeat,3,Go-Back-N,Sender: k-bit seq # in pkt header (the range of 0 , 2k - 1) “window” of up to N, consecutive unacked pkts allowed,ACK(n): ACKs all pkts up to, including seq # n - “cumulative ACK” may deceive duplicate ACKs (see re
3、ceiver) One timer for all packets in-flight timeout: retransmit all packets in flight,4,Selective repeat: sender, receiver windows,5,Outline,Connection-oriented transport: TCP Overview and segment structure Reliable data transfer Flow control Connection management,6,TCP: Overview RFCs: 793, 1122, 13
4、23, 2018, 2581,full duplex data: bi-directional data flow in same connection MSS: maximum segment size connection-oriented: handshaking (exchange of control msgs) inits sender, receiver state before data exchange flow controlled: sender will not overwhelm receiver,point-to-point: one sender, one rec
5、eiver reliable, in-order byte steam: no “message boundaries” pipelined: TCP congestion and flow control set window size send & receive buffers,7,TCP segment structure,URG: urgent data (generally not used),ACK: ACK # valid,PSH: push data now (generally not used),RST, SYN, FIN: connection estab (setup
6、, teardown commands),# bytes rcvr willing to accept,counting by bytes of data (not segments!),Internet checksum (as in UDP),8,TCP seq. #s and ACKs,Seq. #s: byte stream “number” of first byte in segments data ACKs: seq # of next byte expected from other side cumulative ACK Q: how receiver handles out
7、-of-order segments A: TCP spec doesnt say, - up to implementor,Host A,Host B,Seq=42, ACK=79, data = C,Seq=79, ACK=43, data = C,Seq=43, ACK=80,User types C,host ACKs receipt of echoed C,host ACKs receipt of C, echoes back C,simple telnet scenario,9,TCP Round Trip Time and Timeout,Q: how to set TCP ti
8、meout value? longer than RTT but RTT varies too short: premature timeout unnecessary retransmissions too long: slow reaction to segment loss,Q: how to estimate RTT? SampleRTT: measured time from segment transmission until ACK receipt ignore retransmissions SampleRTT will vary, want estimated RTT “sm
9、oother” average several recent measurements, not just current SampleRTT,10,TCP Round Trip Time and Timeout,EstimatedRTT = (1- )*EstimatedRTT + *SampleRTT,Exponential weighted moving average influence of past sample decreases exponentially fast typical value: = 0.125The weighted average puts more wei
10、ght on recent samples which better reflect the current congestion,11,Example RTT estimation:,12,TCP Round Trip Time and Timeout,Setting the timeout EstimtedRTT plus “safety margin” large variation in EstimatedRTT - larger safety margin first estimate of how much SampleRTT deviates from EstimatedRTT:
11、,TimeoutInterval = EstimatedRTT + 4*DevRTT,DevRTT = (1-)*DevRTT +*|SampleRTT-EstimatedRTT|(typically, = 0.25),Then set timeout interval:,13,Outline,Connection-oriented transport: TCP Overview and segment structure Reliable data transfer Flow control Connection management,14,TCP reliable data transfe
12、r,TCP creates rdt service on top of IPs unreliable service Pipelined segments Cumulative acks TCP uses single retransmission timer,Retransmissions are triggered by: timeout events duplicate acks Initially consider simplified TCP sender:ignore duplicate acks Use only timeout ignore flow control, cong
13、estion control,15,TCP sender events:,data rcvd from app: Create segment with seq # seq # is byte-stream number of first data byte in segment start timer if not already running (think of timer as for oldest unacked segment),timeout: retransmit segment that caused timeout restart timerAck rcvd: If ack
14、nowledges previously unacked segments update what is known to be acked start timer if there are outstanding segments,16,TCP sender (simplified),NextSeqNum = InitialSeqNumSendBase = InitialSeqNumloop (forever) switch(event) event: data received from application above create TCP segment with sequence
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
2000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- ANNOUNCEMENTPPT
