Ethernet - GITAM University

advertisement
Computer Networks
This PPT is Dedicated to my inner controller
AMMA BHAGAVAN – ONENESS Founders.
Developed by,
EDITED BY,
S.V.G.REDDY,
B.Keerthi Reddy,
Associate professor,
student of M.tech(SE).
Dept.of CSE, GIT,
GITAM UNIVERSITY.
OSI(OPEN SYSTEM INTERCONNECTION) model




A model defines the stages
or tasks of a protocol as it
prepares to send data
Open meaning standards
available to all.
The model is divided into
seven distinct layers
Each subsequent layer
should perform a welldefined function and the
layer
boundaries
are
designed to minimize the
information flow across the
interfaces.
OSI model
OSI MODEL LAYERS

Application Layer
◦ Provides a user interface (examples: HTTP, SMTP)
◦ Includes file, print, database, app. Services

Presentation Layer
◦ Presents the data (example: JPEG)
◦ Includes encoding techniques,encryption, compression
and translation services

Session Layer
◦ This provides a session between source & destination
and decides the mode of communication(simplex, half
duplex & full duplex)
OSI MODEL LAYERS

Transport Layer
◦ Provides reliable delivery with alignment of
packets
◦ Performs error detection
◦ Includes end to end connection

Network Layer
◦ Provides logical addressing and identifies the
network
◦ Generates the Route to the destination
OSI MODEL LAYERS

Data Link Layer
◦ Combines packets into bytes then into frames
◦ Performs error detection (not correction)
◦ Provides Media access addressing (point-topoint) and identifies the client system
◦ Media Access Control and Data Link Control

Physical Layer
◦ physical movement of bits between devices.
Tcp/Ip model
TCP/IP MODEL
•
TCP (Transmission Control Protocol) is the main
transport protocol utilized in IP networks. The TCP
protocol exists on the Transport Layer of the OSI Model.
• The TCP protocol is a connection-oriented protocol
which provides end-to-end reliability.
• Internet protocol is the set of techniques used by many
hosts for transmitting data over the Internet.
• The TCP/IP model is a description framework for
computer network protocols and it is evolved from
ARPANET which was the world's first wide area
network and a predecessor of the Internet.
• This model sometimes called internet model .
There are four layers in this model.




Application layer:
Defines how TCP/IP application protocols and how host programs
interface with transport layer services to use the network. protocols
regarding this layer are FTP,HTTP,SMTP,TELNET,SNMP.
Transport layer:
Provides communication session management between host
computers. Defines the level of service and status of the connection
used when transporting data. Protocols involved in this layer are
TCP,UDP.
Internet layer:
Packages data into IP datagram's, which contain source and
destination address information that is used to forward the
datagram's between hosts and across networks. Performs routing of
IP datagram's. Internet layer is also having some protocols ARP,
RARP, IGMP, ICMP.
Physical layer:
The physical movement of bits from source to destination.
Multiple Access Protocols

If multiple nodes tries to access the single
channel for data transmission,
CHANNEL
ALOHA
Here every node is allowed to transmit its data packets in the
same channel
 Then, when one node is transmitting data, then if some other
node also transmits then it leads to COLLISIONS
 In this ALOHA, lot of chances to have more collisions
 collision probability increases:
◦ frame sent at t0 collides with other frames sent in
[t0-1,t0+1]

