csci411 introduction to computer networking ©2011, ma doman 1

Post on 13-Jan-2016

215 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

CSCI411 Introduction to Computer Networking

©2011, MA Doman 1

Today – General Overview

Introduce basic concepts and vocabulary

Networking overview Internet: What is the internet

Architecture Layers

©2011 MA Doman 2

What is a Network? Basically, the collection of elements

needed to enable information exchange between people, systems, or people and systems Hardware

• End points, routers, switches.. Software

• Protocols, end applications .. Transmission media

• Wires, air … Services

• Reliability• Completeness of messages

©2011 MA Doman 3

Bus Network Token Ring Star

Wired Network Topologies

Bus Network Token Ring Star

Wired Network Topologies

Bus Network Token Ring Star

Advantage:•Fault Tolerant

Disadvantage:•lots of wires

Wired Network Topologies

Mobility in a wireless network

network infrastructure

wireless hosts laptop, PDA, IP phone

Access point typically connected to

a wired network

Mobility in a wireless network

Ad hoc mode no base stations nodes can only transmit

to other nodes within link coverage

nodes organize themselves into a network: route among themselves

Network Structure

Local-Area Network (LAN) – designed to cover small geographical area.

Wide-Area Network (WAN) – links geographically separated sites

Introduction 1-11

Internet: “network of networks” Interconnected ISPs

protocols control sending, receiving of msgs e.g., TCP, IP, HTTP, Skype,

802.11 Internet standards

RFC: Request for comments IETF: Internet Engineering

Task Force

What’s the Internet ?

mobile network

global ISP

regional ISP

home network

institutional network

Introduction

A closer look at network structure:

network edge: hosts: clients and servers servers often in data centers

access networks, physical media: wired, wireless communication links

network core: interconnected routers network of networks

mobile network

global ISP

regional ISP

home network

institutional network

1-12

Network Conversations

13

Requester

Replier

End-to-end communicationNetwork path

Physical link path

Introduction 1-14

What’s a protocol?

human protocols: “what’s the time?” “I have a question” introductions

… specific msgs sent… specific actions

taken when msgs received, or other events

network protocols: machines rather

than humans all communication

activity in Internet governed by protocols

protocols define format, order of msgs sent and

received among network entities, and actions taken on msg transmission, receipt

A Layered Architecture… also known as a Stack of Protocols

LAYERS: Each system is viewed logically as composed of an ordered set of subsystems.

INTERFACE: Adjacent subsystems in the vertical hierarchy (the layers) communicate through a common boundary.

ENTITIES: Functional module of each layer. Entities in the same layer but installed on different systems are called “peer” entities.

PROTOCOLS: Peer entities communicate through peer “protocols” at the appropriate (containing) layer.

16

The OSI Reference Model Open Systems Interconnection, OSI Adopted as an international standard in 1983

identifies functions and services that are fundamental to providing reliable, cost-effective, secure, and transparent communications

defines the concept of layered architecture in terms of functions, services, and protocols

became a framework for defining standards for linking heterogeneous computers… NO precise definition of how the functions would be accomplished

is the basis for connecting “open” systems for distributed application processing by creating and implementing a protocol stack

©2005, L.A. DeNoia 17

OSI Layers

OSI ReferenceApplication FTAM, X.400, etc.

Presentation ISO 8823

Session ISO 8327

Transport ISO 8073

Network ISO 8473

Data Link ISO 8802.x LLC/MAC

Physical physical

©2005, L.A. DeNoia 18

Introduction 1-19

Internet protocol stack application: supporting

network applications FTP, SMTP, HTTP

transport: process-process data transfer TCP, UDP

network: routing of datagrams from source to destination IP, routing protocols

link: data transfer between neighboring network elements Ethernet, 802.111 (WiFi), PPP

physical: bits “on the wire”

Application

Transport

Network

Link

Physical

Internet (TCP/IP) and OSI Layers

Internet Suite OSI Reference

Telnet, FTP, SMTP, HTTP, etc.

Application

Application FTAM, X.400, etc.

Presentation ISO 8823

Session ISO 8327

TCP, UDPHost-to-host

Transport ISO 8073

NetworkIP, ICMP, etc.

Network ISO 8473

Link 802.x MAC Data LinkISO 8802.x LLC/MAC

Physical 802.x phys Physical physical©2005, L.A. DeNoia 20

Up and Down the Layers

©2005, L.A. DeNoia 21

