Information Infrastructure

profileKristen96
CH11-BDC7e.pptx

Lecture slides prepared for “Business Data Communications”, 7/e, by William Stallings and Tom Case, Chapter 11 “Internet Operation”.

1

Chapter 11

Internet Operation

This chapter looks at some of the details “under the hood” of the Internet. We begin

by examining the rather complicated issue of addressing in such a far-flung, massive,

and dynamic configuration. Next, we provide an overview of routing protocols, by

which routers cooperate to design routes, or paths, through the Internet from source

to destination. Then, we introduce the issue of quality of service. Next, we look at

the most important approach to providing quality of service on the Internet, known

as differentiated services. Finally, we introduce the topics of service level agreements

and IP performance metrics.

2

Internet Addressing

To identify a host on the Internet, each host is assigned a unique IP address, which

consists of two logical components: a network component, which identifies a network

on the Internet, and a host component, which identifies a host connected to a

particular network. The host portion of the address need only be unique within its

designated network. Thus, the IP address is of the form

IP address = <network number> < host number>

The network number portion of the IP address is administered by one of five

Regional Internet Registries. The host portion is assigned by the authority that

manages the network, which is typically the organization that owns the network.

The IP address is assigned to a network interface on a host (there may be

multiple network interfaces) when the OS boots up. As discussed in Chapter 7, the

IP address is obtained either by looking it up in a configuration file or dynamically,

via the Dynamic Host Configuration Protocol (DHCP).

3

To identify a host on the Internet each host is assigned a unique IP address

Consists of two logical components:

A network component which identifies a network on the Internet

A host component which identifies a host connected to a particular network

The form of the IP address is:

IP address = <network number> <host number>

The network number is administered by one of five Regional Internet Registries

The host number is assigned by the authority that manages the network

The IP address is obtained either by looking it up in a configuration file or dynamically via the Dynamic Host Configuration Protocol (DHCP)

IPv4 Addressing

IPv4 uses 32-bit address field

Addresses are usually written in dotted decimal notation

A decimal number represents each of the octets of the 32-bit address

IP address 11000000 11100100 00010001 00111001 is written 192.228.17.57

IPv4 uses 32-bit address field. IP addresses are usually written in what is called dotted

decimal notation , with a decimal number representing each of the octets of the 32-bit

address. For example, the IP address 11000000 11100100 00010001 00111001 is written

as 192.228.17.57.

4

Class-Based IP Addresses

Rightmost bits of the 32-bit IP address designate a host

The leftmost bits of the 32-bit address designate a network

Class-based, or classful, IP addressing was adopted to allow for a variable allocation of bits to specify network and host

The first few leftmost bits specify how the rest of the address should be separated into network and host fields

This provides flexibility in assigning addresses to hosts and allows a mix of network sizes on an internet

In general terms, the rightmost, or least significant,

bits of the 32-bit IP address designate a host, and the leftmost, or most significant,

bits designate a network. A fixed allocation of bits, such as 16 bits for network

number and 16 bits for host, was deemed inadequate to handle the global Internet,

where some organizations might have a few networks, each with many hosts and

some organizations might have many networks, each with a few hosts. Therefore, a

scheme known as class-based , or classful , IP addressing was adopted.

Class-based IP addresses allow for a variable allocation of bits to specify

network and host. For this scheme, the first few leftmost bits specify how the rest

of the address should be separated into network and host fields. This encoding provides

flexibility in assigning addresses to hosts and allows a mix of network sizes on

an internet.

5

Address Classes

Class A addresses are best suited to a configuration with few networks,

each with many hosts.

The Class A address has the following format:

0 network (7 bits) host (24 bits)

Class B addresses are best suited to a configuration with a medium number

of networks, each with a medium number of hosts, and have the following format:

1 0 network (14 bits) host (16 bits)

Class C addresses are best suited to a configuration with many networks, each

with a few hosts, and have the following format:

1 1 1 network (21 bits) host (8 bits)

An organization would be assigned one or more blocks from these classes.

6

Class A

All addresses begin with binary 0

Class B

Best suited to a configuration with a medium number of networks, each with a medium number of hosts

All addresses begin with binary 10

Class C

Best suited to a configuration with many networks, each with a few hosts

All addresses begin with binary 111

Best suited to a configuration with few networks, each with many hosts

Subnets and Subnet Masks

Allows for subdivision of internets within an organization

Each LAN can have a subnet number, allowing routing among networks

Host portion is partitioned into subnet and host numbers

The concept of subnet was introduced to address

the following requirement. Consider an internet that includes one or more WANs

and a number of sites, each of which has a number of LANs. We would like to allow

arbitrary complexity of interconnected LAN structures within an organization

while insulating the overall internet against explosive growth in network numbers

and routing complexity. One approach to this problem is to assign a single

network number to all of the LANs at a site. From the point of view of the rest

of the internet, there is a single network at that site, which simplifies addressing

and routing. To allow the routers within the site to function properly, each LAN

is assigned a subnet number. The host portion of the internet address is partitioned

into a subnet number and a host number to accommodate this new level

of addressing.

Within the subnetted network, the local routers must route on the basis of

an extended network number consisting of the network portion of the IP address

and the subnet number. The address mask indicates the bit positions containing this

extended network number. The use of the address mask allows the host to determine

whether an outgoing datagram is destined for a host on the same LAN (send

directly) or another LAN (send datagram to router). It is assumed that some other

means (e.g., manual configuration) are used to create address masks and make them

known to the local routers.

7

Table 11.1 IP Addresses and Subnet Masks

Table 11.1a shows the calculations involved in the use of a subnet mask. Note that

the effect of the subnet mask is to erase the portion of the host field that refers to an

actual host on a subnet. What remain are the network number and the subnet number.

The default subnet mask for a given class of addresses is a null mask (Table 11.1b),

which yields the same network and host number as the non-subnetted address.

8

Example of Subnetworking

Figure 11.1 shows an example of the use of subnetting. The figure

shows a local complex consisting of three LANs and two routers. To the rest of the

internet, this complex is a single network with a Class C address of the form

192.228.17.x , where the leftmost three octets are the network number and the rightmost

octet contains a host number x . Both routers R1 and R2 are configured with

a subnet mask with the value 255.255.255.224 (see Table 11.1a). For example, if a

datagram with the destination address 192.228.17.57 arrives at R1 either from the

rest of the internet or from LAN Y, R1 applies the subnet mask to determine that

this address refers to subnet 1, which is LAN X, and so forwards the datagram to

LAN X. Similarly, if a datagram with that destination address arrives at R2 from

LAN Z, R2 applies the mask and then determines from its forwarding database

that datagrams destined for subnet 1 should be forwarded to R1. Hosts must also

employ a subnet mask to make routing decisions.

9

Classless Inter-Domain Routing (CIDR)

Makes more efficient use of the 32-bit IP address than the class-based method

Does away with the class designation and with the use of leading bits to identify a class

Each 32-bit address consists of a leftmost network part and a rightmost host part, with all 32 bits used for addressing