PURE ALOHA EFFICIENCY
P(success by given node) = P(node transmits) .
P(no other node transmits in [t0-1,t0] .
P(no other node transmits in [t0,t0+1]
= p . (1-p)N-1 . (1-p)N-1
= p . (1-p)2(N-1)
… choosing optimum p and then letting n -> 
Efficiency = 1/(2e) = .18
SLOTTED ALOHA
Here every node is given an equal amount of
time slot.
 when its turn comes, the node will transmit its
data packets in that time slot .
 Here less chances to have collisions.

SLOTTED ALOHA EFFICIENCY
Efficiency is the long-run fraction of successful
slots when there are many nodes, each with
many frames to send
 Suppose N nodes with many frames to send,
each transmits in slot with probability p
 prob that node 1 has success in a slot = p(1-p)N-1
 prob that any node has a success = Np(1-p)N-1

CARRIER SENSE MULTIPLE ACCESS(CSMA)




Here the node listens to the channel before
transmission
If channel is idle: transmit entire frame
If channel is busy, defer transmission
Human analogy: don’t interrupt
CSMA/CD (COLLISION DETECTION)


If two nodes simultaneously sense the channel and if the
channel is idle and both will attempt to transmit, which
leads to collisions.
if any two or more nodes senses the channel and gets the
Idle status, then this protocol will take care by Blocking
the nodes and minimise collisions.
COLLISION FREE PROTOCOLS
Bit-Map Method:



In this method, there will be N time slots. If node0 has a
frame to send, it sets the bit ‘1’ during the first slot and
transmit the frame in first slot. No other node is allowed
to transmit during this slot.
This is done for all the nodes. In general node j may
declare the fact that it has a frame to send by inserting
‘1’ into slot j.
The basic problem with this protocol is its inefficiency
during low load. If a node has to transmit and no other
node needs to do so, even then it has to wait for the
bitmap to finish.
Bit-Map Method
Binary Countdown:





In this protocol, a node which wants to signal that it has a
frame to send does so by writing its address into the header as
a binary number.
The arbitration is such that as soon as a node sees that a
higher bit position that is 0 in its address has been overwritten
with a 1, it gives up.
The final result is the address of the node which is allowed to
send. After the node has transmitted the whole process is
repeated all over again.
Given below is an example situation. Nodes Addresses
A 0010 , B 0101 , C 1010 , D 1001 ---- Node C 1010 having
higher priority gets to transmit.
The problem with this protocol is that the nodes with higher
address always wins. Hence this creates a priority which is
highly unfair and hence undesirable
Binary Countdown
LAN
Local area network - A group of computers that share a
common connection and are usually in a small area or
even in the same building. For example an office or
home network. They are usually connected by Ethernet
cables and have high speed connections. If it was a
wireless setup it would be called a WLAN, which would
have a lower connection speed
LAN
MAN
Metropolitan area network - This is a larger
network that connects computer users in a
particular geographic area or region. For
example a large university may have a
network so large that it may be classified as a
MAN. The MAN network usually exist to
provide connectivity to local ISPs, cable TV,
or large corporations. It is far larger than a
LAN and smaller than a WAN. Also large
cities like London and Sydney, Australia
have metropolitan area networks.
MAN
WAN
Wide area network - This is the largest network and can
interconnect networks throughout the world and is not
restricted to a geographical location. The Internet is an
example of a worldwide public WAN. Most WANs exist
to connect LANs that are not in the same geographical
area.
WAN
ETHERNET
Dominant wired LAN technology
 cheap $20 for 100Mbs!
 first widely used LAN technology
 Simpler, cheaper than token LANs and ATM
 Kept up with speed race: 10 Mbps – 10 Gbps
Ethernet
sketch
ETHERNET TOPOLOGIES
Bus Topology: Shared
All nodes connected to a wire
Star Topology:
All nodes connected to a
central repeater
Network Topologies
ETHERNET CONNECTIVITY
10Base5 – ThickNet
< 500m
Controller
Vampire Tap
Bus Topology
Transceiver
ETHERNET CONNECTIVITY
10Base2 – ThinNet
< 200m
Controller
Transceiver
BNC T-Junction
Bus Topology
ETHERNET CONNECTIVITY
10BaseT
< 100m
Controller
Star Topology
ETHERNET FRAME STRUCTURE
Sending adapter encapsulates IP datagram (or other
network layer protocol packet) in Ethernet frame


Preamble:
7 bytes with pattern 10101010 followed by one byte
with pattern 10101011
Used to synchronize receiver, sender clock rates
(Manchester encoding)
ETHERNET FRAME STRUCTURE

Addresses: 6 bytes
◦ if adapter receives frame with matching destination address, or
with broadcast address (eg ARP packet), it passes data in frame
to net-layer protocol
◦ otherwise, adapter discards frame


Type: multiple network layer protocols may be in use at
the same time on the same machine, when ethernet
frame arrives, kernel has to know it .
CRC: checked at receiver, if error is detected, the frame
is simply dropped
ETHERNET SPECIFICATIONS





Coaxial Cable
 Up to 500m
Taps
 > 2.5m apart
Transceiver
 Idle detection
 Sends/Receives signal
Repeater
 Joins multiple Ethernet segments
 < 5 repeaters between any two hosts
< 1024 hosts
ETHERNET MAC ALGORITHM

Sender/Transmitter
 If line is idle (carrier sensed)
 Send immediately
 Send maximum of 1500B data (1527B total)
 Wait 9.6 s before sending again
 If line is busy (no carrier sense)
 Wait until line becomes idle
 Send immediately
 If collision detected
 Stop sending and jam signal
 Try again later
ETHERNET MAC ALGORITHM
Node A
Node B
At time almost T,
node A’s message has
almost arrived

Node A starts
transmission at time 0
Node B starts transmission
at time T
How can we ensure that A knows about the collision?
MANCHESTER ENCODING
1
1
0
0
0
0
1
0
1
1
1
• This is a return to zero (RTZ) signal.
• Each bit period is divided into two equal intervals.
• Binary “1” -> High Voltage level in the first half and Low
Voltage level in the second half.
• Binary “0” -> Just opposite of the above.
DIFFERENTIAL MANCHESTER ENCODING
1
1
0
0
0
0
1
0
1
1
1
• In each bit interval there is a transition of the level in
the middle.
• If the bit value is “0” then there is a presence of a
transition at the start of interval.
• If the bit value is “1”, then there is absence of a
transition at the start of interval.
• One of the properties of this signal is that is self
clocking.
SWITCHED ETHERNET
A simple example of switched Ethernet.
Switched ethernet




An Ethernet LAN that uses switches to connect
individual hosts or segments. This type of network is
sometimes called a desktop switched Ethernet.
In the case of individual hosts, the switch replaces the
repeater and effectively gives the device full 10 Mbps
bandwidth (or 100 Mbps for Fast Ethernet) to the rest of
the network.
In the case of segments, the hub is replaced with a
switching hub.
Switched Ethernets are becoming very popular because
they are an effective and convenient way to extend the
bandwidth of existing Ethernets.
FAST ETHERNET (100BASE-T)
How to achieve 100 Mbps capacity?
LLC
MAC
Data Link
Layer
Convergence Sublayer
MII
Media Independent Interface
Physical
Layer
Media Dependent Sublayer
Media Independent Interface provides three
choices.
FAST ETHERNET [IEEE 802.3U]
Three Choices
Fast ethernet uses fiber distributed data interface(FDDI)
FDDI CHARACTERISTICS:
 100 Mbps data rate
 Distances of up to 200 km
 Up to 1000 hosts attached
 Based on fiber optic cabling
GIGABIT ETHERNET (1000 BASE X)


Provides speeds of 1000 Mbps (i.e., one billion bits
per second capacity) for half-duplex and full-duplex
operation.
Uses Ethernet frame format and MAC technology
◦ CSMA/CD access method with support for one repeater per
collision domain.
◦ Backward compatible with 10 BASE-T and 100 BASE-T.



Uses 802.3 full-duplex Ethernet technology.
Uses 802.3x flow control.
All Gigabit Ethernet configurations are point-topoint!
GIGABIT ETHERNET TECHNOLOGY
Gigabit Ethernet cabling.
1000 BASE SX
1000 BASE LX
1000 BASE CX
1000 BASE T
fiber - short wavelength
fiber - long wavelength
copper - shielded twisted pair
copper - unshielded twisted pair
GIGABIT ETHERNET (1000 BASE-T)
LLC
MAC
GMII
Gigabit Media Independent Interface
Physical Layer
Media Dependent Interface
Medium
Data Link
Layer
GIGABIT ETHERNET
(a) A two-station Ethernet. (b) A multistation Ethernet.
WIRELESS LAN
A wireless LAN (or WLAN, for wireless local
area network, sometimes referred to as LAWN,
for local area wireless network) is one in which
a mobile user can connect to a local area
network (LAN) through a wireless(radio)
connection.
 The IEEE 802.11 group of standards specify the
technologies for wireless LANs. 802.11
standards use the Ethernet protocol and
CSMA/CA (carrier sense multiple access with
collision avoidance) for path sharing and include
an encryption method

WIRELESS LANS
 The
802.11 Protocol Stack
 The 802.11 Physical Layer
 The 802.11 MAC Sub layer Protocol
 The 802.11 Frame Structure
 Services
THE 802.11 PROTOCOL STACK
Part of the 802.11 protocol stack.
Wireless LAN uses different parts of the spectrum.





They are
Infrared - speed upto 1 mbps - signal which is used in
TV remote control.
FHSS(frequency hopping spread spectrum) &
DSSS(direct sequence spread spectrum) - speed upto 12 mbps – signal which is used in cordless telephones
which does not require licensing.
OFDM(orthogonal frequency division multiplexing) speed upto 54 mbps.
HRDSSS(high rate DSSS) - speed upto 11 mbps
OFDM(orthogonal frequency division multiplexing) another version of OFDM – speed upto 54 mbps at a
different frequency band.
THE 802.11 MAC SUBLAYER PROTOCOL
(a) The hidden station problem.
(b) The exposed station problem.
THE 802.11 MAC SUBLAYER PROTOCOL

The hidden station problem – In fig(a), station C is
transmitting to station B.If A senses the channel, it will
not hear anything and falsely conclude that it may now
start transmitting to B.

The exposed station problem – In fig(b), B wants to
send to C so it listens to the channel. When it hears a
transmission, it falsely concludes that it may not send to
C, even though A may be transmitting to D(not shown).






The MAC sub layer is responsible for the channel allocation
procedures, protocol data unit(PDU) addressing, frame formatting,
error checking and fragmentation and reassembly
The transmission mode can operate in the contention mode
exclusively, requiring all stations to contend for the channel for each
packet transmitted.
IEEE 802.11 three different types of frames: management ,control
and data
The management frames is used for station association and
disassociation with the AP, timing and synchronization, and
authentication and deauthentication.
Control frames is used for handshaking during the CP, for positive
acknowledgments during the CP, and to end the CFP.
Data frames are used for the transmission of data during the CP and
CFP, and can be combined with polling and acknowledgments
during the CFP.
THE 802.11 MAC SUBLAYER PROTOCOL
THE 802.11 MAC SUBLAYER PROTOCOL
Once A received CTS it
A wants to transmit starts to send frame and
to B
starts an ACK timer
B transmits ACK
frame saying that
frame arrived intact
C in range of A
D in range of B but not A
The use of virtual channel sensing using CSMA/CA.
If A’s ACK timer times out before receipt of ACK frame from
B the whole protocol needs to be repeated
THE 802.11 FRAME STRUCTURE
The 802.11 data frame.
Protocol version:
Allows 2 versions of
the protocol to
operate in the same
cell
Frame Type:
Data
Control
Management
Subtype:
CTS, RTS etc
THE 802.11 FRAME STRUCTURE
The 802.11 data frame.
To & From DS:
Indicates if the frame is
going to or coming
from the intercell
distribution systems, I.e.
Ethernet
Cell 1
Cell 3
Cell 2
Base
stations
Outside
world
THE 802.11 FRAME STRUCTURE
The 802.11 data frame.
MF :
More Fragments
of a Frame to
follow
Marks the
retransmission of
an earlier frame
Pwr: used by base
station to send
station into and
out of sleep state:
I.e. Power
management
THE 802.11 FRAME STRUCTURE
The 802.11 data frame.
Sender has more
frames to follow
Specifies that frame
body has been
encrypted:
WEP:
Wired Equivalent
Privacy
Indicates if
frames must be
processed in
ORDER
THE 802.11 FRAME STRUCTURE
The 802.11 data frame.
Sequence: allows fragments to
be numbered
How long the frame
and
acknowledgement
will occupy the
channel
12 bits identify frame
4 bits identify fragment
Source & destination addresses
+
CELL source & destination addresses
THE 802.11 FRAME STRUCTURE
The 802.11 data frame.
Data payload:
up to 2312 bytes
Checksum
802.11 SERVICES
Distribution Services
• Association
•
Disassociation
•
Reassociation
•
Distribution
•
Integration
Mobile stations OR base station breaks
relationship
Station: before shutting down or leaving
Base station: going down for maintenance
Allows mobile station to switch base
stations
i.e. move from one cell to another
Determines how to route frames sent to
base station
i.e. from within cell
from outside of cell
Handles translation from 802.11 format to
format required for destination network
802.11 SERVICES
Intracell Services
Authentication
Single Cell
Once accepted by Base station
mobile station must authenticate
itself – prove it belongs to the
network
Base station send a challenge frame: see if mobile
station knows secret key (password)
Mobile station returns the challenge frame
encrypted using the key
Deauthentication
•
Privacy
Mobile breaks connection and will
need to authenticate again if it wants
back into the network
Encryption & Decryption
RC4 algorithm
•
Data Delivery
Higher layers must deal with
detecting and correcting errors
BLUETOOTH
Bluetooth is a specification for the use of low-power radio
communications to wirelessly link phones, computers and
other network devices over short distances.
 Bluetooth technology was designed primarily to support
simple wireless networking of personal consumer devices and
peripherals, including cell phones, PDAs, and wireless
headsets.
 Wireless signals transmitted with Bluetooth cover short
distances, typically up to 30 feet (10 meters). Bluetooth
devices generally communicate at less than 1 Mbps.
 Bluetooth networks feature a dynamic topology called a
piconet or PAN. Piconets contain a minimum of two and a
maximum of eight Bluetooth peer devices. Devices
communicate using protocols that are part of the Bluetooth
Specification.

BLUETOOTH ARCHITECTURE
Two piconets can be connected to form a
scatter net.
NETWORK TOPOLOGY

Radio Designation
◦
◦

Piconet
◦
◦

Connected radios can be
master or slave
Radios are symmetric
(same radio can be
master or slave)
Master can connect to seven
simultaneous or 200+ active
slaves per piconet
Each piconet has maximum
capacity (1 MSPS)
 Unique hopping
pattern/ID
Scatter net
◦
◦
High capacity system
 Minimal impact with up to
10 piconets within range
Radios can share piconets!
S
P
M
sb
M
P
S
P
sb
S
S
BLUETOOTH APPLICATIONS
The Bluetooth profiles.
THE BLUETOOTH PROTOCOL STACK
The 802.15 version of the Bluetooth protocol architecture.
In the above fig, physical radio layer deals with radio
transmission and modulation.
 Next, baseband layer deals with time slots and how
these slots are grouped into frames.
 Next, Link Manager handles the establishment of logical
channels between devices including power management,
authentication & quality of service.
 Next, middleware layer is designed to deal with legacy
devices such as Rfcomm, telephony, service discovery.
 Last, is the application layer which make use of the
protocols ij lower layers to get their work done.

THE BLUETOOTH FRAME STRUCTURE
A typical Bluetooth data frame.








The frame structure begins with an access code that usually
identifies the master so that slaves within radio of two
masters can tell which traffic is for them.
The 54-bit header contains typical MAC sub layer fields
The data field which is up to 2744 bits for a single time slot,
the format is the same except that data field is 240 bits.
Within the header the Address field identifies which of the
eight active devices the frame is intended for.
Type means it tells the type of frame-ACL(asynchronous
connectionless) or SCO(synchronous connection oriented)
The flow bit is asserted by a slave when the buffer is full and
cannot receive any more data.
The acknowledgment bit is used for piggyback an ACK onto
a frame
The sequence bit is used for number the frames to detect
retransmissions.
Network devices
REPEATER: At the
bottom,in the physical
layer,we
find
the
“repeaters”.These are
analog devices that are
connected to two table
segments.A
signal
appearing on one of
them is amplified and
put
out
on
the
other.Repeaters do not
understand
frames,packets,or
headers.They
understand volts.
Hub
A HUB has number of
input lines that it joins
electrically.HUBs differ
from repeaters in that
they do not usually
amplify the incoming
signals and are designed
to
hold
multiple
linecards each with
multiple inputs,but the
differences are slight.
Bridge
We find bridges and
switches in datalink
layer.A bridge connects
two or more LANs
.When
frame
arrives,software in the
bridge extracts the
destination address from
the frame header and
looks it up in a table to
see where to send the
frame .
switch

A network switch
is a computer
networking device
that connects
network segments.
Router

It is a device like a
switch that connects
more networks or
computers
and
which has inbuilt
software to find the
routes
&
their
shortest paths.
Gateway
These connect two
computers that use
different connection
oriented
transport
protocols.
Application
gateways understand
the
format
and
contents of the data
and
translate
messages from one
format to another.
Bridge
Spanning tree Bridge
Remote Bridge
BRIDGE
Bridge is a network device which is used to join two small & different
networks or it is used to divide a big network into two segments.
It takes the request from one network/segment and passes to other
network/segment and performs the data transmission.
In fig 4.40, bridge acts as a mediator between two different networks
802.11 & 802.3 and performs data transmission.
PORTS
A
B
E
F
BRIDGE
C
D
G
H
SELECTIVE FORWARDING
A
B
E
F
BRIDGE
C
D


G
H
If A sends a frame to E - the frame
must be forwarded by the bridge.
If A sends a frame to B - there is no
reason to forward the frame.
NETWORK LAYER
Network Layer Design Issues
• Store-and-Forward Packet Switching
• Services Provided to the Transport Layer
• Implementation of Connectionless Service
• Implementation of Connection-Oriented Service
• Comparison of Virtual-Circuit and Datagram
Subnets
Store-and-Forward Packet Switching
Switching refers to the transmission of packets from h1 to h2
passing through different network devices.
A device when it gets a data packet from source, it stores and
acquire the route and it forwards to the destination.
IMPLEMENTATION OF CONNECTIONLESS SERVICE
Here we will not have a dedicated channel from H1 to H2
.
Data packets will be transmitted in the available & shortest routes.
IMPLEMENTATION OF CONNECTION-ORIENTED SERVICE
Here we will have a dedicated channel from H1 to H2
.
Data packets will be transmitted in the same dedicated channel.
COMPARISION OF VIRTUAL-CIRCUIT AND DATAGRAM SUBNETS
ROUTING ALGORITHMS
•
The Optimality Principle
• Shortest Path Routing
• Flooding
• Distance Vector Routing
• Link State Routing
• Hierarchical Routing
• Broadcast Routing
• Multicast Routing
• Routing for Mobile Hosts
• Routing in Ad Hoc Networks
THE OPTIMALITY PRINCIPLE
Optimality principle: if router j is on the optimal path from router
I to router k, then the optimal path from j to k also falls along the
same route.
F->A->B best path =>A->B best path
Optimal routes from all sources to a destination form a tree rooted
at the destination
a) A subnet. (b) A sink tree for router B.
SHORTEST PATH ROUTING (DİJKSTRA)




Here we need to find the shortest route from A to H.
Start from A and go to B as the AB is smaller than AB(2) and
AG(6). From B, go to E, then to G.
Here we can reach H from E through (EF, FH) or (EG,GH).But the
route (EF,FH) will be taken as it is lesser(shortest path).
Hence A,B,E,F,H is the shortest route.
FLOODING












Another static routing algorithm is flooding: Every incoming packet
is sent out on every outgoing line except the one it arrived on.
Measures for damming the flood:
A hop counter is included in the header of each packet, which is
decremented at each hop.
A packet is discarded when the counter reaches zero.
A sequence number is included in each packet.
Each router maintains a list per source router telling which sequence
numbers originating at that source have already been seen.
A packet is discarded when it contains a sequence number which is in
the list.
Selective flooding: an incoming packet is sent on those lines that are
going approximately in the right direction.
Random walk: an incoming packet is sent on a line at random.
Possible applications of flooding:
In military applications, to withstand large numbers of routers crashes
at any instant.
As a metric (always choose the shortest path) against which other
routing algorithms can be compared.
DISTANCE VECTOR ROUTING
(a) A subnet. (b) Input from A, I, H, K, and the new
routing table for J.
DISTANCE VECTOR ROUTING








Used by ARPANET, Internet (RIP), DECnet, Novell (IPX), AppleTalk, and Cisco
routers.
Each router maintains a routing table, with one entry for each other router in the
subnet.
Each entry contains two parts: the preferred outgoing line for that destination, and
the estimation of the delay time (or number of hops, distance, queue length, etc.) to
that destination.
Each router knows the “distance” to each of its neighbors and updates its routing
table based on the routing information from its neighbors.
Each router periodically exchanges explicit routing information with each of its
neighbors.
Example – In fig(b), It shows the delay(time) vectors from station A
to all other stations.i.e. from A to A - 0, A to B -12, A to C - 25 etc.
Now suppose we want to transmit packet from J to G. Then at a
particular moment of time the available routes are (JA,AG),(JI,IG),
(JH,HG) & (JK,KG).The delay vectors for (JA,JG - 8+18),(JI,IG –
10+31), (JH,HG – 12+6) & (JK,KG – 6+31).
From the above we can say that (JH,HG -12+6) is the shortest path
where we can transmit packet with less delay .
THE COUNT-TO-INFINITY PROBLEM
A comes up: Good news spreads
fast
Example In fig(b), distance vectors from A to B,C,D,E are 1,2,3,4.
A goes down: Bad news
spreads slow
suddenly if A fails, B cannot reach A directly, Then it thinks that it can reach A
through C i.e. (BC+CA – 1+2 = 3).
Now AB is marked as the 3 which is the latest distance vector. Then now C
will modify its distance vector as (CB+CA = 1+3 = 4).
Lastly if C to A is 4, then B will modify it as (BC+CA = 1+4 = 5)…
Like this the process goes on to infinity modifying the distance vectors.
LINK STATE ROUTING
Distance vector routing was used in the
ARPANET until 1979, when it was replaced by
link state routing.
Each router must do the following:
1. Discover its neighbors, learn their network
address.
2. Measure the delay or cost to each of its
neighbors.
3. Construct a packet telling all it has just learned.
4. Send this packet to all other routers.
5. Compute the shortest path to every other router.
LEARNING ABOUT THE NEIGHBOURS
When a router is booted, it sends a HELLO packet to each outgoing
line and all the routers in the LAN respond back telling its system
details. Like this, a Router can trace its neighbours.
(a) Nine routers and a LAN. (b) A graph model of (a).
MEASURING LINE COST
The most direct way to determine this delay is to send over the line a
special echo packet that the other side is required to send back
immediately. By measuring the Round-trip time and dividing by two, we can
get the delay.
even for better results, the test can be conducted several times and the
average can be used.
A subnet in which the East and West parts are connected by two lines.
BUILDING LINK STATE PACKETS
Once the information needed for the exchange
has been collected, the next step is for each
router to build a packet containing all the data
as below in fig(b).
(a) A subnet. (b) The link state packets for this subnet.
DİSTRİBUTİNG THE LİNK STATE PACKETS

The link state packets of previous phase will be distributed in
the network. Then the routers getting the first ones will
change their routes.

Flooding
◦ Each router records the (source, seq. no.)
◦ Only flood and record packets from a source with higher
seq.no. than previous will be recorded.

Sequence numbers or router records of them can get corrupt.
◦ Include age after seq. no. and decrement it per second.
Discard packets with age zero.
Lastly, Once all the process is over, Run Dijkstra’s
algorithm to know the shortest routes to all the
destinations.
HIERARCHICAL ROUTING
HIERARCHICAL ROUTING
To save the memory, CPU time, and network bandwidth, for
maintaining routing tables, hierarchical routing is used when
the number of routers in the network is very large.
In the above fig(a), some set of routers in the network are
grouped as a Region. In a region, all the routers will have the
complete information about all the other routers and how to
route their packets in the same region.i.e.1A,1B,1C of
region1 will know about each other.
But a router of region1 will not have any details about router
of region2. i.e. 1A router of region1 will not know about 2A
router of region2.
BROADCAST ROUTİNG
•
Broadcasting packets can be done in five ways
 Send a distinct packet to each destination
 Flooding - Each node copies the packet to all outgoing
lines
 Multidestination routing – first, we know the list of
destinations or by using bitmap. Then we determine the
list of output lines for the destinations.
 Sink tree/spanning tree: Copy on all the spanning tree lines
except the one packet arrived from.
 Reverse path forwarding: From a router,if any packet
arrives, it will check whether packets are meant to be sent
to the source. Then, the broadcast packet arrived on a line
other than the preferred one for reaching the source, the
packet is discarded as a likely duplicate.
•
The last three methods are BW efficient.
MULTICAST ROUTİNG
This process will be done in two ways
The packet can be broadcast to all the nodes in
the network though it is not required to send
to unintended recipients.
Next, all the destinations can be formed as a
group and the packet can be sent to the group
which is nothing but multicasting.
ROUTING FOR MOBILE HOSTS
-contd..
Mobile host is a Laptop carrying by a person and if he want to read an email and some Network need to identify him and help in the data
transmission. Foreign agent – Foreign network, Home agent – Home
network
 This will be done in a systematic process as follows(see fig above)

◦ Basically each Foreign agent broadcasts a packet telling its existence, then
mobile host can request it. Otherwise, mobile host will send a request packet
for any foreign agent.
◦ Then mobile host requests foreign agent by giving its home agent details.
◦ Then foreign agent contacts home agent with the given security information
by the mobile host.
◦ If home agent feels ok with the foreign agent, then it will permit foreign agent
to carry on the transmission.
◦ When foreign agent gets positive acknowledgement from home agent, then it
will make entry of this mobile host in its table and performs the data
transmission.
ROUTING IN ADHOC NETWORKS
No fixed router (base station), router and host are on the
same mobile machine and network is a set of machines that
communicate with their neighbors.
-Dynamic topology, validity of paths change
spontaneously.
-
Possibilities when the routers are mobile:
1. Military vehicles on battlefield.
– No infrastructure.
2. A fleet of ships at sea.
– All moving all the time
3. Emergency works at earthquake .
– The infrastructure destroyed.
4. A gathering of people with notebook computers.
– In an area lacking 802.11.
ON DEMAND ROUTE DISCOVERY (AODV)
Graph of nodes (router+host). Connected by a line only if two nodes
communicate directly (not necessarily in each other’s range)
•(a) Range of A's broadcast.(b) After B and D have received A's broadcast.
•(c) After C, F, and G have received A's broadcast. (B and D reject each
other’s broadcast)(d) After E, H, and I have received A's broadcast.
Shaded nodes are new recipients. Arrows show possible reverse routes.
- contd..
ROUTE REQUEST packet processing (broadcast):
-if (Source address,Request ID) is new, record pair
- else discard packet and stop
-if a fresh route (assessed by Dest. Seq. #) to
destination is known, send back ROUTE REPLY
-else increment Hop count, broadcast ROUTE
REQUEST , make an entry in reverse route table
and start a timer.
- Contd ..
Lifetime: how long the route is valid
Hop count: how far away the destination is
ROUTE REPLY packet processing at each
intermediate node on the way back (unicast):
-make an entry into forward routing table for a
route to destination, if no such route exists, route
exists, but is old (Dest. Seq. #), or route exists, but
new route is shorter (Hop Count)
-nodes not on the reverse path erase their reverse
route table entry after timer expires.
-contd ..
In order to limit traffic due to many
broadcasts
 ROUTE REQUEST is sent in areas
inside of increasingly wider rings.
 Enabled by setting time to live to 1 at
first attempt and 2,3,... at further
attempts and decreasing time to live
by one at each hop.

ROUTE MAINTENANCE
Discover which neighbors are no longer available by either periodically
polling them or when no reply comes back for a packet sent.
Purge destinations reached over that neighbor that is now unavailable
Inform those active neighbors (users) that reach any such destination
over that unavailable neighbor.
(a) D's routing table before G goes down.
(b) The graph after G has gone down.
NODE LOOKUP IN PEER-TO-PEER NETWORKS
A set of 32 node identifiers arranged in a circle. The shaded ones
correspond to actual machines. The arcs show the fingers from
nodes 1, 4, and 12. The labels on the arcs are the table indices
CONGESTION
When too many packets are present in the subnet, performance
degrades.This situation is called “congestion”.
Congestion mainly occurs due to Insufficient memory, slow
processors, low bandwidth lines.
CONGESTION PREVENTION POLICIES
Policies that affect congestion.
CONGESTION CONTROL IN VIRTUAL-CIRCUIT SUBNETS
In fig(a), there are two areas where congestion has taken
place.
In fig(b), construct a new sink tree by just avoiding the
congested devices and find the new shortest routes for
data transmission.
CONGESTION CONTROL IN DATAGRAM SUBNETS
Let us now turn to some approaches that can be used in
datagram subnets.
a) Warning Bit:The old DECNET architecture signaled the warning state by
setting a special bit in the packet’s header.
b) Choke Packets:The router sends a choke packet back to the source
host,giving it the destination found in the packet.
c) Hop-by-Hop Choke Packets(see fig below): Here it tells the congestion
status to the previous Hop and requests to reduce or stop the transmission.
d) Load Shedding: When none of the methods make the congestion
disappear,routers can bring out the heavy artillery:”load shedding”. Load
shedding is a fancy way of saying that when routers are being inundated by
packets that they cannot handle,they just throw them away.
e) Jitter control: For applications such as audio and video streaming,it does not
matter much if the packets take 20 msec or 30 msec to be delivered ,as long
as the transit time is constant.The variation in the packet arrival times is
called “jitter”.The range chosen must be feasible ,of course.It must take
into account the speed_of_light transit time and the minimum delay
through the routers and perhaps leave a little stack for some inevitable
delays.
HOP-BY-HOP CHOKE PACKETS
(a) A choke
packet that
affects
only the source.
(b) A choke
packet that
affects
each hop it
passes through.
IP ADDRESS(IPV4)
Here it contains five classes of addresses i.e. class A,B,C,D,E.
IP address is divided into 4 segments, each 8 bit size i.e. 4 byte length
The Range of values for any class are as below.
Example: take class C- starts with 110.
Then minimum value for that address in binary is
110 00000.00000000.00000000.00000000
Which is equivalent to 192.0.0.0
Then maximum value for the above address in binary is
110 11111.11111111.11111111.11111111
Which is equivalent to 223. 255.255.255
THE IP PROTOCOL
The IPv4 (Internet Protocol) header.
IPV6 HEADER






