Vous êtes sur la page 1sur 317

INTERNETWORKING

UTTAM K. ROY

Dept. of Information Technology,


Jadavpur University, Kolkata
Internetworking 2

Advanced Java Programming Books


• Andrew S. Tanenbaum, “Computer Networks”, Prentice Hall of India
publication

• William Stallings, “Data & Computer Communications”, Prentice Hall


of India publication

• Alberto Leon Garcia & Indra Widjaja, “Communication Networks”, Tata


McGraw-Hill publication

• Krouse, “Computer Networks”, Pearson publication

• Farouzan, “Computer Networks”

• Farouzan, “TCP/IP Protocol Suit”

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:23


Internetworking 3

Advanced Java Programming Introduction


 Definition
 Collection of (autonomous) computers connected by some
fashion
 Example

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:23


Internetworking 4

Advantages of Computer Networks


Advanced Java Programming

 Resource Sharing:
 Expensive resources (Database, high-speed laser printer,
array processors) can be shared among users of different
sites as they are connected to one another.
 Example
• World Wide Web(WWW)
• File Transfer Protocol(FTP)
• Domain Name System
• Network File System
• Database
• Remote login
 Computation/Productivity speedup:
 Concurrent execution of independent tasks using cluster
 Example
• Parallel Binary search
• Matrix multiplication
• Load balancing
© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:23
Internetworking 5

Advantages of Computer Networks


Advanced Java Programming

 Reliability/Availability/Fault Tolerant:
 Entire system does not go down if a part becomes faulty
 Example
• Introduction of secondary DNS
• Distributed database
 (Inter-process)Communication:
 Processes running at different computers can communicate
 Example
• Remote Procedure Call
• Socket
 Incremental growth:
 Avoid huge initial setup cost
 Improved Control/Flexibility:
 Facility to control the system remotely
 Responsiveness:
© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:23
Internetworking 6

Communications Model
Advanced Java Programming

 Source
 generates data to be transmitted—telephones, PC
 Transmitter
 Converts data into transmittable signals—Modem
 Transmission System
 Carries data

 Receiver
 Converts received signal into data
 Example
• Modem

 Destination
 Takes incoming data

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:23


Internetworking 7

Key Communications Tasks


Advanced Java Programming

 Transmission System Utilization


 Efficient use of shared medium
 Example
• Multiplexing—FDM, TDM, WDM
• Congestion control
 Interfacing
 Interfacing with transmission medium—electromagnetic
signal propagation
 Signal Generation
 Form and intensity such that
• Capable of being propagated
• Interpretable at receiver
 Synchronization
 Determining beginning and ending of signals and its duration

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:23


Internetworking 8

Key Communications Tasks


Advanced Java Programming

 Exchange Management
 Cooperation(Convention) between communicating parties
• Format and direction(simplex, duplex)
 Error detection and correction
 Signals are distorted before they reach at the destination
 Some tasks can not tolerate error—FTP
 Recovery
 Next step to the error detection
 Flow Control
 Fast transmitter/slow receiver problem
 Addressing and routing
 Identifying network devices

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:23


Internetworking 9

Key Communications Tasks


Advanced Java Programming

 Message formatting
 Agreement between two parties—binary code for characters
 Security
 Sender wish to be assured that intended receiver gets data
 Receiver must be sure that the data have not been altered
in transit
 Receiver must be sure that the data come from purported
sender not from intruder
 Network Management
 Configuration
 Monitor its status
 Responds on failure and overloads

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:23


Internetworking 10

Simplified Data Communications Model


Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:23


Protocol
Architecture
Internetworking 12

Advanced Java Programming Protocols


 High degree of cooperation is needed between
two computer systems
 Used for communications between entities in a
system
 Must speak the same language
 Entities
 User applications
 e-mail facilities
 terminals
 Systems
 Computer
 Terminal
 Remote sensor

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:23


Internetworking 13

Advanced Java Programming Protocols


 Key elements of a Protocol
 Syntax
• Data formats
• Signal levels
 Semantics
• Control information
• Error handling
 Timing
• Speed matching
• Sequencing
 Standardized protocol
 Needed to promote interoperability among vendor
equipment

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:23


Internetworking 14

Advanced Java Programming OSI Model


 Open Systems Interconnection
 Developed by the International Organization
for Standardization (ISO) in 1977
 Seven layers
 Application
 Presentation
 Session
 Transport
 Network
 Data Link
 Physical
 A theoretical system delivered too late!
 TCP/IP is the de facto standard

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:23


Internetworking 15

Advanced Java Programming OSI Model


 Physical Layer
 Physical interface between data transmission device (e.g.
computer) and transmission medium or network
 Characteristics of transmission medium
• Mechanical—connector type
• Electrical—signal levels
• Functional—function of individual cuircits
• Procedural—sequence of events,data rates etc.
 Data Link Layer
 Error detection and correction
 Flow control
 Network Access Layer
 Exchange of data between end system and network
 Destination address provision
 Routing functions across multiple networks

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:23


Internetworking 16

Advanced Java Programming OSI Model


 Transport Layer
 Connection oriented and connectionless service
 Reliable delivery of data
 Sequencing/Ordering of delivery
 Avoid duplication
 Session Layer
 Dialog Discipline—full duplex or half duplex
 Recovery—check pointing mechanisms
 Presentation Later
 Format/presentation/syntax of data
 Application Layer
 Provides user interface such as file transfer (FTP), electronic
mail(SMTP), remote login(Telnet/SSH/rlogin), WWW(http)
etc.

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:23


Internetworking 17

TCP/IP Protocol Architecture


Advanced Java Programming

 Developed by the US Defense Advanced


Research Project Agency (DARPA) for its
packet switched network (ARPANET)
 Used by the global Internet
 No official model but a working one.
 Application layer
 Host to host or transport layer
 Internet layer
 Network access layer
 Physical layer

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:23


Internetworking 18

Advanced Java Programming OSI v TCP/IP

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:23


Internetworking 19

TCP/IP Protocol Architecture Model


Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:23


Data
Transmission
Internetworking 21

Transmission Terminology
Advanced Java Programming

 Transmitter
 Receiver
 Medium
 Guided medium
• e.g. twisted pair, optical fiber
 Unguided medium
• e.g. air, water, vacuum
 Direct link
 No intermediate devices
 Point-to-point
• Only 2 devices share link
 Multi-point
• More than two devices share the link

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:23


Internetworking 22

Transmission Terminology
Advanced Java Programming

 Simplex
 One direction
• e.g. Television
 Half duplex
 Either direction, but only one way at a time
• e.g. police radio
 Full duplex
 Both directions at the same time
• e.g. telephone

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:23


Internetworking 23

Frequency, Spectrum and Bandwidth


Advanced Java Programming

 Time domain concepts


 Continuous signal
• Various in a smooth way over time
 Discrete signal
• Maintains a constant level then changes to another constant
level
 Periodic signal
• Pattern repeated over time
 Aperiodic signal
• Pattern not repeated over time

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:23


Internetworking 24

Continuous & Discrete Signals


Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:23


Internetworking 25

Advanced Java Programming Periodic Signals

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:23


Internetworking 26

Advanced Java Programming Sine Wave


 Peak Amplitude (A)
 maximum strength of signal
 volts
 Frequency (f)
 Rate of change of signal
 Hertz (Hz) or cycles per second
 Period = time for one repetition (T)
 T = 1/f
 Phase (φ)
 Relative position in time

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:23


Internetworking 27

Varying Sine Waves


Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:23


Internetworking 28

Advanced Java Programming Wavelength


 Distance occupied by one cycle
 Distance between two points of corresponding
phase in two consecutive cycles
 λ
 Assuming signal velocity v
 λ = vT
 λf = v
 c = 3*108 ms-1 (speed of light in free space)

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:23


Internetworking 29

Frequency Domain Concepts


Advanced Java Programming

 Signal usually made up of many frequencies


 Components are sine and/or cosine waves
 Can be shown (Fourier analysis) that any signal
is made up of component sine and/or cosine
waves
 Can plot frequency domain functions

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:23


Internetworking 30

Addition of Frequency Components


Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:23


Internetworking 31

Frequency Domain
Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:23


Internetworking 32

Spectrum & Bandwidth


Advanced Java Programming

 Spectrum
 range of frequencies contained in signal
 Absolute bandwidth
 width of spectrum
 Effective bandwidth
 Often just bandwidth
 Narrow band of frequencies containing most of the energy
 DC Component
 Component of zero frequency

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:23


Internetworking 33

Signal with DC Component


Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:23


Internetworking 34

Data Rate and Bandwidth


Advanced Java Programming

 Any transmission system has a limited band of


frequencies
 This limits the data rate that can be carried

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:23


Internetworking 35

Analog and Digital Data Transmission


Advanced Java Programming

 Data
 Entities that convey meaning
 Signals
 Electric or electromagnetic representations of data
 Transmission
 Communication of data by propagation and processing of
signals

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:23


Internetworking 36

Advanced Java Programming Data

 Analog
 Continuous values within some interval
 e.g. sound, video
 Digital
 Discrete values
 e.g. text, integers

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:23


Internetworking 37

Acoustic Spectrum (Analog)


Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:23


Internetworking 38

Advanced Java Programming Signals


 Means by which data are propagated
 Analog
 Continuously variable
 Various media
