Download of the packet

Document related concepts

TCP congestion control wikipedia , lookup

Point-to-Point Protocol over Ethernet wikipedia , lookup

Piggybacking (Internet access) wikipedia , lookup

Peering wikipedia , lookup

AppleTalk wikipedia , lookup

Distributed firewall wikipedia , lookup

Net bias wikipedia , lookup

Network tap wikipedia , lookup

Asynchronous Transfer Mode wikipedia , lookup

Computer network wikipedia , lookup

Airborne Networking wikipedia , lookup

Zero-configuration networking wikipedia , lookup

RapidIO wikipedia , lookup

Internet protocol suite wikipedia , lookup

IEEE 1355 wikipedia , lookup

Multiprotocol Label Switching wikipedia , lookup

Routing wikipedia , lookup

Cracking of wireless networks wikipedia , lookup

Wake-on-LAN wikipedia , lookup

Recursive InterNetwork Architecture (RINA) wikipedia , lookup

Routing in delay-tolerant networking wikipedia , lookup

UniPro protocol stack wikipedia , lookup

Packet switching wikipedia , lookup

Deep packet inspection wikipedia , lookup

Transcript
Network Layer
2017/5/25
1
2017/5/25
2
Layer 3 Functionalities
• The Network layer provides services to exchange
the individual pieces of data over the network
between identified end devices.
• To accomplish this end-to-end transport, Layer 3
uses four basic processes:
–
–
–
–
2017/5/25
Addressing
Encapsulation
Routing
De-capsulation
3
Layer 3 Functionalities
2017/5/25
4
Addressing & Routing
• Addressing
– Network layer must provide a mechanism for
addressing end devices.
• Routing
– The packet might have to travel through many
different networks
• Network layer must direct packets to their
destination host
2017/5/25
5
Encapsulation & De-capsulation
• Layer 3 receives the Layer 4 PDU and adds
a Layer 3 header to create the Layer 3 PDU
– the packet is sent down to the Data Link layer
to be prepared for transportation over the media
• Operating without regard to the application
data carried in each packet allows the
Network layer to carry packets for multiple
types of communications between multiple
hosts
2017/5/25
6
Examples of Network Layer
Protocols
• Internet Protocol version 4 (IPv4)
– Most widely used protocol
•
•
•
•
Internet Protocol version 6 (IPv6)
Novell Internetwork Packet Exchange (IPX)
AppleTalk
Connectionless Network Service (CLNS/DECNet)
– an OSI Network Layer service that is not used on the
Internet
2017/5/25
7
Basic Characteristics of IPv4
• Connectionless
– No connection is established before sending
data packets.
• Best Effort (unreliable)
– No overhead is used to guarantee packet
delivery.
• Media Independent
– Operates independently of the medium (copper
or fiber) carrying the data.
2017/5/25
8
IPv6
• IP version 6 (IPv6) is developed and being
implemented in some areas.
• IPv6 will operate alongside IPv4 and may
replace it in the future
2017/5/25
9
Connectionless Service
2017/5/25
10
Connectionless Service
• Recall how TCP operates?
• Because IP is connectionless …
– it requires no initial exchange of control information to
establish an end-to-end connection before packets are
forwarded
– nor does it require additional fields in the PDU header
to maintain this connection.
• This process greatly reduces the overhead of IP.
2017/5/25
11
Connectionless Service
• Connectionless packet delivery may result
in packets arriving at the destination out of
sequence.
– If out-of-order or missing packets create
problems for the application using the data,
then upper layer services will have to resolve
these issues.
• Does TCP take care of this?
2017/5/25
12
Best Effort Service (unreliable)
• IP is often referred to as an unreliable protocol.
– Unreliable in this context does not mean that IP works
properly sometimes and does not function well at other
times.
– Nor does it mean that it is unsuitable as a data
communications protocol.
• Unreliable means simply that IP does not have the
capability to manage, and recover from,
undelivered or corrupt packets.
2017/5/25
13
Best Effort Service
2017/5/25
14
Unreliable
• Since protocols at other layers can manage
reliability, IP is allowed to function very
efficiently at the Network layer.
• If we included reliability overhead in our
Layer 3 protocol, then …
– communications that do not require connections
or reliability would be burdened with the
bandwidth consumption and delay produced by
this overhead.
2017/5/25
15
Unreliable?
• The key point is to leave the decision in
providing reliable or unreliable services to
the upper layer
– E.g., TCP, or … YOU!
• Network layer can concentrate on what it is
designed to do …
2017/5/25
16
Media Independent
IPv4 and IPv6 operate independently of the media that carry the
data at lower layers of the protocol stack
2017/5/25
17
Media Independent
• There is one major characteristic of the media that
the Network layer needs to consider:
– Maximum Transmission Unit (MTU) : maximum size
of PDU each medium can transport
• The Data Link layer passes the MTU upward so that the
Network layer can determine how large to create the packets.
• An intermediary device - usually a router - will
need to split up a packet when forwarding it from
one media to a media with a smaller MTU.
– This process is called fragmenting the packet or
fragmentation.
2017/5/25
18
Details of IP protocol …
Encapsulation & De-capsulation
2017/5/25
19
Encapsulating IPv4 packages
2017/5/25
20
IPv4 Header
2017/5/25
21
Key fields of IPv4 Header
• IP Address
– Source & Destination Address
•
•
•
•
2017/5/25
Time-to-Live (TTL)
Type-of-Service (ToS)
Protocol
Fragment Offset
22
Time-to-Live
• The Time-to-Live (TTL) is an 8-bit binary value
that indicates the remaining "life" of the packet.
– TTL value is decreased by at least one each time the
packet is processed by a router (that is, each hop).
• When the value becomes zero, the router discards
or drops the packet
– This mechanism prevents packets that cannot reach
their destination from being forwarded indefinitely
between routers in a routing loop. (e.g., routing loops)
2017/5/25
23
Protocol
• This 8-bit binary value indicates the data
payload type that the packet is carrying.
– enables the Network layer to pass the data to
the appropriate upper-layer protocol.
• Example values are:
– 01 ICMP
– 06 TCP
– 17 UDP
2017/5/25
24
Type-of-Service
• The field contains an 8-bit binary value that
is used to determine the priority of each
packet.
– This value enables a Quality-of-Service (QoS)
mechanism to be applied to high priority
packets, such as those carrying telephony voice
data.
– The router can be configured to decide which
packet it is to forward first based on the Typeof-Service value.
2017/5/25
25
Fragmentation-related Fields
• Fragment Offset, 13-bit
• Flag
– More Fragments flag (MF), 1-bit
– Don't Fragment flag, 1-bit
2017/5/25
26
Fragment Offset
• A router may have to fragment a packet when
forwarding it from one medium to another
medium that has a smaller MTU.
– When it occurs, the IPv4 packet uses the
Fragment Offset field and the MF flag to
reconstruct the packet when it arrives at the
destination host.
– The field identifies the order in which to place
the packet fragment in the reconstruction.
2017/5/25
27
More Fragments flag
• The flag (MF) is used with the Fragment Offset
for the fragmentation and reconstruction of
packets.
– MF = 1
• it examines the Fragment Offset to see where this
fragment is to be placed in the reconstructed packet.
– MF = 0 and a non-zero value in the Fragment
offset
• it places that fragment as the last part of the
reconstructed packet.
– An un-fragmented packet has all zero
fragmentation information (MF = 0, fragment
offset =0).
2017/5/25
28
Don't Fragment flag
• The flag (DF) indicates that fragmentation
of the packet is not allowed.
• If the Don't Fragment flag bit is set (=1),
then fragmentation of this packet is NOT
permitted.
– If a router needs to fragment a packet to allow it
to be passed downward to the Data Link layer
but the DF bit is set to 1, then the router will
discard this packet.
2017/5/25
29
Other IPv4 Header Fields
• Version - Contains the IP version number (4).
• Header Length (IHL) - Specifies the size of the packet
header.
• Packet Length - This field gives the entire packet size,
including header and data, in bytes.
• Identification - This field is primarily used for uniquely
identifying fragments of an original IP packet.
• Header Checksum - The checksum field is used for error
checking the packet header.
• Options - There is provision for additional fields in the
IPv4 header to provide other services but these are rarely
used.
2017/5/25
30
header length
(in 32-byte unit)
Example of IPv4 Packet
TTL
original packet identifier
(required for fragmented)
2017/5/25
packet length
size (in byte)
TCP
denotes packet can be
fragmented if required
31
Details of IP protocol …
Addressing & Grouping of networks
2017/5/25
32
Networks – separating hosts into
common hosts
• One of the major roles of the Network layer
- provide a mechanism for addressing hosts
– As the number of hosts on the network grows,
more planning is required to manage and
address the network.
– Rather than having all hosts everywhere
connected to one vast global network, it is more
practical and manageable to group hosts into
specific networks.
2017/5/25
33
Dividing Networks
• IP-based networks have their roots as one
large network.
• As this single network grew, the large
network was separated into smaller
networks that were interconnected.
– These smaller networks are often called
subnetworks or subnets.
2017/5/25
34
Dividing Networks
• Networks can be grouped based on
factors that include:
– Geographic location
– Purpose (e.g., 部門)
– Ownership
– etc
2017/5/25
35
Why separating networks?
• Performance
• Security
• Address management
2017/5/25
36
Why separating networks?
 Performance