It is the advancement to IPV4.
These are 16 byte length addresses.
The Header is simplified to 7 fields.
The Header fields are optional too.
It is a big advance in security.
More attention is given for the quality of service.
TRANSPORT LAYER - SERVICE PRIMITIVES
To allow users to access the transport service,the
transport layer must provide some operations to
application programs,that is,a trasport service interface.
Each transport service has its own interface.
There are 5 trasport primitives.
1.LISTEN
2.CONNECT
3.SEND
4.RECEIVE
5.DISCONNECT
THE PRIMITIVES FOR A SIMPLE TRANSPORT SERVICE
PRIMITIVE
PACKET SENT
MEANING
LISTEN
(NONE)
BLOCKS UNTIL SOME
PROCESS TRIES TO
CONNECT
CONNECT
CONNECTION REQ
ACTIVELY ATTEMPT
TO ESTABLISH A
CONNECTION
SEND
DATA
SEND INFORMATION
RECEIVE
(NONE)
BLOCK UNTIL A DATA
PACKET ARRIVES
DISCONNECT
DISCONNECTION
REQ
THIS SIDE WANTS TO
RELEASE THE
CONNECTION
BERKELEY SOCKETS
These are another set of transport primitives.The socket
primitives used in Berkeley UNIX for TCP.These
primitives are widely used for internet programming.
There are 8 primitives.
1.SOCKET
2.BIND
3.LISTEN
4.ACCEPT
5.CONNECT
6.SEND
7.RECEIVE
8.CLOSE
THE SOCKET PRIMITIVES FOR TCP
1.SOCKET: It creates a new end point and allocates table
space for it with in the transport entity.
2.BIND:Network addresses are assigned using the BIND
primitive.
3.LISTEN:It allocates space to queue incoming calls for the
case that several clients try to connect at the same time.
4.ACCEPT:To block waiting for an incoming connection,the
server executes an ACCEPT primitive.
5.CONNECT:This primitive blocks the caller and actively starts
the connection process.
6&7.SEND &RECEIVE: Both sides can now use SEND and
RECV to transmit and receive data over the full_dulpex
connection.
8.CLOSE:When both sides have executed a CLOSE
primitive,the connection is released.
ELEMENTS OF TRANSPORT PROTOCOLS
The transport service is implemented by a “transport
protocol” used between the two transport entities.In
some ways ,transport protocolos resemble the data link
protocols.
Both have to deal with error
control,sequencing,flow control among other issues.To
perform these operations transport layer have some
elements. Those elements are the following.
1.ADDRESSING.
2.CONNECTION ESTABLISHMENT
3.CONNECTION RELEASE
4.FLOW CONTROL AND BUFFERING
5.MULTIPLEXING
6.CRASH RECOVERY
1.ADDRESSING
When an application process wishes to set up a
connection to a remote application process,it
must specify which one to connect to.The
method normally used is to define transport
addresses to which process can listen for
connection requests.
In the internet these end points are called
PORTS.We will use the generic term
TSAP(transport service access point).The
analogous end points in the network layer are
then called NSAPs.
TSAP,NSAP AND TRANSPORT CONNECTIONS
APPLICATION
PROCESS
TSAP1208
TRANSPORT
CONNECTION
SERVER 1
SERVER2
TSAP 1522
TSAP 1836
NSAP
NSAP
HOST 1
HOST 2
CONNECTION ESTABLISHMENT
The problem with establishing a connection occurs when the subnet
can lose, store, and duplicate packets.
 How to deal with the problem of delayed duplicated and establish
