computer network basics
DESCRIPTION
Computer network basics - FULL NETOWRKING ppT ANY MORE INFO.....CALL METRANSCRIPT
Computer Network Basics
An overview of computer networking which introduces many key concepts and terminology. Sets the stage for future topics.
Components of any Computer
Processor (active)
Computer
Control(“brain”)
Datapath(“brawn”)
Memory(passive)
(where programs, data live whenrunning)
Devices
Input
Output
Keyboard, Mouse
Display, Printer
Disk,Network
Communication Devices
Synchronous communication uses a clock signal separate from the data signal- communication can only happen during the ‘tick’ of the timing cycle
Asynchronous communication does not use a clock signal- rather, it employs a start and stop bit to begin and end the irregular transmission of data
Connecting to Networks (and Other I/O)
Bus - shared medium of communication that can connect to many devices
Hierarchy of Buses in a PC
Operating systems
Developer or manufacturer Operating system
Apple Computers Inc. Mac OS 8/9/X
AT&T Bell Laboratories Unix
Be Inc. beOS
Berkeley University BSD, FreeBSD
Carnegie-Mellon University Mach 3.0
Cisco Systems Inc. IOS
HP HP-UX
IBM AIX and OS/2
Linus Thorvald Linux
Microsoft Windows XP, Vista
Novell NetWare
Santa Cruz Operation Inc. (SCO) SCO XENIX, SCO UNIX, SCO MPX
Siemens SINIX
Silicon Graphics IRIX
Sun Microsystems Solaris, SunOS, JavaOS
Operating Systems Developed for Portable Devices
Developer or manufacturer Operating system
Microsoft Windows CE
Microsoft Windows Mobile 6.0
Palm PalmOS
Symbian Symbian OS
RIM (Research In Motion Limited) RIM
A closer look at network structure:
network edge: applications and hosts
network core: routersnetwork of
networks
General Architecture of Computer Networks
Cloud
External nodes
Internal nodes
(or stations)
(swithing devices)
The Network Core
mesh of interconnected routers
the fundamental question: how is data transferred through net? circuit switching:
dedicated circuit per call: telephone net
packet-switching: data sent thru net in discrete “chunks”
Connection of Networks
networks or subnetworks
router orgateway
node(host,
station)
Network Topology
a) bus, b) star, c) ring, d) tree structure
a) b) c) d)
Classification of the networks according to the connection
establishing
Line switched network Packet switched network Radiating/data disseminating systems Point-to-point connected networks
Wired media
Telephone line Thin Coax Thick Coax Unshielded Twisted Pair (UTP) Shielded Twisted Pair (STP) Fibre
(Data) Reliability
A network service is (data) reliable if the sender application can rely on the error-free and ordered delivery of the data to the destination
In the Internet the reliability can obtained mainly by acknowledgements and retransmission
In such a way the losses in the underlying layers can be retrieved
Flow-control and Congestion Prevention
Flow-control: to protect the receiver against the overload I.e.: the sender (source) sends
more data than the receiver can process
it is mainly necessary in link and transport level
Congestion prevention: to prevent the intermediate nodes against the overload it is mainly necessary in network
level
Overload and Congestion
Overload: Too many packets occur in a subnetwork in the same time, which prevent each other and in such a way the throughput decreases
Congestion: the queues in the routers are too long, the buffers are full. As a consequence some packages are
dropped if the buffers of the routers are overloaded
In extreme case: grid-lock, lock-up
Deadlock
Deadlock: the most serious situation of the congestion, the routers wait for each other
Direct store and forward deadlock: the buffers of two neighbouring routers are full with the packets to be sent to the other router
Indirect store and forward deadlock: the deadlock occurred not between two neighbouring routers but in a subnetwork, where any of the routers has not free buffer space for accepting packets
Network: physical connection that allows two computers to communicate
Packet: unit of transfer, bits carried over the network Network carries packets from on CPU to another Destination gets interrupt when packet arrives
Protocol: agreement between two parties as to how information is to be transmitted
Broadcast Network: Shared Communication Medium Delivery: How does a receiver know who packet is for?
Put header on front of packet: [ Destination | Packet ] Everyone gets packet, discards if not the target
Arbitration: Act of negotiating use of shared medium Point-to-point network: a network in which every
physical wire is connected to only two computers Switch: a bridge that transforms a shared-bus
(broadcast) configuration into a point-to-point network Router: a device that acts as a junction between two
networks to transfer data packets among them
Review: Networking Definitions
The Need for a Protocol Architecture
Procedures to exchange data between devices can be complex
High degree of cooperation required between communicating systems destination addressing, path readiness to receive file formats, structure of data how commands are sent/received and
acknowledged etc.
Layered Protocol Architecture
Modules arranged in a vertical stack Each layer in stack:
Performs related functions Relies on lower layer for more primitive
functions Provides services to next higher layer Communicates with corresponding peer
layer of neighboring system using a protocol
Network Layering Layering: building complex services from simpler ones
Each layer provides services needed by higher layers by utilizing services provided by lower layers
The physical/link layer is pretty limited Packets are of limited size (called the “Maximum Transfer Unit or
MTU: often 200-1500 bytes in size) Routing is limited to within a physical link (wire) or perhaps through a
switch Our goal in the following is to show how to construct a secure,
ordered, message service routed to anywhere:
Physical Reality: Packets
Abstraction: Messages
Limited Size Arbitrary Size
Unordered (sometimes) Ordered
Unreliable Reliable
Machine-to-machine Process-to-process
Only on local area net Routed anywhere
Asynchronous Synchronous
Insecure Secure
Key Features of a Protocol
Set of rules or conventions to exchange blocks of formatted data
Syntax: data format Semantics: control information
(coordination, error handling) Timing: speed matching, sequencing Actions: what happens when an event
occurs
Operation of Protocols
(interlayer) protocol layerprotocol
Host Host
Physical connection
(n-1). layerprotocol entity
(n-1). layerprotocol entity
(n+1). layerprotocol entity
n. layerprotocol entity
(n+1). layerprotocol entity
n. layerprotocol entity
... ...
The OSI Model
Physical Layer (Data) Link Layer Network Layer Transport Layer Session Layer Presentation Layer Application Layer
Physical Layer
Transmission of energy onto the medium Collection of energy from the medium This layer is concerned with the
physical transmission of raw bits This bits are transmitted through
mechanical, electrical, and procedural interfaces which include
• interface card standard• modem standards• certain portions of the ISDN and LAN MAN
standards
(Data) Link Layer
Transmission of frames over one link or network Often subdivided into the MAC and LLC It receives bits from the physical layer, converting
bits to frames frame boundaries
Using protocols (e.g. HDLC), this layer corrects errors that might have occurred during transmission across a link
In addition this layer provides an “error-free” transmission channel to the next layer known as the network layer: error control ARQ duplicates
Flow control
The previous two layers were concerned with getting error-free data across a link
The network layer establishes connections between nodes, routes data packets through the network, and accounts for them
End-to-end transmission of packets (possibly over multiple links)
Controls the operation of the subnet Routing
static dynamic
Congestion control At this stage, there may be congestion due to many packets
waiting to be routed Some packets may be lost during congestion
Network Layer I
Network Layer II Accounting
packets bytes etc.
Internetworking This layer is also concerned with internetworking
where there is ‘talking’ between technologies, such as the traditional Internet connected to ATM
segmentation addressing sequencing accounting
Broadcast subnets: thin network layer
Transport Layer I
This layer presumes the ability to pass through a network and provides additional services to end-users, such as and-to-and packet reliability
End-to-end delivery of a complete message (end-to-end communication path, usually reliable)
Isolation from “hardware” Multiplexing/demultiplexing Divide message into packets Reassemble (possibly out of order
packets) into the original message of the distant end
Transport Layer II
End-to-end flow control Acknowledgments Types of service
error-free, point-to-point, in sequence, flow controlled
no correctness guarantees no sequencing
Establishing/terminating connections naming/addressing intra-host addressing (process, ports)
This layer enables users to establish sessions across a network between machines
In addition, it offers session management services Set up and management of end-to-end conversation Establish and terminate sessions
superset of connections
Assignment of logical ports Dialogue control Token management
for critical operations
Synchronization checkpoints/restarts
Session Layer
Presentation Layer
This layer is concerned with the syntax and semantics of messages, code conversions between machines, and other data conversion services
Some of these services are data compression and data encryption
Interface between lower layers and application Formatting Syntax & semantics of messages Data encoding (e.g.: ASCII to EBCDIC) Compression Encryption/Decryption Authentication
Application Layer
This layer provides support for the user's network applications
Some application layer services have been standardized, e.g.: File Transfer and Management (FTAM) Message Handling Services for electronic mail (X.400) Directory Services (X.500) Electronic Data Interchange (EDI)
Program you’re running,applications file transfer, access & management e-mail virtual terminals WWW
The OSI Protocol Stack
Operation of the model
Virtualtransmission
Real datatransmission
Applicationlayer entity
Session layerentity
Transportlayer entity
Networklayer entity
Datalinklayer entity
Presentationlayer entity
Intermediate
Networklayer entity
Datalinklayer entity
Intermediate
Networklayer entity
Datalinklayer entity
Endsystem
Applicationlayer entity
Session layerentity
Transportlayer entity
Networklayer entity
Presentationlayer entity
Datalinklayer entity
Physical medium
Endsystem
Physical layerentity
Physical layerentity
Physical layerentity
Physical layerentity
Names of the Nodes, Connections and Data Units
Layer name Node Connection Data unit
Application layer application network service e.g. file (ADU)
Presentation layer host session data structure (PPDU)
Session layer host transport connection message (SPDU)
Transport layer host network path message (TPDU)
Network layer host, router line (data)packet (NPDU)
(Data)link layer station (physical) channel (data)frame (LLC PDU)
Physical layer switch physical transmissionmedium
bit
Communication among the layers
Connection oriented network service (virtual circuits, eg. ATM) • Reliable transport service• Unreliable transport service
Connectionless network service (datagram service, eg. IP)• Reliable transport service (eg. TCP)• Unreliable transport service (eg. UDP)
Network Tools
Repeater: connects network segments logically to one network
Hub: multiport repeater Bridge: datalink level connection of two
networks Switch: multiport bridge Router: connects networks that are
compatible in transport level subnetworks are connected to the interfaces
of the repeater Gateway (proxy server): router
between two individual network. The “Way Out”
Physical Layer Devices
Repeater
Hub “dumb” level-1 hub multi-port repeater
Data Link Layer Devices
Bridge Cascaded vs. Backbone Single Multiple
Switch (switched hub)
Routers
Provide link between networks Accommodate network differences:
Addressing schemes Maximum packet sizes Hardware and software interfaces Network reliability
Congestion/Traffic Management
Devices of the Network Connection
Application layer
Presentation layer
Session layer
Transport layer
Datalink layer
Network layer
Physical layer
Gateway
or
Proxy server
Router or Gateway
Bridge or Switch
Repeater or Hub
Application layer
Presentation layer
Session layer
Transport layer
Datalink layer
Network layer
Physical layer
Architectural Implementation of the LANs
Ethernet (IEEE 802.3)FDDIGigabit EthernetToken Bus (IEEE 802.4)Token Ring (IEEE 802.5)
Characteristics of High-Speed LANs
Fast Ethernet Gigabit Ethernet Fibre Channel Wireless LAN
Data Rate 100 Mbps 1 Gbps, 10 Gbps100 Mbps – 3.2
Gbps1 Mbps – 2 Gbps
Transmission Mode
UTP,STP, Optical Fiber
UTP, shielded cable, optical
fiber
Optical fiber, coaxial cable, STP
2.4 GHz, 5 GHz Microwave
Access Method CSMA/CD CSMA/CD Switched CSMA/CA Polling
Supporting Standard
IEEE 802.3 IEEE 802.3Fibre Channel Association
IEEE 802.11
Wide Area Network Connections
Solutions for connecting LANs to the Internet Ethernet (ring or star topology) Managed Leased Line Network (MLLN) ATM (Asynchronous Transfer Mode) Switched line ISDN line
Soft and Hard States
State: the data collection, which are necessary for keeping the connection between two protocol entities
Hard state If the connection is established once, it is never timed out,
even if it is not in usage To cancel the connection one of the participants of the
connection must explicitly close it The history of the state is stored
Soft state To keep the connection the participants must send
occasionally keep-alive messages, since without keep-alive message the state information is timed out after a certain period
The state is called as “soft” since in the ordinary operation the state can change easily
The history of the state is not stored
Packet switching versus circuit switching
Great for bursty data resource sharing no call setup (less start-up delay)
However… Packets can experience delays, so not for “real-time”
applications excessive congestion leads to packet delay and loss
• protocols (like TCP) are needed for reliable data transfer, and congestion control
Is packet switching best in every case?
Performance Considerations Before continue, need some performance metrics
Overhead: CPU time to put packet on wire Throughput: Maximum number of bytes per second
• Depends on “wire speed”, but also limited by slowest router (routing delay) or by congestion at routers
Latency: time until first bit of packet arrives at receiver• Raw transfer time + overhead at each routing hop
Contributions to Latency Wire latency: depends on speed of light on wire
• about 1–1.5 ns/foot Router latency: depends on internals of router
• Could be < 1 ms (for a good router)
Router Router
LR1 LR2LW1 LW2 Lw3
Delay in packet-switched networks
packets experience delay on end-to-end path
four sources of delay at each hop
Nodal processing: check bit errors determine output link
Queueing: time waiting at output
link for transmission depends on
congestion level of router
A
B
propagation
transmission
nodalprocessing queueing
Delay in packet-switched networks
Transmission delay: R=link bandwidth
(bps) L=packet length (bits) time to send bits into
link = L/R
Propagation delay: d = length of physical
link s = propagation speed in
medium (~2x108 m/sec) propagation delay = d/s
A
B
propagation
transmission
nodalprocessing queueing
Queueing delay (revisited)
R=link bandwidth (bps) L=packet length (bits) a=average packet
arrival rate
traffic intensity = La/R
La/R ~ 0: average queueing delay small La/R -> 1: delays become large La/R > 1: more “work” arriving than can
be serviced, average delay infinite!
Internet protocol stack
Application: supporting network applications ftp, smtp, http
Transport: host-host data transfer tcp, udp
Network: routing of datagrams from source to destination ip, routing protocols
Network access: data transfer between neighboring network elements ppp, ethernet
Physical: bits “on the wire”
Layering: logical communication
applicationtransportnetwork
linkphysical
applicationtransportnetwork
linkphysical
applicationtransportnetwork
linkphysical
applicationtransportnetwork
linkphysical
networklink
physical
data
data
E.g.: transport take data from
app add addressing,
reliability check info to form “datagram”
send datagram to peer
wait for peer to ack receipt
analogy: post office
data
transport
transport
ack
Layering: physical communication
applicationtransportnetwork
linkphysical
applicationtransportnetwork
linkphysical
applicationtransportnetwork
linkphysical
applicationtransportnetwork
linkphysical
networklink
physical
data
data
Protocol layering and data
Each layer takes data from above adds header information to create new data unit passes new data unit to layer below
applicationtransportnetwork
linkphysical
applicationtransportnetwork
linkphysical
source destination
M
M
M
M
Ht
HtHn
HtHnHl
M
M
M
M
Ht
HtHn
HtHnHl
message
segment
datagram
frame
IP over ATM
ATM Adaptation Layer (AAL): interface to upper layers end-system segmentation/
reassembly ATM Layer: cell
switching Physical
AAL5ATM
physical
AAL5ATM
physical
AAL5ATM
physical
AAL5ATM
physical
ATMphysical
applicationTCP/UDP
IP
applicationTCP/UDP
IP
applicationTCP/UDP
IP
applicationTCP/UDP
IP
Physical
Data Link
Network
Transport
Session
Presentation
Application
Network Access
IP
TCP UDP
Application
Sockets
The Internet Protocol Stack
Network Protocols Protocol: Agreement between two parties as to how
information is to be transmitted Example: system calls are the protocol between the operating
system and application Networking examples: many levels
• Physical level: mechanical and electrical network (e.g. how are 0 and 1 represented)
• Link level: packet formats/error control (for instance, the CSMA/CD protocol)
• Network level: network routing, addressing• Transport Level: reliable message delivery
Protocols on today’s Internet:
Ethernet ATM Packet radio
IP
UDP TCP
RPCNFS WWW e-mail ssh
Physical/Link
Network
Transport
Building a messaging serviceProcess to process communication
Basic routing gets packets from machinemachineWhat we really want is routing from
processprocess• Example: ssh, email, ftp, web browsing
Several IP protocols include notion of a “port”, which is a 16-bit identifiers used in addition to IP addresses
• A communication channel (connection) defined by 5 items:
[source address, source port, dest address, dest port, protocol]
UDP: The User Datagram Protocol UDP layered on top of basic IP (IP Protocol 17)
• Unreliable, unordered, user-to-user communication
UDP Data
16-bit UDP length 16-bit UDP checksum16-bit source port 16-bit destination port
IP Header(20 bytes)
Building a messaging service (con’t)UDP: The Unreliable Datagram Protocol
Datagram: an unreliable, unordered, packet sent from source user dest user (Call it UDP/IP)
Important aspect: low overhead!• Often used for high-bandwidth video streams• Many uses of UDP considered “anti-social” – none of the
“well-behaved” aspects of (say) TCP/IPBut we need ordered messages
Create ordered messages on top of unordered ones• IP can reorder packets! P0,P1 might arrive as P1,P0
How to fix this? Assign sequence numbers to packets• 0,1,2,3,4…..• If packets arrive out of order, reorder before delivering to
user application• For instance, hold onto #3 until #2 arrives, etc.
Sequence numbers are specific to particular connection
Message
TCP/IP packet, Ethernet frame Application sends
message
TCP data
TCP Header
IP Header
IP DataEH
Ethernet Hdr
Ethernet Hdr
TCP breaks into 64KB segments, adds 20B header
IP adds 20B header, sends to network
If Ethernet, broken into 1500B frames with headers, trailers (24B)
All Headers, trailers have length field, destination, ...