Download More on TCP/IP

Document related concepts

AppleTalk wikipedia , lookup

Airborne Networking wikipedia , lookup

Point-to-Point Protocol over Ethernet wikipedia , lookup

Net bias wikipedia , lookup

Computer network wikipedia , lookup

Asynchronous Transfer Mode wikipedia , lookup

RapidIO wikipedia , lookup

SIP extensions for the IP Multimedia Subsystem wikipedia , lookup

I²C wikipedia , lookup

Multiprotocol Label Switching wikipedia , lookup

Zero-configuration networking wikipedia , lookup

Wake-on-LAN wikipedia , lookup

Deep packet inspection wikipedia , lookup

IEEE 1355 wikipedia , lookup

Real-Time Messaging Protocol wikipedia , lookup

Cracking of wireless networks wikipedia , lookup

TCP congestion control wikipedia , lookup

Recursive InterNetwork Architecture (RINA) wikipedia , lookup

UniPro protocol stack wikipedia , lookup

Internet protocol suite wikipedia , lookup

Transcript
More on TCP/IP
Module A
Panko’s
Business Data Networks and Telecommunications, 6th edition
Copyright 2007 Prentice-Hall
May only be used by adopters of the book
Multiplexing
Multiplexing

IP packets can carry different things in their
data fields

TCP segments

UDP datagrams

ICMP supervisory messages (later)

RIP messages (later)
IP Data Field
IP Header
3
Multiplexing

We say that IP can multiplex (mix) different
types of traffic in a stream of IP packets
Single IP Packet
Carrying UDP Datagram
UDP IP-H
TCP IP-H
UDP IP-H
ICMP IP-H
Stream of Arriving or Outgoing IP Packets
4
Multiplexing

IP process must pass contents of arriving
IP packets to the correct process for
subsequent handling
TCP
UDP IP-H
Arriving
Packets
UDP
IP
ICMP
IP Process
5
Multiplexing

IP process must also accept messages
from multiple processes and multiplex
them on an outgoing stream
TCP
IP-H UDP
Outgoing
Packets
UDP
IP
ICMP
IP Process
6
Multiplexing

Need a Way for Receiving IP Process to Know
What is in the Data Field

So it can pass the contents to the appropriate
process
IP Data Field
IP Header
7
Multiplexing

IP Header has an 8-bit Protocol field

Identifies the contents of the data field

1=ICMP (later), 8=TCP, 17=UDP, etc.
Version
(4)
Hdr Len
(4)
TOS (8)
Indication (16 bits)
Time to Live (8)
Total Length in bytes (16)
Flags (3)
Protocol (8)
Fragment Offset (13)
Header Checksum (16)
Source IP Address
Destination IP Address
…
8
Multiplexing

Other Messages have Analogous Fields


Identify contents of data field
TCP and UDP

Have Port number fields

Identify the application process (80=HTTP)
Source Port # (16)
Destination Port # (16)
Sequence Number (32 bits)
Acknowledgement Number (32 bits)
Hdr Len
Reserved (6)
(4)
Flags (6)
Window Size (16)
9
Multiplexing

Other Messages have Analogous Fields


Identify contents of data field
PPP

Protocol field identifies contents of information
field as IP, IPX, a supervisory message, etc.
Flag
Addr
Ctrl
Prot
Info
CRC
Flag
10
More on TCP Acknowledgements
Sequence Number Field
Initial Sequence Number
Acknowledgement Number Field
TCP

TCP is Reliable

IP packets carrying TCP segments may arrive out of
order

TCP must put the TCP segments in order
5
3
4
2
1
12
TCP

TCP is Reliable

Each correct TCP segment is acknowledged by the
receiver
TCP Segment
Source
Transport
Process
Destination
Transport
Process
ACK
13
TCP Segment

Each TCP segment sent by a side must
have a sequence number

Simplest: 1,2,3,4,5,6,7

To detect lost or out-of-sequence messages

TCP uses a more complex approach
3?
1
4
2
5
14
TCP Sequence Numbers

TCP header has a 32-bit sequence number
field
Source Port # (16)
Destination Port # (16)
Sequence Number (32 bits)
Acknowledgement Number (32 bits)
Hdr Len
Reserved (6)
(4)
Flags (6)
TCP Checksum (16)
Window Size (16)
Urgent Pointer (16)
Options (if any)
PAD
Data Field
15
TCP Sequence Numbers

Initial Sequence Number is randomly selected
by the sender; Say, 79

