Introduction to Computer Networks

Slides:



Advertisements
Similar presentations
Spring 2000CS 4611 Introduction Outline Statistical Multiplexing Inter-Process Communication Network Architecture Performance Metrics.
Advertisements

Spring 2003CS 4611 Introduction, Continued COS 461.
Network Architectures Professor Jinhua Guo CIS 527 Fall 2002.
Spring 2004 EE4272 EE4272: Computer Networks Instructor: Dr. Tricia Chigan Dept.: Elec. & Comp. Eng.
Socket Programming.
CIS 527 Computer Networks Introduction Professor Jinhua Guo (updated version) Fall 2003.
Foundation Outline Requirements Network Architecture Implementing Network Software.
Networking Theory (Part 1). Introduction Overview of the basic concepts of networking Also discusses essential topics of networking theory.
CS 268: Lecture 2 (Layering & End-to-End Arguments)
Spring 2003CS 4611 Welcome to COS 461 Vivek Pai. Spring 2003CS 4612 Mechanics First time teaching 461 –But have been doing some level of networking for.
EE 122: Layering and the Internet Architecture Kevin Lai September 4, 2002.
1/20 Introduction Outline Statistical Multiplexing Inter-Process Communication Network Architecture Performance Metrics Implementation Issues.
Data Communications Architecture Models. What is a Protocol? For two entities to communicate successfully, they must “speak the same language”. What is.
Fundamentals of Computer Networks ECE 478/578 Lecture #2 Instructor: Loukas Lazos Dept of Electrical and Computer Engineering University of Arizona.
Lecture 1, 1Spring 2003, COM1337/3501Computer Communication Networks Rajmohan Rajaraman COM1337/3501 Textbook: Computer Networks: A Systems Approach, L.
CS 6401 Introduction to Networking Aditya Akella Outline Administrivia Networking History Statistical Multiplexing Performance Metrics.
Fall 2009COSC 6501 Welcome to COSC650 Towson University Yanggon Kim.
1 Introduction to Computer Networks Foundation Ilam University Mozafar Bag-Mohammadi.
CS 268: Lecture 3 (Layering & End-to-End Arguments)
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.
1 An Introduction to Computer Networks University of Tehran Dept. of EE and Computer Engineering By: Dr. Nasser Yazdani Lecture 2: Foundation.
Internet Addresses. Universal Identifiers Universal Communication Service - Communication system which allows any host to communicate with any other host.
Computer Networks. Introduction Computer Network2 A History Lesson of Networking 1969 – ARPANET, first packet switched network consist of UCLA, Stanford,
TCOM 509 – Internet Protocols (TCP/IP) Lecture 03_b Protocol Layering Instructor: Dr. Li-Chuan Chen Date: 09/15/2003 Based in part upon slides of Prof.
William Stallings Data and Computer Communications
1 Pre-Introduction What is computer network?. 2 Pre-Introduction Suppose you want to build a computer network The question is: –What available technologies.
Fall 2001CS 6401 Introduction to Networking Outline Networking History Statistical Multiplexing Performance Metrics.
Spring 2002CS 4611 Introduction Outline Statistical Multiplexing Inter-Process Communication Network Architecture Performance Metrics Implementation Issues.
Lecture 1 Outline Statistical Multiplexing Inter-Process Communication.
Requirements Connectivity Resource Sharing Support for Common Services Performance.
Department of Electronic Engineering City University of Hong Kong EE3900 Computer Networks Protocols and Architecture Slide 1 Use of Standard Protocols.
1 Introduction Outline Statistical Multiplexing Inter-Process Communication Network Architecture Performance Metrics Implementation Issues.
Spring 2002CS 3321 Introduction Outline Statistical Multiplexing Network Architecture Performance Metrics (just a little)
1 Network Architecture Section Network Architecture Challenge –Fill the gap between hardware capabilities and application expectations, and to.
Performance Metrics & Network Architectures Professor Jinhua Guo CIS 427 Winter 2003.
Computer Networking A Top-Down Approach Featuring the Internet Introduction Jaypee Institute of Information Technology.
CS380 Intro. to Comp. Networks Introduction & Foundation1 Introduction and Foundation.
Roadmap  Introduction to Basics  Computer Network – Components | Classification  Internet  Clients and Servers  Network Models  Protocol Layers.
Data and Computer Communications Chapter 2 – Protocol Architecture, TCP/IP, and Internet-Based Applications.
OSI Model OSI MODEL. Communication Architecture Strategy for connecting host computers and other communicating equipment. Defines necessary elements for.
OSI Model OSI MODEL.
Network Models.
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.
Lecture (2).
Computer Networks.
Click to edit Master subtitle style
OSI Protocol Stack Given the post man exemple.
Lecturer, Department of Computer Application
DEPARTMENT OF COMPUTER SCIENCE
Understanding the OSI Reference Model
Administrative stuff TA: Almudena Konrad Paper reviews:
Protocols and the TCP/IP Suite
The University of Adelaide, School of Computer Science
Process-to-Process Delivery:
University of Houston Datacom II Lecture 1B Review Dr Fred L Zellner
TCP/IP Protocol Suite: Review
Network Architecture for Cyberspace
OSI Model OSI MODEL.
Introduction Outline Statistical Multiplexing Network Architecture
Network Architecture Models
Optical communications & networking - an Overview
Protocols and the TCP/IP Suite
Computer Networking A Top-Down Approach Featuring the Internet
Introduction and Foundation
EEC4113 Data Communication & Multimedia System Chapter 1: Introduction by Muhazam Mustapha, July 2010.
Process-to-Process Delivery: UDP, TCP
Introduction and Foundation
Network Basics and Architectures Neil Tang 09/05/2008
Presentation transcript:

Introduction to Computer Networks Foundation Ilam University Mozafar Bag-Mohammadi

Statistical Multiplexing Inter-Process Communication Outline Introduction Statistical Multiplexing Inter-Process Communication Network Architecture Performance Metrics

Introduction Building a network to support diverse ranges of applications Distributed computing. Multimedia. Telecommunication. E-commerce, etc. What kind of technology do we need? Hardware. Software.

First Step What is computer Network? Different views. Differences from other networks, Its generality. What is requirements? Different perspective: Network provider Network designer Application programmer

Design goals Connectivity Scalability Simplicity Efficiency For designers. Most importantly for users. Efficiency cost performance Support for common user services.

Building Blocks Nodes: PC, special-purpose hardware… hosts switches, routers and gateways Links: coaxial cable, optical fiber… point-to-point multiple access …

Switched Networks A network can be defined recursively as... two or more networks connected by two or more nodes two or more nodes connected by a link, or

Strategies Circuit switching: carry bit streams Connection oriented. Original telephone network Dedicated resource. Packet switching: store-and-forward messages Connectionless (IP) or connection oriented (ATM) Shared resource. Packet switching is the focus of computer Networks.

Addressing and Routing Address: byte-string that identifies a node usually unique Routing: process of forwarding messages to the destination node based on its destination address Types of addresses unicast: node-specific broadcast: all nodes on the network multicast: some subset of nodes on the network

Multiplexing (resource sharing) Time-Division Multiplexing (TDM) Frequency-Division Multiplexing (FDM) L1 L2 L3 R1 R2 R3 Switch 1 Switch 2

Statistical Multiplexing On-demand time-division Schedule link on a per-packet basis Packets from different sources interleaved on link scheduling fairness, quality of service Buffer packets that are contending for the link Buffer (queue) overflow is called congestion …

Packet Switching A node in a packet switching network incoming links outgoing links Memory

Inter-Process Communication Turn host-to-host connectivity into process-to-process communication regardless where the process are. Give a unified view and fill gaps between what applications expect and what the underlying technology provides. Host Host Application Host Channel Application Host Host

IPC Abstractions Request/Reply (Client-server) Guarantee delivering data, and might protect privacy and integrity. distributed file systems (NFS) digital libraries (web) File Transfer (FTP) Stream-Based- sequence or stream of bits. Video on demand: sequence of frames. Delay constrained, but can be fetched before hand. For example, a 1/4 NTSC with 352x240 pixels and 24 bit color. (352 x 240 x 24)/8=247.5KB Assuming 30 frame per second => 7500KBps = 60Mbps Video Conferencing- tightly delay bounded. VIC From Berkeley. Both application can tolerate packet loss.

Reliability in the network? What Goes Wrong in the Network? Bit-level errors (electrical interference), a bit is corrupted or a burst error. Packet-level errors (congestion) Messages are delayed Messages are deliver out-of-order Packet loss Third parties eavesdrop Link and node failures

Performance Metrics Bandwidth (throughput) Latency (delay) data transmitted per time unit link versus end-to-end notation KB = 210 bytes Mbps = 106 bits per second Latency (delay) time to send message from point A to point B one-way versus round-trip time (RTT) components Latency = Propagation + Transmit + Queue Propagation = Distance / c (light speed) Transmit = Size / Bandwidth

Bandwidth versus Latency Relative importance Latency bounded- sending 1-byte by client, 1ms vs 100ms dominates sending a message on a 1Mbps or 100Mbps link Bandwidth Bounded- sending 25MB image: 1Mbps vs 100Mbps dominates 1ms vs 100ms delayed channel. Infinite bandwidth RTT dominates Throughput = TransferSize / TransferTime TransferTime = RTT + 1/Bandwidth x TransferSize 1-MB file to 1-Gbps link the same as 1-KB packet to 1-Mbps link.