Associated with each IP address is a prefix value that indicates the length of the network portion of the address

A CIDR IP address is written as a.b.c.d/p

a is the value of the first byte of the address

b the value of the second byte

c the value of the third byte

d the value of the fourth byte

p is in the range of 1 through 32 and indicates the length of the network portion of the address

By the mid-1990s, it became evident to

Internet designers and administrators that the 32-bit class-based addressing scheme

was woefully inadequate for the growing demand for IP addresses. The long-term

solution to this problem, as described in Chapter 8, was the development of IPv6,

which includes 128-bit address fields. The use of 128-bit addresses increases the number

of possible unique addresses by a factor of almost 1029 compared to the use of

32-bit addresses.

However, the deployment of IPv6 would take many years so, as an interim

measure, CIDR was adopted. CIDR makes more efficient use of the 32-bit IP

address than the class-based method primarily because it makes more efficient

use of the address space. With class-based addressing, an organization can request

a block of addresses that provides 8, 16, or 24 bits for host addresses. Because

Internet addresses were typically only assigned as blocks of a certain class, there

were a lot of wasted addresses.

CIDR does away with the class designation and with the use of leading bits

to identify a class. Instead, each 32-bit address consists of a leftmost network part

and a rightmost host part, with all 32 bits used for addressing. Associated with each

IP address is a prefix value that indicates the length of the network portion of the

address. A CIDR IP address is written as a .b .c .d /p , where a is the value of the first

byte of the address, b the value of the second byte, c the value of the third byte, and

d the value of the fourth byte. Each of these values is in the range of 0 to 255. The

prefix value p is in the range of 1 through 32 and indicates the length of the network

portion of the address.

In CIDR notation, a prefix is shown as a 4-octet quantity, just like a traditional

IPv4 address or network number, followed by the “/” (slash) character, followed

by a decimal value from 0 through 32. For example, the legacy “Class B” network

172.16.0.0, with an implied network mask of 255.255.0.0, is defined as the prefix

172.16.0.0/16, the “/16” indicating that the mask to extract the network portion of the

prefix is a 32-bit value where the most significant 16 bits are ones and the least significant

16 bits are zeros. Similarly, the legacy “Class C” network number 192.168.99.0

is defined as the prefix 192.168.99.0/24; the most significant 24 bits are ones and the

least significant 8 bits are zeros.

Note that each 32-bit address still has (and must have) a unique interpretation.

That is, each IP address must have associated with it a prefix value p for proper routing

to the correct network and delivery to the correct host. However, the IP address field

only provides space for the 32-bit IP address and not for the prefix value. Accordingly,

each CIDR routing table entry in each Internet router contains a 32-bit IP address and

a 32-bit network mask, which together give the length of the IP prefix. Clearly, it would

be impractical to have an entry for each of the 232 possible IP addresses together with

a mask at each router. Instead, multiple IP addresses referring to a block of CIDR

addresses can be identified with a single mask, a process known as supernetting.

10

IPv6 Addresses

IPv6 addresses are 128 bits in length. Addresses are assigned to individual interfaces

on nodes, not to the nodes themselves. A single interface may have multiple

unique unicast addresses. Any of the unicast addresses associated with a node’s

interface may be used to uniquely identify that node. As with IPv4, IPv6 addresses

use CIDR rather than address classes.

The combination of long addresses and multiple addresses per interface

enables improved routing efficiency over IPv4. Longer internet addresses allow

for aggregating addresses by hierarchies of network, access provider, geography,

corporation, and so on. Such aggregation should make for smaller routing tables

and faster table lookups. The allowance for multiple addresses per interface would

allow a subscriber that uses multiple access providers across the same interface to

have separate addresses aggregated under each provider’s address space.

IPv6 allows three types of addresses (Figure 11.2):

• Unicast: An identifier for a single interface. A packet sent to a unicast address

is delivered to the interface identified by that address.

• Anycast: An identifier for a set of interfaces (typically belonging to different

nodes). A packet sent to an anycast address is delivered to one of the interfaces

identified by that address (the “nearest” one, according to the routing

protocols’ measure of distance).

• Multicast: An identifier for a set of interfaces (typically belonging to different

nodes). A packet sent to a multicast address is delivered to all interfaces

identified by that address.

The notation for an IPv6 address uses eight hexadecimal number to represent

the eight 16-bit blocks in the 128-bit address, with the numbers divided by colons.

For example:

FE80:0000:0000:0000:0001:0800:23E7:F5DB

To make the notation more compact, leading zeroes in any hexadecimal number are

omitted. For the preceding example, the result is:

FE80:0:0:0:1:800:23E7:F5DB

To further compress the representation, a zero or any contiguous sequence of zeroes

is replaced by a double colon. For our example, the result is:

FE80::1:800:23E7:F5DB

11

Internet Routing Protocols

The routers in an internet are responsible for receiving and forwarding packets

through the interconnected set of networks. Each router makes routing decisions

based on knowledge of the topology and traffic/delay conditions of the internet.

In a simple internet, a fixed routing scheme is possible, in which a single,

permanent route is configured for each source–destination pair of nodes in the

network. The routes are fixed, or at most only change when there is a change in

the topology of the network. Thus, the link costs used in designing routes cannot

be based on any dynamic variable such as traffic. They could, however, be based

on estimated traffic volumes between various source–destination pairs or the

capacity of each link.

In more complex internets, a degree of dynamic cooperation is needed among

routers. In particular, routers must avoid portions of the network that have failed

and should avoid portions of the network that are congested. To make such dynamic

routing decisions, routers exchange routing information using a special routing

protocol for that purpose. Information is needed about which networks can be

reached by which routes, and the delay characteristics of various routes.

In considering the routing function, it is important to distinguish two concepts:

• Routing information: Information about the topology and delays of the

internet

• Routing algorithm: The algorithm used to make a routing decision for a particular

datagram, based on current routing information

12

Responsible for receiving and forwarding packets between interconnected networks

Make routing decisions based on the knowledge of the topology and traffic/delay conditions of the Internet

Must dynamically adapt to changing network conditions

In considering the routing function, it is important to distinguish two concepts:

Routing information

Information about the topology and delays of the internet

Routing algorithm

The algorithm used to make a routing decision for a particular datagram, based on current routing information

Autonomous Systems

A set of routers and networks managed by a single organization

Consists of a group of routers exchanging information via a common routing protocol

Except in times of failure, there is a path between any pair of nodes

Interior Router Protocol (IRP) passes information between routers within an AS

The protocol used within the AS does not need to be implemented outside of the system

This flexibility allows IRPs to be custom tailored to specific applications and requirements

To proceed with our discussion of routing protocols, we need to introduce the concept

of an autonomous system (AS) . An AS exhibits the following characteristics:

1. An AS is a set of routers and networks managed by a single organization.

2. An AS consists of a group of routers exchanging information via a common

routing protocol.

3. Except in times of failure, an AS is connected (in a graph-theoretic sense);

that is, there is a path between any pair of nodes.

A shared routing protocol, which we shall refer to as an interior router

protocol (IRP) , passes routing information between routers within an AS. The