Phys

Link

Network

TCP

server

Phys

Link

Network

TCP

browser

Phy

Link

Network

Phys

Link

Open System ARelay Node Open System B

HTTP msg

TCP segment

pkt

frm

bits

router

View of Encapsulation

©2005, L.A. DeNoia 22

User Data

TCP segment

Network segment

Link layer segment

MAC frame

TCP hdr

IP hdr

Linkhdr

MAC trlr

MAC hdr

TCP/IP Message Flow

©2005, L.A. DeNoia 23

Data Link Layer Data Link Layer

Network Layer Network Layer

Physical Layer Physical Layer

Service

Access Point

Ethernet frames

bits

Interface

Transport Layer Transport Layer

Application Layer Application Layer

IP packets

TCP segments

HTTP messages

©2010, M.A.Doman 24

Application Layer

Payload

Payload

Payload

Payload

MAC frame

Transport layer hdr

Network layer hdr

Link Layer hdr

MAC trlr

MAC hdr

User MessageApplication hdr

Application Layer 2-25

Creating a network appwrite programs that: run on (different) end

systems communicate over

network e.g., web server software

communicates with browser software

no need to write software for network-core devices

network-core devices do not run user applications

applications on end systems allows for rapid app development, propagation

applicationtransportnetworkdata linkphysical

applicationtransportnetworkdata linkphysical

applicationtransportnetworkdata linkphysical

Application Layer 2-26

Client-server architecture

server: always-on host permanent IP address data centers for scaling

clients: communicate with server may be intermittently

connected may have dynamic IP

addresses do not communicate

directly with each other

client/server

Application Layer 2-27

P2P architecture no always-on server arbitrary end systems

directly communicate peers request service

from other peers, provide service in return to other peers self scalability – new

peers bring new service capacity, as well as new service demands

peers are intermittently connected and change IP addresses complex

management

peer-peer

Application Layer 2-28

What transport service does an app need?data integrity some apps (e.g., file

transfer, web transactions) require 100% reliable data transfer

other apps (e.g., audio) can tolerate some losstiming

some apps (e.g., Internet telephony, interactive games) require low delay to be “effective”

throughput some apps (e.g.,

multimedia) require minimum amount of throughput to be “effective”

other apps (“elastic apps”) make use of whatever throughput they get

security encryption, data

integrity, …

Application Layer 2-29

DNS: domain name systemDNS services hostname to IP

address translation host aliasing

canonical, alias names

mail server aliasing load distribution

replicated Web servers: many IP addresses correspond to one name

Domain Name System:

distributed database implemented in hierarchy of many name serversapplication-layer protocol: hosts, name servers communicate to resolve names (address/name translation)

note: core Internet function, implemented as application-layer protocolcomplexity at network’s “edge”

Application Layer 2-30

Root DNS Servers

com DNS servers org DNS servers edu DNS servers

poly.eduDNS servers

umass.eduDNS servers

yahoo.comDNS servers

amazon.comDNS servers

pbs.orgDNS servers

DNS: a distributed, hierarchical database

client wants IP for www.amazon.com; 1st approx: client queries root server to find com DNS server client queries .com DNS server to get amazon.com

DNS server client queries amazon.com DNS server to get IP

address for www.amazon.com

… …

Application Layer 2-31

Processes communicating

process: program running within a host

within same host, two processes communicate using inter-process communication (defined by OS)

processes in different hosts communicate by exchanging messages

client process: process that initiates communication

server process: process that waits to be contacted

aside: applications with P2P architectures have client processes & server processes

clients, servers

Application Layer 2-32

Sockets process sends/receives messages to/from its socket socket analogous to door

sending process shoves message out door sending process relies on transport infrastructure

on other side of door to deliver message to socket at receiving process

Internet

controlledby OS

controlled byapp developer

transport

application

physical

link

network

process

transport

application

physical

link

network

processsocket

Application Layer 2-33

Addressing processes

to receive messages, process must have identifier

host device has unique 32-bit IP address

Q: does IP address of host on which process runs suffice for identifying the process?

identifier includes both IP address and port numbers associated with process on host.

example port numbers: HTTP server: 80 mail server: 25

to send HTTP message to gaia.cs.umass.edu web server: IP address:

128.119.245.12 port number: 80

A: no, many processes can be running on same host

©2010, M.A.Doman 34

Transport layer

Payload

Payload

Payload

Payload

MAC frame

