Networks & Communication (continued)

Slides:



Advertisements
Similar presentations
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public ITE PC v4.0 Chapter 1 1 OSI Transport Layer Network Fundamentals – Chapter 4.
Advertisements

© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public 1 Version 4.0 Network Services Networking for Home and Small Businesses – Chapter 6.
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public 1 Version 4.0 OSI Transport Layer Network Fundamentals – Chapter 4.
International Standards Organization Open Systems Interconnect (OSI) Reference Model Advanced Computer Networks.
Networks & Communications CS-4513, D-Term Networks & Communication (continued) CS-4513 Distributed Computing Systems (Slides include materials from.
Networks and Communication CS-4513 D-term Networks and Communication CS-4513 Distributed Computing Systems (Slides include materials from Operating.
Networks 1 CS502 Spring 2006 Network Input & Output CS-502 Operating Systems Spring 2006.
CS-3013 & CS-502, Summer 2006 Network Input & Output1 CS-3013 & CS-502, Summer 2006.
WXES2106 Network Technology Semester /2005 Chapter 8 Intermediate TCP CCNA2: Module 10.
NetworksCS-4513, D-Term Introduction to Networks CS-4513 Distributed Computing Systems (Slides include materials from Operating System Concepts,
Process-to-Process Delivery:
Chapter 17 Networking Dave Bremer Otago Polytechnic, N.Z. ©2008, Prentice Hall Operating Systems: Internals and Design Principles, 6/E William Stallings.
70-291: MCSE Guide to Managing a Microsoft Windows Server 2003 Network Chapter 3: TCP/IP Architecture.
Presentation on Osi & TCP/IP MODEL
1 ELEN602 Lecture 2 Review of Last Lecture Layering.
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public ITE PC v4.0 Chapter 1 1 Network Services Networking for Home and Small Businesses – Chapter.
Copyright 2003 CCNA 1 Chapter 9 TCP/IP Transport and Application Layers By Your Name.
CCNA1 v3 Module 11 v3 CCNA 1 Module 11 JEOPARDY S Dow.
1 7-Oct-15 OSI transport layer CCNA Exploration Semester 1 Chapter 4.
University of the Western Cape Chapter 12: The Transport Layer.
TCP/IP Transport and Application (Topic 6)
TCP1 Transmission Control Protocol (TCP). TCP2 Outline Transmission Control Protocol.
Chapter 15 – Part 2 Networks The Internal Operating System The Architecture of Computer Hardware and Systems Software: An Information Technology Approach.
ECEN “Internet Protocols and Modeling”, Spring 2012 Course Materials: Papers, Reference Texts: Bertsekas/Gallager, Stuber, Stallings, etc Class.
Networking Basics CCNA 1 Chapter 11.
70-291: MCSE Guide to Managing a Microsoft Windows Server 2003 Network, Enhanced Chapter 3: TCP/IP Architecture.
TCP =Transmission Control Protocol IP = Internet Protocol TCP/IP Protocol.
OSI means Open System Interconnect model. OSI means Open System Interconnect model. Developed by the International Organization for Standardization in.
Enterprise Network Systems TCP Mark Clements. 3 March 2008ENS 2 Last Week – Client/ Server Cost effective way of providing more computing power High specs.
Page 12/9/2016 Chapter 10 Intermediate TCP : TCP and UDP segments, Transport Layer Ports CCNA2 Chapter 10.
Computer Network Architecture Lecture 6: OSI Model Layers Examples 1 20/12/2012.
McGraw-Hill Chapter 23 Process-to-Process Delivery: UDP, TCP Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
1 14-Jun-16 S Ward Abingdon and Witney College CCNA Exploration Semester 1 OSI transport layer CCNA Exploration Semester 1 Chapter 4.
© 2006 Cisco Systems, Inc. All rights reserved.Cisco Public 1 OSI transport layer CCNA Exploration Semester 1 – Chapter 4.
Application Layer Functionality and Protocols Abdul Hadi Alaidi
Chapter 7: Transport Layer
OSI LAYERS.
Introduction to Networks
Chapter 5 Network and Transport Layers
The Transport Layer Implementation Services Functions Protocols
Transport Layer Slides are originally from instructor: Carey Williamson at University of Calgary Very minor modification are made Notes derived from “Computer.
Chapter 9: Transport Layer
Chapter 3 outline 3.1 Transport-layer services
Instructor Materials Chapter 9: Transport Layer
v3 JEOPARDY CCNA 1 Module 11 CCNA1 v3 Module 11 Galo Valencia
Vocabulary Prototype: A preliminary sketch of an idea or model for something new. It’s the original drawing from which something real might be built or.
Chapter 1 Introduction Computer Networks, Fifth Edition by Andrew Tanenbaum and David Wetherall, © Pearson Education-Prentice Hall, 2011.
Networking for Home and Small Businesses – Chapter 6
Vocabulary Prototype: A preliminary sketch of an idea or model for something new. It’s the original drawing from which something real might be built or.
Introduction to Networks
Client-Server Interaction
Networking for Home and Small Businesses – Chapter 6
Layered Task, OSI Model, TCP/IP Model
Topic 5: Communication and the Internet
CCNA 2 v3.1 Module 10 Intermediate TCP/IP
September 19th, 2013 CS1652 Jack Lange University of Pittsburgh
I. Basic Network Concepts
Process-to-Process Delivery:
Networking Theory (part 2)
1 TRANSMISSION CONTROL PROTOCOL / INTERNET PROTOCOL (TCP/IP) K. PALANIVEL Systems Analyst, Computer Centre Pondicherry University, Puducherry –
CSCD 330 Network Programming
PART V Transport Layer.
PART 5 Transport Layer.
Networking for Home and Small Businesses – Chapter 6
OSI Reference Model Unit II
Process-to-Process Delivery: UDP, TCP
Computer Networks Protocols
The TCP/IP Model.
OSI Model 7 Layers 7. Application Layer 6. Presentation Layer
Networking Theory (part 2)
Presentation transcript:

Networks & Communication (continued) CS-502 Operating Systems (Slides include materials from Operating System Concepts, 7th ed., by Silbershatz, Galvin, & Gagne, Modern Operating Systems, 2nd ed., by Tanenbaum, and Distributed Systems: Principles & Paradigms, 2nd ed. By Tanenbaum and Van Steen) Assumptions: Graduate level Operating Systems Making Choices about operation systems Why a micro-century? …just about enough time for one concept CS-502 Fall 2007 Networks & Communication

Principal Abstraction – Socket Originally created in BSD Unix Now, part of most operating systems Allows opening a connection between two processes across network Connection: a serial conversation between two end points e.g., processes, threads, tasks on different machines organized as a sequence of messages or datagrams distinct from all other connections One of the four principal abstractions provided by most modern operating systems CS-502 Fall 2007 Networks & Communication

Networks & Communication Definition — Protocol Formal set of rules that govern the formats, contents, and meanings of messages from computer to computer, process to process, etc. Must be agreed to by all parties to a communication May be defined in terms of other protocols CS-502 Fall 2007 Networks & Communication

The OSI 7-layer model (in a nutshell) Physical Layer Data Link Network Transport Session Presentation Application Silbershatz, §§16.6-16.7 CS-502 Fall 2007 Networks & Communication

Annotated OSI 7-Layer Stack Silbershatz, page 630 CS-502 Fall 2007 Networks & Communication

Summary — OSI 7-layer model Physical Layer Data Link Network Transport Session Presentation Application Sending Process Receiving Bits DH Data DT NH TH SH PH AH CS-502 Fall 2007 Networks & Communication

Networks & Communication Circular Definition Socket: End point of a connection Usually used in pairs, one for each direction Comprises [IP Address: Port #] Connection: A logical linkage between pairs of sockets at two endpoints for purposes of a particular communication between those endpoints i.e., a serial conversation between endpoints Usually two-way CS-502 Fall 2007 Networks & Communication

Networks & Communication Connection The backbone of most message-oriented communication protocols Each party retains knowledge of the other Each party retains information about state of the other (vis a vis the protocol itself) Each party “knows” if connection is broken … Note: some popular protocols are “connection-less” one side retains no state information about other side CS-502 Fall 2007 Networks & Communication

Establishing a Connection Process a on machine m creates a socket OS assigns a new port number q to that socket Process a attempts to open a connection to machine n:p p is a well-known port Process b on machine n is listening on p Receives request from m:q Process b forks a process or spawns a thread c to talk with m:q, then resumes listening on p Thread/process c Creates a new socket r for this connection Replies to m:q with return address n:r a and c continue to communicate over this pair of sockets until they are finished. CS-502 Fall 2007 Networks & Communication

Typical Client-Server Connection Create socket On server side Bind I.e., connect socket to port # (usually well-known port) Listen Sit and wait for a communication to come in Accept Create new socket for purpose of responding to this caller CS-502 Fall 2007 Networks & Communication

Networks & Communication Notes Responder to request for connection does not have to be the original server machine Delegate workload to other server systems Systems often include a connection ID as part of request to open connection Unique or randomly chosen Reduces spoofing of server responses Unix/Linux will not re-use a socket # within 30 seconds To avoid confusion between old connection and new CS-502 Fall 2007 Networks & Communication

Networks & Communication Reliable Connections Transport layer partitions messages into packets TCP – Transmission Control Protocol Sequence number of current packet Sequence number of last packet received correctly Receiver keeps track of sequence # of packets Reassembles in right order Notify sender of missing, broken packets Sender keeps copy of each packet until receipt acknowledged Retransmits packets if no acknowledgement Window defines how many packet buffers to maintain for efficient transmission Allows many packets in “flight” CS-502 Fall 2007 Networks & Communication

Reliable Connections (continued) Packet i Packet i+1 Packet i+2 Packet i+3 … rec’d i Packet i+k time CS-502 Fall 2007 Networks & Communication

Reliable Connections (continued) Packet i Packet i+1 Packet i+2 Packet i+3 … rec’d i rec’d i Packet i+k time CS-502 Fall 2007 Networks & Communication

Reliable Connections (continued) Packet i Packet i+1 Packet i+2 Packet i+3 … rec’d i rec’d i Packet i+k rec’d i+2 time CS-502 Fall 2007 Networks & Communication

Reliable Connections (continued) Packet i Packet i+1 Packet i+2 Packet i+3 … rec’d i lost rec’d i Packet i+k rec’d i+2 … rec’d i+2 time CS-502 Fall 2007 Networks & Communication

Reliable Connections (continued) If acknowledgement received for packet i Delete from buffer all packets  i If no acknowledgement received within a reasonable time for packet k Retransmit from buffer all packets  k Result Recovers from loss of packets Recovers from loss of acknowledgements Works well for reasonably reliable internet Doesn’t work so well for noisy, unreliable networks CS-502 Fall 2007 Networks & Communication

Networks & Communication Reminder How do we know if a packet is received correctly? Cyclic Redundancy Check (CRC) Polynomial computed from packet header and body Usually 16 or 32 bits, computed by hardware Appended to message Recomputed on reception, compared with transmitted CRC Equal  packet received correctly CS-502 Fall 2007 Networks & Communication

Examples of Connection-based Protocols Telnet (virtual terminal) 2-way communication by character stream Line-by-line organization SMTP (Simple Mail Transport Protocol) For sending mail Layered on top of telnet protocol POP (Post Office Protocol) For receiving your mail FTP (File Transfer Protocol) For transmitting ASCII or binary files Binary data transmission not layered on telnet protocol … CS-502 Fall 2007 Networks & Communication

Connection-less communication Some communication protocols don’t need the overhead of reliable connections When some number of errors can be tolerated Where recovery from those errors is easy UDP – User Datagram Protocol The internet connection-less protocol (layer 4) Breaks messages into packets Reassembles at destination Messages delivered completely or not at all Does not send acknowledgement of correct receipt CS-502 Fall 2007 Networks & Communication

Networks & Communication Examples HTTP (HyperText Transport Protocol) Web server responds directly to requests If client does not get response, retries request NFS (Network File System) For access to files on servers as if they are local RPC (Remote Procedure Call) Next topic … CS-502 Fall 2007 Networks & Communication

Networks & Communication Summary Socket, connection Network stack, 7-layer model Establishing a connection Reliable transmission Reading assignment Silbershatz Chapter 16 CS-502 Fall 2007 Networks & Communication