Sent in the sequence number field of the first
TCP segment
TCP Header
79
TCP Data Field
Sequence Number Field
with Initial Sequence Number (79)
16
TCP Sequence Numbers

Data octets in data fields of all segments
in a connection are viewed as a long string

TCP Segment 1
79 ISN

TCP Segment 2
80
81 3 Octets in Data Field
82

TCP Segment 3
83 2 Octets in Data Field
84
17
TCP Sequence Numbers

Supervisory segments, which contain a header
but no data, are treated as carrying a single
octet of data

TCP seg 1
898
899
Carries data

TCP seg 2
900
Supervisory segment

TCP seg 3
901
902
…
Carries data
18
TCP Sequence Numbers

Sequence number field gets the value of the
first octet in the data field

TCP 1
79
79 is SeqNum Field Value

TCP 2
80
81
82
80 is SeqNum Field Value
83
84
83 is SeqNum Field Value

TCP 3
19
TCP Acknowledgements

Acknowledgement must indicate which TCP
segment is being acknowledged
TCP Segment
Source
TCP
Process
Destination
TCP
Process
ACK
20
TCP Acknowledgements

TCP header contains a 32-bit
Acknowledgement Number field to designate
the TCP segment being acknowledged
Source Port # (16)
Destination Port # (16)
Sequence Number (32 bits)
Acknowledgement Number (32 bits)
Hdr Len
Reserved (6)
(4)
Flags (6)
TCP Checksum (16)
Window Size (16)
Urgent Pointer (16)
Options (if any)
Data Field
PAD
21
TCP Acknowledgment Numbers

Acknowledgement Number field contains the
next byte expected--the last byte of the
segment being acknowledged, plus one

TCP 1
79
80 is AckNum Field Value

TCP 2
80
81
82
83 is AckNum Field Value
83
84
85 is AckNum Field Value

TCP 3
22
TCP Acknowledgement Number

Quiz: A TCP segment contains the following
data octets

567, 568, 569, 570, 571, 572, 573, 574

What will be in the sequence number field of
the TCP segment delivering the data?

What will be in the acknowledgement number
field of the TCP segment acknowledging the
TCP segment that delivers these octets?
23
TCP Flow Control

Flow Control

One TCP process transmits too fast

Other TCP process is overwhelmed

Receiver must control transmission rate

This is flow control
Too Much
Data
TCP Process
TCP Process
Flow Control Message
24
TCP Flow Control

A TCP segment has a Window Size field

Used in acknowledgements
Source Port # (16)
Destination Port # (16)
Sequence Number (32 bits)
Acknowledgement Number (32 bits)
Hdr Len
Reserved (6)
(4)
Flags (6)
TCP Checksum (16)
Window Size (16)
Urgent Pointer (16)
Options (if any)
PAD
Data Field
25
TCP Flow Control

A TCP segment has a Window Size field

Tell how many more octets the sender can send
beyond the segment being acknowledged
Data
TCP Process
TCP Process
Acknowledgement with Window Size Field
26
TCP Flow Control

Example

TCP segment contained octets 45-89

Acknowledgement number for TCP segment
acknowledging the segment is 90

If Window Size field value is 50, then

Sender may send through octet 140

Must then stop unless the window has been
extended in another acknowledgement
27
TCP Flow Control

Each Acknowledgement extends the window of
octets that may be sent

Called a sliding window protocol
1-44
45-79
80-419
May send through 480
400
1-44
45-79
80-419
May send through 920
420-630
420-630
500
28
TCP Fragmentation

TCP Segments have maximum data field sizes

(Size limit details are discussed later)

What if an application layer message is too large?
Application Layer Message
TCP Data Field Max TCP Header
29
TCP Fragmentation

Application layer message must be fragmented

Broken into several pieces

Delivered in separate TCP segments
App Frag 1
App Frag 2
App Frag 3
TCP Data Field Max TCP Header
30
TCP Fragmentation

Note that, in TCP fragmentation, the TCP
segment is NOT fragmented

The application layer message is fragmented
App Frag 1
App Frag 2
App Frag 3
TCP Data Field Max TCP Header
31
TCP Fragmentation

Transport layer process on the source host
does the fragmentation

Application layer on the source host is not
involved

Transparent to the application layer
Application
Transport
Internet
Application Message
TCP Segment
TCP Segment
32
TCP Fragmentation

Transport layer process on the destination
host does the reassembly