protocol used within the AS does not need to be implemented outside of the

system. This flexibility allows IRPs to be custom tailored to specific applications

and requirements.

13

Application of Exterior and Interior Routing Protocols

It may happen, however, that an internet will be constructed of more than

one AS. For example, all of the LANs at a site, such as an office complex or campus,

could be linked by routers to form an AS. This system might be linked through

a wide area network to other ASs. The situation is illustrated in Figure 11.3. In

this case, the routing algorithms and information in routing tables used by routers

in different ASs may differ. Nevertheless, the routers in one AS need at least a

minimal level of information concerning networks outside the system that can

be reached. We refer to the protocol used to pass routing information between

routers in different ASs as an exterior router protocol (ERP) .

In general terms, IRPs and ERPs have a somewhat different flavor. An IRP

needs to build up a rather detailed model of the interconnection of routers within

an AS in order to calculate the least-cost path from a given router to any network

within the AS. An ERP supports the exchange of summary reachability information

between separately administered ASs. Typically, this use of summary information

means that an ERP is simpler and uses less detailed information than an IRP.

In the remainder of this section, we look at what are perhaps the most important

examples of these two types of routing protocols: BGP and OSPF.

14

Border Gateway Protocol (BGP)

Developed for use in conjunction with internets that employ the TCP/IP suite

Has become the preferred ERP for the Internet

Was designed to allow routers in different ASs to cooperate in the exchange of routing information

Operates in terms of messages, which are sent over TCP connections

BGP-4 is the current version

Three functional procedures:

Neighbor acquisition

Neighbor reachability

Network reachability

The Border Gateway Protocol (BGP) was developed for use in conjunction with

internets that employ the TCP/IP suite, although the concepts are applicable to any

internet. BGP has become the preferred exterior router protocol for the Internet.

BGP was designed to allow routers, called gateways in the standard, in different

ASs to cooperate in the exchange of routing information. The protocol operates

in terms of messages, which are sent over TCP connections. The current version of

BGP is known as BGP-4.

15

BGP Functional Procedures

Three functional procedures are involved in BGP:

• Neighbor acquisition

• Neighbor reachability

• Network reachability

Two routers are considered to be neighbors if they are attached to the same

network. If the two routers are in different autonomous systems, they may wish

to exchange routing information. For this purpose, it is necessary first to perform

neighbor acquisition . The term neighbor refers to two routers that share the same

network. In essence, neighbor acquisition occurs when two neighboring routers in

different autonomous systems agree to exchange routing information regularly.

A formal acquisition procedure is needed because one of the routers may not

wish to participate. For example, the router may be overburdened and may not

want to be responsible for traffic coming in from outside the AS. In the neighbor

acquisition process, one router sends a request message to the other, which may

either accept or refuse the offer. The protocol does not address the issue of how

one router knows the address or even the existence of another router, nor how it

decides that it needs to exchange routing information with that particular router.

These issues must be dealt with at configuration time or by active intervention of

a network manager.

To perform neighbor acquisition, one router sends an Open message to

another. If the target router accepts the request, it returns a Keepalive message in

response.

Once a neighbor relationship is established, the neighbor reachability

procedure is used to maintain the relationship. Each partner needs to be assured

that the other partner still exists and is still engaged in the neighbor relationship.

For this purpose, the two routers periodically issue Keepalive messages to

each other.

The final procedure specified by BGP is network reachability . Each router

maintains a database of the networks that it can reach and the preferred route for

reaching each network. Whenever a change is made to this database, the router

issues an Update message that is broadcast to all other routers for which it has a

neighbor relationship. Because the Update message is broadcast, all BGP routers

can build up and maintain their routing information.

16

Neighbor acquisition

The term neighbor refers to two routers that share the same network

Acquisition occurs when two neighboring routers in different autonomous systems agree to exchange routing information regularly

Neighbor reachability

Used to maintain a neighbor relationship

Network reachability

Each router maintains a database of the networks that it can reach and the preferred route for reaching each network

Whenever a change is made to this database the router issues an Update message that is broadcast to all other routers for which it has a neighbor relationship

Open Shortest Path First (OSPF) Protocol

Widely used as an IRP in TCP/IP networks

Uses a link state routing algorithm

Computes a route through the internet that incurs the least cost base on a user-configurable metric of cost

Each router maintains a database that reflects the known topology of the AS of which it is a part

The topology is expressed as a directed graph consisting of:

Vertices, or nodes of two types:

Router

Network, which is in turn of two types:

Transit

Stub

Edges, of two types:

A graph edge that connects two router vertices when the corresponding routers are connected to each other by a direct point-to-point link

A graph edge that connects a router vertex to a network vertex when the router is directly connected to the network

The OSPF protocol is widely used as an interior router protocol in TCP/IP

networks. OSPF uses what is known as a link state routing algorithm. Each router

maintains descriptions of the state of its local links to networks, and from time to

time transmits updated state information to all of the routers of which it is aware.

Every router receiving an update packet must acknowledge it to the sender. Such

updates produce a minimum of routing traffic because the link descriptions are

small and rarely need to be sent.

OSPF computes a route through the internet that incurs the least cost based

on a user-configurable metric of cost. The user can configure the cost to express a

function of delay, data rate, dollar cost, or other factors. OSPF is able to equalize

loads over multiple equal-cost paths.

Each router maintains a database that reflects the known topology of the

autonomous system of which it is a part. The topology is expressed as a directed graph.

The graph consists of the following:

• Vertices, or nodes, of two types:

—Router

—Network, which is in turn of two types:

• Transit, if it can carry data that neither originates nor terminates on an

end system attached to this network

• Stub, if it is not a transit network

• Edges, of two types:

— A graph edge that connects two router vertices when the corresponding

routers are connected to each other by a direct point-to-point link

— A graph edge that connects a router vertex to a network vertex when the

router is directly connected to the network

17

A Sample Autonomous System

Figure 11.4 shows an example of an autonomous system (only one host is

shown). A link cost is associated with a transmission from each router along each

of its interfaces to a network or directly to a host. If a router is connected to other

autonomous systems, then the path cost to each network in the other system must

be obtained by some exterior routing protocol (ERP).

18

Multicasting

Sending a packet from a source to the members of a multicast group

Multicast addresses

Addresses that refer to a group of hosts on one or more networks

Practical applications include:

Multimedia

Teleconferencing

Database

Distributed computation

Real-time workgroup

Typically, an IP address refers to an individual host on a particular network. IP also

accommodates addresses that refer to a group of hosts on one or more networks.

Such addresses are referred to as multicast addresses , and the act of sending a packet

from a source to the members of a multicast group is referred to as multicasting .

Multicasting has a number of practical applications. For example,

• Multimedia: A number of users “tune in” to a video or audio transmission

from a multimedia source station.

• Teleconferencing: A group of workstations form a multicast group such that a

transmission from any member is received by all other group members.

• Database: All copies of a replicated file or database are updated at the same

time.

• Distributed computation: Intermediate results are sent to all participants.