Transport layer hdr

Network layer hdr

Link Layer hdr

MAC trlr

MAC hdr

User MessageApplication hdr

Transport Layer 3-35

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

transportnetworkdata linkphysical

logical end-end transport

application

transportnetworkdata linkphysical

Transport Layer 3-36

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

transportnetworkdata linkphysical

application

transportnetworkdata linkphysical

networkdata linkphysical

networkdata linkphysical

networkdata linkphysical

networkdata linkphysical

networkdata linkphysical

networkdata linkphysical

networkdata linkphysical

logical end-end transport

Application Layer 2-37

Internet transport protocols servicesTCP service: reliable transport

between sending and receiving process

flow control: sender won’t overwhelm receiver

congestion control: throttle sender when network overloaded

does not provide: timing, minimum throughput guarantee, security

connection-oriented: setup required between client and server processes

UDP service: unreliable data

transfer between sending and receiving process

does not provide: reliability, flow control, congestion control, timing, throughput guarantee, security, orconnection setup,

Q: why bother? Why is there a UDP?

©2010, M.A.Doman 38

Network layer

Payload

Payload

Payload

Payload

MAC frame

Transport layer hdr

Network layer hdr

Link Layer hdr

MAC trlr

MAC hdr

User MessageApplication hdr

Network Layer 4-39

Network layer transport segment from

sending to receiving host

on sending side encapsulates segments into datagrams

on receiving side, delivers segments to transport layer

network layer protocols in every host, router

router examines header fields in all IP datagrams passing through it

applicationtransportnetworkdata linkphysical

applicationtransportnetworkdata linkphysical

networkdata linkphysical network

data linkphysical

networkdata linkphysical

networkdata linkphysical

networkdata linkphysical

networkdata linkphysical

networkdata linkphysical

networkdata linkphysical

networkdata linkphysical

networkdata linkphysicalnetwork

data linkphysical

Routing Strategies

Fixed routing - A path from A to B is specified in advance; path changes only if a hardware failure disables it Since the shortest path is usually chosen,

communication costs are minimized Virtual circuit - A path from A to B is

fixed for the duration of one session. Different sessions involving messages from A to B may have different paths Partial remedy to adapting to load changes Ensures that messages will be delivered in

the order in which they were sent

Network Layer 4-41

Router architecture overviewtwo key router functions: run routing algorithms/protocol (RIP, OSPF, BGP) forwarding datagrams from incoming to outgoing link

high-seed switching

fabric

routing processor

router input ports router output ports

forwarding data plane (hardware)

routing, managementcontrol plane (software)

forwarding tables computed,pushed to input ports

Network Layer 4-42

IP addressing: introduction

Q: how are interfaces actually connected?A: Happens in the linklayer

223.1.1.1

223.1.1.2

223.1.1.3

223.1.1.4 223.1.2.9

223.1.2.2

223.1.2.1

223.1.3.2223.1.3.1

223.1.3.27

A: wired Ethernet interfaces connected by Ethernet switches

A: wireless WiFi interfaces connected by WiFi base station

For now: don’t need to worry about how one interface is connected to another (with no intervening router)

Network Layer 4-43

NAT: network address translation

10.0.0.1

10.0.0.2

10.0.0.3

10.0.0.4

138.76.29.7

local network(e.g., home network)

10.0.0/24

rest ofInternet

datagrams with source or destination in this networkhave 10.0.0/24 address for source, destination (as usual)

all datagrams leaving local

network have same single source NAT IP

address: 138.76.29.7,different source port numbers

Routing Strategies (Cont.)

Dynamic routing - The path used to send a message form site A to site B is chosen only when a message is sent Usually a site sends a message to another

site on the link least used at that particular time

Adapts to load changes by avoiding routing messages on heavily used path

Messages may arrive out of order• This problem can be remedied by appending a

sequence number to each message

Connection Strategies Circuit switching - A permanent physical link is

established for the duration of the communication (i.e., telephone system)

Message switching - A temporary link is established for the duration of one message transfer (i.e., post-office mailing system)

Packet switching - Messages of variable length are divided into fixed-length packets which are sent to the destination Each packet may take a different path through the network The packets must be reassembled into messages as they

arrive Circuit switching requires setup time, but incurs less

overhead for shipping each message, and may waste network bandwidth Message and packet switching require less setup time, but

incur more overhead per message

Contention

CSMA/CD - Carrier sense with multiple access (CSMA); collision detection (CD) A site determines whether another message