Application layer on the destination host is not
involved; Gets original application layer
message
Application Message
TCP Segment
TCP Segment
Application
Transport
Internet
33
TCP Fragmentation

What is the maximum TCP data field size?


Complex
Maximum Segment Size (MSS)

Maximum size of a TCP segment’s data field

NOT maximum size of the segment as its name
would suggest!!!
34
TCP Fragmentation

MSS Default is 536 octets

Maximum IP packet size any network must
support is 576 octets

Larger IP packets MAY be fragmented

IP and TCP headers are 20 octets each if there
are no options

This gives the default MSS of 536

Smaller if there are options in the IP or TCP
header
35
TCP Fragmentation

MSS Default is 536 octets

Suppose the application layer process is 1,000
octets long

Two TCP segments will be needed to send the
data

The first can send the first 536 octets

The second can carry the remaining 464 octets
of the application layer message
36
TCP Fragmentation

Each side MAY announce a larger MSS

An option usually used in the initial SYN message it
sends to the other

If announces MSS of 2,048, this many octets of data
may be sent in each TCP segments

536 is only the default—the value to use if no other
value is specified by the other side
37
More on Internet Layer Processes
Mask Operations

Masks were introduced in Chapter 3

IP addresses alone do not tell you the size of
their network or subnet parts

Network Mask



Has 1s in the network part
Has 0s in the remaining bits
Subnet Mask


Has 1s in the network plus subnet parts
Has 0s in the remaining bits
39
Mask Operations

Based on Logical AND


Both must be true for the result to be true
Example

1010101010
Data

1111100000
Mask

1010100000
Result
40
Mask Operations


Based on Logical AND

If mask bit is 1, get back original data

If mask bit is 0, bet back zero
Example

1010101010
Data

1111100000
Mask

1010100000
Result
41
Mask Operations


IP packet arrives at a router

Router sees destination IP address

11111111 01000000 10101010 00000000
Compares to each router forwarding table row

Address Part in First Entry

11111111 01000000 00000000 00000000

Mask in First Entry

11111111 11100000 00000000 00000000
42
Mask Operations



Mask the IP destination Address

11111111 01000000 10101010 00000000 (IP address)

11111111 11100000 00000000 00000000 (mask)

11111111 01000000 00000000 00000000 (result)
Compare Result with First Entry Address
part

11111111 01000000 00000000 00000000 (address part)

11111111 01000000 00000000 00000000 (result)
The Entry is a Match!
43
Mask Operations

Recap

Read destination IP address of incoming IP packet

For each entry in the router forwarding table
 Read the mask (prefix)
 Mask the incoming IP address
 Compare the result with the entry’s IP address
part
 Do they match or not?
44
Mask Operations


Simple for Computers

Computers have circuitry to AND to numbers

Computers have circuitry to COMPARE two
numbers to see if they are equal or not

Very computer-friendly, so used on routers
Difficult for people, unfortunately
45
IPv6

Current version of the Internet Protocol is
Version 4 (v4)


The next version will be Version 6 (v6)



Earlier versions were not implemented
No v5 was implemented
Informally called IPng (Next Generation)
IPv6 is Already Defined

Continuing improvements in v4 may delay its
adoption
46
IPv6

IPv6 will raise the size of the internet address
from 32 bits to 128 bits

Now running out of IP addresses

Will solve the problem

But current work-arounds are delaying the need for
IPv6 addresses
47
IPv6

Improved Security


But, through IPsec, v4 is being upgraded in security
as well
Improved Quality of Service (QoS)

But under IETF Differentiated Services (diffserv)
initiative, IPv4 is being upgraded in this area as well
48
IPv6

Extension Headers



IPv4 Headers are complex
IPv6 basic header is simple
Extension headers for options
Basic Header
Extension Header 1
Extension Header 2
49
IPv6

Extension Headers

Basic header has 8-bit Next Header field

Identifies first extension header or says that
payload follows
NH
Basic Header
Extension Header 1
Extension Header 2
50
IPv6

Extension Headers

Each extension header also has 8-bit Next Header
field

Identifies next extension header or says that
payload follows
Basic Header
NH
Extension Header 1
Extension Header 2
51
IPv6

Extension Headers

Next header field is an elegant way to allow options

Easy to add new extension headers for new needs
Basic Header
NH
Extension Header 1
Extension Header 2
52
IP Fragmentation
MTU

Maximum Transmission Unit (MTU)

Largest IP packet a network will accept