• Real-time workgroup: Files, graphics, and messages are exchanged among

active group members in real time.

Multicasting done within the scope of a single LAN segment is straightforward.

IEEE 802 and other LAN protocols include provision for MAC-level

multicast addresses. A packet with a multicast address is transmitted on a LAN

segment. Those stations that are members of the corresponding multicast group

recognize the multicast address and accept the packet. In this case, only a single

copy of the packet is ever transmitted. This technique works because of the broadcast

nature of a LAN: a transmission from any one station is received by all other

stations on the LAN.

19

Illustration of Multicasting

In an internet environment, multicasting is a far more difficult undertaking. To

see this, consider the configuration of Figure 11.5, in which a number of LANs are

interconnected by routers. Routers connect to each other either over high-speed

links or across a wide area network (network N4). A cost is associated with each

link or network in each direction, indicated by the value shown leaving the router

for that link or network. Suppose that the multicast server on network N1 is transmitting

packets to a multicast address that represents the workstations indicated

on networks N3, N5, and N6. Suppose that the server does not know the location

of the members of the multicast group. Then one way to assure that the packet

is received by all members of the group is to broadcast a copy of each packet to

each network in the configuration, over the least-cost route for each network. For

example, one packet would be addressed to N3 and would traverse N1, link L3, and

N3. Router B is responsible for translating the IP-level multicast address to a MAClevel

multicast address before transmitting the MAC frame onto N3.

20

Traffic Generated by Various Multicasting Strategies

Table 11.2

summarizes the number of packets generated on the various links and networks in

order to transmit one packet to a multicast group by this method. In this table, the

source is the multicast server on network N1 in Figure 11.5; the multicast address

includes the group members on N3, N5, and N6. Each column in the table refers to

the path taken from the source host to a destination router attached to a particular

destination network. Each row of the table refers to a network or link in the configuration

of Figure 11.5. Each entry in the table gives the number of packets that

traverse a given network or link for a given path. A total of 13 copies of the packet

are required for the broadcast technique.

Now suppose the source system knows the location of each member of the

multicast group. That is, the source has a table that maps a multicast address into

a list of networks that contain members of that multicast group. In that case, the

source need only send packets to those networks that contain members of the group.

We could refer to this as the multiple unicast strategy. Table 11.2 shows that in this

case, 11 packets are required.

Both the broadcast and multiple unicast strategies are inefficient because they

generate unnecessary copies of the source packet. In a true multicast strategy, the

following method is used:

1. The least-cost path from the source to each network that includes members of

the multicast group is determined. This results in a spanning tree of the configuration.

The spanning tree is a set of all the networks that include multicast

members, plus sufficient links between networks to establish a route from a

source to all multicast members.

2. The source transmits a single packet along the spanning tree.

3. The packet is replicated by routers only at branch points of the spanning tree.

21

Multicast Routing Protocols

At the local level, individual hosts need a method of joining or leaving a multicast group

Internet Group Management Protocol (IGMP)

Used between hosts and routers on a broadcast network such as Ethernet or a wireless LAN to exchange multicast group membership information

Supports two principal operations:

Hosts send messages to routers to subscribe to and unsubscribe from a multicast group defined by a given multicast address

Routers periodically check which multicast groups are of interest to which hosts

For multicasting to work, the source of a multicast packet, together with Internet

routers, must identify networks that include hosts with the given multicast address

and determine a route that will reach all hosts in the group. For this purpose, a

number of address discovery and routing protocols are used at different levels of the

Internet architecture.

At the local level, individual hosts need a method of

joining or leaving a multicast group. The host needs to be able to alert a router

on its local network of its membership status in a multicast group. On a broadcast

network, such as Ethernet or a wireless LAN, the Internet Group Management

Protocol (IGMP) is used between hosts and routers to exchange multicast

group membership information. IGMP takes advantage of the broadcast

nature of a LAN to provide an efficient technique for the exchange of information

among multiple hosts and routers. In general, IGMP supports two principal

operations:

1. Hosts send messages to routers to subscribe to and unsubscribe from a multicast

group defined by a given multicast address.

2. Routers periodically check which multicast groups are of interest to which

hosts.

22

Interior Routing Protocols

Routers must cooperate across an organization’s internet or across the Internet to route and deliver multicast IP packets

Routers need to know which networks include members of a given multicast group

Routers need sufficient information to calculate the shortest path to each network containing group members

Multicast Extensions to OSPF (MOSPF)

Enhancement to OSPF for the exchange of multicast routing information

Protocol Independent Multicast (PIM)

Designed to extract needed routing information from any unicast routing protocol and may support routing protocols that operate across multiple ASs with a number of different unicast routing protocols

IGMP enables a router to know of hosts on an

attached network that are using a particular multicast IP address. Next, routers

must cooperate across an organization’s internet or across the Internet to route

and deliver multicast IP packets. Routers must exchange two sorts of information.

First, routers need to know which networks include members of a given multicast

group. Second, routers need sufficient information to calculate the shortest path to

each network containing group members. These requirements imply the need for a

multicast routing protocol.

Within an AS, a number of alternative multicast routing protocols have

been developed. We mention two here. Multicast Extensions to OSPF (MOSPF)

is an enhancement to OSPF for the exchange of multicast routing information.

Periodically, each router floods information about local group membership to all

other routers in its AS. The result is that all routers in an AS are able to build up

a complete picture of the location of all group members for each multicast group.

Each router constructs the shortest-path spanning tree from a source network to

all networks containing members of a multicast group.

Protocol Independent Multicast (PIM) provides a more general solution to

multicast routing than MOSPF. As the name suggests, PIM is a separate routing

protocol, independent of any existing unicast routing protocol. PIM is designed

to extract needed routing information from any unicast routing protocol and may

support routing protocols that operate across multiple ASs with a number of

different unicast routing protocols.

23

Emergence of High-Speed LANs

Traditionally, office LANs provided basic connectivity services—connecting

personal computers and terminals to mainframes and midrange systems that ran corporate

applications and providing workgroup connectivity at the departmental or

divisional level. In both cases, traffic patterns were relatively light, with an emphasis

on file transfer and electronic mail. The LANs that were available for this type of

workload, primarily Ethernet and token ring, were well suited to this environment.

In recent years, two significant trends altered the role of the personal computer

and therefore the requirements on the LAN:

1. The speed and computing power of personal computers continued to enjoy

explosive growth. These more powerful platforms support graphics-intensive

applications and ever more elaborate graphical user interfaces to the operating

system.

2. IT (information technology) organizations have recognized the LAN as a

viable and essential computing platform, resulting in the focus on network

computing. This trend began with client/server computing, which has become a

dominant architecture in the business environment and the more recent Web-focused

intranet trend. Both of these approaches involve the frequent transfer

of potentially large volumes of data in a transaction-oriented environment.

The effect of these trends has been to increase the volume of data to be handled

over LANs and, because applications are more interactive, to reduce the acceptable

delay on data transfers. The earlier generation of 10-Mbps Ethernets and 16-Mbps

token rings is simply not up to the job of supporting these requirements.

