TCP: Software for Reliable Communication. Spring 2002Computer Networks Applications Internet: a Collection of Disparate Networks Different goals: Speed,

Slides:



Advertisements
Similar presentations
OSI Model OSI MODEL.
Advertisements

OSI Model OSI LAYER / MODEL.
OSI MODEL Maninder Kaur
Chapter 7 – Transport Layer Protocols
Answers of Exercise 7 1. Explain what are the connection-oriented communication and the connectionless communication. Give some examples for each of the.
(4.4) Internet Protocols Layered approach to Internet Software 1.
TCP/IP1 The Underlying Technologies. What is inside the Internet? Or What are the key underlying technologies that make it work so successfully? –Packet.
IP: The Internet Protocol
Networking Theory (Part 1). Introduction Overview of the basic concepts of networking Also discusses essential topics of networking theory.
Chapter 15 – Part 2 Networks The Internal Operating System The Architecture of Computer Hardware and Systems Software: An Information Technology Approach.
CS335 Networking & Network Administration Tuesday, May 11, 2010.
COMPUTER NETWORKS.
 The Open Systems Interconnection model (OSI model) is a product of the Open Systems Interconnection effort at the International Organization for Standardization.
OIS Model TCP/IP Model.
SEPT, 2005CSI Part 2.2 Protocols and Protocol Layering Robert Probert, SITE, University of Ottawa.
1.  A protocol is a set of rules that governs the communications between computers on a network.  Functions of protocols:  Addressing  Data Packet.
Protocols and the TCP/IP Suite Chapter 4. Multilayer communication. A series of layers, each built upon the one below it. The purpose of each layer is.
Process-to-Process Delivery:
TRANSPORT LAYER T.Najah Al-Subaie Kingdom of Saudi Arabia Prince Norah bint Abdul Rahman University College of Computer Since and Information System NET331.
ISO Layer Model Lecture 9 October 16, The Need for Protocols Multiple hardware platforms need to have the ability to communicate. Writing communications.
Presentation on Osi & TCP/IP MODEL
What is a Protocol A set of definitions and rules defining the method by which data is transferred between two or more entities or systems. The key elements.
Protocol Layering Chapter 10. Looked at: Architectural foundations of internetworking Architectural foundations of internetworking Forwarding of datagrams.
Protocol Architectures. Simple Protocol Architecture Not an actual architecture, but a model for how they work Similar to “pseudocode,” used for teaching.
Internet Addresses. Universal Identifiers Universal Communication Service - Communication system which allows any host to communicate with any other host.
Introduction to Networks CS587x Lecture 1 Department of Computer Science Iowa State University.
1 Chapter 16 Protocols and Protocol Layering. 2 Protocol  Agreement about communication  Specifies  Format of messages (syntax)  Meaning of messages.
University of the Western Cape Chapter 12: The Transport Layer.
TCP/IP TCP/IP LAYERED PROTOCOL TCP/IP'S APPLICATION LAYER TRANSPORT LAYER NETWORK LAYER NETWORK ACCESS LAYER (DATA LINK LAYER)
FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA1 Part 2.5 Internetworking Chapter 25 (Transport Protocols, UDP and TCP, Protocol Port Numbers)
The Transmission Control Protocol (TCP) Application Services (Telnet, FTP, , WWW) Reliable Stream Transport (TCP) Connectionless Packet Delivery.
Dr. John P. Abraham Professor UTPA
COP 4930 Computer Network Projects Summer C 2004 Prof. Roy B. Levow Lecture 3.
Internetworking Internet: A network among networks, or a network of networks Allows accommodation of multiple network technologies Universal Service Routers.
Chapter 15 – Part 2 Networks The Internal Operating System The Architecture of Computer Hardware and Systems Software: An Information Technology Approach.
Internetworking Internet: A network among networks, or a network of networks Allows accommodation of multiple network technologies Universal Service Routers.
Network Protocols n ISO OSI 7-layer model n TCP/IP suite l TCP/UDP l IP l Ethernet/Token Ring l ICMP.
Lecture 4 Overview. Ethernet Data Link Layer protocol Ethernet (IEEE 802.3) is widely used Supported by a variety of physical layer implementations Multi-access.
Chapter 24 Transport Control Protocol (TCP) Layer 4 protocol Responsible for reliable end-to-end transmission Provides illusion of reliable network to.
Network Protocols and Standards (Part 2). The OSI Model In 1984, the International Organization for Standardization (ISO) defined a standard, or set of.
Chapter 16 Protocols and Layering. Network Communication Protocol an agreement that specifies the format and meaning of messages computers exchange Network.
Protocol Suits and Layering Models OSI Model Dr. Abraham UTPA.
Reading TCP/IP Protocol. Training target: Read the following reading materials and use the reading skills mentioned in the passages above. You may also.
Protocol Layering Chapter 11.
The Internet Book. Chapter 16 3 A Packet Switching System Can Be Overrun Packet switching allows multiple computers to communicate without delay. –Requires.
The OSI Model A Framework for Communications David A. Abarca July 19, 2005.
IP1 The Underlying Technologies. What is inside the Internet? Or What are the key underlying technologies that make it work so successfully? –Packet Switching.
1 Protocols and Protocol Layering. 2 Protocol Agreement about communication Specifies –Format of messages –Meaning of messages –Rules for exchange –Procedures.
McGraw-Hill Chapter 23 Process-to-Process Delivery: UDP, TCP Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
TCP/IP1 Address Resolution Protocol Internet uses IP address to recognize a computer. But IP address needs to be translated to physical address (NIC).
TCP/IP Protocol Suite Suresh Kr Sharma 1 The OSI Model and the TCP/IP Protocol Suite Established in 1947, the International Standards Organization (ISO)
Network Models. The OSI Model Open Systems Interconnection (OSI). Developed by the International Organization for Standardization (ISO). Model for understanding.
Process-to-Process Delivery:
Computer Engineering and Networks, College of Engineering, Majmaah University Protocols OSI reference MODEL TCp /ip model Mohammed Saleem Bhat
OSI Model OSI MODEL. Communication Architecture Strategy for connecting host computers and other communicating equipment. Defines necessary elements for.
OSI Model OSI MODEL.
Ch 16 Protocols and Layering
Lec 2: Protocols.
Layered Architectures
Lecturer, Department of Computer Application
DEPARTMENT OF COMPUTER SCIENCE
Process-to-Process Delivery:
OSI Model OSI MODEL.
Network Architecture Models
Protocols and Protocol Layering
Process-to-Process Delivery: UDP, TCP
Protocols and Protocol Layering
OSI Model 7 Layers 7. Application Layer 6. Presentation Layer
UDP Principles (Chapter 24) (User Datagram Protocol)
Unit – III Network Essentials
Presentation transcript:

TCP: Software for Reliable Communication

Spring 2002Computer Networks Applications Internet: a Collection of Disparate Networks Different goals: Speed, cost, distance; Different standards for: Expected carrier; Coding bits; Detecting and recovering from errors; Protocols for transmitting messages: bus, token ring,… Packets sizes, and encoding for the start/end of packets,… Types of computer addresses

Spring 2002Computer Networks Applications Solution: Routers Router High speed connection Routers: computers design to interconnect different networks

Spring 2002Computer Networks Applications Solution: Internet Protocol (IP) Divide a message in small blocks, called packets; IP protocol for transmitting packets; IP hides the details of physical networks; Every computer connected to the Internet must run IP software IP specifies: Packet format; How routers should forward packets Define address format

Spring 2002Computer Networks Applications IP can be overrun Consider the following scenario: Computers X and Y send simultaneously messages to a computer Z across the same network, d; Both X and Y send 5000 packets/s Network d may transmit 5000 packets/s; There is an excess of 5000 packets each second which are discarded.

Spring 2002Computer Networks Applications IP can be overrun (cont.) TCP (Transmission Control Protocol) designed to handle this problem. XYZ

Spring 2002Computer Networks Applications TCP Checks for lost datagrams; Routers may fail  TCP chooses new paths; Because datagrams may travel different paths, they can arrive at the destination in a different order  TCP assembles them in the correct order Network failure may result in multiple copies of the same datagram  TCP checks for duplicate datagrams, and accepts only the first copy

