Addressing - PowerPoint PPT Presentation

1 / 57
About This Presentation
Title:

Addressing

Description:

Addressing The What and Where of Communication Addressing Addressing is necessary for any communication To talk: Appearance, name, To call: Telephone ... – PowerPoint PPT presentation

Number of Views:169
Avg rating:3.0/5.0
Slides: 58
Provided by: Rand2172
Category:
Tags: addressing

less

Transcript and Presenter's Notes

Title: Addressing


1
Addressing
  • The What and Where of Communication

2
Addressing
  • Addressing is necessary for any communication
  • To talk Appearance, name,
  • To call Telephone numbers
  • To mail Postal address
  • To visit Postal address directions
  • To E-Mail E-Mail addresses
  • To instant message ICQ, AIM ID, etc.
  • These addresses allow us to uniquely identify
    the entity with which we wish to communicate

3
Addressing a la Shoch
  • Name/Identifier What
  • Names normally identify the entity
  • If an entity moves, the name/identity will remain
    the same
  • Address Where
  • Addresses identify the location of the entity
  • If an entity moves, the address will change
  • Route How to get there
  • Routes identify the path to get to an entity
  • If an entity moves, the route will change

4
Addressing
  • Addressing deals with how to define an entitys
    location (uniquely)
  • Addressing is necessary for message delivery
  • An address is the start and end point for the
    route
  • However, routing is another subject
  • Where do we want the message to go?

5
Addresses
  • We have already seen MAC addresses (for Ethernet
    and some other LANs)
  • e.g. 02-60-8C-08-E1-0C
  • 6 octet address
  • Globally unique
  • Defined statically by the hardware manufacturer
  • Most people are familiar with the IP addresses
    used by TCP/IP networks
  • e.g. 137.207.32.2
  • 4 octet address
  • Not necessarily globally unique
  • Defined dynamically by DHCP servers or negotiated
    by the operating system

6
IP Addressing
  • A Closer Look

7
IP Addresses
  • TCP/IP networks use IP for the network layer
    protocol
  • IP defines 4 octet addresses
  • 4 billion possible addresses
  • Usually written in the form A.B.C.D
  • A, B, C, and D are each 1 octet (0-255), normally
    written in decimal notation
  • Thus, IP addresses fall in the range
  • 0.0.0.0 255.255.255.255

8
IP Addresses
  • Originally intended for separate internets
    (interconnected LANs)
  • Thus, the 32 bit size was not a concern
  • 48 bits is generally considered a fairly safe
    size for globally unique addressing
  • Computers connected to ARPANET (and later
    incarnations) were just given consecutive
    addresses
  • 1.0.0.0, 1.0.0.1, 1.0.0.2,

9
IP Addresses
  • Any computer connected to a TCP/IP network (e.g.
    the Internet) must have an IP address
  • Further, any network interface card (NIC) using
    TCP/IP to access an network (e.g. the Internet)
    must have a different IP address

10
IP Addresses
  • Even though there are 4 billion possible IP
    addresses, they are running out
  • Heres why
  • Some of the bits are dedicated to header
    information (discussed later)
  • ½ the addresses for each lost bit
  • Addresses are categorized, and some of the
    categories are running out of addresses (while
    others are not)

11
Non-Classed Addresses
  • Part of the address represented the network the
    computer resided on, and part represented the
    computer itself
  • Network 7 bits (up to 128 networks)
  • Computer 24 bits (up to 1.6 million computers
    on each network)
  • Since there were very few networks on ARPANET
    originally, this wasnt a problem

12
Address Classes
  • When private organizations started joining the
    Internet, the needs became obvious
  • Some (fewer) networks have multitudes of
    computers (thousands)
  • e.g. The _at_Home network
  • Some (many) networks have very few computers (a
    few hundred or less)
  • e.g. The Windsor Police Department

13
Address Classes
  • Quickly, the addresses were separated into 3
    classes (plus room for more classes if needed)
  • Class A Fewer networks, many nodes
  • Class B Medium networks, medium nodes
  • Class C Many networks, fewer nodes

