Download presentation
Presentation is loading. Please wait.
Published byCuthbert Owens Modified over 9 years ago
1
Transport Layer3-1 Chapter 3 Transport Layer These ppt slides are originally from the Kurose and Ross’s book. But some slides are deleted and added for my own purpose, and some of them are modified.
2
Transport Layer3-2 Chapter 3: Transport Layer Our goals: r understand principles behind transport layer services: m multiplexing/demultipl exing m reliable data transfer m flow control m congestion control r learn about transport layer protocols in the Internet: m UDP: connectionless transport m TCP: connection-oriented transport m TCP congestion control
3
Transport Layer3-3 TCP/IP Protocol Suite IP TCP UDP FTPTelnetSMTPBGPRIPDNS SNMP RARP ARP IGMP ICMPOSPF HTTP
4
Transport Layer3-4 Chapter 3 outline r 3.1 Transport-layer services r 3.2 Multiplexing and demultiplexing r 3.3 Connectionless transport: UDP r 3.4 Principles of reliable data transfer r 3.5 Connection-oriented transport: TCP m segment structure m reliable data transfer m flow control m connection management r 3.6 Principles of congestion control r 3.7 TCP congestion control
5
Transport Layer3-5 Transport services and protocols r provide logical communication between app processes running on different hosts r transport protocols run in end systems m send side: breaks app messages into segments, passes to network layer m rcv side: reassembles segments into messages, passes to app layer application transport network data link physical application transport network data link physical network data link physical network data link physical network data link physical network data link physical network data link physical logical end-end transport
6
Transport Layer3-6 Analogy Seoul Busan Consider two houses, one in Seoul and the other in Busan, Four kids live in each house. Each kid write a letter to its cousin who lives in the other house every Sunday. In each house there is one kid(Gilsoo and Bowen) who is responsible for mail collection and mail distribution. GilsooBowon Application message Processes Host Transport-layer protocol Network-layer protocol Gilsoo and Bowon Kids Postal service Letter house
7
Transport Layer3-7 Chapter 3 outline r 3.1 Transport-layer services r 3.2 Multiplexing and demultiplexing(Addres sing of application processes) r 3.3 Connectionless transport: UDP r 3.4 Principles of reliable data transfer r 3.5 Connection-oriented transport: TCP m segment structure m reliable data transfer m flow control m connection management r 3.6 Principles of congestion control r 3.7 TCP congestion control
8
Transport Layer3-8 Addressing: Port Number r The address of the application process running on a host is called a port number.
9
Transport Layer3-9 IP Address and Port Number
10
Transport Layer3-10 The Range of Port Numbers r The port number is 16-bit integers between 0 and 65535. r The ephemeral port numbers m The client process defines itself with a port number randomly. r The well-known port numbers m The Internet has decided to use universal port numbers for servers. (ephemeral)
11
Transport Layer3-11 PortProtocolDescription 7 EchoEchoes a received datagram back to the sender 9DiscardDiscards any datagram that is received 11UsersActive users 13DaytimeReturns the date and the time 17QuoteReturns a quote of the day 19ChargenReturns a string of characters 20FTP, DataFile Transfer Protocol (data connection) 21FTP, ControlFile Transfer Protocol (control connection) 23TELNETTerminal Network 25SMTPSimple Mail Transfer Protocol 53DNSDomain Name Server 67BOOTPBootstrap Protocol 79Finger 80HTTPHypertext Transfer Protocol 111RPCRemote Procedure Call Well-known port number used by TCP
12
Transport Layer3-12 Well-known port number used by UDP PortProtocolDescription 7EchoEchoes a received datagram back to the sender 9DiscardDiscards any datagram that is received 11UsersActive users 13DaytimeReturns the date and the time 17QuoteReturns a quote of the day 19ChargenReturns a string of characters 53NameserverDomain Name Service 67BootpsServer port to download bootstrap information 68BootpcClient port to download bootstrap information 69TFTPTrivial File Transfer Protocol 111RPCRemote Procedure Call 123NTPNetwork Time Protocol 161SNMPSimple Network Management Protocol 162SNMPSimple Network Management Protocol (trap)
13
Transport Layer3-13 Socket Address r Process-to-process delivery needs two identifiers, IP address and the port number, at each end to make a connection. r The combination of an IP address and a port number is called a socket address, which defines the destination process uniquely.
14
Transport Layer3-14 Protocol Stack AP Application processes IP Link/physical layers Data communication network Host Port number Protocol number TCP/UDP IP Link/phisical layers Host Port number Protocol number TCP/UDP AP Application processes AP
15
Transport Layer3-15 Example(Web server)
16
Transport Layer3-16 Reliable vs. Unreliable Service r If the application-layer program needs reliability, we use a reliable transport protocol. r If the application has its own flow and error control mechanism or it needs faster service or the kind of a service that does not demand flow and error control(ex, real-time application), then unreliable transport can be used. network access 1 IP TCP/UDP Application network Access 2 IP TCP/UDP Application network access1 access2 IP subnet 1 End-to-end Service subnet 2
17
Transport Layer3-17 Transport protocol Functions: Reliable vs. Unreliable r Unreliable Transport protocol functions m Addressing for application processes(multiplexing) r Reliable Transport Protocol functions m Address for application processes m Error control (retransmission) m Flow control m Guarantee of no out-of-sequence of packet order m No duplication
18
Transport Layer3-18 Chapter 3 outline r 3.1 Transport-layer services r 3.2 Multiplexing and demultiplexing r 3.3 Connectionless transport: UDP r 3.4 Principles of reliable data transfer r 3.5 Connection-oriented transport: TCP m segment structure m reliable data transfer m flow control m connection management r 3.6 Principles of congestion control r 3.7 TCP congestion control
19
Transport Layer3-19 UDP: User Datagram Protocol [RFC 768] r “no frills,” “bare bones” Internet transport protocol r “best effort” service, UDP segments may be: m lost m delivered out of order to app r connectionless: m no handshaking between UDP sender, receiver m each UDP segment handled independently of others Why is there a UDP? r no connection establishment (which can add delay) r simple: no connection state at sender, receiver r small segment header r no congestion control: UDP can blast away as fast as desired
20
Transport Layer3-20 UDP: more r often used for streaming multimedia apps m loss tolerant m rate sensitive r other UDP uses m DNS m SNMP r reliable transfer over UDP: add reliability at application layer m application-specific error recovery! source port #dest port # 32 bits Application data (message) UDP segment format length checksum Length, in bytes of UDP segment, including header
21
Transport Layer3-21 UDP checksum Sender: r treat segment contents as sequence of 16-bit integers r checksum: addition (1’s complement sum) of segment contents r sender puts checksum value into UDP checksum field Receiver: r compute checksum of received segment r check if computed checksum equals checksum field value: m NO - error detected m YES - no error detected. But maybe errors nonetheless? More later …. Goal: detect “errors” (e.g., flipped bits) in transmitted segment
22
Transport Layer3-22 Internet Checksum Example r Note m When adding numbers, a carryout from the most significant bit needs to be added to the result r Example: add two 16-bit integers 1 1 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 1 1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 1 1 0 1 1 1 0 1 1 1 0 1 1 1 0 1 1 1 1 0 1 1 1 0 1 1 1 0 1 1 1 1 0 0 1 0 1 0 0 0 1 0 0 0 1 0 0 0 0 1 1 wraparound sum checksum
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.