Arriving IP packet may be larger
MTU
IP Packet
54
IP Fragmentation

If IP packet is longer than the MTU, the
router breaks packet into smaller packets

Called IP fragments

Fragments are still IP packets

Earlier in Mod A, fragmentation in TCP
MTU
IP Packet
3
Fragmentation
2
1
IP Packets
55
IP Fragmentation

What is Fragmented?

Only the original data field

New headers are created
MTU
IP Packet
3
Fragmentation
2
1
IP Packets
56
IP Fragmentation

What Does the Fragmentation?

The router

Not the subnet
MTU
IP Packet
3
Fragmentation
2
1
IP Packets
57
Multiple Fragmentations

Original packet may be fragmented multiple
times along its route
Source
Host
Internet
Process
Destination
Host
Internet
Process
Fragmentation
58
Defragmentation

Internet layer process on destination host
defragments, restoring the original packet

IP Defragmentation only occurs once
Source
Host
Internet
Process
Destination
Host
Internet
Process
Defragmentation
59
Fragmentation and IP Fields

More Fragments field (1 bit)





1 if more fragments
0 if not
Source host internet process sets to 0
If router fragments, sets More Fragments field in
last fragment to 0
In all other fragments, sets to 1
0
Original IP Packet
0
1
1
Fragments
60
Identification Field

IP packet has a 16-bit Identification field
Version
(4)
Hdr Len
(4)
TOS (8)
Indication (16 bits)
Time to Live (8)
Total Length in bytes (16)
Flags (3)
Protocol (8)
Fragment Offset (13)
Header Checksum (16)
Source IP Address
Destination IP Address
Options (if any)
PAD
Data Field
61
Identification Field

IP packet has a 16-bit Identification field

Source host internet process places a number in the
Identification field

Different for each IP packet
Version
(4)
Hdr Len
(4)
TOS (8)
Indication (16 bits)
Time to Live (8)
Protocol (8)
Total Length in bytes (16)
Flags (3)
Fragment Offset (13)
Header Checksum (16)
62
Identification Field

IP packet has a 16-bit Identification field

If router fragments, places the original Identification
field value in the Identification field of each fragment
47
Original IP Packet
47
47
47
Fragments
63
Identification Field

Purpose

Allows receiving host’s internet layer process know
what fragments belong to each original packet

Works even if an IP packet is fragmented several
times
47
Original IP Packet
47
47
47
Fragments
64
Fragment Offset Field

Fragment offset field (13 bits) is used to
reorder fragments with the same Identification
field

Contains the data field’s starting point (in
octets) from the start of the data field in the
original IP packet
Version
(4)
Hdr Len
(4)
TOS (8)
Indication (16 bits)
Total Length in bytes (16)
Flags (3)
Fragment Offset (13)
65
Fragment Offset Field

Receiving host’s internet layer process
assembles fragments in order of increasing
fragment offset field value

This works even if fragments arrive out of
order!

Works even if fragmentation occurs multiple
times
Fragment Offset Field
730
212
0
66
Fragmentation: Recap

IP Fragmentation

Data field of a large IP packet is fragmented

The fragments are sent into a series of smaller
IP packets fitting a network’s MTU

Fragmentation is done by routers

Fragmentation may be done multiple times
along the route
67
Defragmentation: Recap

IP Defragmentation

Defragmentation (reassembly) is done once, by
destination host’s internet layer process
68
Defragmentation: Recap

All IP packets resulting from the fragmentation
of the same original IP packet have the same
Identification field value

Destination host internet process orders all IP
packets from the same original on the basis of
their Fragment Offset field values

More Fragments field tells whether there are
no more fragments coming
69
Dynamic Routing Protocols

Why Dynamic Routing Protocols?

Each router acts independently, based on
information in its router forwarding table

Dynamic routing protocols allow routers to share
information in their router forwarding tables
Router
Forwarding
Table Data
70
Routing Information Protocol (RIP)

Routing Information protocol (RIP) is the
simplest dynamic routing protocol

Each router broadcasts its entire routing table
frequently

Broadcasting makes RIP unsuitable for large
networks
Routing
Table
71
Routing Information Protocol (RIP)

RIP is the simplest dynamic routing protocol

Broadcasts go to hosts as well as to routers

RIP interrupts hosts frequently, slowing them down;
Unsuitable for large networks
Routing
Table
72
Routing Information Protocol (RIP)

RIP is Limited

RIP routing table has a field to indicate the number
of router hops to a distant host