Spring 2002Computer Networks Applications TCP- a connection oriented protocol IP: a connectionless protocol, i.e. there is no connection between sender and destination; In order to achieve its goals TCP establishes a connection between two computers; A data transmission proceeds much like a telephone call: The sender program contact the destination The destination accepts the incoming call; The sender and destination may exchange arbitrary amounts of data; Any of the party may terminate the communication

Spring 2002Computer Networks Applications Recovering lost datagrams Problem: datagrams may be lost by a router far away from the sender or the destination; Solution: TCP includes a unique ID in each datagram; Whenever data arrives at the destination, it sends an acknowledgment (ack) back to the source, containing the ID of the datagram; If an ack is not received in a certain time the sender retransmits the message.

Spring 2002Computer Networks Applications Example of retransmission

Spring 2002Computer Networks Applications Retransmission is adaptive Different values for waiting times: Short, if source and destination are “close” to each other; Longer, if they are far apart. Adjusted if delays occur TCP measures the delay in sending a message and adjusts the timer

Spring 2002Computer Networks Applications Retransmission examples

Spring 2002Computer Networks Applications Detecting duplicate datagram The receiver maintains a table with all datagrams received so far; When the destination, receives a datagram, checks the ID of incoming with the IDs of the datagrams received so far; If it is a duplicate, the datagram is discarded.

Spring 2002Computer Networks Applications TCP and IP work together IP specifies how a packet should be transmitted from the sender to the destination; TCP specifies ways for making packet transmission reliable; TCP/IP often used and sold as a single software packet.

Spring 2002Computer Networks Applications Designing Protocols Two possible solutions: A single, giant protocol that specifies all details; Cons: difficult to design, and to update Divide the problem into subpieces, and design a special protocol for each piece; Each piece is called a layer; The result: a suite of protocols; Requires that different parts share information.

Spring 2002Computer Networks Applications TCP/IP---a layered protocol Has seven layers; Lowest layer refers to hardware; Top layers refer to the software; The level of abstraction increases bottom to top.

Spring 2002Computer Networks Applications TCP/IP layers: Layer 1 (Physical layer): Corresponds to network hardware; defines the carrier, the way to encode bits, etc.. Example of a carrier

Spring 2002Computer Networks Applications TCP/IP layers (cont.) the carrier is reduced to 2/3 full strength to encode a 1 bit, and 1/3 strength to encode a 0 bit; Two successive pulses needed to encode one bit; an unchanged pulse separates two bits. Digital signal The resulting wave encoding The signal above.

Spring 2002Computer Networks Applications TCP/IP layers (cont.) Layer 2: data link Specifies how to organize data into packets, and how to transmit packets over a network For ex: maximum packet size, format packet header, checksum computation are defined at this layer.

Spring 2002Computer Networks Applications TCP/IP layers (cont.) Layer 3: Network Specifies how addresses are formed Ex: IP addresses How packets are forwarded: Ex: store and forward technique Layer 4: Transport Handles details of reliable transfer; EX: format of acks, retransmission times, rules for changing it

Spring 2002Computer Networks Applications TCP/IP layers (cont.) Layer5: Session Specifies how to establish a communication with a remote system; ex: telnet Authentication details; ex: passwords Layer 6: Presentation Specifies how to represent data; Different computers use different internal representation (Ex: ASCII, EBDIC) for integers and characters; How to translate from one representation to another

Spring 2002Computer Networks Applications TCP/IP layers (cont.) Layer 7: Application Specifies how one particular application uses a network; Ex: FTP Specifies request format (how to name a file) and how the application on another machine responds.

Spring 2002Computer Networks Applications How layered software works Each layer solves one part of the problem; To do so, each layer on the sending computer adds information to the outgoing data; The same layer in the receiving computer uses the additional information to process data; Ex: checksums in data layer;

Spring 2002Computer Networks Applications How layered software works (cont.) Layering Principle: Layer N software on the destination computer, must receive the exact message sent by layer N software on the sending computer. Ex: if one layer adds a header, the corresponding layer has to remove it. If one layer encrypts data, the receiving computer layer has to decrypt it.

Spring 2002Computer Networks Applications Why layering? Each layer can be: Designed, Implemented Tested independently of other layers.  creating and evolving protocols, much easier task.