Delay x Bandwidth Product Amount of data “in flight” or “in the pipe” Example: 100ms x 45Mbps = 560KB We are usually more interested in 2 times of this value Since it take RTT to hear from receiver.

Host-to-host connectivity Layering Use abstractions to hide complexity and decompose to manageable components. Abstraction naturally lead to layering Alternative abstractions at each layer Application programs Request/reply Message stream channel channel Host-to-host connectivity Hardware

Layering Advantages Disadvantages Modularity – protocols easier to manage and maintain Abstract functionality –lower layers can be changed without affecting the upper layers Reuse – upper layers can reuse the functionality provided by lower layers Disadvantages Information hiding – inefficient implementations

Protocols Building blocks of a network architecture, or layer abstraction. Each protocol object has two different interfaces service interface: operations on this protocol peer-to-peer interface: messages exchanged with peer Term “protocol” is overloaded specification of peer-to-peer interface module that implements this interface

Interfaces Host 1 Host 2 Service High-level High-level object Protocol Protocol Peer-to-peer interface

Protocol Machinery Protocol Graph Nodes are protocols and edge are depends on. most peer-to-peer communication is indirect peer-to-peer is direct only at hardware level Digital library application Video RRP MSP HHP File Host 1 Digital library application Video RRP MSP HHP File Host 2

Protocol Machinery (cont) Multiplexing and Demultiplexing (demux key) Encapsulation (header/body) Host 1 Host 2 Application Application program program Data Data RRP RRP RRP Data RRP Data HHP HHP HHP RRP Data

ISO OSI Reference Model ISO – International Standard Organization OSI – Open System Interconnection Started to 1978; first standard 1979 ARPANET started in 1969; TCP/IP protocols ready by 1974 Goal: a general open standard allow vendors to enter the market by using their own implementation and protocols

ISO Architecture Telnet, FTP, TFTP MSB, integer Manage TCP streams End host End host Telnet, FTP, TFTP MSB, integer Manage TCP streams Message, P2P(process) Packet, routing Frame, CRC Raw bit pipe Application Application Presentation Presentation Session Session Transport Transport Network Network Network Network Data link Data link Data link Data link Physical Physical Physical Physical One or more nodes within the network The last 3 protocols are implemented in all elements in the Network.

Encapsulation A layer can use only the service provided by the layer immediate below it Each layer may change and add a header to data packet data data data data data data data data data data data data data data

OSI Model Concepts Service – says what a layer does Interface – says how to access the service Protocol – says how is the service implemented a set of rules and formats that govern the communication between two peers

Physical Layer (1) Service: move the information between two systems connected by a physical link Interface: specifies how to send a bit Protocols: coding scheme used to represent a bit, voltage levels, duration of a bit Examples: coaxial cable, optical fiber links; transmitters, receivers

Datalink Layer (2) Service: framing, i.e., attach frame separators send data frames between peers others: arbitrate the access to common physical media ensure reliable transmission provide flow control Interface: send a data unit (packet) to a machine connected to the same physical media Protocols: physical layer addresses, implement Medium Access Control (MAC) (e.g., CSMA/CD)…

Network Layer (3) Service: deliver a packet to specified destination perform segmentation/reassemble others: packet scheduling buffer management Interface: send a packet to a specified destination Protocols: define global unique addresses; construct routing tables

Transport Layer (4) Services: provide an error-free and flow-controlled end-to-end connection multiplex multiple transport connections to one network connection split one transport connection in multiple network connections Interface: send a packet to specified destination Protocols: implement reliability and flow control Examples: TCP and UDP

Session Layer (5) Service: Interface: depends on service full-duplex access management, e.g., token control synchronization, e.g., provide check points for long transfers Interface: depends on service Protocols: token management; insert checkpoints,

Presentation Layer (6) Service: convert data between various representations Interface: depends on service Protocol: define data formats, and rules to convert from one format to another

Application Layer (7) Service: any service provided to the end user Interface: depends on the application Protocol: depends on the application Examples: FTP, Telnet, WWW browser

Internet Architecture Defined by Internet Engineering Task Force (IETF). Developed in mid 60s in the ARPANET project. No assumption about the network tech. … FTP HTTP NV TFTP TCP UDP IP NET 1 2 n

Internet Architecture Hourglass Design, IP is the focal point. Delivery is separated from end-to-end process channel. No restrict layering Application vs Application Protocol (FTP, HTTP) Network IP TCP UDP Application

OSI vs. TCP/IP OSI: conceptually define services, interfaces, protocols Internet: provide a successful implementation IP LAN Packet radio TCP UDP Telnet FTP DNS Application Application Presentation Session Transport Transport Network Internet Datalink Host-to- network Physical OSI TCP