• wire, fiber optic, space
 Speech bandwidth 100Hz to 7kHz
 Telephone bandwidth 300Hz to 3400Hz
 Video bandwidth 4MHz
 Digital
 Use two DC components

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:23


Internetworking 39

Advanced Java ProgrammingData and Signals


 Usually use digital signals for digital data and
analog signals for analog data
 Can use analog signal to carry digital data
 Modem
 Can use digital signal to carry analog data
 Compact Disc audio

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:23


Internetworking 40

Analog Signals Carrying Analog and Digital Data


Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:23


Internetworking 41

Digital Signals Carrying Analog and Digital Data


Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:23


Internetworking 42

Analog Transmission
Advanced Java Programming

 Analog signal transmitted without regard to


content
 May be analog or digital data
 Attenuated over distance
 Use amplifiers to boost signal
 Also amplifies noise

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:23


Internetworking 43

Digital Transmission
Advanced Java Programming

 Concerned with content


 Integrity endangered by noise, attenuation etc.
 Repeaters used
 Repeater receives signal
 Extracts bit pattern
 Retransmits
 Attenuation is overcome
 Noise is not amplified

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:23


Internetworking 44

Advantages of Digital Transmission


Advanced Java Programming

 Digital technology
 Low cost LSI/VLSI technology
 Data integrity
 Longer distances over lower quality lines
 Capacity utilization
 High bandwidth links economical
 High degree of multiplexing easier with digital
techniques
 Security & Privacy
 Encryption
 Integration
 Can treat analog and digital data similarly

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:23


Internetworking 45

Transmission Impairments
Advanced Java Programming

 Signal received may differ from signal


transmitted
 Analog - degradation of signal quality
 Digital - bit errors
 Caused by
 Attenuation and attenuation distortion
 Delay distortion
 Noise

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:23


Internetworking 46

Advanced Java Programming Attenuation


 Signal strength falls off with distance
 Depends on medium
 Exponential in nature
 Issues
 Received signal strength:
• must be enough to be detected
• must be sufficiently higher than noise to be received without
error
 Attenuation is an increasing function of frequency
• Use equalization

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:23


Internetworking 47

Advanced Java Programming Delay Distortion


 Only in guided media
 Propagation velocity varies with
frequency

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:23


Internetworking 48

Advanced Java Programming Noise


 Additional signals inserted between
transmitter and receiver
 Thermal (Also called white noise)
 Due to thermal agitation of electrons
 Uniformly distributed
 Intermodulation
 Signals that are the sum and difference of original
frequencies sharing a medium
 Crosstalk
 A signal from one line is picked up by another
 Impulse
 Irregular pulses or spikes
 e.g. External electromagnetic interference
 Short duration
 High amplitude
© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:23
Internetworking 49

Advanced Java ProgrammingChannel Capacity


 Data rate
 In bits per second
 Rate at which data can be communicated
 Bandwidth
 In cycles per second of Hertz
 Constrained by transmitter and medium
 Nyquist Bandwidth
 Establishes data rate and bandwidth for noise free channel
 Given M signal levels and B bandwidth, maximum data rate
C that can be achieved is
C = 2Blog2M
 Shannon’s Capacity
 Given signal to noise ratio SNR, maximum data rate
C = B log2(1 + SNR)
© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:23
Transmission Media
Internetworking 51

Advanced Java Programming Overview


 Guided - wire
 Unguided - wireless
 Characteristics and quality determined by
medium and signal
 For guided, the medium is more important
 For unguided, the bandwidth produced by the
antenna is more important
 Key concerns are data rate and distance

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 52

Advanced Java Programming Design Factors


 Bandwidth
 Higher bandwidth gives higher data rate
 Transmission impairments
 Attenuation
 Interference
 Number of receivers
 In guided media
 More receivers (multi-point) introduce more attenuation

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 53

Electromagnetic Spectrum
Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 54

Guided Transmission Media


Advanced Java Programming

 Twisted Pair
 Coaxial cable
 Optical fiber

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 55

Advanced Java Programming Twisted Pair

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 56

Twisted Pair - Applications


Advanced Java Programming

 Most common medium


 Telephone network
 Between house and local exchange (subscriber loop)
 Within buildings
 To private branch exchange (PBX)
 For local area networks (LAN)
 10Mbps or 100Mbps

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 57

Twisted Pair - Pros and Cons


Advanced Java Programming

 Cheap
 Easy to work with
 Low data rate
 Short range

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 58

Twisted Pair - Transmission Characteristics


Advanced Java Programming

 Analog
 Amplifiers every 5km to 6km
 Digital
 Use either analog or digital signals
 repeater every 2km or 3km
 Limited distance
 Limited bandwidth (1MHz)
 Limited data rate (100MHz)
 Susceptible to interference and noise

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 59

Unshielded and Shielded TP


Advanced Java Programming

 Unshielded Twisted Pair (UTP)


 Ordinary telephone wire
 Cheapest
 Easiest to install
 Suffers from external EM interference
 Shielded Twisted Pair (STP)
 Metal braid or sheathing that reduces interference
 More expensive
 Harder to handle (thick, heavy)

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 60

Advanced Java Programming UTP Categories


 Cat 3
 up to 16MHz
 Voice grade found in most offices
 Twist length of 7.5 cm to 10 cm
 Cat 4
 up to 20 MHz
 Cat 5
 up to 100MHz
 Commonly pre-installed in new office buildings
 Twist length 0.6 cm to 0.85 cm

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 61

Near End Crosstalk


Advanced Java Programming

 Coupling of signal from one pair to another


 Coupling takes place when transmit signal
entering the link couples back to receiving pair
 i.e. near transmitted signal is picked up by
near receiving pair

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 62

Advanced Java Programming Coaxial Cable

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 63

Coaxial Cable Applications


Advanced Java Programming

 Most versatile medium


 Television distribution
 Ariel to TV
 Cable TV
 Long distance telephone transmission
 Can carry 10,000 voice calls simultaneously
 Being replaced by fiber optic
 Short distance computer systems links
 Local area networks

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 64

Coaxial Cable - Transmission Characteristics


Advanced Java Programming

 Analog
 Amplifiers every few km
 Closer if higher frequency
 Up to 500MHz
 Digital
 Repeater every 1km
 Closer for higher data rates

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 65

Advanced Java Programming Optical Fiber

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 66

Optical Fiber - Benefits


Advanced Java Programming

 Greater capacity
 Data rates of hundreds of Gbps
 Smaller size & weight
 Lower attenuation
 Electromagnetic isolation
 Greater repeater spacing
 10s of km at least

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 67

Optical Fiber - Applications


Advanced Java Programming

 Long-haul trunks
 Metropolitan trunks
 Rural exchange trunks
 Subscriber loops
 LANs

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 68

Optical Fiber - Transmission Characteristics


Advanced Java Programming

 Act as wave guide for 1014 to 1015 Hz


 Portions of infrared and visible spectrum
 Light Emitting Diode (LED)
 Cheaper
 Wider operating temp range
 Last longer
 Injection Laser Diode (ILD)
 More efficient
 Greater data rate
 Wavelength Division Multiplexing

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 69

Optical Fiber Transmission Modes


Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 70

Wireless Transmission
Advanced Java Programming

 Unguided media
 Transmission and reception via antenna
 Directional
 Focused beam
 Careful alignment required
 Omnidirectional
 Signal spreads in all directions
 Can be received by many antennae

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 71

Advanced Java Programming Frequencies

 2GHz to 40GHz
 Microwave
 Highly directional
 Point to point
 Satellite
 30MHz to 1GHz
 Omnidirectional
 Broadcast radio
 3 x 1011 to 2 x 1014
 Infrared
 Local

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 72

Terrestrial Microwave
Advanced Java Programming

 Parabolic dish
 Focused beam
 Line of sight
 Long haul telecommunications
 Higher frequencies give higher data rates

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 73

Satellite Microwave
Advanced Java Programming

 Satellite is relay station


 Satellite receives on one frequency, amplifies
or repeats signal and transmits on another
frequency
 Requires geo-stationary orbit
 Height of 35,784km
 Television
 Long distance telephone
 Private business networks

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 74

Advanced Java Programming Broadcast Radio


 Omnidirectional
 FM radio
 UHF and VHF television
 Line of sight
 Suffers from multipath interference
 Reflections

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 75

Advanced Java Programming Infrared


 Modulate noncoherent infrared light
 Line of sight (or reflection)
 Blocked by walls
 e.g. TV remote control, IRD port

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Data Encoding
Internetworking 77

Encoding Techniques
Advanced Java Programming

 Data are not generally transmitted as they are


due to:
 Framing
 Error detection and correction
 Data are converted into transmittable signals
 There are two possibilities
 Analog communication
• Analog data, analog signal
• Telephone system
• Digital data, analog signal
• Computer to computer communication using telephone line
 Digital Communication
• Digital data, digital signal
• Analog data, digital signal

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 78

Digital Data, Digital Signal


Advanced Java Programming

 Digital signal
 Discrete, discontinuous voltage pulses
 Each pulse is a signal element
 Binary data encoded into signal elements

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 79

Advanced Java Programming Terminology


 Unipolar
 All signal elements have same sign
 Polar
 One logic state represented by positive voltage the other by
negative voltage
 Data rate
 Rate of data transmission in bits per second
 Bit duration or length of a bit
 Time taken for transmitter to emit the bit
 Modulation rate
 Rate at which the signal level changes
 Measured in baud = signal elements per second
 Mark and Space
 Binary 1 and Binary 0 respectively
© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24
Internetworking 80

Interpreting Signals
Advanced Java Programming

 Need to know
 Timing of bits - when they start and end
 Signal levels
 Factors affecting successful interpreting of
signals
 Signal to noise ratio
 Data rate
 Bandwidth

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 81

Comparison of Encoding Schemes


Advanced Java Programming

 Signal Spectrum
• Lack of high frequencies reduces required bandwidth
• Lack of dc component allows ac coupling via transformer,
providing isolation
• Concentrate power in the middle of the bandwidth
 Clocking
• Synchronizing transmitter and receiver
• External clock
• Sync mechanism based on signal

 Error detection
• Can be built in to signal encoding
 Signal interference and noise immunity
• Some codes are better than others
 Cost and complexity
• Higher signal rate (& thus data rate) lead to higher costs
• Some codes require signal rate greater than data rate
© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24
Internetworking 82

Encoding Schemes
Advanced Java Programming

 Non-Return to Zero
 Non-Return to Zero-Level (NRZ-L)
 Non-Return to Zero Inverted (NRZ-I)
 Multilevel Binary
 Bipolar -AMI
 Pseudoternary
 Biphase
 Manchester
 Differential Manchester
 Scrambling
 B8ZS
 HDB3

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 83

Non-Return to Zero Level (NRZ-L)


Advanced Java Programming

 Two different voltages for 0 and 1 bits


 Voltage constant during bit interval
 no transition i.e. no return to zero voltage
 e.g. Absence of voltage for zero, constant
positive voltage for one
 More often, negative voltage for one value and
positive for the other
 Example

0 1 0 0 1 1 0 0 0 1 1

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 84

Differential Encoding
Advanced Java Programming

 Data represented by changes rather than


levels
 More reliable detection of transition rather
than level
 In complex transmission layouts it is easy to
lose sense of polarity

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 85

Non-Return to Zero Inverted(NRZ-I)


Advanced Java Programming

 Non-return to zero inverted on ones


 Constant voltage pulse for duration of bit
 Data encoded as presence or absence of signal
transition at beginning of bit time
 Transition (low to high or high to low) denotes
a binary 1
 No transition denotes binary 0
 An example of differential encoding

0 1 0 0 1 1 0 0 0 1 1

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 86

NRZ pros and cons


Advanced Java Programming

 Pros
 Easy to engineer
 Make good use of bandwidth
 Cons
 dc component
 Lack of synchronization capability
 Lack of error detection/correction facility
 Used for magnetic recording
 Not often used for signal transmission

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 87

Advanced Java ProgrammingMultilevel Binary


 Use more than two levels
 Bipolar-AMI
 zero represented by no line signal
 one represented by positive or negative pulse alternatively
 one pulses alternate in polarity
 Pros
 No loss of sync if a long string of ones (zeros still a problem)
 No net dc component
 Lower bandwidth
 Easy error detection

0 1 0 0 1 1 0 0 0 1 1

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 88

Advanced Java Programming Pseudoternary


 One represented by absence of line signal
 Zero represented by alternating positive and
negative
 No advantage or disadvantage over bipolar-
AMI
0 1 0 0 1 1 0 0 0 1 1

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 89

Bipolar-AMI and Pseudoternary


Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 90

Trade Off for Multilevel Binary


Advanced Java Programming

 Not as efficient as NRZ


 Each signal element only represents one bit
 In a 3 level system could represent log23 = 1.58 bits
 Receiver must distinguish between three levels
(+A, -A, 0)
 Requires approx. 3dB more signal power for same
probability of bit error

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 91

Advanced Java Programming Biphase


 Manchester
 Transition in middle of each bit period
 Transition serves as clock and data
 Low to high represents one
 High to low represents zero
 Used by IEEE 802.3

0 1 0 0 1 1 0 0 0 1 1

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 92

Advanced Java Programming Biphase


 Differential Manchester
 Midbit transition is clocking only
 Transition at start of a bit period represents zero
 No transition at start of a bit period represents one
 Note: this is a differential encoding scheme
 Used by IEEE 802.5

0 1 0 0 1 1 0 0 0 1 1

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 93

Biphase Pros and Cons


Advanced Java Programming

 Pros
 Synchronization on mid bit transition (self clocking)
 No dc component
 Error detection
• Absence of expected transition
 Con
 At least one transition per bit time and possibly two
 Maximum modulation rate is twice NRZ
 Requires more bandwidth

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 94

Advanced Java Programming Scrambling


 Use scrambling to replace sequences that
would produce constant voltage
 Filling sequence
 Must produce enough transitions to sync
 Must be recognized by receiver and replace with original
 Same length as original
 No dc component
 No long sequences of zero level line signal
 No reduction in data rate
 Error detection capability

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 95

Advanced Java Programming B8ZS


 Bipolar With 8 Zeros Substitution
 Based on bipolar-AMI
 If octet of all zeros and last voltage pulse
preceding was positive encode as 000+-0-+
 If octet of all zeros and last voltage pulse
preceding was negative encode as 000-+0+-
 Causes two violations of AMI code
 Unlikely to occur as a result of noise
 Receiver detects and interprets as octet of all
zeros

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 96

Advanced Java Programming HDB3


 High Density Bipolar 3 Zeros
 Based on bipolar-AMI
 String of four zeros replaced with one or two
pulses

Number of Bipolar pulses(ones) since


last substitution
Polarity of Odd Even
preceding pulse
- 000- +00+

+ 000+ -000-

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 97

Advanced Java Programming B8ZS and HDB3

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 98

Bandwidth Comparison
Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 99

Advanced Java Programming Modulation Rate

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 100

Advanced Java Programming Modulation Rate

Minimum 10101010… Maximum


NRZ-L 0 (all 0s or 1s) 1.0 1.0
NRZ-I 0 (all 0s) 0.5 1.0 (all 1s)
Bipolar AMI 0 (all 0s) 1.0 1.0
Pseudoternary 0 (all 1s) 1.0 1.0
Manchester 1.0 (10101…) 1.0 2.0 (all 0s or 1s)
Differential 1.0 (all 1s) 1.5 2.0 (all 0s)
manchester

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Data Link Layer
Internetworking 102

Data Link Layer Design Issues


Advanced Java Programming

 Services provided to the Network Layer


 Unacknowledged connectionless service
 Acknowledged connectionless service
 Acknowledged connection-oriented service
 Accessing of underlying medium (MAC sub-layer)
 Data Link Control(Data Link Control Sub-layer)
 Framing
 Identify beginning and ending of a frame
 Error Detection & Correction
 Identifying transmission errors and if possible correction
 Error Control
 What to do if frames/acknowledgements are damaged/lost?
 Flow Control
 Transmitter and Receiver must be synchronized
© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24
Medium Access
Control Sub-layer
Internetworking 104

Advanced Java Programming Introduction

Network Layer

LLC sub-layer
Data Link Layer
MAC sub-layer

Physical Layer

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 105

Advanced Java Programming Introduction


 Channel
 Unicast—single user
 Broadcast—sometimes called multi-access/random
access channels
 Key issue in a broadcast network
 determine who gets to use the channel when there is
competition for it
 the protocols used to determine who goes next on a
multiaccess channel belong to a sublayer of the data
link layer called the MAC (Medium Access
Control) sublayer.

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 106

Channel Allocation Problem


Advanced Java Programming

 Two schemes exist to solve the problem of allocation


for a single broadcast channel among competitive
users:
 static channel allocation
 dynamic channel allocation

 The traditional way of allocating a single channel


 Frequency Division Multiplexing Access(FDMA)
• Each station is allocated its own frequency
• Uneven usage of bandwidth if number of senders is large and
continuously varying
 Time Division Multiplexing Access (TDMA)
• Each station is allocated its own time slot for transmission
 Statistical Time Division Multiplexing Access (STDMA)
© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24
Internetworking 107

Problems of Static Allocation


Advanced Java Programming

 FDMA, TDMA are inherently inefficient


 C=channel capacity in bps
 λ=frame arrival rate in frames/sec
 1/µ=mean frame size (random/Poison distribution)
1
 Mean time delay from queueing theory
T =
µC −λ
 For FDMA
1 N
 TFDMA = = = NT
µ ( C / N ) − (λ / N ) µC −λ
 For TDMA
1 N
 TTDMA = = = NT
µ ( C / N ) − (λ / N ) µC −λ
 The mean delay for FDMA or TDMA is N times worse
© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24
Internetworking 108

Dynamic Channel Allocation


Advanced Java Programming

 Five key assumptions:


1. station model
 N number of independent stations.
 Frame generation rate is proportional to ∆t is ∆tλ
 Blocks after a frame generation until it is transmitted
2. single channel
 Only one channel is available for all stations
3. collision assumption
 Collision can occur. Every station can detect collision
4a. continuous time
4b. slotted time
5a. carrier sense
 Sense the carrier before transmission
5b. no carrier sense
 transmit without sensing the carrier
© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24
Internetworking 109

Advanced Java Programming ALOHA


 Pure ALOHA
 Slotted ALOHA

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 110

Advanced Java Programming Pure ALOHA


 A station transmits a frame whenever it has
one

 If collision occurs,
 detect it
 wait a random amount of time and retransmit

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 111

Efficiency of Pure ALOHA