24

In recent years two significant trends altered the role of the personal computer and therefore the requirements on the LAN:

The more powerful platforms of personal computers support graphics-intensive applications and ever more elaborate graphical user interfaces to the operating system

Information technology (IT) organizations have recognized the LAN as a viable and essential computer platform, resulting in the focus on network computing

Corporate WAN Needs

Greater dispersal of employee base

Growing use of telecommuting

Changing application structures

Increased client/server and intranet

More reliance on personal computers, workstations, and servers

GUIs enables the end user to exploit graphic applications, multimedia, and other data-intensive applications

Dependence on Internet access

More data must be transported off premises and onto WANs

As recently as the early 1990s, there was an emphasis in many organizations on a

centralized data processing model. In a typical environment, there might be significant

computing facilities at a few regional offices, consisting of mainframes or well equipped

midrange systems. These centralized facilities could handle most corporate

applications, including basic finance, accounting, and personnel programs, as well

as many of the business-specific applications. Smaller, outlying offices (e.g., a bank

branch) could be equipped with terminals or basic personal computers linked to one

of the regional centers in a transaction-oriented environment.

This model began to change in the early 1990s, and the change accelerated

through the mid-1990s. Many organizations have dispersed their employees into

multiple smaller offices. There is a growing use of telecommuting. Most significant,

the nature of the application structure has changed. First client/server computing

and, more recently, intranet computing have fundamentally restructured the

organizational data processing environment. There is now much more reliance on

personal computers, workstations, and servers and much less use of centralized

mainframe and midrange systems. Furthermore, the virtually universal deployment

of graphical user interfaces to the desktop enables the end user to exploit graphic

applications, multimedia, and other data-intensive applications. In addition, most

organizations require access to the Internet. Because a few clicks of the mouse can

trigger huge volumes of data, traffic patterns have become more unpredictable while

the average load has risen.

All of these trends mean that more data must be transported off premises and

onto WANs. It has long been accepted that in the typical business environment,

about 80, of the traffic remains local and about 20, traverses wide area links. But

this rule no longer applies to most companies, with a greater percentage of the traffic

going into the WAN environment. This traffic flow shift places a greater burden

on LAN backbones and, of course, on the WAN facilities used by a corporation.

Thus, just as for LANs, changes in corporate data traffic patterns are driving the

creation of high-speed WANs.

25

Internet Traffic

Elastic Traffic

Can adjust, over wide ranges, to changes in delay and throughput across an internet and still meet the needs of its applications

Type of traffic for which internets were designed

Applications include file transfer, electronic mail, remote logon, network management, and Web access

Inelastic Traffic

Does not adapt well, if at all, to changes in delay and throughput across an internet

Examples include real-time traffic, such as voice and video

Traffic on a network or internet can be divided into two broad categories: elastic

and inelastic. A consideration of their differing requirements clarifies the need for

an enhanced internet architecture.

Elastic traffic can adjust, over wide ranges, to changes in delay and throughput

across an internet and still meet the needs of its applications. This is the traditional

type of traffic supported on TCP/IP-based internets and is the type of traffic for

which internets were designed. With TCP, traffic on individual connections adjusts

to congestion by reducing the rate at which data are presented to the network.

Elastic applications include common Internet-based applications, such as file

transfer, electronic mail, remote logon, network management, and Web access. But

there are differences among the requirements of these applications. For example,

• E-mail is generally insensitive to changes in delay.

• When file transfer is done interactively, as it frequently is, the user expects

the delay to be proportional to the file size and so is sensitive to changes in

throughput.

• With network management, delay is generally not a serious concern. However,

if failures in an internet are the cause of congestion, then the need for network

management messages to get through with minimum delay increases with

increased congestion.

• Interactive applications, such as remote logon and Web access, are sensitive to

delay.

So, even if we confine our attention to elastic traffic, a QoS-based internet

service could be of benefit. Without such a service, routers are dealing evenhandedly

with arriving IP packets, with no concern for the type of application and whether

this packet is part of a large transfer or a small one. Under such circumstances, and

if congestion develops, it is unlikely that resources will be allocated in such a way

as to meet the needs of all applications fairly. When inelastic traffic is added to the

mix, matters are even more unsatisfactory.

Inelastic traffic does not easily adapt, if at all, to changes in delay and throughput

across an internet. The prime example is real-time traffic, such as voice and

video.

26

Requirements of Inelastic Traffic

The requirements for inelastic traffic may include the following:

• Throughput: A minimum throughput value may be required. Unlike most

elastic traffic, which can continue to deliver data with perhaps degraded

service, many inelastic applications require a firm minimum throughput.

• Delay: An example of a delay-sensitive application is stock trading; someone

who consistently receives later service will consistently act later, and with

greater disadvantage.

• Jitter: The magnitude of delay variation, called jitter , is a critical factor in real-time

applications. Because of the variable delay imposed by the Internet, the

interarrival times between packets are not maintained at a fixed interval at the

destination. To compensate for this, the incoming packets are buffered, delayed

sufficiently to compensate for the jitter, and then released at a constant rate to

the software that is expecting a steady real-time stream. The larger the allowable

delay variation, the longer the real delay in delivering the data and the

greater the size of the delay buffer required at receivers. Real-time interactive

applications, such as teleconferencing, may require a reasonable upper bound

on jitter.

• Packet loss: Real-time applications vary in the amount of packet loss, if any,

that they can sustain.

These requirements are difficult to meet in an environment with variable

queuing delays and congestion losses. Accordingly, inelastic traffic introduces two

new requirements into the internet architecture. First, some means is needed to

give preferential treatment to applications with more demanding requirements.

Applications need to be able to state their requirements, either ahead of time in

some sort of service request function, or on the fly, by means of fields in the IP

packet header.

A second requirement in supporting inelastic traffic in an internet architecture

is that elastic traffic must still be supported. Inelastic applications typically do not

back off and reduce demand in the face of congestion, in contrast to TCP-based

applications. Therefore, unless some control is imposed, in times of congestion

inelastic traffic will continue to supply a high load and elastic traffic will be crowded

off the internet.

Several mechanisms for providing QoS services on the Internet have been

proposed. The one that has received the broadest acceptance is known as differentiated

services. We turn to this topic next.

27

Throughput

A minimum value may be required

Delay

Services like stock trading are delay-sensitive

Delay variation (jitter)

Because of delays imposed by the Internet, the interarrival times between packets are not maintained at a fixed interval at the destination

Incoming packets are buffered, delayed, and then released at a constant rate to the software that is expecting a steady real-time stream

Real-time interactive applications, such as teleconferencing, may require a reasonable upper bound on jitter

Packet loss

Real-time applications vary in the amount of packet loss, if any, that they can sustain

Differentiated Services (DS)

Provide QoS on the basis of the needs of different groups of users

Most widely accepted QoS mechanism in enterprise networks

Key characteristics:

No change is required to IP

Existing applications need not be modified to use DS

Provides a built-in aggregation mechanism – all traffic with the same DS octet is treated the same by the network service

