Скачать презентацию Transport Layer 3 -1 Transport Layer 3 Скачать презентацию Transport Layer 3 -1 Transport Layer 3

8631b0dd97b1e47cc87a11e3034521a5.ppt

  • Количество слайдов: 108

Transport Layer 3 -1 Transport Layer 3 -1

Transport Layer 3 -2 Transport Layer 3 -2

Transport Layer 3 -3 Transport Layer 3 -3

Transport Layer 3 -4 Transport Layer 3 -4

Transport Layer 3 -5 Transport Layer 3 -5

Transport Layer 3 -6 Transport Layer 3 -6

Transport Layer 3 -7 Transport Layer 3 -7

Transport Layer 3 -8 Transport Layer 3 -8

Transport Layer 3 -9 Transport Layer 3 -9

Transport Layer 3 -10 Transport Layer 3 -10

Transport Layer 3 -11 Transport Layer 3 -11

Transport Layer 3 -12 Transport Layer 3 -12

Transport Layer 3 -13 Transport Layer 3 -13

Transport Layer 3 -14 Transport Layer 3 -14

Transport Layer 3 -15 Transport Layer 3 -15

Transport Layer 3 -16 Transport Layer 3 -16

Transport Layer 3 -17 Transport Layer 3 -17

Transport Layer 3 -18 Transport Layer 3 -18

Transport Layer 3 -19 Transport Layer 3 -19

Transport Layer 3 -20 Transport Layer 3 -20

Transport Layer 3 -21 Transport Layer 3 -21

Transport Layer 3 -22 Transport Layer 3 -22

Transport Layer 3 -23 Transport Layer 3 -23

Transport Layer 3 -24 Transport Layer 3 -24

Transport Layer 3 -25 Transport Layer 3 -25

Transport Layer 3 -26 Transport Layer 3 -26

Transport Layer 3 -27 Transport Layer 3 -27

Transport Layer 3 -28 Transport Layer 3 -28

Transport Layer 3 -29 Transport Layer 3 -29

Transport Layer 3 -30 Transport Layer 3 -30

Transport Layer 3 -31 Transport Layer 3 -31

Wait for call 0 from above Wait for ACK or NAK 1 Wait for Wait for call 0 from above Wait for ACK or NAK 1 Wait for ACK or NAK 0 Wait for call 1 from above Transport Layer 3 -32