Advanced Java Programming

 Frame time—time required to transmit a single


frame
 S=mean number of frame generated per frame
time (Poision)
 G=mean number of frames (old and new combined)
transmitted
 P0=probability that a frame does not suffer a
collision
 Throughput S=GP0
 Probability the k frames arekgenerated
−G
during a
G edistribution:
given frame time by Poisson
Pk =
K!
© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24
Internetworking 112

Efficiency of Pure ALOHA


Advanced Java Programming

P0 = e − G

 Throughpu S = Ge −2G
1
 tMaximum S max = with G = 0.5
throughput
2e
 Out of 100 frames, maximum of 18 frames reach
their destination without collision
© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24
Internetworking 113

Advanced Java Programming Slotted ALOHA


 Time is divided into discrete intervals
 Transmission of a frame is only allowed at
the beginning of a slot
 If a frame is generated in the middle of a
slot, the station must wait for the next slot
 Throughpu S = Ge − G
t 1
 Maximum S max = with G = 1
throughput
e

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 114

Throughput of ALOHA
Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 115

Throughput of ALOHA
Advanced Java Programming

 Probability that a frame will avoid collision is e-G


 Probability that a frame will suffer a collision is (1-e-
G
)
 Probability of a transmission requires exactly k
attempts is
 Pk= e-G (1-e-G)k-1
α α

E = kP =
Expected

number
k =1
of −G
ke (1 − e )
transmission
k ∑
−G k −1

k =1
= e G

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 116

Advanced Java Programming CSMA Protocols


• Protocols in which stations listen for a carrier and act
accordingly are called carrier sense protocols
• Persistent CSMA
• If the channel is busy, station waits until it becomes idle (it
continually senses the carrier for the purpose of seizing it)
• Non-Persistent CSMA
• If the channel is busy, station waits random amount of time
and repeats the algorithm
• 1-persistent CSMA
• If the channel is idle, the station transmits with a
probability of 1
• If collision occurs, it waits a random amount of time, and
starts all over again
• p-persistent
• applies to slotted channels, when the station becomes
ready to send, it senses the channel, if it is idle, it
transmits with a probability p
© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24
Internetworking 117

Advanced Java Programming CSMA/CD Protocol

• If collision occurs, stop transmission immediately

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 118

Advanced Java Programming Collision

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 119

Advanced Java Programming Collision Detection

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 120

Advanced Java Programming CSMA/CD Protocol

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 121

Performance Comparison
Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 122

Collision Free Protocols


Advanced Java Programming

 Collision adversely affect system performance,


when cable is long and frames short and number of
stations is large
 Collision free protocols is the solution
 Bit-Map Protocol
 Binary Countdown

 Basic Assumptions
 N number of stations
 Each station has a unique address from 0 to N-1

 Which station gets the channel next?


 Reservation protocols.
© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24
Internetworking 123

Advanced Java Programming Bit-Map Protocol


 Basic Steps
 Contention period
 Frame transmission
 Contention slot has exactly N slots one for each
station
 Station j is allowed to transmit (either 1 or 0) during
slot j
 No other station is allowed to transmit during that
slot
 Station j sends a 1 if it has frame to transmit, 0
otherwise
 After N time slots, each station has complete
knowledge of which stations wish to transmit
© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24
Internetworking 124

Advanced Java Programming Bit-Map Protocol

 If a station is ready, after its bit slot, it must wait for


next bit map

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 125

Performance of Bit-Map Protocol


Advanced Java Programming

 Assumptions
 Duration of each contention bit slot is unity
 Duration of a data frame is d time units
 High numbered stations must wait on the average
0.5N slots
 Low numbered stations must wait on the average
1.5N slots
 mean for all stations is N slots
 For low load, the overhead per frame is N bits, and
the amount of data is d bits, for an efficiency of
d/(N+d).
 For high load, the overhead per frame is 1 bit, and
the amount of data is Nd bits, for an efficiency of
d/(d+1)
© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24
Internetworking 126

Binary Countdown Protocol


Advanced Java Programming

 1 bit overhead per station in Bit-Map protocol


 Solution
 Use binary station address
 Basic idea
 A station with highest address will be allowed to transmit
 All addresses are assumed to be same length
 Stations broadcast their address bits in each slot, stating
with high order bit
 The bits are then BOOLEAN ORed
 If a station sending a 0, gets 1 (this means that there is at
least one station with higher address), it gives up

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 127

Binary Countdown Protocol


Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 128

Efficiency of Binary Countdown Protocol


Advanced Java Programming

• The channel efficiency of this method, under low load is


d/(d+ lnN).
• The channel efficiency of this method, under high load is
Nd/(Nd+ lnN).

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 129

Problems of Binary Countdown Protocol


Advanced Java Programming

 Starvation may occur


 Solution proposed by Mok and Ward
 Station having virtual address will be permuted circularly
 Example
 C, H, D, A, G, B, E, F have priorities 7, 6, 5, 4, 3, 2, 1, 0
 If D transmits, it will removed from this order and put at
the end giving a priority order C, H, D, A, G, B, E, F, D

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 130

Performance Comparison
Advanced Java Programming

 Two basic protocols


 Contention
 Contention free
 Two performance measures
 Delay
 Channel efficiency
 Contention protocols are preferable at low load
 Contention free protocols are preferable at high load
 Solution is Limited Contention Protocol

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 131

Symmetric Protocol
Advanced Java Programming

 k number of stations
 Each has a probability p of transmitting during each
slot
 Probability that some station will successfully
acquire the channel during a given slot is A=kp(1-
p)k-1
 pmax= 1/k
 Amax=(1-1/k)k-1

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 132

Advanced Java ProgrammingSymmetric Protocol

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 133

Limited Contention Protocol


Advanced Java Programming

 Probability of channel acquisition can be increased


by reducing competition
 Basic idea
 Divide the station into groups
 At slot 0, members of group 0 is permitted to transmit
 If one of them succeeds, it transmits
 If slot 0 is empty or there is collision, members of group 1
contend for slot 1, etc.
 By making appropriate division, amount of
contention can be reduced.
 Choice
 Each group has one member—contention free protocols
 All station are in single group—ALOHA/Slotted ALOHA

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 134

Adaptive Tree Walk Protocol


Advanced Java Programming

 Number of members in a group a dynamically


changed
 Example
 All station are allowed to transmit at slot 0
 If there is no collision, next slot 1 will be used by all stations
again
 Otherwise, stations will be broken into two groups each
having half number of stations.
 Slot 1 will be used by members of first half etc.

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 135

Advanced Java Programming Example

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 136

Advanced Java Programming Improvement

• Each node at level I has a fraction 2-i of the stations below it


• if the q ready stations are uniformly distributed, the expected number of them
below a specific node at level i is just 2-iq
• the optimum level to begin searching the tree is at i=log2q
© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24
Internetworking 137

Further Improvement
Advanced Java Programming

 G and H want to transmit


 At slot 0, collision will occur, slot 1 will be idle
 It is pointless to probe node 3 (because collision will
be the obvious result)

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Data Link Control
Sub-layer
Internetworking 139

Advanced Java Programming Framing


 Breaks the message into number of segments called
frames
 This is done to
 reduce total transmission time
S A B D S A B D

1
Transmission
delay message 2
Total 3 1
Delay 2
TD 3 1
Total
message 2
Delay TD
3
Propagation delay

message

Time Time
 reduce amount of retransmission due to error

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24


Internetworking 140

Optimal Number of frames?


Advanced Java Programming

S A B D x = number of bits in the message


h = header length
k = number of hops between source and destination
R = data rate
1 t p = propagation delay
tm p = number of packets to be deter mined
2 x 
p + h 
1
tf = 
p 

3
R
x 
 + h
2 TD t =
p 
1 f R
3
x 
tp 2 p + h 
p
tm =  
tf 3 R

T x  x 
p + h   + h 
p  + (k − 1)  p
TD =   + kt
p
R R

dTD x(k − 1)
=0 ⇒ p=
dp h
© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24
Internetworking 141

Expected amount of transmission?


Advanced Java Programming

 x bit message
 b=bit error
 rate (1 − b)
Probability that the message will not be in error is
x

 Probability that the message will be in 1 − (1 − b) x

error is
 Probability that the message requires exactly i
transmission for successful transmission [i.e. (i-1)
unsuccessful transmission followed[1 (1 − b) x ]( i −1) (1 − b) x
by−successful
transmission] is
 Expected number of
transmission i =α
N rx = ∑ i[1 − (1 − b) ]
x ( i −1) x
(1 − b)
i =1

1
N rx =
(1 − b) x x
 Total number of bits transmitted without
framing (1 − b) x
© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:24
Internetworking 142

Expected amount of transmission?


Advanced Java Programming

 p=number of frames
1
 Expected number of N rp =
transmission (1 − b ) x/ p

 Number of bits transmitted with


framing ( x / p ) x
p =
(1 − b) x/ p
(1 − b) x/ p

number of bits transmitted without fram ing (1 − b) x / p


=ω =
number of bits transmitted with fram ing (1 − b) x
1
= x −( x / p )
(1 − b )
 x=10,000 bits
 p=10
 b=0.001 (1 out of 1000)
 ω= 8139

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 143

Advanced Java Programming Framing


 four methods for framing are:
 character count
 starting and ending characters
 starting and ending flags
 physical layer coding violations

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 144

