summaryrefslogtreecommitdiff
path: root/content/Content/03_StudyGuideActivitiesAndAssessments/03_Unit03/Section 2 UDP and TCP.html
blob: 189dda2a08248f0840f896d5e2b6093a2c8c70ea (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
<!DOCTYPE html>
<html lang="en"><head>
    <!-- Required meta tags -->
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">

    <!-- Bootstrap CSS -->
    <link rel="stylesheet" href="/shared/LCS_HTML_Templates/Athabasca_Template_2021/Template_Files/sample_pages/../../_assets/thirdpartylib/bootstrap-4.3.1/css/bootstrap.min.css">
    <!-- Font Awesome CSS -->
    <link rel="stylesheet" href="/shared/LCS_HTML_Templates/Athabasca_Template_2021/Template_Files/sample_pages/../../_assets/thirdpartylib/fontawesome-free-5.9.0-web/css/all.min.css">
    <!-- Template CSS -->
    <link rel="stylesheet" href="/shared/LCS_HTML_Templates/Athabasca_Template_2021/Template_Files/sample_pages/../../_assets/css/styles.min.css">
    <link rel="stylesheet" href="/shared/LCS_HTML_Templates/Athabasca_Template_2021/Template_Files/sample_pages/../../_assets/css/custom.css">
    <title>Learning Objectives</title>
</head><body><div class="container-fluid">
<div class="row">
<div class="offset-sm-1 col-sm-10">
<h2>Learning Objectives</h2>
<p>After successfully completing this unit, you should be able to</p>
<ol>
<li>explain how UDP and TCP work.</li>
<li>describe the differences between UDP and TCP.</li>
<li>explain how data errors can be detected.</li>
<li>explain how reliable data transfer can be achieved at the transport layer.</li>
</ol>
<h2>Learning Tasks</h2>
<p>Required:</p>
<ol>
<li>Watch the <a href="03_Documents03/comp347u3s2.pdf?isCourseFile=true" target="_self">slideshow</a> for this section.</li>
<li>Study the following sections in the textbook:</li>
</ol>
<div class="padding-left-block">
<div class="padding-left-block">
<div class="padding-left-block">
<p>3.3 Connectionless Transport: UDP<br>3.4 Principles of Reliable Data Transfer<br>3.5 Connection-Oriented Transport: TCP</p>
</div>
</div>
</div>
<h2>Terms and Topics</h2>
<div class="row">
<div class="col-11">
<p><strong>Section 2 – UDP and TCP </strong></p>
</div>
<div class="col-1"></div>
</div>
<div class="row">
<div class="col-6">
<p>UDP segment structure<br>UDP checksum<br>1s complement<br>End-end principle in system design<br>Principles of reliable data transfer<br>Reliable data transfer principle<br>Unidirectional data transfer<br>Bidirectional data transfer<br>First state machine (FSM)<br>Positive acknowledgement<br>Negative acknowledgement<br>Automatic Request reQuest (ARQ) protocols<br>Stop-and-wait protocol<br>Duplicate data packets<br>Sequence number in packets<br>Duplicate ACKs<br>Use of countdown timer<br>Alternating-bit protocol<br>RDT1.0<br>RDT2.0, RDT2.1 and RDT2.2<br>RDT3.0<br>Pipelining<br>Pipelined reliable data transfer protocols<br>Utilization of communication channel<br>Go-back-N (GBN) protocol<br>Selective repeat (SR) protocol<br>Sliding-window protocol<br>Window size in sliding window protocol</p>
</div>
<div class="col-6">
<p>full duplex service<br>three-way handshake<br>TCP connection sender buffer<br>Maximum segment size (MSS)<br>Maximum transmission unit (MTU)<br>TCP segment structure<br>Source and destination port numbers<br>Internet checksum field<br>Sequence number field<br>Acknowledge number field<br>Receive window<br>Header length field<br>Options field<br>Flag field<br>ACK bit<br>RST bit<br>SYN bit<br>PSH bit<br>URG bit<br>Urgent data pointer field<br>Cumulative acknowledgement<br>Exponential weighted moving average (EWMA)<br>Fast retransmit<br>Flow control service<br>Congestion control service<br>Receive window<br>TCP connection control management<br>SYNACK segment<br>TCP states</p>
</div>
</div>
<h2>Leading Questions</h2>
<ol>
<li>How is a transport layer segment formatted? How is each of the fields created?</li>
<li>Why is UDP called a connectionless transport protocol?</li>
<li>Why is TCP called a connection-oriented transport protocol?</li>
<li>What advantages does UDP have over TCP?</li>
<li>What transport protocols are used by the following application protocols: SMTP, Telnet, HTTP, FTP, NFS, SNMP, RIP, and DNS?</li>
<li>How is a UDP segment formatted?</li>
<li>What is checksum? How is checksum calculated in UDP?</li>
<li>What is reliable data transfer? What is unidirectional data transfer? What is bidirectional data transfer?</li>
<li>What do the sender and the receiver need to do in order to achieve reliable data transfer over a perfectly reliable channel?</li>
<li>How could reliable data transfer be achieved over a channel with bit errors?</li>
<li>How could reliable data transfer be achieved over a lossy channel with bit errors?</li>
<li>Protocol rdt3.0 is a stop-and-wait data transfer protocol with poor performance. What techniques can be used to improve its performance?</li>
<li>What are the two basic approaches to pipelined error recovery?</li>
<li>What is the key feature of a Go-Back-N (GBN) protocol?</li>
<li>Why is the GBN protocol also called a sliding-window protocol?</li>
<li>What is the key feature of the selective repeat protocol? What problem is it intended to solve?</li>
<li>Why is TCP said to be point-to-point?</li>
<li>What is a three-way handshake?</li>
<li>What fields does a TCP segment have, and what role is assigned to each?</li>
<li>The Internet Protocol (IP) is an unreliable best-effort protocol, which runs under TCP. How does TCP provide reliable data transfer service over the unreliable IP?</li>
<li>Why does TCP need flow control?</li>
<li>How is a TCP connection managed?</li>
<li>What are the various TCP states?</li>
</ol>
</div>
<div class="col-12"><footer><!-- <p>© [Client] [Year]</p> --> <!-- <p><img src="/shared/LCS_HTML_Templates/Athabasca_Template_2021/_assets/img/logo.png" alt="logo"></p> --></footer></div>
</div>
</div>
<p>
<script src="/shared/LCS_HTML_Templates/Athabasca_Template_2021/Template_Files/sample_pages/../../_assets/thirdpartylib/jquery/jquery-3.4.1.min.js">
        </script>
<script src="/shared/LCS_HTML_Templates/Athabasca_Template_2021/Template_Files/sample_pages/../../_assets/thirdpartylib/popper-js/popper.min.js">
        </script>
<script src="/shared/LCS_HTML_Templates/Athabasca_Template_2021/Template_Files/sample_pages/../../_assets/thirdpartylib/bootstrap-4.3.1/js/bootstrap.min.js">
        </script>
</p>
<!-- Template JavaScript -->
<p>
<script src="/shared/LCS_HTML_Templates/Athabasca_Template_2021/Template_Files/sample_pages/../../_assets/js/scripts.min.js"></script>
<script src="/shared/LCS_HTML_Templates/Athabasca_Template_2021/Template_Files/sample_pages/../../_assets/js/custom.js"></script>
</p></body></html>