is currently being transmitted over that link. If two or more sites begin transmitting at exactly the same time, then they will register a CD and will stop transmitting

When the system is very busy, many collisions may occur, and thus performance may be degraded

CSMA/CD is used successfully in the Ethernet system, the most common network system

Several sites may want to transmit information over a link simultaneously. Techniques to avoid repeated collisions include:

Contention (Cont.) Token passing - A unique message type, known as a

token, continuously circulates in the system (usually a ring structure) A site that wants to transmit information must wait until the

token arrives When the site completes its round of message passing, it

retransmits the token A token-passing scheme is used by some IBM and HP/Apollo

systems Message slots - A number of fixed-length message

slots continuously circulate in the system (usually a ring structure) Since a slot can contain only fixed-sized messages, a single

logical message may have to be broken down into a number of smaller packets, each of which is sent in a separate slot

This scheme has been adopted in the experimental Cambridge Digital Communication Ring

©2010, M.A.Doman 48

Link Layer of Encapsulation

Payload

Payload

Payload

Payload

MAC frame

Transport layer hdr

Network layer hdr

Link Layer hdr

MAC trlr

MAC hdr

User MessageApplication hdr

Link Layer 5-49

Link layer: introductionterminology: hosts and routers: nodes communication channels

that connect adjacent nodes along communication path: links wired links wireless links LANs

layer-2 packet: frame, encapsulates datagram

data-link layer has responsibility of transferring datagram from one node to physically adjacent node over a link

global ISP

Link Layer 5-50

Link layer services framing, link access:

encapsulate datagram into frame, adding header, trailer

channel access if shared medium “MAC” addresses used in frame headers to

identify source, dest • different from IP address!

reliable delivery between adjacent nodes we learned how to do this already (chapter 3)! seldom used on low bit-error link (fiber, some

twisted pair) wireless links: high error rates

• Q: why both link-level and end-end reliability?

Link Layer 5-51

flow control: pacing between adjacent sending and receiving

nodes error detection:

errors caused by signal attenuation, noise. receiver detects presence of errors:

• signals sender for retransmission or drops frame error correction:

receiver identifies and corrects bit error(s) without resorting to retransmission

half-duplex and full-duplex with half duplex, nodes at both ends of link can

transmit, but not at same time

Link layer services (more)

Link Layer 5-52

Where is the link layer implemented? in each and every host link layer implemented

in “adaptor” (aka network interface card NIC) or on a chip Ethernet card, 802.11

card; Ethernet chipset implements link,

physical layer attaches into host’s

system buses combination of

hardware, software, firmware

controller

physicaltransmission

cpu memory

host bus (e.g., PCI)

network adaptercard

applicationtransportnetwork

link

linkphysical

Link Layer 5-53

Channel partitioning MAC protocols: TDMA

TDMA: time division multiple access access to channel in "rounds" each station gets fixed length slot

(length = pkt trans time) in each round unused slots go idle example: 6-station LAN, 1,3,4 have pkt,

slots 2,5,6 idle

1 3 4 1 3 4

6-slotframe

6-slotframe

Link Layer 5-54

FDMA: frequency division multiple access channel spectrum divided into frequency bands each station assigned fixed frequency band unused transmission time in frequency bands go

idle example: 6-station LAN, 1,3,4 have pkt,

frequency bands 2,5,6 idle

freq

uenc

y ba

nds

time

FDM cable

Channel partitioning MAC protocols: FDMA

5-55

Check for collision Transmit only if the line is free

Random Access

Link Layer 5-56

MAC addresses and ARP

32-bit IP address: network-layer address for interface used for layer 3 (network layer) forwarding

MAC (or LAN or physical or Ethernet) address: function: used ‘locally” to get frame from one

interface to another physically-connected interface (same network, in IP-addressing sense)

48 bit MAC address (for most LANs) burned in NIC ROM, also sometimes software settable

e.g.: 1A-2F-BB-76-09-ADhexadecimal (base 16) notation(each “number” represents 4 bits)

Link Layer 5-57

LAN addresses and ARPeach adapter on LAN has unique LAN address

adapter

1A-2F-BB-76-09-AD

58-23-D7-FA-20-B0

0C-C4-11-6F-E3-98

71-65-F7-2B-08-53

LAN(wired orwireless)

Thank You!

58

Be sure to start the first lab: Introduction to the OpNet Simulator

top related