Advanced Java Programming Character Count


 Assumes character oriented data transmission
 This method uses a field in the header to specify the
number of characters in the frame
 When data link layer at the destination sees this, it
knows how many characters follow

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 145

Starting and ending characters


Advanced Java Programming

 Gets around the problem of resynchronization


 Each frame starts with special ASCII character sequence DLE
STX and ends with the sequence DLE ETX
 DLE is Data Link Escape, STX is Start of TeXt and ETX is End of
TeXt
 If destination ever loses track of frame boundaries, all it has to
do is look for DLE STX or DLE ETX to figure out where it is

DLE STX A B D DLE ETX DLE STX D B DLE ETX

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 146

Starting and ending characters


Advanced Java Programming

 Problem occurs when data contains DLE STX or DLE ETX


DLE STX A DLE D DLE ETX Data sent by network layer
 Solution
 Sender’s data link layer inserts an ASCII DLE character just before
an “accidental” DLE character in the data
 This technique is called character stuffing

Data after being character stuffed


DLE STX A DLE DLE D DLE ETX
by data link layer

 Data link layer at receiving end removes the DLE character


 Thus framing DLE STX or DLE ETX can be distinguished by absence
or presence of a single DLE as DLEs in the data are always doubled

Data passed to network layer on the


DLE STX A DLE D DLE ETX
receiving node

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 147

Starting and ending flags


Advanced Java Programming

Bit Stuffing

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 148

Advanced Java Programming Error Detection


 The data link layer breaks the bit stream up into
discrete frames and then computes the checksum for
each frame
 when a frame arrives at the destination the checksum is
recomputed, and if it is different from the one contained
in the frame, the data link layer knows that an error has
occurred

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 149

Advanced Java Programming Error Detection

 Additional bits added by transmitter for error detection

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 150

Error Detection Techniques


Advanced Java Programming

 Parity
 Value of parity bit is such that character has even (even
parity) or odd (odd parity) number of ones

 Even number of bit errors goes undetected

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 151

Two-dimensional parity
Advanced Java Programming

Detectable
Double-bit-
error
1 0 1 0 1 1
Undetec
1 1 0 1 1 0 ed
error
0 1 1 1 0 1
0 0 1 0 1 0

Detected
error

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 152

Cyclic Redundancy Check(CRC)


Advanced Java Programming

 For a block of d bits transmitter generates r bit sequence


 Transmit d+r bits which is exactly divisible by some
predetermined number G
 Receiver divides frame by G
 If no remainder, no error

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 153

Cyclic Redundancy Check (CRC)


Advanced Java Programming

 D=d-bit data
 G=(r+1)-bit predetermined divisor
 F=r-bit FCS to be determined
 T=(d+r)-bit message to be transmitted

r
D.2 R
=Q+
G G
T = D.2 + R r

T D.2 + R R R R+R
r
= =Q+ + =Q+ =Q
G G G G G
© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25
Internetworking 154

Advanced Java Programming Example


D=1010001101
G=110101
R=? G 1 1 0 1 0 1|1 0 1 0 0 0 1 1 0 1 0 0 0 0 0
110101
111011
110101
1110 10
1101 01
11 11 10
11 01 01
101100
T=101000110101110 110101
110010
110101
0 1 1 1 0R
© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25
Internetworking 155

Advanced Java Programming Example


D=101110
G=1001
R=?

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 156

Error Correcting codes


Advanced Java Programming

 m-bit message
 k redundant bits are added
 T=(m+k)-bit message to be transmitted
 No of possible code words with (m+k)-bit is 2m+k
 Out of 2m+k possible code words, only 2m code words are
valid
 Remaining code words are invalid
 Example
 M=2, K=2
 No. of possible codewords is 24 =16
 No. of valid code words is 4
• 0000, 0011, 1100, 1111
 No. of invalid code words is 12
0000 0100

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 157

Advanced Java Programming Error Correction

•Hamming codes can correct single errors


•by arranging them into matrix we can correct burst
errors
© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25
Internetworking 158

Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 159

Advanced Java Programming

 The polynomial code (cyclic redundancy code or CRC


code) are used for error detecting

 when the polynomial code method is employed, the


sender and receiver must agree upon a generator
polynomial, G(x), in advance.

 Both high and low bits of the generator must be 1

 to compute the checksum for some frame with m bits,


corresponding to the polynomial M(x), the frame must
be longer than the generator polynomial

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 160

Advanced Java Programming


 The algorithm for computing the checksum is as follows:
 let r be the degree of G(x). Append r zero bits to the
low-order end of the frame, so it now contains m+r
bits and corresponds to the polynomial xrM(x)
 divide the bit string corresponding to G(x) into the
bit string corresponding to xrM(x) using modulo 2
division
 subtract the remainder (which is always r or fewer
bits) from the bit string corresponding to xrM(x)
using modulo 2 subtraction. The result is the
checksummed frame to be transmitted. Call its
polynomial T(x).

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 161

Advanced Java Programming Flow Control


 Receiver may be slower than transmitter
 Transmitter must not transmit frames at a rate faster
than the receiver can receive
 Ensuring the sending entity does not overwhelm the
receiving entity
 Preventing buffer overflow
 Transmission time
 Time taken to emit all bits into medium
 Propagation time
 Time for a bit to traverse the link

propagation time
a=
transmission time

 If transmission time is normalized to 1, propagation time is `a`

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 162

Model of Frame Transmission


Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 163

Advanced Java Programming Stop and Wait


 Source transmits frame
 Destination receives frame and replies with
acknowledgement
 Source waits for ACK before sending next
frame
 Destination can stop flow by not sending ACK
 Works well for a few large frames

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 164

Advanced Java Programming Fragmentation


 Large block of data may be split into small
frames
 Limited buffer size
 Errors detected sooner (when whole frame received)
 On error, retransmission of smaller frames is needed
 Prevents one station occupying medium for long periods
 Stop and wait becomes inadequate

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 165

Stop and Wait Link Utilization


Advanced Java Programming

TD=tframe+tprop+tproc+tack+tprop+tpr
1
tframe
a oc
tprop
TD≈tframe+2tprop
tproc transmission time
η=
tack ack 1 propagation time
t frame
=
2
t frame + 2t prop
1
=
t prop
1+ 2
ack 2 t frame
1 t prop
= where a =
1 + 2a t frame
© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25
Internetworking 166

Stop and Wait Link Utilization


Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 167

Stop and Wait Link Utilization


Advanced Java Programming

 tprop=271 ms
 1 kb frame
 1 Mbps data rate
 Frame transmission time tframe=1 ms
 a=271
 η= 1/(1+2x271)=0.00184

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 168

Sliding Window Flow Control


Advanced Java Programming

 Allow multiple frames to be in transit at a time


 Receiver has buffer W long
 Transmitter can send up to W frames without
ACK
 Each frame is numbered
 ACK includes number of next frame expected
 Sequence number bounded by size of field (k)
 Frames are numbered modulo 2k

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 169

Sliding Window Diagram


Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 170

Example Sliding Window


Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 171

Sliding Window Enhancements


Advanced Java Programming

 Receiver can acknowledge frames without


permitting further transmission (Receive Not
Ready)
 Must send a normal acknowledge to resume
 If duplex, use piggybacking
 If no data to send, use acknowledgement frame
 If data but no acknowledgement to send, send last
acknowledgement number again, or have ACK valid flag
(TCP)

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 172

Advanced Java Programming Error Control


 Detection and correction of errors
 Lost frames
 Damaged frames
 Automatic repeat request
 Error detection
 Positive acknowledgment
 Retransmission after timeout
 Negative acknowledgement and retransmission

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 173

Automatic Repeat Request (ARQ)


Advanced Java Programming

 Stop and wait


 Go back N
 Selective reject (selective retransmission)

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 174

Advanced Java Programming Stop and Wait


 Source transmits single frame
 Wait for ACK
 If received frame damaged, discard it
 Transmitter has timeout
 If no ACK within timeout, retransmit
 If ACK damaged,transmitter will not recognize
it
 Transmitter will retransmit
 Receive gets two copies of frame
 Use ACK0 and ACK1

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 175

Stop and Wait -Diagram


Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 176

Stop and Wait - Pros and Cons


Advanced Java Programming

 Simple
 Inefficient

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 177

Advanced Java Programming Go Back N


 Based on sliding window
 If no error, ACK as usual with next frame
expected
 Use window to control number of outstanding
frames
 If error, reply with rejection
 Discard that frame and all future frames until error frame
received correctly
 Transmitter must go back and retransmit that frame and all
subsequent frames

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 178

Go Back N - Damaged Frame


Advanced Java Programming

 Receiver detects error in frame i


 Receiver sends rejection-i
 Transmitter gets rejection-i
 Transmitter retransmits frame i and all
subsequent

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 179

Go Back N - Lost Frame (1)


Advanced Java Programming

 Frame i lost
 Transmitter sends i+1
 Receiver gets frame i+1 out of sequence
 Receiver send reject i
 Transmitter goes back to frame i and
retransmits

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 180

Go Back N - Lost Frame (2)


Advanced Java Programming

 Frame i lost and no additional frame sent


 Receiver gets nothing and returns neither
acknowledgement nor rejection
 Transmitter times out and sends
acknowledgement frame with P bit set to 1
 Receiver interprets this as command which it