14
IP Address Classes
Class A
0
bit index
1-7
8-31
0
network
host (machine)
Class B
bit index
0
2-15
16-31
1
0
network
host
1
Class C
bit index
0
3-23
24-31
1
2
1
network
host
1
0
15
IP Address Classes
  • Class A
  • Range 1.0.0.0 126.0.0.0
  • Networks 128 max, Machines 65537-1.6 million
  • e.g. huge networks, such as large
    military/government organizations (e.g. FBI), the
    _at_Home network, etc
  • Class B
  • Range 128.1.0.0 191.255.0.0
  • Networks 16384 max, Machines 257-65536
  • e.g. Internet service providers (ISPs) (dial-up)
  • Class C
  • Range 192.1.0.0 223.255.255.0
  • Networks 2 million max, Machines 1-256
  • e.g. Small businesses

16
IP Address Classes
  • The IP address classes are self-identifying
  • Which means that given the address, you can
    determine what class an address is
  • Actually, using only the first number
  • Examples
  • 137.207.32.2 (server.uwindsor.ca)
  • 137 -gt Class B
  • 24.0.0.1 (_at_Home DHCP server)
  • 24 -gt Class A

17
Other IP Address Classes
Class D
0 1 2 3
bit index
4-31
1 1 1 0
Multicast group address
  • These addresses are used to represent multicast
    groups
  • Discussed later

Class E
bit index
0 1 2 3 4
5-31
Reserved for future use
1 1 1 1 0
  • These addresses were left open to be used and
    divided into classes as needed

18
Special IP Addresses
  • 0.0.0.0 Used to indicate that this machine is
    without an assigned IP
  • Used during bootstrapping (e.g. requesting an IP
    from a DHCP server)
  • ltall 0s (binary)gtlthostIDgt Used to send messages
    to some machine on this network
  • 255.255.255.255 Used to send broadcast messages
    across this machines network
  • ltnetIDgtltall 1s (binary)gt Used to send broadcast
    messages to the specified network
  • 127.0.0.1 Used to send messages back to this
    machine (called loopback or localhost)

19
IP Addressing Comments
  • In IP addressing
  • 0s usually represent this
  • 1s usually represent all
  • Broadcasting, although discussed here in terms of
    addressing, will be discussed further

20
Loopback
  • The 127.0.0.1 address, does not normally exist on
    the network
  • Either as the source address or destination
    address of a packet
  • The address is used internally by NICs
  • When a NIC receives a message addressed with
    127.0.0.1 to be transmitted, it passes the
    message directly to the receiver hardware
  • The receiver hardware returns the message to the
    operating system exactly as if the message were
    received from the network
  • However, the message never entered the network
    medium

21
Internal IP Addresses
  • Depending on the address class needed by an
    organization, a range of internal addresses is
    available
  • Class A 10.0.0.0 10.255.255.255
  • Class B 172.16.0.0 172.31.255.255
  • Class C 192.168.0.0 192.168.255.255
  • IP routers outside a private (connection-shared)
    network, will not forward datagrams designated
    for addresses in these ranges

22
Multi-homed Machines
  • There is no restriction preventing machines from
    participating in multiple networks
  • A machine could have multiple NICs
  • Each NIC would have its own MAC address
  • On TCP/IP networks, each of these NICs would be
    given a different IP address