Routers deal with each packet individually and do not have to save state information on packet flows

As the burden on the Internet grows, and as the variety of applications grows, there

is an immediate need to provide differing levels of QoS to different users. The

differentiated services (DS) architecture is designed to provide a simple, easy-to-implement,

low-overhead tool to support a range of network services that are differentiated

on the basis of performance. In essence, differentiated services do not

provide QoS on the basis of flows but rather on the basis of the needs of different

groups of users. This means that all the traffic on the Internet is split into groups

with different QoS requirements and that routers recognize different groups on the

basis of a label in the IP header.

Several key characteristics of DS contribute to its efficiency and ease of

deployment:

• IP packets are labeled for differing QoS treatment using the 6-bit DS field in

the IPv4 and IPv6 headers (Figure 8.7). No change is required to IP.

• A service level agreement (SLA) is established between the service provider

(internet domain) and the customer prior to the use of DS. This avoids the

need to incorporate DS mechanisms in applications. Thus, existing applications

need not be modified to use DS.

• DS provides a built-in aggregation mechanism. All traffic with the same DS

octet is treated the same by the network service. For example, multiple voice

connections are not handled individually but in the aggregate. This provides

for good scaling to larger networks and traffic loads.

• DS is implemented in individual routers by queuing and forwarding packets

based on the DS octet. Routers deal with each packet individually and do not

have to save state information on packet flows.

Today, DS is the most widely accepted QoS mechanism in enterprise networks.

28

Services

The DS type of service is provided within a DS domain, which is defined as a

contiguous portion of the Internet over which a consistent set of DS policies are

administered. Typically, a DS domain would be under the control of one administrative

entity. The services provided across a DS domain are defined in a service level

agreement, which is a service contract between a customer and the service provider

that specifies the forwarding service that the customer should receive for various

classes of packets. A customer may be a user organization or another DS domain.

Once the SLA is established, the customer submits packets with the DS octet marked

to indicate the packet class. The service provider must assure that the customer gets

at least the agreed QoS for each packet class. To provide that QoS, the service provider

must configure the appropriate forwarding policies at each router (based on

DS octet value) and must measure the performance being provided to each class on

an ongoing basis.

If a customer submits packets intended for destinations within the DS domain,

then the DS domain is expected to provide the agreed service. If the destination is

beyond the customer’s DS domain, then the DS domain will attempt to forward the

packets through other domains, requesting the most appropriate service to match

the requested service.

A DS framework document lists the following detailed performance parameters

that might be included in an SLA:

• Service performance parameters, such as expected throughput, drop probability,

and latency

• Constraints on the ingress and egress points at which the service is provided,

indicating the scope of the service

• Traffic profiles that must be adhered to for the requested service to be provided

• Disposition of traffic submitted in excess of the specified profile

29

A DS framework document lists all the following detailed performance parameters that might be included in an SLA

Service performance parameters, such as expected throughput, drop probability, and latency

Constraints on the ingress and egress points at which the service is provided, indicating the scope of the service

Traffic profiles that must be adhered to for the requested service to be provided

Disposition of traffic submitted in excess of the specified profile

DS Services Provided

The framework document also gives some examples of services that might be

provided:

1. Traffic offered at service level A will be delivered with low latency.

2. Traffic offered at service level B will be delivered with low loss.

3. Ninety percent of in-profile traffic delivered at service level C will experience

no more than 50 ms latency.

4. Ninety-five percent of in-profile traffic delivered at service level D will be

delivered.

5. Traffic offered at service level E will be allotted twice the bandwidth of traffic

delivered at service level F.

6. Traffic with drop precedence X has a higher probability of delivery than traffic

with drop precedence Y.

The first two examples are qualitative and are valid only in comparison to other

traffic, such as default traffic that gets a best-effort service. The next two examples

are quantitative and provide a specific guarantee that can be verified by measurement

on the actual service without comparison to any other services offered at the

same time. The final two examples are a mixture of quantitative and qualitative.

30

Traffic offered at service level A will be delivered with low latency

Traffic offered at service level B will be delivered with low loss

90% of in-profile traffic delivered at service level C will experience no more than 50 ms latency

95% of in-profile traffic delivered at service level D will be delivered

Traffic offered at service level E will be allotted twice the bandwidth of traffic delivered at service level F

Traffic with drop precedence X has a higher probability of delivery than traffic with drop precedence Y

DS Field

Packets are labeled for service handling by means of the 6-bit DS field in the IPv4

header or the IPv6 header (Figure 8.7). The value of the DS field, referred to as the

DS codepoint , is the label used to classify packets for differentiated services.

With a 6-bit codepoint, there are, in principle, 64 different classes of traffic

that could be defined. These 64 codepoints are allocated across three pools of

codepoints, as follows:

• Codepoints of the form xxxxx0, where x is either 0 or 1, are reserved for

assignment as standards.

• Codepoints of the form xxxx11 are reserved for experimental or local use.

• Codepoints of the form xxxx01 are also reserved for experimental or local use

but may be allocated for future standards action as needed.

31

Packets are labeled for handling in 6-bit DS field in the IPv4 header, or the IPv6 header

Value of field is “codepoint”

6-bits allows 64 codepoints in 3 pools

Form xxxxx0 - reserved for assignment as standards

Form xxxx11 - reserved for experimental or local use

Form xxxx01 - also reserved for experimental or local use, but may be allocated for future standards action as needed

Precedence subfield indicates urgency

Route selection, Network service, Queuing discipline

RFC 1812 provides two categories of recommendations for queuing discipline

Queue Service

Congestion Control

DS Domains

Figure 11.6 illustrates the type of configuration envisioned in the DS documents. A

DS domain consists of a set of contiguous routers; that is, it is possible to get from

any router in the domain to any other router in the domain by a path that does

not include routers outside the domain. Within a domain, the interpretation of DS

codepoints is uniform, so that a uniform, consistent service is provided.

32

DS Configuration and Operation

Interior Nodes

Implement simple mechanisms for handling packets based on their DS codepoint values

Includes:

A queuing discipline to give preferential treatment depending on codepoint value

Packet-dropping rules to dictate which packets should be dropped first in the event of buffer saturation

Forwarding treatment is per-hop behavior (PHB)

Must be available at all routers

Is the only part of DS implemented in interior routers

Boundary Nodes

Includes PHB mechanisms as well as more sophisticated traffic conditioning mechanisms required to provide the desired service

Can also be provided by a host system attached to the domain on behalf of the applications at that host system

Routers in a DS domain are either boundary nodes or interior nodes. Typically,

the interior nodes implement simple mechanisms for handling packets based on their

DS codepoint values. This includes a queuing discipline to give preferential treatment

depending on codepoint value, and packet-dropping rules to dictate which

packets should be dropped first in the event of buffer saturation. The DS specifications

refer to the forwarding treatment provided at a router as per-hop behavior

(PHB). This PHB must be available at all routers, and typically PHB is the only part

of DS implemented in interior routers.

The boundary nodes not only include PHB mechanisms but also more sophisticated

traffic conditioning mechanisms required to provide the desired service. Thus,

