2013年6月14日星期五

Network Fundamentals - OSI Transport Layer

Transport Layer Role and Services



The Transport layer prepares application data for transport over the network and process network data for use by applications.





Functions of OSI Transport Layer


  • Tracking the individual communication between applications on the source and destination hosts
  • Segmenting data and managing each piece
  • Reordering and Reassembling the segments into streams of application data
  • Identifying the different applications



Tracking Individual Conversations


Any host may have multiple applications that are communicating across the network.





Segmenting Data and Reassembling Segments







Identifying the Applications



Each software process that needs to access the network is assigned a port number unique in that host.






Transport Layer Role and Services



Data Requirements Vary
    Efficient Data Delivery  --> UDP Protocol
    Supporting Reliable Communication -->  TCP Protocol








Transmission Control Protocol (TCP) and User Datagram Protocol (UDP)











Transmission Control Protocol (TCP)


  • A connection-oriented protocol


  • It is described in RFC 793.
  • Applications that use TCP are: Web Browsers
     E-mail
     File Transfers





User Datagram Protocol (UDP)


UDP is a simple, connectionless protocol
  •    It provides low overhead data delivery.
  •    It has only 8 bytes of overhead.
  •    No flow control
  •    The segments in UDP are called datagrams.

Applications that use UDP include:
  •    Domain Name System (DNS)
  •    Video Streaming
  •    Voice over IP (VoIP)




Port Numbers


  • Port numbers are used to identify different application
  • Each application has a unique port number
  • Both TCP and UDP use port numbers to pass correct data to the upper layers
  • Port numbers are used as source and destination addresses in the segment






Types of Port Number










Port Numbers in TCP request







Netstat

netstat is a network utility to verify active TCP connections, port on which the computer is listening.






Sequence Number


  • Sequence numbers are used to re-order data segments
  • TCP provides a sequence number to each segment before transmission
  • If a sequence number is missing, that segment need to be re-transmitted
  • If no acknowledgment  within a given time, that segment is re-transmitted





Re-order data segments








Acknowledgment Number


  • Acknowledgment number is the sequence number of next expected segment
  • TCP provides an acknowledgment number to each segment before transmission
  • Ack. No. is used to check any data loss






TCP – Setup a Connection

 






TCP – Three-way Handshake


Handshake – made use of sequence number and acknowledgment to form SYN packet in the establishment of TCP session






TCP Connection Termination





TCP Congestion Control – Flow Control  


  • This Window Size field in the TCP header specifies the amount of data that can be transmitted before an acknowledgment must be received. 
  • TCP feedback mechanism adjusts the effective rate of data transmission to the maximum flow that the network and destination device can support without loss.
  • TCP attempts to manage the rate of transmission so that retransmissions will be minimized. 





Window Size








Sliding Window


Sliding window means that the window size is negotiated dynamically during the TCP connection








UDP Protocol


Connectionless, lower overhead and less delay than TCP




Reassemble PDUs at the destination device, no re-order, no re-sent




Servers use port numbers to identify a specified application layer process and direct segments to the proper service or application





Trace the steps as the UDP protocol and port numbers are utilized in client-server communication.


沒有留言:

發佈留言