The RIP maximum is 15 hops

Farther networks are ignored

Unsuitable for very large networks
Hop
Hop
73
Routing Information Protocol

Is a Distance Vector Protocol

“New York” starts, announces itself with a RIP
broadcast

“Chicago” learns that New York is one hop away

Passes this on in its broadcasts
New York
Chicago
NY is 1
Dallas
1 hop
74
Routing Information Protocol

Learning Routing Information

“Dallas” receives broadcast from Chicago

Already knows “Chicago” is one hop from Dallas

So New York must be two hops from Dallas

Places this information in its routing table
New York
Chicago
1 hop
NY is 1
1 hop
Dallas
NY is 2
75
Routing Information Protocol

Slow Convergence

Convergence is getting correct routing tables after a
failure in a router or link

RIP converges very slowly

May take minutes

During that time, many packets may be lost
76
Routing Information Protocol

Encapsulation

Carried in data field of UDP datagram
 Port number is 520

UDP is unreliable, so RIP messages do not always
get through

A single lost RIP message does little or no harm
UDP Data Field
RIP Message
UDP
Header
77
OSPF Routing Protocol

Link State Protocol

Link is connection between two routers

OSPF routing table stores more information about
each link than just its hop count: cost, reliability, etc.

Allows OSPF routers to optimize routing based on
these variables
Link
78
OSPF Routers

Network is Divided into Areas

Each area has a designated router
Area
Designated
Router
79
OSPF Routers

When a router senses a link state change

Sends this information to the designated router
Area
Designated
Router
Notice of
Link State Change
80
OSPF Routers

Designed Router Notifies all Routers

Within its area
Area
Designated
Router
Notice of
Link State Change
81
OSPF Routers

Efficient

Only routers are informed (not hosts)

Usually only updates are transmitted, not whole
tables
Area
Designated
Router
Notice of
Link State Change
82
OSPF

Fast Convergence

When a failure occurs, a router transmits the notice
to the designated router

Designated router send the information back out to
other routers immediately
83
OSPF

Encapsulation

Carried in data field of IP packet
 Protocol value is 89

IP is unreliable, so OSPF messages do not always
get through

A single lost OSPF message does little or no harm
IP Data Field
OSPF Message
IP
Header
84
Selecting RIP or OSPF

Within a network you control, it is your choice

Your network is an autonomous system

Select RIP or OSPF based on your needs

Interior routing protocol
85
Selecting RIP or OSPF

RIP is fine for small networks

Easy to implementing

15 hops is not a problem

Broadcasting, interrupting hosts are not too
important
86
Selecting RIP or OSPF

OSPF is Scalable

Works with networks of any size

Management complexities are worth the cost in
large networks
87
Border Gateway Protocol (BGP)

To connect different autonomous systems

Must standardized cross-system routing information
exchanges

BGP is most popular today

Gateway is the old name for router

Exterior routing protocol
Autonomous
System
BGP
Autonomous
System
88
Border Gateway Protocol (BGP)

Distance vector approach


Number of hops to a distant system is stored in the
router forwarding table
Normally only sends updates
Autonomous
System
BGP
Autonomous
System
89
Border Gateway Protocol (BGP)

Encapsulation

BGP uses TCP for delivery

Reliable

TCP is only for one-to-one connections

If have several external routers, must establish a
TCP and BGP connection to each
Autonomous
System
BGP
Autonomous
System
90
Address Resolution Protocol (ARP)
Internet and Data Link Layer Addresses

Each host and router on a subnet needs a data
link layer address to specify its address on the
subnet

This address appears in the data link layer frame
sent on a subnet

For instance, 48-bit 802.3 MAC layer frame
addresses for LANs
Subnet DA
DL Frame for Subnet
92
Addresses

Each host and router also needs an IP address
at the internet layer to designate its position in
the overall Internet
Subnet
128.171.17.13
Subnet
Subnet
93
Internet and Data Link Addresses Serve
Different Purposes

IP address


To guide delivery to destination host across the
Internet (across multiple networks)
Subnet Address

To guide delivery between two hosts, two routers,
and a host and router within a single subnet

Same LAN, Frame Relay network, etc.
94
Analogy

In company, each person has a company-wide
ID number (like IP address)

In company, person also has a local office
number in a building

Paychecks are made out to ID numbers

For delivery, also need to know office number
95
Address Resolution

Problem

Router knows that destination host is on its subnet
based on the IP address of an arriving packet