acknowledges with the number of the next
frame it expects (frame i )
 Transmitter then retransmits frame i

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 181

Go Back N – Damaged Acknowledgement


Advanced Java Programming

 Receiver gets frame i and send


acknowledgement (i+1) which is lost
 Acknowledgements are cumulative, so next
acknowledgement (i+n) may arrive before
transmitter times out on frame i
 If transmitter times out, it sends
acknowledgement with P bit set as before
 This can be repeated a number of times before
a reset procedure is initiated

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 182

Go Back N - Damaged Rejection


Advanced Java Programming

 As for lost frame (2)

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 183

Go Back N - Diagram
Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 184

Maximum window size?


Advanced Java Programming

 Consider a piggybacking acknowledgement


scheme is used
 3-bit sequence number
 Transmitter sends frame 0 and gets RR1
 Transmitter then sends 1, 2, 3, 4, 5, 6, 7, 0
 Transmitter gets RR1
 What does it mean?
 All eight frames are received properly
 All are lost and receiver is repeating its previous RR1

 For n bit sequence number maximum window


size can be 2n-1

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 185

Selective Reject/Retransmission
Advanced Java Programming

 Only rejected frames are retransmitted


 Subsequent frames are accepted by the
receiver and buffered
 Minimizes retransmission
 Receiver must maintain large enough buffer
 More complex login in transmitter

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 186

Selective Reject -Diagram


Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 187

Maximum window size?


Advanced Java Programming

 Transmitter sends frame 0 through 6


 All 7 frames are received properly.
 Receiver advances its window to accept frames
7 through 5 and sends RR7
 RR7 is lost in transit.
 Transmitter times out and retransmit frame 0
 Receiver accepts this frame as new frame

 For n bit sequence number maximum window


size can be 2n-1

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 188

Advanced Java Programming Performance?

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 189

Advanced Java Programming Performance?

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 190

Advanced Java Programming Performance?

1 N ≥ 1 + 2a

U =  N
1 + 2a N < 1 + 2a

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 191

Advanced Java Programming Performance?


Tf
 Channel Utilization U =
Tt
 Where Tf=time to transmit a single frame
 Tt=total time that line is engaged in the
transmission of a single frame
 For error free operation using Stop-and-Wait
protocol Tf
U=
T f + 2T p
 In the presence of error equation must be modified
T
as U=
f

N r (T f + 2T p )

 Where Nr=expected number of transmission for a


frame

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 192

Advanced Java Programming Performance?


 p=probability that a single frame is in error
 Assume ACKs and NAKs are never in error
 To transmit a frame successfully, it requires
exactly i attempts
 That means i-1 times unsuccessful (with error)
transmission followed by 1 successful (without
error) transmission
 Probability that a frame requires exactly i
transmission is pi-1(1-p) α
 Nr=E[transmission]= ∑ (1 − p)
ip i −1

i =1
1
=
1− p
© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25
Internetworking 193

Advanced Java Programming Performance?


1− p
 Stop-and-Wait ARQ U =
1 − 2a
1 − p N ≥ 1 + 2a
 Selective Reject ARQ U = 
 N (1 − p)
 1 + 2a N < 1 + 2a

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 194

Advanced Java Programming Go-back-N?


 Nr=E[number of transmitted frame to transmit one frame
successfully]
 f(i)=total number of transmission if original frame
must be transmitted i times
 K=total number of frames retransmitted (including
the original frame) for each
α
error
N r = ∑ [(1 − K ) + Ki ] p i −1 (1 − p )
 f(i)=1+(i-1)K i =1
α α
 =(1-K)+Ki = (1 − K )∑ p (1 − p ) + K ∑ ip i −1 (1 − p )
i −1

i =1 i =1
K
= (1 − K ) +
1− p
1 − p + Kp
=
1− p

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 195

Advanced Java Programming Go-back-N?


 1− p N ≥ 1 + 2 a , K = 1 + 2 a
1 + 2ap
U = 
 N (1 − p)
N < 1 + 2a, K = N
(1 + 2a )(1 − p + Np )

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 196

Advanced Java Programming Performance?

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 197

High Level Data Link Control


Advanced Java Programming

 Widely used data link control protocol


 Basic Characteristics
 Three types of stations
 Two link configurations
 Three data transfer mode

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 198

HDLC Station Types


Advanced Java Programming

 Primary station
 Controls operation of link
 Maintains separate logical link to each secondary station
 Frames issued are called commands
 Secondary station
 Operates under control of primary station
 Frames issued called responses
 Combined station
 May issue commands and responses

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 199

HDLC Link Configurations


Advanced Java Programming

 Unbalanced
 One primary and one or more secondary stations
 Supports full duplex and half duplex
 Balanced
 Two combined stations
 Supports full duplex and half duplex

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 200

HDLC Transfer Modes


Advanced Java Programming

 Normal Response Mode (NRM)


• Unbalanced configuration
• Host computer as primary, Terminals as secondary
• Primary initiates transfer to secondary
• Secondary may only transmit data in response to command
from primary
• Used on multi-drop lines
 Asynchronous Balanced Mode (ABM)
• Balanced configuration
• Either station may initiate transmission without receiving
permission
• Most widely used
• No polling overhead
 Asynchronous Response Mode (ARM)
• Unbalanced configuration
• Secondary may initiate transmission without permission form
primary
• Primary responsible for line
• rarely used

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 201

Advanced Java Programming Frame Structure


 Uses synchronous transmission
 All transmissions in frames
 Single frame format for all data and control
exchanges

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 202

Advanced Java Programming Flag Fields


 Delimit frame at both ends
 01111110
 May close one frame and open another
 Receiver hunts for flag sequence to
synchronize
 Bit stuffing used to avoid confusion with data
containing 01111110
 0 inserted after every sequence of five 1s
 If receiver detects five 1s it checks next bit
 If 0, it is deleted
 If 1 and seventh bit is 0, accept as flag
 If sixth and seventh bits 1, sender is indicating abort

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 203

Advanced Java Programming Bit Stuffing

 Example with
possible errors

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 204

Advanced Java Programming Address Field


 Identifies secondary station that will send or
will receive frame
 Usually 8 bits long
 May be extended to multiples of 7 bits
 LSB of each octet indicates that it is the last octet (1) or not
(0)
 All ones (11111111) is broadcast

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 205

Advanced Java Programming Control Field


 Different for different frame type
 Information - data to be transmitted to user (next layer up)
• Flow and error control piggybacked on information frames
 Supervisory - ARQ when piggyback not used
 Unnumbered - supplementary link control
 First one or two bits of control filed identify
frame type
 Remaining bits explained later

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 206

Control Field Diagram


Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 207

Supervisory frames
Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 208

Unnumbered frames
Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 209

Advanced Java Programming Poll/Final Bit


 Use depends on context
 Command frame
 P bit
 1 to solicit (poll) response from peer
 Response frame
 F bit
 1 indicates response to soliciting command

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 210

Information Field
Advanced Java Programming

 Only in information and some unnumbered


frames
 Must contain integral number of octets
 Variable length

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 211

Frame Check Sequence Field


Advanced Java Programming

 FCS
 Error detection
 16 bit CRC
 Optional 32 bit CRC

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 212

Advanced Java Programming HDLC Operation


 Exchange of information, supervisory and
unnumbered frames
 Three phases
 Initialization
 Data transfer
 Disconnect

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 213

Examples of Operation (1)


Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 214

Examples of Operation (2)


Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 215

Other DLC Protocols (LAPB,LAPD)


Advanced Java Programming

 Link Access Procedure, Balanced (LAPB)


 Part of X.25 (ITU-T)
 Subset of HDLC - ABM
 Point to point link between system and packet switching
network node
 Link Access Procedure, D-Channel
 ISDN (ITU-D)
 ABM
 Always 7-bit sequence numbers (no 3-bit)
 16 bit address field contains two sub-addresses
• One for device and one for user (next layer up)

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 216

Other DLC Protocols (LLC)


Advanced Java Programming

 Logical Link Control (LLC)


 IEEE 802
 Different frame format
 Link control split between medium access layer (MAC) and
LLC (on top of MAC)
 No primary and secondary - all stations are peers
 Two addresses needed
• Sender and receiver
 Error detection at MAC layer
• 32 bit CRC
 Destination and source access points (DSAP, SSAP)

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 217

Other DLC Protocols (Frame Relay)


Advanced Java Programming

 Streamlined capability over high speed packet


witched networks
 Used in place of X.25
 Uses Link Access Procedure for Frame-Mode
Bearer Services (LAPF)
 Two protocols
 Control - similar to HDLC
 Core - subset of control
 ABM
 7-bit sequence numbers
 16 bit CRC
 2, 3 or 4 octet address field
 Data link connection identifier (DLCI)
 Identifies logical connection
 More on frame relay later
© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25
Internetworking 218

Other DLC Protocols (ATM)


Advanced Java Programming

 Asynchronous Transfer Mode


 Streamlined capability across high speed
networks
 Not HDLC based
 Frame format called “cell”
 Fixed 53 octet (424 bit)
 Details later

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 219

Required Reading
Advanced Java Programming

 Stallings chapter 7
 Web sites on HDLC, frame relay, Ethernet and
ATM

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Local Area
Networks(LANs)
IEEE802.3
(Ethernet) LAN
Internetworking 222

Advanced Java Programming Ethernet Cabling

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:25


Internetworking 223