rdt_rcv(rcvpkt) && notcorrupt(rcvpkt) && has_seq 0(rcvpkt) rdt_rcv(rcvpkt) && (corrupt(rcvpkt) extract(rcvpkt, data) deliver_data(data) sndpkt = rdt_rcv(rcvpkt) && notcorrupt(rcvpkt) && has_seq 0(rcvpkt) rdt_rcv(rcvpkt) && (corrupt(rcvpkt) extract(rcvpkt, data) deliver_data(data) sndpkt = make_pkt(ACK, chksum) udt_send(sndpkt) rdt_rcv(rcvpkt) && (corrupt(rcvpkt) sndpkt = make_pkt(NAK, chksum) udt_send(sndpkt) Wait for 0 from below Wait for 1 from below sndpkt = make_pkt(ACK, chksum) udt_send(sndpkt) extract(rcvpkt, data) deliver_data(data) sndpkt = make_pkt(ACK, chksum) udt_send(sndpkt) Transport Layer 3 -33

Transport Layer 3 -34 Transport Layer 3 -34

Transport Layer 3 -35 Transport Layer 3 -35

Wait for call 0 from above Wait for ACK 0 Wait for 0 from Wait for call 0 from above Wait for ACK 0 Wait for 0 from below Transport Layer 3 -36

Transport Layer 3 -37 Transport Layer 3 -37

rdt_send(data) rdt_rcv(rcvpkt) && ( corrupt(rcvpkt) || is. ACK(rcvpkt, 1) ) sndpkt = make_pkt(0, data, rdt_send(data) rdt_rcv(rcvpkt) && ( corrupt(rcvpkt) || is. ACK(rcvpkt, 1) ) sndpkt = make_pkt(0, data, checksum) udt_send(sndpkt) start_timer rdt_rcv(rcvpkt) Wait for ACK 0 Wait for call 0 from above timeout udt_send(sndpkt) start_timer stop_timer timeout udt_send(sndpkt) start_timer rdt_rcv(rcvpkt) && ( corrupt(rcvpkt) || is. ACK(rcvpkt, 0) ) Wait for ACK 1 Wait for call 1 from above rdt_rcv(rcvpkt) rdt_send(data) sndpkt = make_pkt(1, data, checksum) udt_send(sndpkt) start_timer Transport Layer 3 -38

Transport Layer 3 -39 Transport Layer 3 -39

Transport Layer 3 -40 Transport Layer 3 -40

Transport Layer 3 -41 Transport Layer 3 -41

Transport Layer 3 -42 Transport Layer 3 -42

Transport Layer 3 -43 Transport Layer 3 -43

Transport Layer 3 -44 Transport Layer 3 -44

Transport Layer 3 -45 Transport Layer 3 -45

Transport Layer 3 -46 Transport Layer 3 -46

if (nextseqnum < base+N) { sndpkt[nextseqnum] = make_pkt(nextseqnum, data, chksum) udt_send(sndpkt[nextseqnum]) if (base == if (nextseqnum < base+N) { sndpkt[nextseqnum] = make_pkt(nextseqnum, data, chksum) udt_send(sndpkt[nextseqnum]) if (base == nextseqnum) start_timer nextseqnum++ } else refuse_data(data) base = getacknum(rcvpkt)+1 If (base == nextseqnum) stop_timer else start_timer Transport Layer 3 -47

udt_send(sndpkt) rdt_rcv(rcvpkt) && notcurrupt(rcvpkt) && hasseqnum(rcvpkt, expectedseqnum) extract(rcvpkt, data) deliver_data(data) sndpkt = make_pkt(expectedseqnum, ACK, udt_send(sndpkt) rdt_rcv(rcvpkt) && notcurrupt(rcvpkt) && hasseqnum(rcvpkt, expectedseqnum) extract(rcvpkt, data) deliver_data(data) sndpkt = make_pkt(expectedseqnum, ACK, chksum) udt_send(sndpkt) expectedseqnum++ Transport Layer 3 -48

Transport Layer 3 -49 Transport Layer 3 -49

Transport Layer 3 -50 Transport Layer 3 -50

Transport Layer 3 -51 Transport Layer 3 -51

Transport Layer 3 -52 Transport Layer 3 -52

Transport Layer 3 -53 Transport Layer 3 -53

Transport Layer 3 -54 Transport Layer 3 -54

Transport Layer 3 -55 Transport Layer 3 -55

Transport Layer 3 -56 Transport Layer 3 -56

Transport Layer 3 -57 Transport Layer 3 -57

Seq=4 2, ACK = 79, da ta = ‘C’ ta = 3, da 4 Seq=4 2, ACK = 79, da ta = ‘C’ ta = 3, da 4 ‘C’ K= , AC q=79 Se Seq=4 3, ACK =80 Transport Layer 3 -58

Transport Layer 3 -59 Transport Layer 3 -59

Transport Layer 3 -60 Transport Layer 3 -60

Transport Layer 3 -61 Transport Layer 3 -61

Transport Layer 3 -62 Transport Layer 3 -62

Transport Layer 3 -63 Transport Layer 3 -63

Transport Layer 3 -64 Transport Layer 3 -64

Transport Layer 3 -65 Transport Layer 3 -65

Transport Layer 3 -66 Transport Layer 3 -66

Seq=9 2, 8 by Seq=9 tes da t a 100 = ACK Seq=9 2, Seq=9 2, 8 by Seq=9 tes da t a 100 = ACK Seq=9 2, 8 by tes da 100 = ACK 2, 8 by tes da ta Seq= 100, 2 0 byte s data 00 =1 20 CK CK=1 A A Seq=9 ta 2, 8 by tes da t a 20 K=1 AC Transport Layer 3 -67

Seq=9 2, 8 by Seq=1 tes da t a 100 CK= A 00, 20 Seq=9 2, 8 by Seq=1 tes da t a 100 CK= A 00, 20 bytes data 120 = ACK Transport Layer 3 -68

Transport Layer 3 -69 Transport Layer 3 -69

Transport Layer 3 -70 Transport Layer 3 -70

resend seq X 2 Transport Layer 3 -71 resend seq X 2 Transport Layer 3 -71

Transport Layer 3 -72 Transport Layer 3 -72

Transport Layer 3 -73 Transport Layer 3 -73

Transport Layer 3 -74 Transport Layer 3 -74

Transport Layer 3 -75 Transport Layer 3 -75

Transport Layer 3 -76 Transport Layer 3 -76

Transport Layer 3 -77 Transport Layer 3 -77

FIN ACK Transport Layer 3 -78 FIN ACK Transport Layer 3 -78

FIN ACK Transport Layer 3 -79 FIN ACK Transport Layer 3 -79

Transport Layer 3 -80 Transport Layer 3 -80

Transport Layer 3 -81 Transport Layer 3 -81

Transport Layer 3 -82 Transport Layer 3 -82

Transport Layer 3 -83 Transport Layer 3 -83

Transport Layer 3 -84 Transport Layer 3 -84

Transport Layer 3 -85 Transport Layer 3 -85

Transport Layer 3 -86 Transport Layer 3 -86

Transport Layer 3 -87 Transport Layer 3 -87

Transport Layer 3 -88 Transport Layer 3 -88

Transport Layer 3 -89 Transport Layer 3 -89

Transport Layer 3 -90 Transport Layer 3 -90

Transport Layer 3 -91 Transport Layer 3 -91

Transport Layer 3 -92 Transport Layer 3 -92

Transport Layer 3 -93 Transport Layer 3 -93

Transport Layer 3 -94 Transport Layer 3 -94

Transport Layer 3 -95 Transport Layer 3 -95

one segme nt two segme nts four segme nts Transport Layer 3 -96 one segme nt two segme nts four segme nts Transport Layer 3 -96

Transport Layer 3 -97 Transport Layer 3 -97

Transport Layer 3 -98 Transport Layer 3 -98

Transport Layer 3 -99 Transport Layer 3 -99

Transport Layer 3 -100 Transport Layer 3 -100

Transport Layer 3 -101 Transport Layer 3 -101

Transport Layer 3 -102 Transport Layer 3 -102

Transport Layer 3 -103 Transport Layer 3 -103

Transport Layer 3 -104 Transport Layer 3 -104

Transport Layer 3 -105 Transport Layer 3 -105

Transport Layer 3 -106 Transport Layer 3 -106

Transport Layer 3 -107 Transport Layer 3 -107

Transport Layer 3 -108 Transport Layer 3 -108