23
Multi-homed Machines
192.168.0.1
192.168.0.2
192.168.0.3
192.168.0.8
192.168.0.4
Class C private network
M
M
M
M
M
M
M
192.168.0.7
M
192.168.0.6
192.168.0.5
172.16.3.14
172.16.3.15
172.16.3.16
172.16.3.17
M
M
172.16.3.18
Class B private network
172.16.0.1
172.16.0.2
172.16.0.3
172.16.0.4
24
Multi-homed Machines
192.168.0.1
192.168.0.2
192.168.0.3
192.168.0.8
192.168.0.4
Class C private network
192.168.0.7
192.168.0.6
192.168.0.5
172.16.3.14
172.16.3.15
172.16.3.16
172.16.3.17
172.16.3.18
Class B private network
172.16.0.1
172.16.0.2
172.16.0.3
172.16.0.4
25
Routers
  • Routers are multi-homed machines
  • They have a number of network ports, each of
    which represents a different path
  • Routers use tables that relate destinations to
    network paths
  • Internet routers relate destination network
    addresses with one of their network ports
  • When a datagram arrives at a router
  • Its destination address is used to determine the
    network address
  • The network address is used to look up the
    destination port in the routing table

26
Network Addresses
  • An IP address can be used to calculate the
    address of the network
  • The machine address is passed through a filter
    (called a subnet filter)
  • This filter extracts the bits of the address that
    represent the network and sets the bits that
    represent the machine to zero
  • The filter determines which part of the address
    represent the network address, by using the
    subnet mask

27
Subnet Mask
  • The subnet mask is a binary number, that has 0s
    in the machine portion of the address, and 1s in
    the network portion
  • Most networks of each type use a constant subnet
    mask
  • Class A 255.0.0.0
  • (Binary 11111111000000000000000000000000)
  • Class B 255.255.0.0
  • (Binary 11111111111111110000000000000000)
  • Class C 255.255.255.0
  • (Binary 11111111111111111111111100000000)

28
Using Subnet Masks
  • Example
  • Address 137.207.32.2
  • Subnet Mask 255.255.0.0
  • Address 10001001110011110010000000000010
  • Mask 11111111111111110000000000000000
  • Net Address 10001001110011110000000000000000
  • Network address 137.207.0.0

29
Routing in Action
Internet
Network N1 (Class B) Address 137.207.0.0
P4
P1
137.207.0.0 P1
194.201.61.0 P2
24.0.0.0 P3
P4
P2
P3
Network N2 (Class C) Address 194.201.61.0
Network N3 (Class A) Address 24.0.0.0
30
IPv6
  • Next Generation Addressing in TCP/IP Networks

31
IPv6
  • Due to the limited nature of existing IP
    addressing (IPv4), a new version of IP addressing
    was developed
  • This new scheme uses 16 octets for addresses,
    instead of 4 octets
  • Written using hex notation
  • 3A57000000009CD53412912D67381928

32
IPv6 Features
  • 16 octet addresses (128 bits)
  • Larger numbers of address classes
  • More accurate control of network/machine counts
  • Variable-sized headers
  • Optional information can be placed into the
    header when needed
  • Reduces header size in most cases
  • Extendible protocol
  • IPv6 allows for new header information to be
    added to support different protocols

33
IPv6 Features
  • Automatically reconfigurable
  • Addresses can be automatically reassigned
    dynamically
  • e.g. when a certain number of nodes join the
    network, a different address class may be desired
  • Autoconfigurable
  • The use of autoconfiguration (such as DHCP)
    allows dynamic private addressing and dynamic
    public addressing

34
IPv6 Datagram Format
optional
header
extension headers
data
35
IPv6 Header Format
0 4 12
31
version
traffic class
flow label
32 48
56 63
payload length
hop limit
next header
64 96
128
source address
destination address
36
IPv6 Integration
  • Will IPv6 replace IP addresses?
  • Who knows?
  • Currently, temporary solutions have made IPv4
    addresses capable of lasting longer than
    originally predicted
  • If and when IPv6 is to be integrated, the process
    must be a transition
  • Closing the entire Internet down to convert
    hardware and software to IPv6 not going to happen
  • Some stations may take longer to transition than
    other stations
  • e.g. Bobs Internet Shack vs. the Telus Network