connections in a reliable way ?
 Method 1: use throwaway TSAP addresses.
 Method 2:
 Each connection is assigned a connection identifier (i.e., a sequence
number incremented for each connection established), chosen by the
initiating party, and put in each TPDU, including the one requesting
the connection.
 Method 3:
 Let be some small multiple of the true maximum packet lifetime. is
protocol-dependent. If we wait a time after a packet has been sent,
we can be sure that all traces of it are gone.
CONNECTION RELEASE
Releasing a connection is easier than establishing one.
Asymmetric release is abrupt and may result in data loss,
as shown in Fig. .Abrupt disconnection with loss of data.
CR
ACK
No data
Delivered
After a
Disconnect
request
DATA
DATA
DR
HOST1
HOST2
One way to avoid data loss is to use
symmetric release, in which each
direction is released independently of the
other one.
 A more sophisticated release protocol is
required to avoid data loss.
 says:``I am done. Are you done too ?''
 If responds:``I am done too. Goodbye.''

FLOW CONTROL AND BUFFERING
How connections are managed while they are in
use ?
 For flow control, a sliding window is needed on
each connection to keep a fast transmitter from
overrunning a slow receiver (the same as the data
link layer).
 The sender should always buffer outgoing TPDUs
until they are acknowledged.
 The receiver may not dedicate specific buffers to