interior routers have minimal functionality and minimal overhead in providing the

DS service, while most of the complexity is in the boundary nodes. The boundary

node function can also be provided by a host system attached to the domain, on

behalf of the applications at that host system.

33

Traffic Conditioning Function Elements:

The traffic conditioning function consists of five elements:

• Classifier: Separates submitted packets into different classes. This is the

foundation of providing differentiated services. A classifier may separate

traffic only on the basis of the DS codepoint (behavior aggregate classifier)

or based on multiple fields within the packet header or even the packet

payload (multifield classifier).

• Meter: Measures submitted traffic for conformance to a profile. The meter

determines whether a given packet stream class is within or exceeds the

service level guaranteed for that class.

• Marker: Re-marks packets with a different codepoint as needed. This may be

done for packets that exceed the profile; for example, if a given throughput is

guaranteed for a particular service class, any packets in that class that exceed

the throughput in some defined time interval may be re-marked for best-effort

handling. Also, re-marking may be required at the boundary between two DS

domains. For example, if a given traffic class is to receive the highest supported

priority, and this is a value of 3 in one domain and 7 in the next domain,

then packets with a priority 3 value traversing the first domain are re-marked

as priority 7 when entering the second domain.

• Shaper: Delays packets as necessary so that the packet stream in a given class

does not exceed the traffic rate specified in the profile for that class.

• Dropper: Drops packets when the rate of packets of a given class exceeds that

specified in the profile for that class.

34

Classifier

Separates submitted packets into different classes

Meter

Measures submitted traffic for conformance to a profile

Marker

Re-marks packets with a different codepoint as needed

Shaper

Delays packets as necessary so that the packet stream in a given class does not exceed the traffic rate specified in the profile for that class

Dropper

Drops packets when the rate of packets of a given class exceeds that specified in the profile for that class

Traffic Conditioning Diagram

Figure 11.7 illustrates the relationship between the elements of traffic

conditioning. After a flow is classified, its resource consumption must be measured.

The metering function measures the volume of packets over a particular time

interval to determine a flow’s compliance with the traffic agreement.

If a traffic flow exceeds some profile, several approaches can be taken.

Individual packets in excess of the profile may be re-marked for lower-quality

handling and allowed to pass into the DS domain. A traffic shaper may absorb

a burst of packets in a buffer and pace the packets over a longer period of time.

A dropper may drop packets if the buffer used for pacing becomes saturated.

35

Service Level Agreements (SLA)

Contract between the network provider and a customer that defines specific aspects of the service to be provided

Typically includes:

A description of the nature of service to be provided

Expected performance level of the service

Process for monitoring and reporting the service level

A service level agreement (SLA) is a contract between a network provider and a

customer that defines specific aspects of the service that is to be provided. The definition

is formal and typically defines quantitative thresholds that must be met. An

SLA typically includes the following information:

• A description of the nature of service to be provided: A basic service would

be IP-based network connectivity of enterprise locations plus access to the

Internet. The service may include additional functions such as Web hosting,

maintenance of domain name servers, and operation and maintenance tasks.

• The expected performance level of the service: The SLA defines a number of

metrics, such as delay, reliability, and availability, with numerical thresholds.

• The process for monitoring and reporting the service level: This describes how

performance levels are measured and reported.

36

Typical Framework for SLA

Figure 11.8 shows a typical configuration that lends itself to an SLA. In this

case, a network service provider maintains an IP-based network. A customer has a

number of private networks (e.g., LANs) at various sites. Customer networks are

connected to the provider via access routers at the access points. The SLA dictates

service and performance levels for traffic between access routers across the provider

network. In addition, the provider network links to the Internet and thus provides

Internet access for the enterprise.

An SLA can be defined for the overall network service. In addition, SLAs can

be defined for specific end-to-end services available across the carrier’s network,

such as a virtual private network, or differentiated services.

37

IP Performance Metrics Working Group (IPPM)

Chartered by IETF to develop standard metrics that relate to the quality, performance, and reliability of Internet data delivery

Trends dictating need:

The Internet has grown and continues to grow at a dramatic rate

The Internet serves a large and growing number of commercial and personal users across an expanding spectrum of applications

The IP Performance Metrics Working Group (IPPM) is chartered by IETF to

develop standard metrics that relate to the quality, performance, and reliability

of Internet data delivery. Two trends dictate the need for such a standardized

measurement scheme:

1. The Internet has grown and continues to grow at a dramatic rate. Its topology

is increasingly complex. As its capacity has grown, the load on the Internet

has grown at an even faster rate. Similarly, private internets, such as corporate

intranets and extranets, have exhibited similar growth in complexity, capacity,

and load. The sheer scale of these networks makes it difficult to determine

quality, performance, and reliability characteristics.

2. The Internet serves a large and growing number of commercial and personal

users across an expanding spectrum of applications. Similarly, private networks

are growing in terms of user base and range of applications. Some of

these applications are sensitive to particular QoS parameters, leading users to

require accurate and understandable performance metrics.

A standardized and effective set of metrics enables users and service providers

to have an accurate common understanding of the performance of the Internet and

private internets. Measurement data is useful for a variety of purposes, including

• Supporting capacity planning and troubleshooting of large complex internets

• Encouraging competition by providing uniform comparison metrics across

service providers

• Supporting Internet research in such areas as protocol design, congestion

control, and quality of service

• Verification of service level agreements

38

Table 11.3 (a) Sampled Metrics

Src = IP address of a host

Dst = IP address of a host

Table 11.3 lists the metrics that have been defined in RFCs at the time of this

writing. Table 11.3a lists those metrics which result in a value estimated based on a

sampling technique. The metrics are defined in three stages:

• Singleton metric: The most elementary, or atomic, quantity that can be measured

for a given performance metric. For example, for a delay metric, a

singleton metric is the delay experienced by a single packet.

• Sample metric: A collection of singleton measurements taken during a given

time period. For example, for a delay metric, a sample metric is the set of

delay values for all of the measurements taken during a one-hour period.

• Statistical metric: A value derived from a given sample metric by computing

some statistic of the values defined by the singleton metric on the sample.

For example, the mean of all the one-way delay values on a sample might be

defined as a statistical metric.

39

Table 11.3 (b) Other Metrics

The measurement technique can be either active or passive. Active techniques

require injecting packets into the network for the sole purpose of measurement.

There are several drawbacks to this approach. The load on the network is increased.

This in turn can affect the desired result. For example, on a heavily loaded network,

the injection of measurement packets can increase network delay, so that the measured

delay is greater than it would be without the measurement traffic. In addition,

an active measurement policy can be abused for denial-of-service attacks disguised

as legitimate measurement activity. Passive techniques observe and extract metrics

from existing traffic. This approach can expose the contents of Internet traffic to

unintended recipients, creating security and privacy concerns. So far, the metrics

defined by the IPPM working group are all active.

Table 11.3b lists two metrics that are not defined statistically. Connectivity

deals with the issue of whether a transport-level connection is maintained by the

network. The current specification (RFC 2678) does not detail specific sample

