Presentation is loading. Please wait.

Presentation is loading. Please wait.

CSEN 404 Transport Layer I Amr El Mougy Lamia Al Badrawy.

Similar presentations


Presentation on theme: "CSEN 404 Transport Layer I Amr El Mougy Lamia Al Badrawy."— Presentation transcript:

1 CSEN 404 Transport Layer I Amr El Mougy Lamia Al Badrawy

2 Transport Layer 3-2 Chapter 3 outline  Transport-layer services  Multiplexing and demultiplexing  Connectionless transport: UDP  Principles of reliable data transfer  Connection-oriented transport: TCP  segment structure  reliable data transfer  flow control  connection management  Principles of congestion control

3 Transport Layer 3-3 Transport services and protocols  provide logical communication between app processes running on different hosts  transport protocols run in end systems  send side: breaks app messages into segments, passes to network layer  rcv side: reassembles segments into messages, passes to app layer  more than one transport protocol available to apps  Internet: TCP and UDP application transport network data link physical application transport network data link physical logical end-end transport

4 Transport Layer 3-4 Transport vs. network layer  network layer: logical communication between hosts  transport layer: logical communication between processes  relies on, enhances, network layer services Household analogy: 12 kids sending letters to 12 kids  processes = kids  app messages = letters in envelopes  hosts = houses  transport protocol = Ann and Bill  network-layer protocol = postal service

5 Transport Layer 3-5 Internet transport-layer protocols  reliable, in-order delivery (TCP)  congestion control  flow control  connection setup  unreliable, unordered delivery: UDP  no-frills extension of “best- effort” IP  services not available:  delay guarantees  bandwidth guarantees 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 network data link physical application transport network data link physical logical end-end transport

6 Transport Layer 3-6 Multiplexing/demultiplexing application transport network link physical P1 application transport network link physical application transport network link physical P2 P3 P4 P1 host 1 host 2 host 3 = process= socket delivering received segments to correct socket Demultiplexing at rcv host: gathering data from multiple sockets, enveloping data with header (later used for demultiplexing) Multiplexing at send host:

7 Transport Layer 3-7 How demultiplexing works  host receives IP datagrams  each datagram has source IP address, destination IP address  each datagram carries 1 transport-layer segment  each segment has source, destination port number  host uses IP addresses & port numbers to direct segment to appropriate socket source port #dest port # 32 bits application data (message) other header fields TCP/UDP segment format

8 Choosing Port Numbers  UDP  TCP 1-8 Source port: 19157 Dest. port: 53 Source port: 53 Dest. port: 19157 Server is always listening on the well-known port number Client chooses a source port number and inserts it in the header. The destination port number is the well- known port number In the reply, the server inserts the port number received in the packet in the destination port number Source port: 26145 Dest. port: 80 Src IP: A Dest. IP: B Source port: 26145 Dest. port: 80 Src IP: C Dest. IP: B Source port: 7532 Dest. port: 80 Src IP: C Dest. IP: B Server is always listening on the well-known port number Client chooses a source port number and inserts it in the header. The destination port number is the well-known port number The server creates a socket for the client that is identifiable via the combination of src IP and src port address

9 Transport Layer 3-9 UDP: User Datagram Protocol [RFC 768]  “no frills,” “bare bones” Internet transport protocol  “best effort” service, UDP segments may be:  lost  delivered out of order to app  connectionless:  no handshaking between UDP sender, receiver  each UDP segment handled independently of others Why is there a UDP?  no connection establishment (which can add delay)  simple: no connection state at sender, receiver  small segment header  no congestion control: UDP can blast away as fast as desired

10 Examples of Transport-layer Protocols used by Applications 1-10 Transport Layer ApplicationApplication-Layer ProtocolUnderlying Transport Protocol E-mailSMTPTCP Remote terminal accessTelnetTCP WebHTTPTCP File transferFTPTCP Remote file serverNFSTypically UDP Streaming multimediaTypically proprietaryUDP or TCP Internet telephonyTypically proprietaryUDP or TCP Network managementSNMPTypically UDP Routing protocolRIPTypically UDP Name translationDNSTypically UDP

11 Transport Layer 3-11 UDP: more  often used for streaming multimedia apps  loss tolerant  rate sensitive  other UDP uses  DNS  SNMP (Simple Net Management Protocol)  reliable transfer over UDP: add reliability at application layer  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


Download ppt "CSEN 404 Transport Layer I Amr El Mougy Lamia Al Badrawy."

Similar presentations


Ads by Google