specific connections. Instead, a single buffer pool
may be maintained for all connections. When a
TPDU comes in, if there is a free buffer available,
the TPDU is accepted, otherwise it is discarded.



However, for high-bandwidth traffic (e.g., file transfers),
it is better if the receiver dedicate a full window of
buffers, to allow the data to flow at maximum speed.
How large the buffer size should be ?
TPDU1
TPDU2
TPDU3
CHAINED FIXED SIZE
BUFFERS
TPDU4
CHAINED VARIABLE
SIZED BUFFERS
TPDU5
ONE LARGE SIZED CIRCULAR
BUFFER
MULTIPLEXING
The reasons for multiplexing:
 To share the price of a virtual circuit
connection: mapping multiple transport
connections to a single network
connection (upward multiplexing).
 To provide a high bandwidth: mapping a
single transport connection to multiple
network
connections
(downward
multiplexing).

L
A
Y
E
R
S
TR
AN
SP
OR
T
AD
DR
ESS
4
3
NE
T
W
OR
K
AD
DR
ESS
2
ROUTER
LINES
1
UPWARD MULTIPLEXING
DOWNWARD MULTIPLEXING
CRASH RECOVERY



In case of a router crash, the two transport
entities must exchange information after the
crash to determine which TPDUs were
received and which were not. The crash can
be recovered by retransmitting the lost ones.
It is very difficulty to recover from a host
crash.
No matter how the sender and receiver are
programmed, there are always situations
where the protocol fails to recover properly.
STRATEGY BY
SENDING HOST
FIRST ACK,THEN WRITE
AC(W)
AWC C(AW)
FIRST WRITE,THEN
ACK
C(WA) WAC WC(A)
OK
DUP DUP
ALWAYS
RETRANSMIT
OK
DUP
OK
NEVER
RETRANSMIT
LOST
OK
LOST
LOST OK
OK
RETRANSMIT IN
S0
OK
DUP
LOST
LOST DUP
OK
RETRANSMIT IN
S1
LOST
OK
OK
OK
DUP
OK
STRATEGY USED BY RECEIVING HOST
OK=protocol functions currectly
DUP=protocol generates a duplicate message
LOST=protocol losses a message
DIFFERENT COMBINATIONS OF CLIENT AND SERVER STRATEGY
TRANSMISSION CONTROL PROTOCOL(TCP)
TCP is a connection oriented transport
protocol designed to work in conjunction
with IP. TCP provides its user (application
layer) with the ability to transmit reliably a
byte stream to a destination and allows for
multiplexing multiple TCP connections
within a transmitting or receiving host
computer.
TCP was specifically designed to provide a
reliable end-to-end byte stream over an
unreliable internet work.
TCP SERVICE MODEL
TCP service is obtained by creating end
points called “SOCKETS”.
 Each socket consists of a socket number