Advanced Java Programming Ethernet Topology

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 224

Advanced Java Programming Encoding

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 225

Ethernet Frame format


Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 226

Advanced Java Programming Collision detection

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 227

Advanced Java Programming Ethernet Efficiency

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 228

Switched Ethernet LAN


Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


IEEE802.4
(Token Bus) LAN
Internetworking 230

Advanced Java Programming Token Bus

IEEE Standard 802.4

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 231

Token Bus Frame Format


Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 232

Token Bus Control Frames


Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


IEEE802.5
(Token Ring) LAN
Internetworking 234

Advanced Java Programming

IEEE Standard 802.5: Token Ring


© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26
Internetworking 235

Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 236

Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 238

Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 239

Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 240

Token Ring Frame Format


Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 241

Token Ring Control Frames


Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Wide Area
Networks(WANs)
IEEE802.6
(DQDB) LAN
Internetworking 244

Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Network Layer
Internetworking 246

Network Layer Design Issues


Advanced Java Programming

 The network layer is concerned with getting packets


from all the way to the destination.
 The network layer is the lowest layer that deals with
end-to-end transmission
 the network layer provides services to the transport
layer at the network layer/transport layer interface.
 The network layer services have been designed with
the following goals in mind:
 The services should be independent of the subnet
technology
 the transport layer should be shielded from the
number, the type and the topology of the subnets
present
 the network addresses made available to the
transport layer should use a uniform numbering plan,
even across LANs and WANs.
© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26
Internetworking 247

Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 248

Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 249

Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 250

Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 251

Routing Algorithms
Advanced Java Programming

 In most subnets packets have to take


multiple hops
 the algorithms that choose the routes and the
data structures that they use are a major
area of network layer design
 the routing algorithm that is a part of the
network layer software responsible for
deciding which output line an incoming
packet should be transmitted on
 In session routing route remains in force for
an entire user session

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 252

Routing Algorithms
Advanced Java Programming

 Characteristics  Decision Time and Place


required  Time
 Correctness • Packet or virtual circuit
 Simplicity basis
 Robustness
 Place
• Distributed
 Stability
• Made by each node
 Fairness • Centralized
 Optimality • Source
 Efficiency
 Routing Strategies
 Performance Criteria  Non-adaptive
 Used for selection of route • Flooding
 Minimum hop • Random
 Least cost  Adaptive

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 253

Advanced Java Programming Flooding


 No network info required
 Packets are sent by source node to every
neighbor
 Incoming packets are retransmitted on every
link except incoming link
 Eventually a number of copies will arrive at
destination

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 254

Advanced Java ProgrammingFlooding Example

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 255

Properties of Flooding
Advanced Java Programming

 All possible routes are tried


 Very robust
 At least one packet will have taken minimum
hop count route
 Can be used to set up virtual circuit
 All nodes are visited
 Useful to distribute information (e.g. routing)

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 256

Disadvantage of Flooding
Advanced Java Programming

 Huge number of packets will be generated


 Solution
 Each packet is uniquely numbered so duplicates can be
discarded
 Nodes can remember packets already forwarded to keep
network load in bounds
 Can include a hop count in packets

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 257

Advanced Java Programming Random Routing


 Node selects one outgoing path for
retransmission of incoming packet
 Selection can be random or round robin
 Can select outgoing path based on probability
calculation
 No network info needed
 Route is typically not least cost nor minimum
hop

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 258

Advanced Java ProgrammingAdaptive Routing


 Used by almost all packet switching networks
 Routing decisions change as conditions on the
network change
 Failure
 Congestion
 Requires info about network
 Decisions more complex
 Tradeoff between quality of network info and
overhead
 Reacting too quickly can cause oscillation
 Too slowly to be relevant

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 259

Adaptive Routing - Advantages


Advanced Java Programming

 Improved performance
 Aid congestion control (See chapter 12)
 Complex system
 May not realize theoretical benefits

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 260

Advanced Java Programming Classification


 Based on information sources
 Local (isolated)
• Route to outgoing link with shortest queue
• Can include bias for each destination
• Rarely used - do not make use of easily available info
 Adjacent nodes
 All nodes

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 261

Isolated Adaptive Routing


Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 262

ARPANET Routing Strategies(1)


Advanced Java Programming

 First Generation
 1969
 Distributed adaptive
 Estimated delay as performance criterion
 Bellman-Ford algorithm (appendix 10a)
 Node exchanges delay vector with neighbors
 Update routing table based on incoming info
 Doesn't consider line speed, just queue length
 Queue length not a good measurement of delay
 Responds slowly to congestion

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 263

ARPANET Routing Strategies(2)


Advanced Java Programming

 Second Generation
 1979
 Uses delay as performance criterion
 Delay measured directly
 Uses Dijkstra’s algorithm (appendix 10a)
 Good under light and medium loads
 Under heavy loads, little correlation between reported delays
and those experienced

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 264

ARPANET Routing Strategies(3)


Advanced Java Programming

 Third Generation
 1987
 Link cost calculations changed
 Measure average delay over last 10 seconds
 Normalize based on current value and previous results

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 265

Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 266

Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 267

Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 268

Advanced Java Programming

1
Mean delay, T= µC −λ

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 269

Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 270

Distance Vector Routing


Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 271

Count to Infinity Problem


Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 272

Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 273

Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 274

Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 275

Advanced Java Programming Link State Routing

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 276

Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 277

Advanced Java ProgrammingHierarchical Routing

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 278

Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 279

Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 280

Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 281

Congestion Control
Advanced Java Programming

 when too many packets are present in (a part of the) subnet,


performance degrades, and the situation is called congestion
 as traffic increases too far, the routers are no longer able to
cope, and they begin losing packets
 at very high traffic the performance collapses completely, and
almost no packets are delivered
 congestion can be brought about by insufficient memory to
hold the packets, slow processors, low-bandwidth lines
 Congestion tends to feed upon itself and become worse
 congestion control has to do with making sure the subnet is
able to carry the offered traffic, flow control, in contrast
relates to point-to-point traffic between a given sender and a
receiver

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 282

Advanced Java Programming Congestion

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 283

General Principles
Advanced Java Programming

 control theory approach divides the solutions into two


groups: open loop and closed loop
 open loop solutions tend to solve the problem by good
design, in essence, to make sure that it does not occur
in the first place
 closed loop solutions are based on the concept of
feedback loop
 closed loop handles congestion control by:
 monitoring the system to detect when and where
congestion occurs
 passing this information to place where action can
be taken
 adjusting system operations to correct the problems
 open loop manages congestion by a technique called
traffic shaping - forcing the packets to be transmitted
©at a more
Copyright 2007, predictable
U. K. Roy, IT, JU rate 10/18/08 18:26
Internetworking 284

Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 285

Leaky Bucket Algorithm


Advanced Java Programming

•Traffic shaping is used to regulate the average rate of data


transmission which is implemented using the leaky bucket algorithm
and the token bucket algorithm
© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26
Internetworking 286

Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 287

Token Bucket Algorithm


Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 288

Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 289

Congestion Control in Virtual Circuit


Advanced Java Programming

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 290

Advanced Java Programming Waiting Fair Queue

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 291

Advanced Java Programming Chock Packet

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 292

Advanced Java Programming IP Addressing

 IP Address Requirements
 What is an IP Address?
 Network IDs and Host IDs
 What is a Physical Segment?
 IP Addressing Rules
 Classfull IP Addressing
 Address Classes
 Class A Addresses
 Class B Addresses
 Class C Addresses
 Class D & E Addresses
 Address Class Summary

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 293

Advanced Java Programming


IP Addressing Requirements

 Each Device that uses TCP/IP needs at least


one!
 Computer/Host (each Network Interface Card)
 Routers (each port or connection)
 Printers

Other Devices
 Each Device needs a Unique IP Address
 An Example:

206.77.105.9
 Configured in TCP/IP Software

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 294

Advanced Java Programming What is an IP Address?

 32-bit Binary Number (Address)


 11000000101010000111000100010011
 Divided into 4, 8-bit Octets
 11000000.10101000.01110001.00010011
 Converted to Decimal Numbers
 See: Binary Math
 192.168.113.19

Decimal range of an Octet: 0-255
 It contains the device’s:
 Network ID and Host ID

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 295

Advanced Java Programming Network ID and Host ID

 Network ID  Host ID
 Shared or Common to all  Identifies a specific device
computers on the same (Host) within a physical
physical segment
segment
 Unique on the Entire
Network
 Unique on the physical
segment
 “Area Code”
 “Phone Number”

192.176.11.201

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 296

Advanced Java Programming IP Addressing


What is a Physical Segment?

 A Broadcast Domain
 The portion of the network that you can retrieve
information from by using a broadcast packet!
 Ignore Repeaters, Bridges, or Switches
 Forward Broadcasts
 Everything (all devices) --
 Out a port of a router
 Between two routers
 Routers Don’t Forward Broadcasts
 IP Addressing Rules
 All Devices on the Same Physical Segment Share a
Common Network ID
 Each Physical Segment Has a Unique Network IDs

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 297

Advanced Java Programming IP Addressing


IP Addressing Rules

 Each Device (Host) Needs at Least One


Unique IP Address All Devices on the
Same Physical Segment Share a
Common Network ID (Subnet Mask)
Each Physical Segment Has a Unique
Network ID (Subnet Mask)

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 298

Advanced Java Programming IP Addressing


