Chapter 25 Internet Routing

thoughtlessskytopΔίκτυα και Επικοινωνίες

29 Οκτ 2013 (πριν από 3 χρόνια και 10 μήνες)

94 εμφανίσεις

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 distance
-
vector 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 client
-
server 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
Client
-
Server 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.