Compare this …
2017/5/25
37
… and this.
Why separating networks?
 Performance
broadcast blocking
2017/5/25
38
Why separating networks?  Security
2017/5/25
39
Why separating networks?
 Address Management
Reduces the unnecessary
overhead of all hosts
needing to know all
addresses
2017/5/25
40
Hierarchical Addressing & Grouping
of Networks
2017/5/25
41
Details of IP protocol …
Routing
2017/5/25
42
Gateway
• As a part of its configuration, a host has a
default gateway address defined.
– This gateway address is the address of a router
interface that is connected to the same network
as the host.
– To communicate with a device on another
network, a host uses the address of this
gateway, or default gateway, to forward a
packet outside the local network.
2017/5/25
43
Default Gateway
2017/5/25
44
Use “ipconfig” to see your IP
settings
In Unix, use “ifconfig”
2017/5/25
45
Gateway enables communications
between networks
2017/5/25
46
Gateway
• The router also needs a route that defines
where to forward the packet next.
– This is called the next-hop address.
– If a route is available to the router, the router
will forward the packet to the next-hop router
that offers a path to the destination network.
Routing
See next few slides …
2017/5/25
47
2017/5/25
48
2017/5/25
49
How does router know
which next hop to send?
routing table
2017/5/25
50
Routing Table @ Router
2017/5/25
51
Routing Table @ Router
Default Route
In case a packet is destined for 10.1.2.100, it will be
forwarded to 192.168.2.2
2017/5/25
52
Routing Table @ End host
(“netstat –r” printout) In Unix, use
“route PRINT”
2017/5/25
53
Packets Routing Process
De-capsulation
2017/5/25
54
What if router has no entry for
destined network?
• Default route configured
– Router forwards packet according to default
route setting
• No default route configured
– Router drops the packet
2017/5/25
55
How do routers learn & build their
routing table?
• through Routing protocols
– Protocols that share routes information among
routers
• Routing protocols can be:
– Static routing
– Dynamic routing
• Routing Information Protocol (RIP)
• Enhanced Interior Gateway Routing Protocol
(EIGRP)
• Open Shortest Path First (OSPF)
2017/5/25
56
Static Routing
2017/5/25
57
Dynamic Routing
2017/5/25
58
Dynamic vs Static
• Dynamic routing overhead
– Consumes network bandwidth
– Consumes CPU processing capacity
• Cost of static routing
– Administrative cost
2017/5/25
59
The reality is …
• In many internetworks, a combination of
static, dynamic, and default routes are
used to provide the necessary routes.
– The configuration of routing protocols on
routers will be covered extensively by a later
course.
2017/5/25
60