and statistical metrics but provides a framework within which such metrics could

be defined. Connectivity is determined by the ability to deliver a packet across a

connection within a specified time limit. The other metric, bulk transfer capacity,

is similarly specified (RFC 3148) without sample and statistical metrics but begins

to address the issue of measuring the transfer capacity of a network service with

the implementation of various congestion control mechanisms.

40

Model for Defining Packet Delay Variation

Figure 11.9 illustrates the packet delay variation metric. This metric is used

to measure jitter, or variability, in the delay of packets traversing the network. The

singleton metric is defined by selecting two packet measurements and measuring

the difference in the two delays. The statistical measures make use of the absolute

values of the delays.

41

Summary

Internet addressing

IPv4 addressing

IPv6 addressing

Internet routing protocols

Autonomous systems

Border gateway protocol

OSPF protocol

Multicasting

Multicast transmission

Multicast routing protocols

Chapter 11: Internet Operation

Quality of service

Emergence of high-speed LANs

Corporate WAN needs

Internet traffic

Differentiated services

DS field

DS configuration and operation

SLAs

IP performance metrics

Chapter 11 summary.

42

(a) Dotted decimal and binary representations of IP address and subnet masks

Binary Representation Dotted Decimal IP address 11000000.11100100.00010001.00111001 192.228.17.57 Subnet mask 11111111.11111111.11111111.11100000 255.255.255.224

Bitwise AND of address and mask (resultant network/subnet number)

11000000.11100100.00010001.00100000 192.228.17.32

Subnet number 11000000.11100100.00010001.001 1 Host number 00000000.00000000.00000000.00011001 25

(b) Default subnet masks

Binary Representation Dotted Decimal Class A default mask 11111111.00000000.00000000.00000000 255.0.0.0 Example Class A mask 11111111.11000000.00000000.00000000 255.192.0.0

Class B default mask 11111111.11111111.00000000.00000000 255.255.0.0 Example Class B mask 11111111.11111111.11111000.00000000 255.255.248.0 Class C default mask 11111111.11111111.11111111.00000000 255. 255. 255.0

Example Class C mask 11111111.11111111.11111111.11111100 255. 255. 255.252

Rest of Internet

R1

LAN X Net ID/Subnet ID: 192.228.17.32

Subnet number: 1

LAN Y

Net ID/Subnet ID: 192.228.17.64

Subnet number: 2

LAN Z

Figure 11.1 Example of Subnetworking

Net ID/Subnet ID: 192.228.17.96

Subnet number: 3

IP Address: 192.228.17.97

Host number: 1

IP Address: 192.228.17.65

Host number: 1

IP Address: 192.228.17.33

Host number: 1

A B

C

D

R2

IP Address: 192.228.17.57

Host number: 25

Figure 11.2 IPv6 Addresses

Unicast address: Same as IPv4 unicast address

Unicast address: Packet routed to nearest host, as determined by routing protocols.

Multicast address: Packet routed to multiple hosts in a designated local or global environment.

Figure 11.3 Application of Exterior and Interior Routing Protocols

Autonomous System 1

Autonomous System 2

Subnetwork

1.4

Subnetwork

1.3

Subnetwork

1.2

Subnetwork

1.1

Subnetwork

2.3

Subnetwork

2.2

Subnetwork

2.4

Subnetwork

2.1

Interior router protocol (e.g., OSPF)

Exterior router protocol (e.g., BGP)

R4

R1

R5

R8

R7

R6 R2R3

Figure 11.4 A Sample Autonomous System

3 1

1

3

1

2

1 8 8

8

6 6

8 8

8

N13 N14N12

7 6

6

7

5

1 N15

N12

1

3

1

4

2

9

1 2

1

3

1

210

R1

R2

R3

R4

R5

R6

R7

R8

R9

R10

R11

R12 H1

N10

N7

N8

N9

N11

N4

N6

N3

N1

N2

N2

N6N5

Figure 11.5 Example Configuration to Illustrate Multicasting

2 2 Router A

LAN switch

C

2

6

6 6

N1

L1

L3

L2

L5L4

D

1

3 4

4

3 2

2

2

N3

B

1

F

1

E

1

N4

Multicast server Group member

Group member Group member

Broadcast Multiple Unicast Multicast S → N2 S → N3 S → N5 S → N6 Total S → N3 S → N5 S → N6 Total

N1 1 1 1 1 4 1 1 1 3 1 N2 N3 1 1 1 1 1 N4 1 1 2 1 1 2 2 N5 1 1 1 1 1 N6 1 1 1 1 1 L1 1 1 L2 L3 1 1 1 1 1 L4 1 1 2 1 1 2 1 L5

Total 2 3 4 4 13 3 4 4 11 8

HostHost

DS Domain

DS Domain

Figure 11.6 DS Domains

= Border component

Classifier Meter Marker Shaper/dropper

= Interior component

Classifier Queue management

Host

Host

Ingress

router

Egress

router

Core

router

Core

router

Figure 11.7 DS Functions

Classifier

Meter

Marker

Behavior-

aggregate

classifier

Queing Shaper/

Dropper

Access routers

Customer networks

ISP Network

Internet

Figure 11.8 Typical Framework for Service Level Agreement

Metric Name Singleton Definition Statistical Definitions

One-Way Delay Delay = dT, where Src transmits first bit of packet at T and Dst received last bit of packet at T + dT

Percentile, median, minimum, inverse percentile

Round-Trip Delay Delay = dT, where Src transmits first bit of packet at T and Src received last bit of packet immediately returned by Dst at T + dT

Percentile, median, minimum, inverse percentile

One-Way Loss Packet loss = 0 (signifying successful transmission and reception of packet); = 1 (signifying packet loss)

Average

One-Way Loss Pattern

Loss distance: Pattern showing the distance between successive packet losses in terms of the sequence of packets Loss period: Pattern showing the number of bursty losses (losses involving consecutive packets)

Number or rate of loss distances below a defined threshold, number of loss periods, pattern of period lengths, pattern of inter-loss period lengths.

Packet Delay Variation

Packet delay variation (pdv) for a pair of packets with a stream of packets = difference between the one-way-delay of the selected packets

Percentile, inverse percentile, jitter, peak-to- peak pdv

Metric Name General Definition Metrics Connectivity Ability to deliver a packet

over a transport connection.

One-way instantaneous connectivity, Two-way instantaneous connectivity, one-way interval connectivity, two-way interval connectivity, two-way temporal connectivity

Bulk Transfer Capacity

Long-term average data rate (bps) over a single congestion-aware transport connection.

BTC = (data sent)/(elapsed time)

P(i) P(j)

P(j)

P(k)

P(k)P(i)

dTi

I1 MP1

MP2

Figure 11.9 Model for Defining Packet Delay Variation

I1

I2

I2 dTj dTk

I1, I2 = times that mark that beginning and ending of the interval in which the packet stream from which the singleton measurement is taken occurs. MP1, MP2 = source and destination measurement points P(i) = ith measured packet in a stream of packets dTi = one-way delay for P(i)