37
IPv6 Integration
  • NAT (network address translators) provide one
    example of such a temporary solution
  • NATs provide three benefits
  • NATs provide IP masquerading
  • Messages using these addresses pass through a
    network address translator (NAT) to be
    transformed into external IPs
  • NATs provide IP sharing
  • ISPs for example, have many customers, but
    significantly less at any given time are logged
    onto their system
  • IP addresses can be assigned dynamically to these
    customers when they log in
  • NATs provide schemes to allow networks to use
    either IPv4 or IPv6
  • Addresses would be converted as they pass through
    a NAT

38
IPv6 Integration
  • Another method that may be used for the
    transition between IPv4 and IPv6 is address
    inclusion
  • IPv4 addresses could be embedded into IPv6
    addresses
  • Translation between the two types of addresses is
    possible without any other information
  • Some problems exist with this approach, but in
    general it simplifies communication between IPv6
    networks and IPv4

39
Special IPv6 Addresses
  • 00000000 Used to indicate that this
    machine is without an assigned IP
  • Used during bootstrapping (e.g. requesting an IP
    from a DHCP server)
  • 00000001 Used to send messages back to
    this machine (called loopback)
  • These two addresses are not valid on the actual
    network medium (same as with IPv4)
  • 00 Reserved (including IPv4 and IPX address
    inclusion)
  • FF Multicast addresses

40
IPX
  • Internetwork Packet Exchange Addresses

41
IPX
  • IPX was originally created to replace IP
  • In reality, it is used primarily on LANs
  • In conjunction with the SPX protocol, formed one
    of the two protocol suites used in Netware
    networks
  • SPX is to TCP, what IPX is to IP
  • Still can be (although rarely is) used today in
    Windows networks

42
IPX Addresses
  • IPX uses a 2 component address (like IP)
  • The network portion (4 octets)
  • The machine portion (6 octets)
  • Unlike IP, these sizes are constant
  • So there are no IPX address classes
  • IPX uses sizes large enough to accommodate all
    categories of networks

43
IPX Addresses
  • The network portion of an IPX address is 4 octets
    (32 bits)
  • This allows for 4.29109 networks (4 billion)
  • This is almost enough for everyone on earth to
    have their own network
  • The machine portion of an IPX address is 6 octets
    (48 bits)
  • This allows for 2.811014 machines on each
    network (281,475 trillion)

44
IPX Addresses
  • The scalability of IPX addresses is not their
    only benefit
  • The constant size of the network and machine
    address portions simplifies extracting each
    portion
  • As a result, machines that process IPX networks
    can process IPX datagrams more quickly
  • Such as network nodes, routers, etc.

45
IPX Addresses
  • Why 48 bits for the machine portion?
  • 48 bits allows for way too many machines, more
    than will be needed for many years
  • By the time machine IDs run out, network hardware
    and software will have been obsolete by many
    years!
  • Using 48 bits allows hardware to use the
    machines MAC address as the machine portion
  • This makes auto-configuration (dynamic IPX
    address assignment) easier/faster

46
IPX Addresses
  • If IPX has been around since the NetWare days,
    why dont we use it for the Internet, instead of
    IP?
  • Good question! Why dont we?
  • Frankly, IPX has a bad reputation, because
    initially it was used with SPX and other
    bandwidth-munching protocols
  • IPX can be used in conjunction with TCP
    (TCP/IPX), and it would make an excellent
    replacement for TCP/IP
  • However, standards organizations (e.g. ISO) want
    to use the protocols they develop, and not ones
    developed by corporations, such as Novell

47
Fragmentation Reassembly
  • Packets can arrive out of order in connectionless
    networks
  • Packets must be reordered during reassembly
  • During fragmentation, the portion of data that
    each fragment represents must be identified
  • Since the length of a packets data can always be
    determined, all that is necessary is to use the
    offset of the start of the packets data in the
    larger data chunk

48
Fragmentation Reassembly
0 1500 3000 4500
6000 6800
Logical Data Chunk
Length1500
Length1500
Length1500
Length1500
Length800
Offset0
Offset1500
Offset3000
Offset4500
Offset6000
Packet 1
Packet 2
Packet 3
Packet 4
P5
49
Fragmentation Reassembly
  • Why do we use the data offset, and not just a
    sequence of numbers to determine packet order?
  • Sometimes, packets can be fragmented at one
    location, and must be re-fragmented at another
    location (such as while passing through a network
    incompatible with larger frame sizes)
  • These situations would require renumbering of all
    packets in the sequence, which is not always
    possible