Classfull IP Addressing

 Traditional Manner of Addressing


 Class A
 Class B
 Class C
 Address Classes Specify Which Octets of the IP
Address are the Network-ID and Which are the
Host-ID
 Address Classes Specify Network Sizes
(Number of Hosts)

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 299

Advanced Java Programming IP Addressing


Address Classes

 Class A
 Network . Host . Host . Host
 Class B
 Network . Network . Host . Host
 Class C
 Network . Network . Network . Host
 Class D & E

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 300

Advanced Java Programming IP Addressing


Class A Networks:
The Definition

 Per Specification:
 1st Octet is the Network ID
 2nd, 3rd, 4th Octets are the Host ID
 In Binary –
 Any address that starts with a “0” in the first bit!
 First Class A Network Address:

00000001.00000000.0000000.00000000 (Binary)

1.0.0.0 (Decimal)
 Last Class A Network Address:
 01111111.00000000.00000000.00000000 (Binary)
 127.0.0.0 (Decimal) (Loopback Address)

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 301

Advanced Java Programming IP Addressing


Class A Networks:
Network IDs
 1st Octet is the Network ID
 0.0.0.0 (Invalid)
 1.0.0.0
 2.0.0.0
 3.0.0.0
 ~~~~
 127.0.0.0 (Loop back)
 2nd, 3rd, 4th Octets are the Host IDs
 An Assigned Class A Network Address:
 33.0.0.0 (Specifies the Network)
 2nd, 3rd, 4th Octets are the Host IDs
 Specified by Network Administrators

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 302

IP Addressing
Advanced Java Programming
Class A Networks:
The Number of Networks

 1st Octet is the Network ID


 1-126 = 126 Possible Class A Network IDs
 2nd, 3rd, 4th Octets are the Host IDs
 Each of the three Octets has a possible 256 Host IDs
 Number of Host IDs from three Octets:
 256 * 256 * 256 = 16,777,216 (minus 2) = 16,777,214
 Always Subtract 2 from the number of Host IDs
 Host IDs cannot be all 1’s (reserved for broadcast
address)
 Host IDs cannot be all 0’s (reserved for “this network
only” address)

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 303

Advanced Java Programming IP Addressing


Class A Networks:
Host ID Addresses

 33.0.0.0 (An Assigned Class A Address)


 All devices would share the 33 network ID.
 The Administrator would number the IP devices:

33.0.0.1 – 33.0.0.255 (255 Addresses)
 33.0.1.0 – 33.0.1.255 (256 Addresses)
 ~~~~

33.0.255.0 -- 33.0.255.255 (256 Addresses)
 (A Total of 65,535 Addresses)
 33.1.0.0 -- 33.1.255.255 (65,536 Addresses)
 33.2.0.0 -- 33.2.255.255 (65,536 Addresses)
 ~~~~
 33.255.0.0 -- 33.255.255.254 (65,535 Addresses)
 ( Total Addresses: 16.7 Million)

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 304

Advanced Java Programming IP Addressing


Class B Networks:
The Definition

 Per Specification:
 1st and 2nd Octets are the Network ID
 3rd, 4th Octets are the Host IDs
 In Binary –
 Any address that starts with a “10” in the first two
bits of the first octet!
 First Class B Network Address:
 10000000.00000000.0000000.00000000 (Binary)
 128.0.0.0 (Decimal)
 Last Class B Network Address:

10111111.11111111.00000000.00000000 (Binary)

191.255.0.0 (Decimal)

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 305

Advanced Java Programming IP Addressing


Class B Networks:
Network IDs
 1st and 2nd Octets are the Network IDs

128.0.0.0
 128.1.0.0
 ~~~~
 128.255.0.0
 129.0.0.0
 129.1.0.0
 ~~~~
 191.255.0.0
 3rd, 4th Octets are the Host IDs
 An Assigned Class B Network Addresses
 153.11.0.0
 3rd, 4th Octets are the Host IDs

Specified by Network Administrators

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 306

Advanced Java Programming IP Addressing


Class B Networks:
The Number of Networks

 1st and 2nd Octets are the Network IDs


 1st Octet 128 -- 191 = 64 Possible Network IDs
 2nd Octet 0 – 255 = 256 Possible Network IDs
 Total Class B Network IDs 64 * 256 = 16,384
 3rd, 4th Octets are the Host IDs
 Each of the Two Octets has a possible 256 Host IDs
 Number of Host IDs from Two Octets:
 256 * 256 = 65,536 (minus 2) = 65,534
 Always Subtract 2 from the number of Host IDs
 Host ID cannot be all 1’s (reserved for broadcast address)
 Host ID cannot be all 0’s (reserved for “this network only”
address)

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 307

Advanced Java Programming IP Addressing


Class B Networks:
Host ID Addresses

 An Assigned Class B Address


 153.11.0.0

All devices would share the 153.11 Network ID.

The Administrator would number the IP devices:
 153.11.0.1 -- 153.11.0.255 (255 Addresses)
 153.11.1.0 -- 153.11.1.255 (256 Addresses)
 153.11.2.0 -- 153.11.2.255 (256 Addresses)
 ~~~~
 153.11.255.0 -- 153.11.255.254 (255 Addresses)

Total Addresses: 65,534

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 308

Advanced Java Programming IP Addressing


Class C Networks:
The Definition

 Per Specification:
 1st, 2nd, 3rd Octets are the Network ID
 4th Octet is the Host ID
 In Binary –
 Any address that starts with a “110” in the first three
bits of the first octet!
 First Class C Network Address:
 11000000.00000000.0000000.00000000 (Binary)
 192.0.0.0 (Decimal)
 Last Class C Network Address:

11011111.11111111.11111111.00000000 (Binary)

223.255.255.0 (Decimal)

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 309

Advanced Java Programming IP Addressing


Class C Networks:
Network IDs

 1st, 2nd, 3rd Octets are the Network IDs


 192.0.0.0 – 192.0.255. 0
 192.1.0.0 – 192.1.255.0
 ~~~~
 192.255.0.0 – 192.255.255.0
 193.0.0.0 – 193.255.255.0
 ~~~~
 223.0.0.0 – 223.255.255.0
 4th Octet is the Host IDs
 An Assigned Class C Network Address
 201.11.206.0
 4th Octet is the Host IDs
 Specified by Network Administrators

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 310

Advanced Java Programming IP Addressing


Class C Networks:
The Number of Networks

 1st, 2nd, 3rd Octets are the Network IDs


 1st Octet 192 -- 223 = 31 Possible IDs
 2nd Octet 0 – 255 = 256 Possible IDs
 3nd Octet 0 – 255 = 256 Possible IDs
 Total Class C Network IDs 32 * 256 *256 = 2,097,152
 4th Octet is the Host ID
 An Octet has a possible 256 IDs
 Number of Host IDs an Octet:
 256 (minus 2) = 254
 Always Subtract 2 from the number of Host IDs
 Host ID cannot be all 1’s (reserved for broadcast address)

Host ID cannot be all 0’s (reserved for “this network only”
address)

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:26


Internetworking 311

Advanced Java Programming IP Addressing


Class C Networks:
Host ID Addresses

 An Assigned Class C Address


 201.11.206.0

All devices would share the 201.11.206.0 Network
ID.

The Administrator would number the IP devices:
 201.11.206.1, 201.11.206.2, ~~~~ 201.11.206.254

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:27


Internetworking 312

Advanced Java Programming IP Addressing


Class D & E

 Class D
 Used by Multicast Applications
 Shared Addresses
 224.0.0.0 – 239.255.255.255
 Class E
 Experimental
 240.0.0.0 +

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:27


Internetworking 313

Advanced Java Programming IP Addressing


Address Classes:
Network IDs and Host IDs

 Class A (1st Octet 1-127)


 Network.Host.Host.Host
 Class B (1st Octet 128-191)
 Network.Network.Host.Host
 Class C (1st Octet 192-223)
 Network.Network.Network.Host

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:27


Internetworking 314

Advanced Java Programming IP Addressing


Address Class Summary

 1st Networks Hosts


IDs Octet IDs /Network
 Class A 1-127 126 16,777,214
 Class B 128-191 16,384 65,534
 Class C 192-223 2,097,152 254

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:27


Internetworking 315

Advanced Java Programming IP Addressing


IP Address: What is It?

 32-bit Binary Number (Address)


 11000000101010001110000100010011
 Divided into 4, 8-bit Octets
 11000000.10101000.11100001.00010011
 Converted to Decimal Numbers

See: Binary Math
 192.168.225.19
 Decimal range of an Octet: 0-255
 It contains the device’s:
 Network ID and Host ID

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:27


Internetworking 316

Advanced Java Programming IP Addressing


IP Addressing Rules

 Each Device (Host) Needs at Least One


Unique IP Address
 All Devices on the Same Physical
Segment Share a Common Network ID
(Subnet Mask)
 Each Physical Segment Has a Unique
Network ID (Subnet Mask)

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:27


Internetworking 317

Advanced Java Programming IP Addressing


Address Classes: Network IDs and Host
IDs

 Class A (1st Octet 1-127)


 Network.Host.Host.Host
 Class B (1st Octet 128-191)
 Network.Network.Host.Host
 Class C (1st Octet 192-223)
 Network.Network.Network.Host

© Copyright 2007, U. K. Roy, IT, JU 10/18/08 18:27

Vous aimerez peut-être aussi