and port number.
 A single daemon (called the inetd in
Unix) waits on multiple ports for an
incoming connection.
 Port numbers below 1024 are called
“well_known ports” and are reserved for
standard services.

SOME ASSIGNED PORTS
PORT
PROTOCOL
USE
21
FTP
FILE TRANSFER
23
TELNET
REMOTE LOGIN
25
SMTP
E-MAIL
69
TFTP
TRIVIAL FILE TRANSFER PROTOCOL
79
FINGER
LOOK UP INFORMATION ABOUT A USER
80
HTTP
WORLD WIDE WEB
110
POP-3
REMOTE E-MAIL ACCESS
119
NNTP
USE NET NEWS
TCP SEGMENT HEADER
Sequence number is used to mark the first
byte.
 acknowledgement number is the next byte
that is expected. Note that each byte is
marked with sequence number.
 Header Length tells how many 32-bit
words are in the header.
 Following the Header Length is an unused
6 bit field
 URG is the urgent pointer (set to 1 if
used). Indicates abyte offset from the
current sequence number at which urgent
data are to be found. Typically not used.

ACK bit is set to1 to indicate that the
acknowledgment number is valid. The value
0 means don’t use the acknowledgement
number.
 PSH indicates PUSHed data; i.e. a request to
the receiver to deliver the received data to
the application and not buffer it.
 RST is used to reset the connection.
 SYN is used to establish connections. A
