Presentation is loading. Please wait.

Presentation is loading. Please wait.

EEL 5718 Computer Communications

Similar presentations


Presentation on theme: "EEL 5718 Computer Communications"— Presentation transcript:

1 EEL 5718 Computer Communications
Transport Layer Protocols 5:33 AM

2 Transport Protocol Task: Reliable message delivery from end node to another end node via a subnet Transport service is end to end protocol between two systems on the same network 5:33 AM

3 End-to-End Connection
Messages Messages Segments Transport Layer Transport Layer Network Layer Network Layer Network Layer Network Layer Data link Layer Data link Layer Data link Layer Data link Layer End system A End system B Physical Layer Physical Layer Physical Layer Physical Layer Network 5:33 AM

4 Point-to-Point vs. End-to-End
Rigid (solid link) vs. flexible (rubber link) Predictable vs. unpredictable (in terms of round-trip delay) 5:33 AM

5 End-to-end Quality of Service (QoS)
A set of qualitative and quantitative measures that define an acceptable level of performance Reliability: error rate Setup time Delay and delay variations (jitters) Throughput Priority Protection Resilience Security More 5:33 AM

6 Network Network service Application Application Adaptation Function
End-to-end application requirements Network service Application Figure 5.5

7 Issues in Transport Protocol
Issues to be addressed Handling arbitrary message sizes Segmentation/reassembly Reliability and sequencing ARQ protocols Pacing and flow control Sliding window control Congestion control Timing: sequence numbering or time-stamping Addressing Privacy, integrity, and authentication 5:33 AM

8 Addressing Target user specified by:
User identification Usually a host, port number Port represents a particular transport service (TS) user Transport entity identification (e.g., TCP, UDP) Host address An attached network device In an internet, a global internet address Network number Address=<galaxy><star><planet><country><network><host><port> 5:33 AM

9 Finding Addresses Four methods Know address ahead of time
e.g. collection of network device stats: device ID Well known addresses Name server or directory server Sending process request to well known address Address Resolution Protocol (ARP) 5:33 AM

10 Multiplexing Multiple users employ the same network connection
User identified by port number or service access point (SAP) May also multiplex with respect to network services used e.g., multiplexing a single virtual X.25 circuit to a number of transport service user X.25 charges per virtual circuit connection time 5:33 AM

11 Service Access Point (SAP): Transport SAP, Network SAP
TSAP, NSAP and connections 5:33 AM

12 User Process Operation
Establishing connection 5:33 AM

13 Flow Control Longer transmission delay between transport entities compared with actual transmission time Delay in communication of flow control info Variable transmission delay Difficult to use timeouts Flow may be controlled because: The receiving user can not keep up The receiving transport entity can not keep up Results in buffer filling up (buffer overflow) 5:33 AM

14 Flow Control (Cont) Do nothing Refuse further segments
Segments that overflow are discarded Sending transport entity will fail to get ACK and will retransmit: time-out Refuse further segments Clumsy Multiplexed connections are controlled on aggregate flow 5:33 AM

15 Flow Control (Cont) Use fixed sliding window protocol
Incorporated in ARQ as well as congestion control Works well on reliable network Failure to receive ACK is taken as flow control indication Does not work well on unreliable network Can not distinguish between lost segment and flow control Use credit schemes Successful delivery (positive ack) will lead to more packet deliveries Will discuss more in next chapter 5:33 AM

16 Establishment and Termination
Allow each end to know the other exists Negotiation of optional parameters (for QoS) Triggers allocation of transport entity resources By mutual agreement 5:33 AM

17 Connection State Diagram: Protocol Verification

18 Problems to Be Handled Ordered Delivery Retransmission strategy (ARQ)
Duplication detection (Sequence Number) Flow control (Sliding Window) Connection establishment Connection termination Crash recovery 5:33 AM

19 TCP/IP Suite Transmission Control Protocol (TCP)
Connection oriented RFC 793 User Datagram Protocol (UDP) Connectionless RFC 768 5:33 AM

20 TCP Services Reliable communication between a pair of processes (end users) Across variety of reliable and unreliable networks and internets Two labeling facilities Data stream push TCP user can require transmission of all data up to push flag Receiver will deliver in same manner Avoids waiting for full buffers Urgent data signal Indicates urgent data is upcoming in stream User decides how to handle it 5:33 AM

21 TCP Header 5:33 AM

22 Items Passed to IP TCP passes some parameters down to IP
Precedence (priority) Normal delay/low delay Normal throughput/high throughput Normal reliability/high reliability Security 5:33 AM

23 TCP Mechanisms Connection establishment Three way handshake
Between pair of ports One port can connect to multiple destinations 5:33 AM

24 SYN, Seq_no = y, ACK, Ack_no = x+1
Host A Host B SYN, Seq_no = x SYN, Seq_no = y, ACK, Ack_no = x+1 Seq_no = x+1, ACK, Ack_no = y+1 Figure 8.22

25 TCP Mechanisms (cont) Data transfer Logical stream of octets
Flow control by credit allocation of number of octets Data buffered at transmitter and receiver Error control Selective Repeat (SR) ARQ Sliding window scheme is used Time-out is adaptively estimated based on the estimation of Round-Trip-Time (RTT) (more will be discussed in congestion control) 5:33 AM

26 TCP Mechanisms (cont) Connection termination Graceful close
TCP users issues CLOSE primitive Transport entity sets FIN flag on last segment sent Abrupt termination by ABORT primitive Entity abandons all attempts to send or receive data RST segment transmitted 5:33 AM

27 UDP User Datagram Protocol RFC 768
Connectionless service for application level procedures Unreliable Delivery and duplication control not guaranteed Reduced overhead e.g. network management (ICMP) 5:33 AM

28 UDP Applicaitons Inward data collection Outward data dissemination
Request-Response Real time application 5:33 AM

29 Reading Textbook Chapter 5, Chapter 8 Tanenbaum, Chapter 6
Stallings Chapter 17 5:33 AM


Download ppt "EEL 5718 Computer Communications"

Similar presentations


Ads by Google