Upload
abhay-dharamshi
View
40
Download
5
Tags:
Embed Size (px)
Citation preview
컴퓨터공학과Data Communications and Networking
1
Chapter 22 Transport Layer22.1 Duties
22.2 Connection
22.3 The OSI Transport Protocol
컴퓨터공학과Data Communications and Networking
2
Transport Layer(cont’d) Transport layer acts as a liaison between the upper-layer prot
ocols and the lower-layer protocols. To make this separation possible, the transport layer is indepen
dent of the physical network. Examples: TCP, UDP, …
An internetwork
컴퓨터공학과Data Communications and Networking
3
22.1 Duties of the Transport Layer Transport layer concept
컴퓨터공학과Data Communications and Networking
4
Duties of the Transport Layer(cont’d) Transport layer compared with data link layer
The services of the transport layer are similar to those of the data link layer.
컴퓨터공학과Data Communications and Networking
5
Duties of the Transport Layer(cont’d) The services provided by transport layer protocols:
컴퓨터공학과Data Communications and Networking
6
End-to-End Delivery The network layer treats each packet as an independent entry,
even those belonging to a single message.
The transport layer oversees the end-to-end (source-to-destination) delivery of an entire message.
컴퓨터공학과Data Communications and Networking
7
Addressing Levels of Service Access Points
Data link level protocols need to know which two computers within a network are communicating.
• MAC address Network level protocols need to know which two computers
within an internet are communicating.
• IP address Transport level protocols need to know which upper-layer
protocols are communicating.
• Port
컴퓨터공학과Data Communications and Networking
8
Addressing (cont’d) In transport layer, service access points identifies upper-layer
services (applications).
컴퓨터공학과Data Communications and Networking
9
Reliable Delivery Aspects of reliable delivery
컴퓨터공학과Data Communications and Networking
10
Reliable Delivery(cont’d) Error Control
Mechanisms for error control are based on error detection and retransmission.
Error detections are performed using algorithms implemented in software, such as checksum.
We already have error handling at the data link layer, why do we need it at the transport layer?
컴퓨터공학과Data Communications and Networking
11
Reliable Delivery(cont’d) Sequence Control
What is important is that segments are properly reassembled at the destination.
Segmentation Reassembly
컴퓨터공학과Data Communications and Networking
12
Reliable Delivery(cont’d) Segmentation and Reassembly
Transport layer adds a sequence number at each segment. This number indicates the order for reassembly. Each segment carries a field that indicates whether it is the final
segment or middle segment of a transmission.
Concatenation and Separation When the size of the data unit belonging to a single session is s
o small that several units can fit together into a single datagram.
A sequence number at each unit allows correct separation at the destination.
컴퓨터공학과Data Communications and Networking
13
Reliable Delivery(cont’d) Loss Control
Sequence numbers allow the receiver’s transport layer protocol to identify any missing segments and request redelivery.
컴퓨터공학과Data Communications and Networking
14
Reliable Delivery(cont’d) Duplication Control
Sequence numbers allow the receiver to identify and discard duplicate segments.
컴퓨터공학과Data Communications and Networking
15
Flow Control Flow control at this layer is performed end-to-end rather than
across a single link.
A sliding window is used to make data transmission more efficient as well as to control the flow of data so that the receiver does not become overwhelmed.
Some points about sliding windows at the transport layer: The sender does not have to send a full window’s worth of data. An acknowledgment can expand the size of the window based
on the sequence number of the acknowledged data segment. The size of the window can be increased or decreased by the re
ceiver. The receiver can send an acknowledgment at anytime.
컴퓨터공학과Data Communications and Networking
16
Flow Control(cont’d) Sliding window
컴퓨터공학과Data Communications and Networking
17
Flow Control(cont’d) Sliding windows used at the transport layer are usually byte
oriented rather than frame oriented.
컴퓨터공학과Data Communications and Networking
18
Multiplexing Upward Multiplexing
The transport layer can send several transmissions bound for the same destination along the same path.
It is useful when the underlying networks have high throughput.
Downward Multiplexing It is useful when the underlying networks have low or slow capaci
ty(e.g., X.25’s three bit sequence code).
컴퓨터공학과Data Communications and Networking
19
22.2 Connection End-to-end delivery can be accomplished in either of two modes:
Connection-oriented transmission has three stages:
• connection establishment,
• data transfer,
• connection termination.
Connectionless transmission
컴퓨터공학과Data Communications and Networking
20
Connection(cont’d) Connection establishment(three-way handshaking)
컴퓨터공학과Data Communications and Networking
21
Connection(cont’d) Connection termination(three-way handshaking)
Termination at TCP: four-way handshaking
컴퓨터공학과Data Communications and Networking
22
22.3 The OSI Transport Protocol To avoid redundant services, the OSI model defines five
types of transport classes: TP0: Simple class TP1: Basic error recovery class TP2: Multiplexing class TP3: Error recovery and multiplexing class TP4: Error detection and recovery class
컴퓨터공학과Data Communications and Networking
23
The OSI Transport Protocol(cont’d) Which class is used depends on the type of service required
by the upper layers. TP0 and TP2 are used with perfect network layers.
• In the perfect network layer, the number of packets that are lost or damaged is almost zero.
TP1 and TP3 are used with residual-error network layers.• In the residual-error network layer, some percentage of errors are
never corrected. TP4 is used with unreliable network layers.
• TP4 provides fully reliable, full-duplex, connection-oriented services similar to TCP.
컴퓨터공학과Data Communications and Networking
24
The OSI Transport Protocol(cont’d) TPDU(Transport Protocol Data Unit)
Length : Total number of bytes (excluding the length field itself) in the TPDU.
Fixed Parameters :• Code : CR, CC, DR, DC, DT(data), ED, AK, EA, RJ, ER• Source and destination reference• Sequence number• Credit allocation : It enables a receiver to tell the sender how man
y more data units may be sent. Variable(Optional) Parameters :
• These parameters are used mostly for management. Data
컴퓨터공학과Data Communications and Networking
25
The OSI Transport Protocol(cont’d) Connection-Oriented and Connectionless Service
The OSI model supports both COTS and CLTS. Connection-oriented model is more commonly used.