50
Fragmentation Reassembly
Length1500
Length1500
Length1500
Length1500
Length800
Offset0
Offset1500
Offset3000
Offset4500
Offset6000
Packet 1
Packet 2
Packet 3
Packet 4
P5
Packet 1
Packet 2
P3a
Packet 4
P5
P3b
Length1000
Length500
Offset3000
Offset4000
51
Fragmentation Reassembly
  • Re-fragmentation (at gateways, routers, ) is
    expensive
  • The re-fragmenting node must process each packet,
    fragmenting it into smaller packets
  • Another reassembling node must collect these
    packets and assemble them into larger packets
  • Each of these operations involved memory
    processing, which is expensive when applied to
    many packets per second

52
Fragmentation Reassembly
  • Re-fragmentation (particularly in routers) should
    be avoided at all costs
  • To virtually eliminate re-fragmentation in a
    network, the maximum transmission unit (MTU)
    should be determined and used as the packet size
  • A networks MTU is the largest size that can be
    used for packets that will not result in any
    re-fragmentation by any routers, or other
    multi-homed nodes
  • Schemes for determining the MTU dynamically have
    been developed, but are beyond the scope of this
    course

53
IP Datagrams
  • IP datagrams are packets sent over IP networks
    using connectionless messaging
  • Datagrams can be used directly within
    network-capable programs by sending datagrams via
    UDP (user datagram protocol)
  • Datagrams are used transparently by TCP to
    provide connection-based transport

54
IP Datagrams
bits Name Description Used For
4 Version Version (equal to 4) All
4 IHL Header length All
8 TOS Type of Service (obsolete) -
16 Length Total length of datagram (header included) All
16 ID Identifier used in reassembly to identify packets Reassembly
1 DF Should the datagram be re-fragmented, if necessary? Routers (re-frag)
1 MF Are there more fragments in the sequence? Reassembly
13 Offset Offset of data that this datagram represents Reassembly
8 TTL Hop limit Routers
8 Protocol Transport protocol used for this packet (UDP, TCP) Acknowledgement
16 Checksum Checksum of the header All
32 SA Source address All
32 DA Destination address All
? Options Future features -
? Padding Fills remaining space -
55
IP Datagram Routing
  • When an IP-enabled router receives a datagram,
    it
  • Receives a datagram through one of its ports
  • Deletes the datagram, if the hop count (TTL in
    IPv4, Hop limit in IPv6) has a non-positive value
  • If the hop count is positive, it is decremented
    and processing continues
  • Determine the destination address network
    address
  • Uses the destination network address to find an
    entry in the routing table
  • Uses the routing table entry to determine to
    which port the datagram should be sent
  • Sends the datagram through the correct port

56
IPv6 Datagrams
bits Name Description Used For
4 Version Version (equal to 6) All
8 TOS Type of Service (status info) All
20 Flow label Future features -
16 Length Length of data in the datagram (header not included) All
8 Hop limit Hop limit (decremented to zero) Routers
16 SA Source address All
16 DA Destination address All
? H2H Hop to hop header Routing
? SRH Source routing header Routing
? FH Fragment header Reassembly
? E2E End to end options Reassembly
57
Header Checksums
  • Networks sometimes result in corrupt data
  • Information in the header is equally susceptible
    to this corruption
  • However, header information, when corrupt, can
    cause more serious difficulties
  • For example, the destination address may have a
    few bits changed, or the hop count, etc.
  • Corruption like this, is not always easy to
    detect and fix
  • Corrupt data (determined by another checksum) can
    be fixed by re-issuing the datagram
  • Header checksums are used to ease identification
    of header corruption
Write a Comment
User Comments (0)
About PowerShow.com