connection request will typically have
SYN=1 and ACK=0.
 connection reply carries SYN=1 and ACK=1






FIN is used to teardown a connection.
The window size tells how many bytes may
be sent starting at the byte acknowledged.
Primarily this is used for flow control. Recall
that TCP uses sliding window protocol.
Checksum is used for error detection.
The options are typically used for some
other information not included in the
standard header fields.
Such as options may include information on
how much TCP payload a host is willing to
receive and how much to back track during
retransmissions.
TCP CONNECTION ESTABLISHMENT
Connections are established in TCP by means of
the three-way handshake
 “Three-way handshake”
 synchronies both ends of a connection by
enabling both sides to agree upon initial
sequence numbers.
 Example-Host A starts a connection to host B.
 A sends a packet with a random initial sequence
number and SYN bit set.
 Host B receives the packet, creates its own
packet with SN bit on, a random sequence
number and the ACK value set
 Host A sends a reply packet in a similar fashion
as B, without the SYN bit.
.
TCP CONNECTION ESTABLISHMENT -NORMAL CASE
SYN(SEQ=X)
T
I
M
E
SYN(SEQ=Y,ACK=X+1)
(SEQ=X+1,ACK=Y+1)
HOST A
HOST B
TCP CONNECTION RELEASE
Although TCP connections are fullduplex,to
understand how connections are released it is
best to think of them as a pair of simplex
connections. Each simplex connection is
released independently of its sibling,To
release a connection,either party can send a
TCP segment as no more data to transmit.
When the FIN is acknowledged,that
direction is shut down for new data.When
both directions have been shutdown,the
connection is released.
TCP CONNECTION MANAGEMENT MODELING
The steps required to establish and release
connections can be represented using 11 states. In
each state certain events are legal.When a legal
event happens,some action may be taken.If some
other event happens,an error is reported.
Each connection starts in the CLOSED state.It
leaves that state when it does either a passive open
or an active open.
A connection is established and the state becomes
ESTABLISHED.Connection release can be
initiated by either side.When it is complete the
state returns to CLOSED.
THE STATES USED IN TCP
STATES
DESCRIPTION
CLOSED
NO CONNECTION IS ACTIVE OR PENDING
LISTEN
THE SERVER IS WAITING FOR AN INCOMING CALL
SYN RCVD
A CONNECTION REQUEST HAS ARRIVED,WAIT FOR ACK
SYN SENT
THE APPLICATION HAS STARTED TO OPEN CONNECTION
ESTABLISHED
THE NORMAL DATA TRANSFER STATE
FIN WAIT 1
THE APPLICATION HAS SAID IT IS FINISHED
FIN WAIT 2
THE OTHER SIDE HAS AGREED TO RELEASE
TIMED WAIT
WAIT FOR ALL PACKETS TO DIE OFF
CLOSING
BOTH SIDES HAVE TRIES TO CLOSE SIMULTANIOUSLY
CLOSE WAIT
THE OTHER SIDE HAS INITIATED A RELEASE
LAST ACK
WAIT FOR ALL PACKETS TO DIE OFF
TCP TIMER MANAGEMENT
TCP uses multiple timers to do its work.The
most imporant of these is the “retransmission
timer”.
 􀂉 Problem: how long should be the timeout
interval of the retransmission timer?
 􀂉 Solution: dynamically adjust the timeout
interval based on continuous measurements
of network performance.
 􀂉 Estimating round trip time (RTT):
 Record time from segment sent to ACK
receipt, denoted by M
 RTT = a*RTT + (1-a)*M, typically a = 7/8.
TIMER MANAGMENT
TCP CONGESTION CONTROL
When the load offered to any network is more
than it can handle,congestion builds up.The
internet is no exception.Now let us look at
the “Internet congestion control algorithm.”
It
uses
a
third
parameter,the
“threshold”,initially 64 KB,in addition to the
receiver and congestion windows.When a
timeout occurs,the threshold is set to half of
the current congestion window ,and the
congestion window is reset to one maximum
segment.
TCP CONGESTION CONTROL
20
Congestion
avoidance
Congestion occurs
15
Congestion
window
Threshold
10
5
Fast recovery
would cause a
change here.
Slow
start
0
Round-trip times
153
WIRELESS TCP
TCP congestion control algorithm leads to
poor performance on a wireless network.
 When a packet is lost on a wired network,
the sender should slow down.
 When a packet is lost on a wireless
network, the sender should speed up.
 􀂉 How to make the correct decision on a
timeout when the path from sender to
receiver is heterogeneous?

WIRELESS TCP
USER DATAGRAM PROTOCOL
It is also fast compared to the use of TCP, since there is no
connection establishment phase. Moreover, UDP is
important since RTP (Real time Transport Protocol) is
supported over UDP.
 UDP (User Datagram Protocol) is a simple OSI
transport layer protocol for client/server network
applications based on Internet Protocol (IP). UDP is the
main alternative to TCP and one of the oldest network
protocols in existence, introduced in 1980.
 UDP is often used in videoconferencing applications or
computer games specially tuned for real-time
performance. To achieve higher performance, the
protocol allows individual packets to be dropped (with
no retries) and UDP packets to be received in a different
order than they were sent as dictated by the application.
UDP PACKET FORMAT
Figure 20: UDP Packet Format

UDP port numbers allow different applications to maintain
their own channels for data similar to TCP. UDP port headers
are two bytes long; therefore, valid UDP port numbers range
from 0 to 65535.

The UDP datagram size is a count of the total number of
bytes contained in header and data sections. As the header
length is a fixed size, this field effectively tracks the length of
the variable-sized data portion (sometimes called payload).
The size of datagrams varies depending on the operating
environment but has a maximum of 65535 bytes.

