Chapter 25 Internet Routing

advertisement
Chapter 25
Internet Routing





Internetworking Technology
How routing tables are built initially
How routing software updates the tables as needed.
Propagation of routing information in the global Internet
General concept of routing information exchange,
several routing update protocols used in the Internet.
Static Vs. Dynamic Routing
IP routing can be partitioned into two
broad categories.



Static routing: Routes are called static if
they do not change – a static routing
table is loaded with values when the
system starts and the routes do not
change unless an error is detected.
Dynamic routing: system that can change
routing table information over time.
Static Routing In Hosts And A Default
Route




Static routing is easy to specify and does not require extra
routing software.
It does not consume bandwidth, and no CPU cycles are required
to propagate routing information.
However, it is relatively inflexible, it cannot accommodate
network failures or changes in topology.
Where is static routing used?

Most hosts use static routing, especially in cases where the host
has one network connection and a single router connects the
network to the rest of the Internet. The host’s routing table
contains two entries: one for the network to which the host
attaches and a default entry that directs all other traffic to a
specific router.
Static Routing In Hosts And A Default
Route (continued)
Dynamic Routing And Routers


To ensure that all routers maintain
information about how to reach each possible
destination, each router runs software that
learns about destinations other routers can
reach, and informs other routers about
destinations that it can reach.
The routing software uses incoming
information to update the local routing table
continuously.
Dynamic Routing And Routers
(continued)
Routing In The Global Internet

To limit routing traffic, the Internet uses a
two level routing hierarchy: Routers and
networks in the Internet are divided into
groups, where each group is known as an
autonomous system.


All routers within a group exchange routing
information.
At least one router (possible more) in each group
summarizes the information before passing it to
other groups.
Routing In The Global Internet
(continued)

How large is a group? What protocol do
routers use within a group? How is routing
information represented? What protocol do
routers use between groups?


The designers did not dictate an exact size nor
specify an exact data presentation or protocol.
The designers purposefully kept the
architecture flexible enough to handle a wide
variety of organizations – they decided to
permit each organization to choose a routing
protocol independently.
Autonomous System Concept

Autonomous System (AS): Concept of groups
and routers




A contiguous set of networks and routers all under
control of one administrative authority
Sufficiently flexible co accommodate many
possibilities
EX: AS can correspond to an entire corporation or
university
AS size can be made for economic, technical, or
administrative reasons.
Two Types Of Internet Routing
Protocols

Interior Gateway Protocols (IGPs)



Routers within an autonomous system uses an Interior
Gateway Protocol (IGP) to exchange routing information
IGP is easy to install and operate, but may limit the size or
routing complexity.
Exterior Gateway Protocols (EGPs)


A router in one autonomous system uses an Exterior
Gateway Protocol (EGP) to exchange routing information
with a router in another autonomous system.
EGPs are more complex to install and operate than IGPs but
EGPs offer more flexibility and lower overhead (i.e., less
traffic)
Two Types Of Internet Routing
Protocols (continued)
Routes And Data Traffic

Data traffic for a given destination flows
in exactly the opposite direction of
routing traffic
The Border Gateway Protocol
(BGP)



Version 4 is the current standard BGP, it is the
Exterior Gateway Protocol used to exchange
routing information among autonomous
systems in the global Internet.
ISPs use BGP-4 to obtain routing information
from each other and from an authoritative
route server
Because all ISPs participate, a datagram from
an arbitrary computer to an arbitrary
destination will be forwarded correctly.
The Routing Information
Protocol (RIP)
RIP Characteristics:
 Routing within an autonomous system: RIP is
designed as an IGP used to pass information among
routers within an autonomous system
 Hop Count Metric:



RIP measures distance in network hops, each network
between source and destination counts as single hop.
RIP uses origin-one counting, meaning that a directly
connected network is 1 hop away, not zero.
Unreliable Transport: RIP uses UDP for all message
transmission.
RIP (continued)




Broadcast Or Multicast Delivery: RIP is
intended for use over LAN technologies that
support broadcast or multicast
Support For Default Route Propagation:
Allows router to advertise a default route
Distance Vector Algorithm: Uses distancevector approach to routing defined in
Algorithm.
Passive Version For Hosts: Allows a host to
listen passively and update its routing table.
The Open Shortest Path First
Protocol (OSPF)


Although RIP works well among a few
routers, it does not scale to a large
internet (since messages are large)
To satisfy demand for a routing protocol
that can scale to large organizations,
the IETF devised an IGP known as
OSPF.
OSPF Areas





One particular that makes OSPF more complex and
powerful is hierarchical routing
To achieve a hierarchy, a manager divides routers
and networks into subsets that calls areas.
OSPF allows communication between areas in
addition to exchanging information within an area.
One router in each area is configured to
communicate with a router in one or more other
area(s).
The two routers summarize routing information they
have learned from other routers within their
respective area, and then exchange the summary.
Multicast Routing


Different between multicast routing and unicast
routing: Internet multicast allows dynamic group
membership and anonymous senders.
An IP multicast group is anonymous in two ways:


First, neither a sender nor a receiver knows (or can find out)
the identity or the number of group members
Second, routers and hosts do not know which applications
will send a datagram to a group because an arbitrary
application can send a datagram to any multicast group at
any time.
Chapter 25 Summary






Both hosts and routers contain an IP routing table.
Most hosts use static routing and some use dynamic
routing
The Internet is divided into a set of autonomous
systems
IGPs: exchange routing information within
autonomous system
EGPs: pass routes between autonomous system.
BGP: is the primary EGP in the Internet
Internet multicast allows dynamic group membership
and an arbitrary source can send to multicast group
without being a member.
Chapter 26
Client – Server Interaction
Introduction:
 Client-server interaction
 Basis forms for all network applications.
 Basic client-server model
 Client-sever interaction arises from the
way networks protocols operate.
 Example applications use the clientserver paradigm.
Functional Application Software




Applications supply high-level services that
users access
Determine how users perceive the underlying
internet
Determine the format which information is
displayed
Define symbolic names identifier for physical
and abstract resources on internet
The Client-Server Paradigm

The terms client and server refer to the two
applications involved in a communication:



The application that actively initiates contact is
called a client
The application that passively waits for contact is
called a server.
Network applications use a form of
communication known as the client-server
paradigm.
Client Characteristics






Is an arbitrary application program that becomes a
client temporarily when remote access is needed.
Is invoked directly by a user, and executes only for
one section.
Runs locally on a user’s personal computer.
Actively initiates contact with a server
Can access multiple services as needed, but actively
contacts one remote server at a time.
Does not require special hardware or a sophisticated
operating system.
Server Characteristics






Is a special-purpose, privileged program dedicated to
providing one service, but can handle multiple
remote clients at the same time.
Is invoked automatically when a system boots, and
continues to execute through many sections.
Runs on a shared computer
Waits passively for contact from arbitrary remote
clients.
Accepts contact from arbitrary clients, but offers a
single service.
Requires powerful hardware and a sophisticated
operating system.
Requests, Responses, And
Direction of Data Flow
Information can pass in either or both
directions between a client and a server
 A client sends a request (or a series or
requests) to a server, and the server returns
a response (or issues a series of responses)
to the client.
 In other cases, the server provides
continuous output without any request – as
soon as the client contacts the server, the
server begins sending data.
Transport Protocols and ClientServer Interaction


As the figure shows, a client
or server application
interacts directly with a
transport-layer protocol to
establish communication and
to send or receive
information.
The transport protocol then
uses lower layer protocols to
send and receive individual
messages
Multiple Services On One
Computer


Powerful computer system can run
multiple clients and servers at the same
time.
Requirements:


The computer must have fast processor
and large memory
Must have an operating system that allows
multiple application programs to execute
concurrently (e.g., UNIX or Windows).
Multiple Services On One
Computer
Identifying A Particular Service


Transport protocols mechanism assigns
each service a unique identifier and
requires both the client and server to
use the identifier.
Protocol software uses the identifier to
direct each incoming request to the
correct server.
Dynamic Server Creation

Server is constructed in two parts:


One that accepts requests and creates new
thread for the request
Another consists of the code to handle
individual request.
Connection-Oriented And
Connectionless Transport
Transport protocols support two basic forms of
communication: connection-oriented or
connectionless
 Connection-oriented:



requires explicit connection, provides reliable data delivery.
Clients and Server exchange data once connection is
established.
Connectionless:


Permits an application to send a message to any destination
at any time.
When using connectionless, sending application must specify
a destination with each message it sends.
Service Through Multiple
Protocols


Servers need not choose between connectionless and
connection-oriented transport – the same service can
be made available over two or more transport
protocols.
There are two possible implementations of a
multiprotocol server:


First: two servers exist for the same service – one server
uses connectionless, the other uses connection-oriented
transport.
Second: a single server program interacts with two or more
transport protocols at the same time.
Complex Client-Server
Interactions

A client application is not restricted to accessing a
single service




An application can first become a client of one service, and
then become a client of another.
The client contacts a different server (perhaps on a different
computer) for each service.
A client application is not restricted a accessing a
single server for a given service. In some services,
each server provides different information than
servers running on other computers.
A server is not restricted from performing further
client-server interactions - a sever for one service
can become a client of the other.
Chapter 26 Summary





Communication across a network or internet all use a single
form of interaction. The interaction is called the client-server
paradigm
A program that passively waits for contact is called a sever, and
a program that actively initiates contact with a server is called a
client.
A client program is often invoked by a user, and usually
executes on the user’s private computer.
Sever program usually run on large, server-class computers that
have sophisticated operating systems.
Clients and servers use transport protocols to communicate
Chapter 26 Summary
(continued)


Both client and server are required to
use identifier for the desired service.
Client-server interaction can be
complex.


A single client can access more than one
service.
A client can access server on multiple
machines, and a server for one service can
become a client for other services.
Download