Does not know the destination host’s subnet
address, so cannot deliver the packet across the
subnet
Destination Host
128.171.17.13
Subnet
subnet address?
96
Address Resolution Protocol (ARP)

Router creates an ARP Request message to be
sent to all hosts on the subnet.

Address resolution protocol message asks “Who has
IP address 128.171.17.13?”

Passes ARP request to data link layer process for
delivery
Subnet
ARP Request
97
Address Resolution Protocol (ARP)

Data link process of router broadcasts the ARP
Request message to all hosts on the subnet.

On a LAN, MAC address of 48 ones tells all stations
to pay attention to the frame
Subnet
ARP Request
98
Address Resolution Protocol (ARP)

Host with IP address 128.171.17.13 responds

Internet process creates an ARP response message

Contains the destination host’s subnet address (48bit MAC address on a LAN)
ARP Response
Subnet
99
Address Resolution Protocol (ARP)

Router delivers the IP packet to the destination
host

Places the IP packet in the subnet frame

Puts the destination host’s subnet address in the
destination address field of the frame
Deliver IP Packet
within a subnet frame
Subnet
100
Address Resolution Protocol

ARP Requests and Responses are sent
between the internet layer processes on the
router and the destination host
Router
Internet
Process
ARP
Request
ARP
Response
Destination Host
Internet
Process
101
Address Resolution Protocol

However, the data link processes deliver these
ARP packets

Router broadcasts the ARP Request

Destination host sends ARP response to the subnet
source address found in the broadcast frame
Router
Destination Host
Internet
Process
Data Link
Process
Internet
Process
Data Link
Process
Broadcast ARP Request
Direct ARP Response
102
IP Address Classes

How large is the network part in an IP
address?

Today we use network masks to tell

Originally, IP had address classes with fixed
numbers of bits in the network part

Class A: 8 bits (24 bits in local part)

Class B: 16 bits (16 bits in local part)

Class C: 24 bits (8 bits in local part)
103
Class A IP Address

IP address begins with 0

7 remaining bits in network part


24 bits in local part


Only 128 possible Class A networks
Over 16 million hosts per Class A network!
All Class A network parts are assigned or
reserved
104
Class B IP Address

IP address begins with 10 (1st zero in 2nd
position)

14 remaining bits in network part


Over 16,000 possible Class B networks
16 bits in local part

Over 65,000 possible hosts

A good trade-off between number of networks
and hosts per network

Most have been assigned
105
Class C IP Address

IP address begins with 110 (1st zero in 3d
position)

21 more bits in network part


8 bits in local part


Over 2 million possible Class C networks!
Only 256 possible hosts per Class C network!
Unpopular, because large firms must have
several
106
Class D IP Address

IP address begins with 1110

Used for multicasting, not defining networks

Sending message to group of hosts

Not just to one (unicasting)

Not ALL hosts (broadcasting)

Say to send a videoconference stream to a group of
receivers
107
Class D IP Address

All hosts in a multicast group listen for this
multicast address as well as for their specific
own host IP address
In Group
Accept
Packets to
Multicast Address
Not in Group
Reject
In Group
Accept
108
Multicasting

Traditionally, unicasting and broadcasting



Unicasting: send to one host
Broadcasting: send to ALL hosts
Multicasting





Send to SOME hosts
500 stations viewing a video course
50 computers getting software upgrades
Standards exist and are improving
Not widely implemented yet
109
Why Multicasting

Do not need to send an IP packet to each host

Routers split when needed

Reduces traffic
Multiple
Packets
Single
Packet
110
Mobile IP

IP addresses are associated with fixed physical
locations

Mobile IP is needed for notebooks, other
portable equipment

Computer still gets a permanent IP address

When travels, also gets a temporary IP
address at its location

This is linked dynamically to its permanent IP
address
111
MultiProtocol Label Switching (MPLS)

When a packet arrives, routers must consider
all possible routes, then select the best one

This is extremely expensive

MPLS adds a tag to each packet

An MPLS router examines the tag and passes
the packet back out

This is fast and inexpensive
112
MultiProtocol Label Switching (MPLS)

This is similar to virtual circuits in ATM

In addition, packets with similar priority or
other characteristics can be given the same
label and so be handled in the same way.
113
MultiProtocol Label Switching (MPLS)
MPLS Table for Q
Label Port NHR
1
R
110
…
…
…
Tagged
Packet
110
Q
Routing
Decision
R
S
114