UDP checksums protect message data from tampering. The
checksum value represents an encoding of the datagram data
calculated first by the sender and later by the receiver. Should
an individual datagram be tampered with or get corrupted
during transmission, the UDP protocol detects a checksum
calculation mismatch. In UDP, checksumming is optional as
opposed to TCP where checksums are mandatory.
UDP Datagrams
UDP network traffic is organized in the
form of datagrams. A datagram comprises
one message unit. The first eight (8) bytes
of a datagram contain header information
and the remaining bytes contain message
data.
 A UDP datagram header consists of four
(4) fields of two bytes each:
 source port number
 destination port number
 datagram size
 checksum


DOMAIN NAME SERVER (DNS)


DNS allows the use of 'friendly names': names that are
easier to read and memorize for humans.
It is able to do mappings between these Domain names
and IP-addresses. For instance:
◦ www.ietf.org => 132.151.1.19
◦ www.ns.nl => 195.108.47.18



Many applications use DNS for user convenience (e.g.
your Web-Browser).
DNS uses a (world-wide) distributed database based on
hierarchically structured domains.
DNS is specified in RFC 1034 and RFC 1035.
Dns Resource Record
The resource record will be in this format
Domain_name time_to_live class type value
Domain_name - it tells the domain name
time_to_live - the existance of record for 1day/hr/min
Class – it is generally IN(internet information)
Type – it denotes a Host/name server/mail server etc..
Value – it can be a number/domain name/Ascii string
Eg:
www.yahoo.com 86400 IN NS 130.37.16.112
www.gitam.edu 86400 IN MX 192.168.34.56
DNS
root
edu
com mil
mit.edu
org
int
net
ietf.org
gov
… nl … be … uk …
nasa.gov
www.ietf.org
domain
host
www.cs.utwente.nl
utwente.nl
cs.utwente.nl
demeter.cs.utwente.nl
Web page Retrieval
DNS server
ISP server
client
server
Yahoo
Web server
-contd..





In the above figure, a user (client) of a particular network
makes a request for a web page.
Then for eg: user has given www.yahoo.com in the address
bar of browser(internet explorer)in his client system.
Then soon HTTP comes into picture, takes the request of
user and pass it onto the local server, then from there the
request will be passed onto the ISP(eg - BSNL) server and
from there it will be passed onto the DNS server.
Then DNS will search for that address, if it is found then that
request will be passed onto the yahoo web server and the
yahoo server will act on the request, process it, respond
back with the requested web page in the same path.
If address is not found in DNS then it will come back with
empty response.
E-MAIL
E-mail means or system for transmitting messages
electronically (as between computers on a network)
 messages sent and received electronically through an email system.
 These messages usually consist of individual pieces of
text which you can send to another computer user even
if the other user is not logged in (i.e. using the
computer) at the time you send your message. The
message can then be read at a later time. This procedure
is analogous to sending and receiving a letter.
 When mail is received on a computer system, it is
usually stored in an electronic mailbox for the recipient
to read later. Electronic mailboxes are usually special
files on a computer which can be accessed using
various commands. Each user normally has their
individual mailbox.

User agent 




A user agent is normally a program that accepts a variety of
commands for composing, receiving, and replying to messages.
Agent
• a.k.a. “mail reader”.
composing, editing, reading mail messages.
e.g., Eudora, Outlook, elm,Netscape Messenger.
outgoing, incoming messages stored on server.
COMMON EMAIL PROTOCOLS
 Sending Mail:
◦ SMTP (Simple Mail Transport Protocol)

Servers include Sendmail, Postfix, Exim, Qmail

Receiving Mail
◦ IMAP (Internet Message Access Protocol)
◦ POP3 (Post Office Protocol v3)
Servers Include Dovecot, Courier, Qmail
SMTP - If ever configuring a mail server, try to separate these two types of services
 Outgoing Mail Server
◦ Should have some kind of authentication
◦ Queue messages when receiving server is unavailable
◦ Sends bounce message to sender after retrying delivery
 Incoming Mail Server (or MX server)
◦ Receives incoming messages from the Internet
◦ Delivers message to a mailbox
◦ (Should never send a bounce)

POP3 - Retrieves messages from a mail server.

Typically, messages are downloaded to your mail client, and deleted from the server.

Designed for use with dial-up connections when people were intermittently connected.

Listens on Port 110 (with Secure POP generally on port 995).

IMAP - Listens on port 143 (IMAP/SSL on port 993)

Mail stays on the server. Mail Client caches information locally

Extremely useful for multiple users, multiple machines, Webmail, etc

Searches are done on the server
WORLD WIDE WEB
Components of world wide web
HTTP
 HTML
 INTERNET
 BROWSER
 URL

COMPONENTS OF WWW
HTTP






HTTP – Hyper text transfer protocol
It is a software which is used across web to take the
Request of a client and pass it to the web server and
come back with the Response with some set of rules.
HTTP is a request/response standard as is typical in
client-server computing.
The client is an application (e.g. web browser, spider
etc) on the computer used by an end-user.
The server is an application running on the computer
hosting the web site.
The client which submits HTTP requests is also
referred to as the user agent. The responding server—
which stores or creates resources such as HTML files
and images—may be called the origin server.
HTML
HTML is a language for describing web
pages.
 HTML stands for Hyper Text Markup
Language
 HTML is not a programming language, it
is a markup language
 A markup language is a set of markup tags
 HTML uses markup tags to describe web
pages

INTERNET
It is a network of networks that
consists of millions of private
and public, academic, business,
and government networks of
local to global scope that are
linked by a broad array of
electronic
and
optical
networking technologies.
 The Internet carries a vast array
of information resources and
services, most notably the interlinked hypertext documents of
the World Wide Web (WWW)
and the infrastructure to
support.
 It
is
a
collection
of
interconnected documents and
other resources, linked by
hyperlinks and URLs.

BROWSER




A browser is an application program that provides a
way to look at and interact with all the information on
the World Wide Web.
A browser converts HTML source code(markup tags)
to beautiful text, images, graphical motions etc.
Technically, a Web browser is a client program that
uses HTTP (Hypertext Transfer Protocol) to make
requests of Web servers throughout the Internet on
behalf of the browser user.
The first Web browser with a graphical use interface
was Mosaic, which appeared in 1993. Many of the
user interface features in Mosaic went into Netscape
Navigator. Microsoft followed with its Internet
Explorer (IE).
URL



A common way to get to a Web site is to enter the
URL of its home page file in your Web browser's
address line. However, any file within that Web site
can also be specified with a URL.
The URL contains the name of the protocol to be
used to access the file resource, a domain name that
identifies a specific computer on the Internet, and a
pathname, a hierarchical description that specifies
the location of a file in that computer.
A URL is a type of URI (Uniform Resource
Identifier, formerly called Universal Resource
Identifier.)
WEB DOCUMENTS

The documents in the WWW can be grouped
into different categories: static, dynamic. The
category is based on the time the contents of the
document are determined.
Static Documents
 Dynamic Documents

STATIC DOCUMENT
DYNAMIC DOCUMENT
In a dynamic web page, there will be a provision for I/O. i.e. When
the web page is running, We will give some input to the web page,
correspondingly there will be a change in the output of the web page.
HTTP REQUEST AND RESPONSE
REQUEST AND RESPONSE MESSAGES
METHODS
STATUS CODES
Download