SlideShare a Scribd company logo
1 of 51
Download to read offline
Lecture 4
A. Prof. Dr. Salah Abdulghani
Computer Engineering Department
University of Mosul / April 2022
Computer Networks II
Third Level / Second Semester
Network Layer: Internet Protocol
IPv4 & IPv6
Figure 20.1 Links between two hosts
The physical and data link layers of a network operate locally. These two layers are jointly responsible for
data delivery on the network from one node to the next, as shown in Figure 20.1.
This internetwork is made of five networks: four LANs and one WAN. If host A needs to send a data packet to
host D, the packet needs to go first from A to R1 (a switch or router), then from R1 to R3, and finally from R3
to host D. We say that the data packet passes through three links. In each link, two physical and two data link
layers are involved.
However, there is a big problem here. When data arrive at interface fl of Rl, how does RI know that interface
f3 is the outgoing interface? There is no provision in the data link (or physical) layer to help R1 make the right
decision. The frame does not carry any routing information either. The frame contains the MAC address of A
as the source and the MAC address of R1 as the destination. For a LAN or a WAN, delivery means carrying
the frame through one link, and not beyond.
Figure 20.2 Network layer in an internetwork
Need for Network Layer
To solve the problem of delivery through several links, the network layer (or the
internetwork layer, as it is sometimes called) was designed. The network layer is
responsible for host-to-host delivery and for routing the packets through the routers or
switches. Figure 20.2 shows the same internetwork with a network layer added.
Figure 20.3 Network layer at the source, router, and destination
Figure 20.3 shows the general idea of the functionality of the network layer at a source, at a
router, and at the destination. The network layer at the source is responsible for creating a
packet from the data coming from another protocol (such as a transport layer protocol or a
routing protocol). The header of the packet contains, among other information, the logical
addresses of the source and destination. The network layer is responsible for checking its
routing table to find the routing information (such as the outgoing interface of the packet or
the physical address of the next node). If the packet is too large, the packet is fragmented
(fragmentation is discussed later in this chapter).
Figure 20.3 Network layer at the source, router, and destination (continued)
The network layer at the switch or router is responsible for routing the packet. When a
packet arrives, the router or switch consults its routing table and finds the interface from
which the packet must be sent. The packet, after some changes in the header, with the
routing information is passed to the data link layer again.
The network layer at the destination is responsible for address verification; it makes
sure that the destination address on the packet is the same as the address of the host. If
the packet is a fragment, the network layer waits until all fragments have arrived, and
then reassembles them and delivers the reassembled packet to the transport layer.
The Internet Protocol version 4 (IPv4) is the delivery
mechanism used by the TCP/IP protocols.
 Host-to-host delivery protocol for the Internet
 Unreliable and connectionless packet protocol
 No error control
 Does perform some error detection; discards if corrupted
(discussed later)
 TCP is used if reliability is important (in the transport layer)
6
Figure 1 Position of IPv4 in TCP/IP protocol suite
 Five network layer protocols that make up the
TCP/IP suite:
 ARP, RARP, IP, ICMP, and IGMP
7
Other Network Layer Protocols
 Address Resolution Protocol (ARP) – finds
physical address when Internet address is known
 Internet Control Message Protocol (ICMP) –
handles error and control messages
 Internet Group Management Protocol (IGMP) –
handles multicasting
 Reverse Address Resolution Protocol (RARP) –
allows a host to find its Internet address given its
physical address
8
Version Number. The 4-bit version number (VER) field defines the
version of the IPv4 protocol, which, clearly, has the value of 4.
Header Length. The 4-bit header length (HLEN) field defines the total
length of the packet header. This field is needed because the length of
the header is variable (between 20 and 60 bytes). When there are no
options, the header length is 20 bytes, and the value of this field is 5 (5
x 4 = 20). When the option field is at its maximum size, the value of this
field is 15 (15 x 4 = 60).
Total Length. This 16-bit field defines the total length (header plus
data) of the IP packet in bytes. To find the length of the data coming
from the upper layer, subtract the header length from the total length.
The header length can be found by multiplying the value in the HLEN
field by 4.
Service Type. this field was referred to as type of service (TOS)
Identification, Flags, and Fragmentation Offset. These three
fields are related to the fragmentation of the IP packet when the size
of the packet is larger than the underlying network can carry. 10
Protocol. In TCP/IP, the data section of a packet, called the payload, carries the whole packet
from another protocol. A packet, for example, can carry a packet belonging to any transport-
layer protocol such as UDP or TCP.
11
Header checksum. IP is not a reliable protocol; it does not check whether the payload
carried by a packet is corrupted during the transmission. Errors in the IP header can be a
disaster. For example, if the destination IP address is corrupted, the packet can be delivered
to the wrong host. If the protocol field is corrupted, the payload may be delivered to the
wrong protocol. If the fields related to the fragmentation are corrupted, the packet cannot
be reassembled correctly at the destination, and so on. For these reasons, IP adds a header
checksum field to check the header, but not the payload.
We need to remember that, since the value of some fields, such as TTL, which are related
to fragmentation and options, may change from router to router, the checksum needs to
be recalculated at each router.
Source and Destination Addresses. These 32-bit source and destination address
fields define the IP address of the source and destination respectively. The source host
should know its IP address.
Options. A packet header can have up to 40 bytes of options, are not required for a
packet. Options can be used for network testing and debugging. Although options are
not a required part of the IP header, option processing is required of the IP software.
12
Figure 2 Service type or differentiated services
1. Service Type
In this interpretation, the first 3 bits are called precedence bits. The next 4 bits are
called type of service (TOS) bits, and the last bit is not used.
a. Precedence is a 3-bit subfield ranging from 0 (000 in binary) to 7 (111 in binary).
The precedence defines the priority of the packet in issues such as congestion. If a
router is congested and needs to discard some packets, those packets with lowest
precedence are discarded first. Some packets in the Internet are more important than
others. For example, a packet used for network management is much more urgent
and important than a packet containing optional information for a group
b. TOS bits is a 4-bit subfield with each bit having a special meaning. Although a
bit can be either 0 or 1, one and only one of the bits can have the value of 1 in each
packet. The bit patterns and their interpretations are given in Table 20.1. With only 1
bit set at a time, we can have five different types of services.
13
Table 1 Types of service
Table 2 Default types of service
It is clear from Table 2 that
interactive activities, activities
requiring immediate attention, and
activities requiring immediate
response need minimum delay.
Those activities that send majority
data require maximum throughput.
Management activities need
maximum reliability. Background
activities need minimum cost.
14
Figure 3 Encapsulation of a small packet in an Ethernet frame
* Total length. This is a In-bit field that defines the total length (header plus data) of the IPv4 packet in
bytes. To find the length of the data coming from the upper layer, subtract the header length from the total
length. The header length can be found by multiplying the value in the HLEN field by 4.
Length of data =total length - header length
Since the field length is 16 bits, the total length of the IPv4 packet is limited to 65,535 bytes, of which 20
to 60 bytes are the header and the rest is data from the upper layer.
Though a size of 65,535 bytes might seem large, the size of the IPv4 packet may increase in the near
future as the underlying technologies allow even more throughput (greater bandwidth).
When we discuss fragmentation in the next section, we will see that some physical networks are not able
to encapsulate a packet of 65,535 bytes in their frames.
The packet must be fragmented to be able to pass through those networks. One may ask why we need this
field anyway. When a machine (router or host) receives a frame, it drops the header and the trailer,
leaving the packet. Why include an extra field that is not needed? The answer is that in many cases we
really do not need the value in this field. However, there are occasions in which the packet is not the only
thing encapsulated in a frame; it may be that padding has been added. For example, the Ethernet protocol
has a minimum and maximum restriction on the size of data that can be encapsulated in a frame (46 to
1500 bytes).
If the size of an IPv4 packet is less than 46 bytes, some padding will be added to meet this requirement.
In this case, when a machine decapsulates the packet, it needs to check the total length field to determine
how much is really data and how much is padding (see Figure 20.7).
15
* Flags. This field is used in fragmentation. First bit reserved.
Second bit identifies if a packet should not be fragmented. Third
bit identifies if there are additional fragments remaining (1) or if it
is the last or only fragment (0)
• Fragmentation offset. This field is used in fragmentation
* Time-to-live (TTL) . A packet has a limited lifetime in its travel through an
internet. This field was originally designed to hold a timestamp, which
was decremented by each visited router. The packet was discarded
when the value became zero. Each router that processes the packet
decrements this number by 1. If this value, after being decremented, is
zero, the router discards the packet. This field is needed because routing
tables in the Internet can become corrupted. A packet may travel
between two or more routers for a long time without ever getting
delivered to the destination host. This field limits the lifetime of a packet.
If the packet is too large, the packet is fragmented (fragmentation)
16
Figure 4 Protocol field and encapsulated data
Protocol. This 8-bit field defines the higher-level protocol that
uses the services of the IPv4 layer. An IPv4 packet can
encapsulate data from several higher-level protocols such as TCP,
UDP, ICMP, and IGMP. This field specifies the final destination
protocol to which the IPv4 packet is delivered. In other words,
since the IPv4 protocol carries data from different other protocols,
the value of this field helps the receiving network layer know to
which protocol the data belong (see Figure 20.8)
Table 3 Protocol values
17
An IPv4 packet has arrived with the first 8 bits as
shown:
01000010
The receiver discards the packet. Why?
Solution
There is an error in this packet. The 4 leftmost bits
(0100) show the version, which is correct. The next 4
bits (0010) show an invalid header length (2 × 4 = 8).
The minimum number of bytes in the header must be
20. The packet has been corrupted in transmission.
Example 1
18
Figure 5 Maximum transfer unit (MTU) Table 4 MTUs for some networks
Each data link layer protocol has its own frame format in most
protocols. One of the fields defined in the format is the maximum
size of the data field. In other words, when a packet is encapsulated
in a frame, the total size of the packet must be less than this
maximum size, which is defined by the restrictions imposed by the
hardware and software used in the network (see Figure 20.9).
The value of the MTU depends on the physical network protocol.
Table 20.5 shows the values for some protocols.
Maximum transfer unit (MTU)
defines max length of IP
packet physical network can
support
19
Fragmentation
A packet can travel through different networks. Each router
de-capsulates the IPv4 packet from the frame it receives,
processes it, and then encapsulates it in another frame. The
format and size of the received frame depend on the
protocol used by the physical network through which the
frame has just traveled. The format and size of the sent
frame depend on the protocol used by the physical network
through which the frame is going to travel. For example, if a
router connects a LAN to a WAN, it receives a frame in the
LAN format and sends a frame in the WAN format.
20
Figure 6 Flags used in fragmentation
Fields Related to Fragmentation
The fields that are related to fragmentation and reassembly of an IPv4 packet are the identification,
flags, and fragmentation offset fields.
* Identification. This 16-bit field identifies a packet originating from the source host. The
combination of the identification and source IPv4 address must uniquely define a packet as it leaves
the source host. To guarantee uniqueness, the IPv4 protocol uses a counter to label the packets. The
counter is initialized to a positive number. When the IPv4 protocol sends a packet, it copies the current
value of the counter to the identification field and increments the counter by 1. As long as the counter
is kept in the main memory, uniqueness is guaranteed. When a packet is fragmented, the value in the
identification field is copied to all fragments.
In other words, all fragments have the same identification number, the same as the original packet. The
identification number helps the destination in reassembling the packet. It knows that all fragments
having the same identification value must be assembled into one packet.
* Flags. This is a 3-bit field. The first bit is reserved. The second bit is called the do not fragment bit.
If its value is 1, the machine must not fragment the packet. If it cannot pass the packet through any
available physical network, it discards the packet and sends an ICMP error message to the source host
(see Chapter 21). If its value is 0, the packet can be fragmented if necessary. The third bit is called
the more fragment bit. If its value is 1, it means the packet is not the last fragment; there are more
fragments after this one. If its value is 0, it means this is the last or only fragment (see Figure 20.10).
21
Figure 7 Fragmentation
example
o Fragmentation offset. This 13-bit field shows the relative position of this
fragment with respect to the whole packet. It is the offset of the data in the
original packet measured in units of 8 bytes. Figure 20.11 shows a packet with
a data size of 4000 bytes fragmented into three fragments.
The bytes in the original packet are numbered 0 to 3999. The first fragment
carries bytes 0 to 1399. The offset for this packet is 0/8 =0. The second
fragment carries bytes 1400 to 2799; the offset value for this fragment is 1400/8
= 175.
Finally, the third fragment carries bytes 2800 to 3999. The offset value for this
fragment is 2800/8 =350. Remember that the value of the offset is measured in
units of 8 bytes.
22
Figure 8 Detailed fragmentation example
23
A packet has arrived with an M bit value of 0. Is this
the first fragment, the last fragment, or a middle
fragment? Do we know if the packet was fragmented?
Solution
If the M bit is 0, it means that there are no more
fragments; the fragment is the last one. However, we
cannot say if the original packet was fragmented or not.
A non-fragmented packet is considered the last
fragment.
Example 2
24
A packet has arrived in which the offset value is 100.
What is the number of the first byte? Do we know the
number of the last byte?
Solution
To find the number of the first byte, we multiply the
offset value by 8. This means that the first byte number
is 800. We cannot determine the number of the last byte
unless we know the length.
Example 3
25
Figure 20.13 shows an example of a checksum
calculation for an IPv4 header without options. The
header is divided into 16-bit sections. All the sections
are added and the sum is complemented. The result is
inserted in the checksum field.
Example 4
26
Figure 9 Example of checksum calculation in IPv4
27
Figure 20.14 Taxonomy of options in IPv4
End of Option
An end-of-option option is a 1-byte option used for padding at the end of the option
field. It, however, can only be used as the last option.
Record Route
A record route option is used to record the Internet routers that handle the datagram.
It can list up to nine router addresses. It can be used for debugging and
management purposes.
Strict Source Route
A strict source route option is used by the source to predetermine a route for the
datagram as it travels through the Internet. Dictation of a route by the source can be
useful for several purposes. The sender can choose a route with a specific type of
service, such as minimum delay or maximum throughput. Alternatively, it may
choose a route that is safer or more reliable for the sender's purpose. For example, a
sender can choose a route so that its datagram does not travel through a
competitor's network. If a datagram specifies a strict source route, all the routers
defined in the option must be visited by the datagram.
20.29
A router must not be visited if its IPv4 address is not listed in the datagram.
If the datagram visits a router that is not on the list, the datagram is
discarded and an error message is issued. If the datagram arrives at the
destination and some of the entries were not visited, it will also be
discarded and an error message issued.
Loose Source Route
A loose source route option is similar to the strict source route, but it is less
rigid. Each router in the list must be visited, but the datagram can visit other
routers as well.
Timestamp
A timestamp option is used to record the time of datagram processing by a
router. The time is expressed in milliseconds from midnight, Universal time
or Greenwich mean time. Knowing the time a datagram is processed can
help users and managers track the behavior of the routers in the Internet.
We can estimate the time it takes for a datagram to go from one ~outer to
another. We say estimate because, although all routers may use Universal
time, their local clocks may not be synchronized.
Taxonomy of options in IPv4 (contin.)
IPv6 Protocol
IPv6
The network layer protocol in the TCP/IP protocol suite is
currently IPv4. Although IPv4 is well designed, data
communication has evolved since the inception of IPv4 in the
1970s. IPv4 has some deficiencies that make it unsuitable for
the fast-growing Internet.
IPV4 Problems
Although all short-term solutions, such as subnetting,
classless addressing, and NAT, address decrease is still a
long-term problem in the Internet.
Not suitable for real-time audio and video transmission that
requires minimum delay strategies and reservation of
resources not provided in the IPv4 design.
The Internet must accommodate encryption and
authentication of data for some applications. No encryption
or authentication is provided by IPv4.
31
IPv6 Addresses
 16 bytes long (128 bits)
 Uses hexadecimal colon notation
 May reduce addresses by omitting leading zeros
 Further abbreviations are possible if there are following
sections consisting of zeros further
IPv6 address
32
Advantages
The next-generation IP, or IPv6, has some advantages over IPv4 that can
be summarized as follows:
* Larger address space. An IPv6 address is 128 bits long, as we discussed
in Chapter 19. Compared with the 32-bit address of IPv4, this is a huge (296)
increase in the address space.
* Better header format. IPv6 uses a new header format in which options are
separated from the base header and inserted, when needed, between the
base header and the upper-layer data. This simplifies and speeds up the
routing process because most of the options do not need to be checked by
routers.
* New options. IPv6 has new options to allow for additional functionalities.
* Allowance for extension. IPv6 is designed to allow the extension of the
protocol if required by new technologies or applications.
* Support for resource allocation. In IPv6, the type-of-service field has been
removed, but a mechanism (called jlow label) has been added to enable the
source to request special handling of the packet. This mechanism can be
used to support traffic such as real-time audio and video.
* Support for more security. The encryption and authentication options in
IPv6 provide confidentiality and integrity of the packet.
33
The IPv6 packet is shown in Figure below. Each packet is composed of a
mandatory base header followed by the payload. The payload consists of
two parts: optional extension headers and data from an upper layer. The
base header occupies 40 bytes, whereas the extension headers and data
from the upper layer contain up to 65,535 bytes of information.
IPv6 Packet Format
IPv6 packet header and payload
Figure 20.16 Format of an IPv6 datagram
Format of the base header of IPv6
Version – 4-bit version number of Internet Protocol = 6.
Traffic class – 8-bit traffic class field, Indicates the class or priority of the IPv6 packet.
The size of this field is 8 bits. The Traffic Class field provides similar functionality to the
IPv4 Type of Service field. An IPv6 implementation is required to provide a means for
an application layer protocol to specify the value of the Traffic Class field for
experimentation.
Flow label – 20-bit field, Indicates that this packet belongs to a specific sequence of
packets between a source and destination, requiring special handling by intermediate
IPv6 routers. The size of this field is 20 bits. The Flow Label is used for non-default
quality of service connections, such as those needed by real-time data (voice and
video). For default router handling, the Flow Label is set to 0. There can be multiple
flows between a source and destination, as distinguished by separate non-zero Flow
Labels.
Payload Length – Indicates the length of the IPv6 payload. The size of this field is 16
bits. The Payload Length field includes the extension headers and the upper layer
PDU. With 16 bits, an IPv6 payload of up to 65,535 bytes can be indicated.
Next Header – Indicates either the first extension header (if present) or the protocol in
the upper layer PDU (such as TCP, UDP, or ICMPv6). The size of this field is 8 bits.
When indicating an upper layer protocol above the Internet layer, the same values
used in the IPv4 Protocol field are used here.
Hop Limit – Indicates the maximum number of links over which the IPv6 packet can
travel before being discarded. The size of this field is 8 bits. The Hop Limit is similar to
the IPv4 TTL field except that there is no historical relation to the amount of time (in
seconds) that the packet is queued at the router. When the Hop Limit equals 0, an
ICMPv6 Time Exceeded message is sent to the source address and the packet is
discarded.
Source Address –Stores the IPv6 address of the originating host. The size of this
field is 128 bits.
Destination Address – Stores the IPv6 address of the current destination host. The
size of this field is 128 bits. In most cases the Destination Address is set to the final
destination address. However, if a Routing extension header is present, the
Destination Address might be set to the next router interface in the source route list.
38
Extension header types
39
Figure 27.3 Extension header
format
40
IPv6 Extension Headers
IPv6 options are placed in separate extension headers that are located between
the IPv6 header and the transport-layer header in a packet. Most IPv6 extension
headers are not examined or processed by any router along a packet's delivery
path until the packet arrives at its final destination. This feature provides a major
improvement in router performance for packets that contain options. In IPv4, the
presence of any options requires the router to examine all options.
Unlike IPv4 options, IPv6 extension headers can be of arbitrary length. Also, the
number of options that a packet carries is not limited to 40 bytes. This feature, in
addition to the manner in which IPv6 options are processed, permits IPv6 options
to be used for functions that are not practical in IPv4.
To improve performance when handling subsequent option headers, and the
transport protocol that follows, IPv6 options are always an integer multiple of 8
octets long. The integer multiple of 8 octets retains the alignment of subsequent
headers.
The following IPv6 extension headers are currently defined:
Routing – Extended routing, such as IPv4 loose source route
Fragmentation – Fragmentation and reassembly
Authentication – Integrity and authentication, and security
Encapsulating Security Payload – Confidentiality
Hop-by-Hop options – Special options that require hop-by-hop processing
Destination options – Optional information to be examined by the destination
node
41
20-4 TRANSITION FROM IPv4 TO IPv6
Because of the huge number of systems on the
Internet, the transition from IPv4 to IPv6 cannot
happen suddenly. It takes a considerable amount of
time before every system in the Internet can move from
IPv4 to IPv6. The transition must be smooth to prevent
any problems between IPv4 and IPv6 systems.
Dual Stack
Tunneling
Header Translation
Topics discussed in this section:
42
Figure 11 Three transition strategies
Dual stack – implement both IPv4 and IPv6
simultaneously on hosts until all use IPv6
Tunneling – encapsulate an IPv6 packet in an IPv4
packet
Header translation – convert IPv6 header to IPv4
header
43
Figure 12 Dual stack
It is recommended that all hosts, before migrating completely to
version 6, have a dual stack of protocols. In other words, a
station must run IPv4 and IPv6 simultaneously until all the
Internet uses IPv6. See Figure 20.19 for the layout of a dual-
stack configuration.
To determine which version to use when sending a packet to a
destination, the source host queries the DNS. If the DNS
returns an IPv4 address, the source host sends an IPv4 packet.
If the DNS returns an IPv6 address, the source host sends an
IPv6 packet.
44
Figure 13 Tunneling strategy
Tunneling is a strategy used when two computers using IPv6 want to
communicate with each other and the packet must pass through a region
that uses IPv4. To pass through this region, the packet must have an IPv4
address. So the IPv6 packet is encapsulated in an IPv4 packet when it
enters the region, and it leaves its capsule when it exits the region. It
seems as if the IPv6 packet goes through a tunnel at one end and appears
at the other end. Tunneling is shown in Figure 20.20.
45
Figure 14 Header translation strategy
Header translation is necessary when the majority of the Internet has
moved to IPv6 but some systems still use IPv4. The sender wants to use
IPv6, but the receiver does not understand IPv6. Tunneling does not
work in this situation because the packet must be in the IPv4 format to
be understood by the receiver. In this case, the header format must be
totally changed through header translation. The header of the IPv6
packet is converted to an IPv4 header (see Figure 20.21).
46
Mapping class D to Ethernet physical address
224 = E 0 =1110 0000
47
An Ethernet multicast physical address is
in the range
01:00:5E:00:00:00 to 01:00:5E:7F:FF:FF
24 + 1 + 23 = 48
48
Change the multicast IP address 230.43.14.7 to an
Ethernet multicast physical address.
Solution
We can do this in two steps:
a. We write the rightmost 23 bits of the IP address in
hexadecimal. This can be done by changing the
rightmost 3 bytes to hexadecimal and then
subtracting 8 from the leftmost digit if it is greater than
or equal to 8. In our example, the result is 2B:0E:07.
Example 5
49
b. We add the result of part a to the starting Ethernet
multicast address, which is 01:00:5E:00:00:00. The
result is
Example 5 (continued)
50
Change the multicast IP address 238.212.24.9 to an
Ethernet multicast address.
Solution
a. The rightmost 3 bytes in hexadecimal is D4:18:09. We
need to subtract 8 from the leftmost digit, resulting
in 54:18:09.
Example 5
b. We add the result of part a to the Ethernet multicast
starting address. The result is
51

More Related Content

Similar to C. N. II Lec.4.pdf h

COMPUTER COMMUNICATION NETWORKS -IPv4
COMPUTER COMMUNICATION NETWORKS -IPv4COMPUTER COMMUNICATION NETWORKS -IPv4
COMPUTER COMMUNICATION NETWORKS -IPv4Krishna Nanda
 
Tcp header/IP Header/Authentication header
Tcp header/IP Header/Authentication headerTcp header/IP Header/Authentication header
Tcp header/IP Header/Authentication headerFaizan Shaikh
 
tcpheader-151221111244.pdf
tcpheader-151221111244.pdftcpheader-151221111244.pdf
tcpheader-151221111244.pdfEnumulaBhargava1
 
IntroductionTransport LayerTransport Layer forms the bas.docx
IntroductionTransport LayerTransport Layer forms the bas.docxIntroductionTransport LayerTransport Layer forms the bas.docx
IntroductionTransport LayerTransport Layer forms the bas.docxmariuse18nolet
 
Ip protocol
Ip protocolIp protocol
Ip protocolH K
 
Unit 4 tansport layer in the internat
Unit 4 tansport layer in the internatUnit 4 tansport layer in the internat
Unit 4 tansport layer in the internatKritika Purohit
 
Comparative study of IPv4 & IPv6 Point to Point Architecture on various OS pl...
Comparative study of IPv4 & IPv6 Point to Point Architecture on various OS pl...Comparative study of IPv4 & IPv6 Point to Point Architecture on various OS pl...
Comparative study of IPv4 & IPv6 Point to Point Architecture on various OS pl...IOSR Journals
 
Introduction to IP
Introduction to IPIntroduction to IP
Introduction to IPaibad ahmed
 

Similar to C. N. II Lec.4.pdf h (20)

Advanced TCP IP
Advanced TCP IPAdvanced TCP IP
Advanced TCP IP
 
COMPUTER COMMUNICATION NETWORKS -IPv4
COMPUTER COMMUNICATION NETWORKS -IPv4COMPUTER COMMUNICATION NETWORKS -IPv4
COMPUTER COMMUNICATION NETWORKS -IPv4
 
The Internet Protocol version 4 (IPv4)
The Internet Protocol version 4 (IPv4)The Internet Protocol version 4 (IPv4)
The Internet Protocol version 4 (IPv4)
 
I.p. protocol
I.p. protocolI.p. protocol
I.p. protocol
 
Network Layer
Network LayerNetwork Layer
Network Layer
 
Tcp header/IP Header/Authentication header
Tcp header/IP Header/Authentication headerTcp header/IP Header/Authentication header
Tcp header/IP Header/Authentication header
 
tcpheader-151221111244.pdf
tcpheader-151221111244.pdftcpheader-151221111244.pdf
tcpheader-151221111244.pdf
 
Internet Protocol
Internet ProtocolInternet Protocol
Internet Protocol
 
networking IPv4.pdf
networking IPv4.pdfnetworking IPv4.pdf
networking IPv4.pdf
 
TCP Vs UDP
TCP Vs UDP TCP Vs UDP
TCP Vs UDP
 
IntroductionTransport LayerTransport Layer forms the bas.docx
IntroductionTransport LayerTransport Layer forms the bas.docxIntroductionTransport LayerTransport Layer forms the bas.docx
IntroductionTransport LayerTransport Layer forms the bas.docx
 
TCP/IP Protocal Suite
TCP/IP Protocal SuiteTCP/IP Protocal Suite
TCP/IP Protocal Suite
 
TCP/IP 3RD SEM.2012 AUG.ASSIGNMENT
TCP/IP 3RD SEM.2012 AUG.ASSIGNMENTTCP/IP 3RD SEM.2012 AUG.ASSIGNMENT
TCP/IP 3RD SEM.2012 AUG.ASSIGNMENT
 
Ip protocol
Ip protocolIp protocol
Ip protocol
 
Unit-2_CN.pdf
Unit-2_CN.pdfUnit-2_CN.pdf
Unit-2_CN.pdf
 
Network layer osi
Network layer osiNetwork layer osi
Network layer osi
 
Unit 4 tansport layer in the internat
Unit 4 tansport layer in the internatUnit 4 tansport layer in the internat
Unit 4 tansport layer in the internat
 
Comparative study of IPv4 & IPv6 Point to Point Architecture on various OS pl...
Comparative study of IPv4 & IPv6 Point to Point Architecture on various OS pl...Comparative study of IPv4 & IPv6 Point to Point Architecture on various OS pl...
Comparative study of IPv4 & IPv6 Point to Point Architecture on various OS pl...
 
Introduction to IP
Introduction to IPIntroduction to IP
Introduction to IP
 
Final Presentation
Final PresentationFinal Presentation
Final Presentation
 

More from abdnazar2003

laplace transform 2 .pdf
laplace transform 2                  .pdflaplace transform 2                  .pdf
laplace transform 2 .pdfabdnazar2003
 
laplace transform 1 .pdf
laplace transform 1                 .pdflaplace transform 1                 .pdf
laplace transform 1 .pdfabdnazar2003
 
Lecture 2 Connecting LANs, Backbone Networks, and Virtual LANs.ppt
Lecture 2   Connecting LANs, Backbone Networks, and Virtual LANs.pptLecture 2   Connecting LANs, Backbone Networks, and Virtual LANs.ppt
Lecture 2 Connecting LANs, Backbone Networks, and Virtual LANs.pptabdnazar2003
 
Forouzan6e_ch06_PPTs_Accessible 2024.pptx
Forouzan6e_ch06_PPTs_Accessible 2024.pptxForouzan6e_ch06_PPTs_Accessible 2024.pptx
Forouzan6e_ch06_PPTs_Accessible 2024.pptxabdnazar2003
 
Computer Networks/Computer Engineering.pdf
Computer Networks/Computer Engineering.pdfComputer Networks/Computer Engineering.pdf
Computer Networks/Computer Engineering.pdfabdnazar2003
 
Computer Networks/Computer Engineering.pdf
Computer Networks/Computer Engineering.pdfComputer Networks/Computer Engineering.pdf
Computer Networks/Computer Engineering.pdfabdnazar2003
 
Computer Networks/Computer Engineering.pdf
Computer Networks/Computer Engineering.pdfComputer Networks/Computer Engineering.pdf
Computer Networks/Computer Engineering.pdfabdnazar2003
 
Computer Networks/Computer Engineering.pdf
Computer Networks/Computer Engineering.pdfComputer Networks/Computer Engineering.pdf
Computer Networks/Computer Engineering.pdfabdnazar2003
 
Computer Networks/Computer Engineering.pdf
Computer Networks/Computer Engineering.pdfComputer Networks/Computer Engineering.pdf
Computer Networks/Computer Engineering.pdfabdnazar2003
 
Computer Networks/Computer Engineering.pdf
Computer Networks/Computer Engineering.pdfComputer Networks/Computer Engineering.pdf
Computer Networks/Computer Engineering.pdfabdnazar2003
 
Computer Networks/Computer Engineering.pdf
Computer Networks/Computer Engineering.pdfComputer Networks/Computer Engineering.pdf
Computer Networks/Computer Engineering.pdfabdnazar2003
 
Computer Networks/Computer Engineering.pdf
Computer Networks/Computer Engineering.pdfComputer Networks/Computer Engineering.pdf
Computer Networks/Computer Engineering.pdfabdnazar2003
 

More from abdnazar2003 (20)

laplace transform 2 .pdf
laplace transform 2                  .pdflaplace transform 2                  .pdf
laplace transform 2 .pdf
 
laplace transform 1 .pdf
laplace transform 1                 .pdflaplace transform 1                 .pdf
laplace transform 1 .pdf
 
Lecture 4 .pdf
Lecture 4                              .pdfLecture 4                              .pdf
Lecture 4 .pdf
 
Lecture 3 .pdf
Lecture   3                         .pdfLecture   3                         .pdf
Lecture 3 .pdf
 
Lecture 2 .pptx
Lecture 2                            .pptxLecture 2                            .pptx
Lecture 2 .pptx
 
Lecture 2 .pdf
Lecture 2                           .pdfLecture 2                           .pdf
Lecture 2 .pdf
 
Lecture 1 .pptx
Lecture 1                            .pptxLecture 1                            .pptx
Lecture 1 .pptx
 
LEC3 t.pdf
LEC3                               t.pdfLEC3                               t.pdf
LEC3 t.pdf
 
LEC2 j.pdf
LEC2                               j.pdfLEC2                               j.pdf
LEC2 j.pdf
 
LEC1 h.pdf
LEC1                               h.pdfLEC1                               h.pdf
LEC1 h.pdf
 
Lecture 2 Connecting LANs, Backbone Networks, and Virtual LANs.ppt
Lecture 2   Connecting LANs, Backbone Networks, and Virtual LANs.pptLecture 2   Connecting LANs, Backbone Networks, and Virtual LANs.ppt
Lecture 2 Connecting LANs, Backbone Networks, and Virtual LANs.ppt
 
Forouzan6e_ch06_PPTs_Accessible 2024.pptx
Forouzan6e_ch06_PPTs_Accessible 2024.pptxForouzan6e_ch06_PPTs_Accessible 2024.pptx
Forouzan6e_ch06_PPTs_Accessible 2024.pptx
 
Computer Networks/Computer Engineering.pdf
Computer Networks/Computer Engineering.pdfComputer Networks/Computer Engineering.pdf
Computer Networks/Computer Engineering.pdf
 
Computer Networks/Computer Engineering.pdf
Computer Networks/Computer Engineering.pdfComputer Networks/Computer Engineering.pdf
Computer Networks/Computer Engineering.pdf
 
Computer Networks/Computer Engineering.pdf
Computer Networks/Computer Engineering.pdfComputer Networks/Computer Engineering.pdf
Computer Networks/Computer Engineering.pdf
 
Computer Networks/Computer Engineering.pdf
Computer Networks/Computer Engineering.pdfComputer Networks/Computer Engineering.pdf
Computer Networks/Computer Engineering.pdf
 
Computer Networks/Computer Engineering.pdf
Computer Networks/Computer Engineering.pdfComputer Networks/Computer Engineering.pdf
Computer Networks/Computer Engineering.pdf
 
Computer Networks/Computer Engineering.pdf
Computer Networks/Computer Engineering.pdfComputer Networks/Computer Engineering.pdf
Computer Networks/Computer Engineering.pdf
 
Computer Networks/Computer Engineering.pdf
Computer Networks/Computer Engineering.pdfComputer Networks/Computer Engineering.pdf
Computer Networks/Computer Engineering.pdf
 
Computer Networks/Computer Engineering.pdf
Computer Networks/Computer Engineering.pdfComputer Networks/Computer Engineering.pdf
Computer Networks/Computer Engineering.pdf
 

Recently uploaded

VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130Suhani Kapoor
 
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...Soham Mondal
 
Coefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptxCoefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptxAsutosh Ranjan
 
HARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IVHARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IVRajaP95
 
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLSMANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLSSIVASHANKAR N
 
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escortsranjana rawat
 
Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024hassan khalil
 
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINEMANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINESIVASHANKAR N
 
Introduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxIntroduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxupamatechverse
 
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Serviceranjana rawat
 
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Dr.Costas Sachpazis
 
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptxDecoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptxJoão Esperancinha
 
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCollege Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCall Girls in Nagpur High Profile
 
Introduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxIntroduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxupamatechverse
 

Recently uploaded (20)

VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
 
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINEDJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
 
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
 
Coefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptxCoefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptx
 
Exploring_Network_Security_with_JA3_by_Rakesh Seal.pptx
Exploring_Network_Security_with_JA3_by_Rakesh Seal.pptxExploring_Network_Security_with_JA3_by_Rakesh Seal.pptx
Exploring_Network_Security_with_JA3_by_Rakesh Seal.pptx
 
HARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IVHARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IV
 
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLSMANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
 
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
 
Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024
 
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINEMANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
 
Introduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxIntroduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptx
 
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
 
Roadmap to Membership of RICS - Pathways and Routes
Roadmap to Membership of RICS - Pathways and RoutesRoadmap to Membership of RICS - Pathways and Routes
Roadmap to Membership of RICS - Pathways and Routes
 
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
 
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptxDecoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
 
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCollege Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
 
Introduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxIntroduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptx
 

C. N. II Lec.4.pdf h

  • 1. Lecture 4 A. Prof. Dr. Salah Abdulghani Computer Engineering Department University of Mosul / April 2022 Computer Networks II Third Level / Second Semester Network Layer: Internet Protocol IPv4 & IPv6
  • 2. Figure 20.1 Links between two hosts The physical and data link layers of a network operate locally. These two layers are jointly responsible for data delivery on the network from one node to the next, as shown in Figure 20.1. This internetwork is made of five networks: four LANs and one WAN. If host A needs to send a data packet to host D, the packet needs to go first from A to R1 (a switch or router), then from R1 to R3, and finally from R3 to host D. We say that the data packet passes through three links. In each link, two physical and two data link layers are involved. However, there is a big problem here. When data arrive at interface fl of Rl, how does RI know that interface f3 is the outgoing interface? There is no provision in the data link (or physical) layer to help R1 make the right decision. The frame does not carry any routing information either. The frame contains the MAC address of A as the source and the MAC address of R1 as the destination. For a LAN or a WAN, delivery means carrying the frame through one link, and not beyond.
  • 3. Figure 20.2 Network layer in an internetwork Need for Network Layer To solve the problem of delivery through several links, the network layer (or the internetwork layer, as it is sometimes called) was designed. The network layer is responsible for host-to-host delivery and for routing the packets through the routers or switches. Figure 20.2 shows the same internetwork with a network layer added.
  • 4. Figure 20.3 Network layer at the source, router, and destination Figure 20.3 shows the general idea of the functionality of the network layer at a source, at a router, and at the destination. The network layer at the source is responsible for creating a packet from the data coming from another protocol (such as a transport layer protocol or a routing protocol). The header of the packet contains, among other information, the logical addresses of the source and destination. The network layer is responsible for checking its routing table to find the routing information (such as the outgoing interface of the packet or the physical address of the next node). If the packet is too large, the packet is fragmented (fragmentation is discussed later in this chapter).
  • 5. Figure 20.3 Network layer at the source, router, and destination (continued) The network layer at the switch or router is responsible for routing the packet. When a packet arrives, the router or switch consults its routing table and finds the interface from which the packet must be sent. The packet, after some changes in the header, with the routing information is passed to the data link layer again. The network layer at the destination is responsible for address verification; it makes sure that the destination address on the packet is the same as the address of the host. If the packet is a fragment, the network layer waits until all fragments have arrived, and then reassembles them and delivers the reassembled packet to the transport layer.
  • 6. The Internet Protocol version 4 (IPv4) is the delivery mechanism used by the TCP/IP protocols.  Host-to-host delivery protocol for the Internet  Unreliable and connectionless packet protocol  No error control  Does perform some error detection; discards if corrupted (discussed later)  TCP is used if reliability is important (in the transport layer) 6
  • 7. Figure 1 Position of IPv4 in TCP/IP protocol suite  Five network layer protocols that make up the TCP/IP suite:  ARP, RARP, IP, ICMP, and IGMP 7
  • 8. Other Network Layer Protocols  Address Resolution Protocol (ARP) – finds physical address when Internet address is known  Internet Control Message Protocol (ICMP) – handles error and control messages  Internet Group Management Protocol (IGMP) – handles multicasting  Reverse Address Resolution Protocol (RARP) – allows a host to find its Internet address given its physical address 8
  • 9.
  • 10. Version Number. The 4-bit version number (VER) field defines the version of the IPv4 protocol, which, clearly, has the value of 4. Header Length. The 4-bit header length (HLEN) field defines the total length of the packet header. This field is needed because the length of the header is variable (between 20 and 60 bytes). When there are no options, the header length is 20 bytes, and the value of this field is 5 (5 x 4 = 20). When the option field is at its maximum size, the value of this field is 15 (15 x 4 = 60). Total Length. This 16-bit field defines the total length (header plus data) of the IP packet in bytes. To find the length of the data coming from the upper layer, subtract the header length from the total length. The header length can be found by multiplying the value in the HLEN field by 4. Service Type. this field was referred to as type of service (TOS) Identification, Flags, and Fragmentation Offset. These three fields are related to the fragmentation of the IP packet when the size of the packet is larger than the underlying network can carry. 10
  • 11. Protocol. In TCP/IP, the data section of a packet, called the payload, carries the whole packet from another protocol. A packet, for example, can carry a packet belonging to any transport- layer protocol such as UDP or TCP. 11
  • 12. Header checksum. IP is not a reliable protocol; it does not check whether the payload carried by a packet is corrupted during the transmission. Errors in the IP header can be a disaster. For example, if the destination IP address is corrupted, the packet can be delivered to the wrong host. If the protocol field is corrupted, the payload may be delivered to the wrong protocol. If the fields related to the fragmentation are corrupted, the packet cannot be reassembled correctly at the destination, and so on. For these reasons, IP adds a header checksum field to check the header, but not the payload. We need to remember that, since the value of some fields, such as TTL, which are related to fragmentation and options, may change from router to router, the checksum needs to be recalculated at each router. Source and Destination Addresses. These 32-bit source and destination address fields define the IP address of the source and destination respectively. The source host should know its IP address. Options. A packet header can have up to 40 bytes of options, are not required for a packet. Options can be used for network testing and debugging. Although options are not a required part of the IP header, option processing is required of the IP software. 12
  • 13. Figure 2 Service type or differentiated services 1. Service Type In this interpretation, the first 3 bits are called precedence bits. The next 4 bits are called type of service (TOS) bits, and the last bit is not used. a. Precedence is a 3-bit subfield ranging from 0 (000 in binary) to 7 (111 in binary). The precedence defines the priority of the packet in issues such as congestion. If a router is congested and needs to discard some packets, those packets with lowest precedence are discarded first. Some packets in the Internet are more important than others. For example, a packet used for network management is much more urgent and important than a packet containing optional information for a group b. TOS bits is a 4-bit subfield with each bit having a special meaning. Although a bit can be either 0 or 1, one and only one of the bits can have the value of 1 in each packet. The bit patterns and their interpretations are given in Table 20.1. With only 1 bit set at a time, we can have five different types of services. 13
  • 14. Table 1 Types of service Table 2 Default types of service It is clear from Table 2 that interactive activities, activities requiring immediate attention, and activities requiring immediate response need minimum delay. Those activities that send majority data require maximum throughput. Management activities need maximum reliability. Background activities need minimum cost. 14
  • 15. Figure 3 Encapsulation of a small packet in an Ethernet frame * Total length. This is a In-bit field that defines the total length (header plus data) of the IPv4 packet in bytes. To find the length of the data coming from the upper layer, subtract the header length from the total length. The header length can be found by multiplying the value in the HLEN field by 4. Length of data =total length - header length Since the field length is 16 bits, the total length of the IPv4 packet is limited to 65,535 bytes, of which 20 to 60 bytes are the header and the rest is data from the upper layer. Though a size of 65,535 bytes might seem large, the size of the IPv4 packet may increase in the near future as the underlying technologies allow even more throughput (greater bandwidth). When we discuss fragmentation in the next section, we will see that some physical networks are not able to encapsulate a packet of 65,535 bytes in their frames. The packet must be fragmented to be able to pass through those networks. One may ask why we need this field anyway. When a machine (router or host) receives a frame, it drops the header and the trailer, leaving the packet. Why include an extra field that is not needed? The answer is that in many cases we really do not need the value in this field. However, there are occasions in which the packet is not the only thing encapsulated in a frame; it may be that padding has been added. For example, the Ethernet protocol has a minimum and maximum restriction on the size of data that can be encapsulated in a frame (46 to 1500 bytes). If the size of an IPv4 packet is less than 46 bytes, some padding will be added to meet this requirement. In this case, when a machine decapsulates the packet, it needs to check the total length field to determine how much is really data and how much is padding (see Figure 20.7). 15
  • 16. * Flags. This field is used in fragmentation. First bit reserved. Second bit identifies if a packet should not be fragmented. Third bit identifies if there are additional fragments remaining (1) or if it is the last or only fragment (0) • Fragmentation offset. This field is used in fragmentation * Time-to-live (TTL) . A packet has a limited lifetime in its travel through an internet. This field was originally designed to hold a timestamp, which was decremented by each visited router. The packet was discarded when the value became zero. Each router that processes the packet decrements this number by 1. If this value, after being decremented, is zero, the router discards the packet. This field is needed because routing tables in the Internet can become corrupted. A packet may travel between two or more routers for a long time without ever getting delivered to the destination host. This field limits the lifetime of a packet. If the packet is too large, the packet is fragmented (fragmentation) 16
  • 17. Figure 4 Protocol field and encapsulated data Protocol. This 8-bit field defines the higher-level protocol that uses the services of the IPv4 layer. An IPv4 packet can encapsulate data from several higher-level protocols such as TCP, UDP, ICMP, and IGMP. This field specifies the final destination protocol to which the IPv4 packet is delivered. In other words, since the IPv4 protocol carries data from different other protocols, the value of this field helps the receiving network layer know to which protocol the data belong (see Figure 20.8) Table 3 Protocol values 17
  • 18. An IPv4 packet has arrived with the first 8 bits as shown: 01000010 The receiver discards the packet. Why? Solution There is an error in this packet. The 4 leftmost bits (0100) show the version, which is correct. The next 4 bits (0010) show an invalid header length (2 × 4 = 8). The minimum number of bytes in the header must be 20. The packet has been corrupted in transmission. Example 1 18
  • 19. Figure 5 Maximum transfer unit (MTU) Table 4 MTUs for some networks Each data link layer protocol has its own frame format in most protocols. One of the fields defined in the format is the maximum size of the data field. In other words, when a packet is encapsulated in a frame, the total size of the packet must be less than this maximum size, which is defined by the restrictions imposed by the hardware and software used in the network (see Figure 20.9). The value of the MTU depends on the physical network protocol. Table 20.5 shows the values for some protocols. Maximum transfer unit (MTU) defines max length of IP packet physical network can support 19
  • 20. Fragmentation A packet can travel through different networks. Each router de-capsulates the IPv4 packet from the frame it receives, processes it, and then encapsulates it in another frame. The format and size of the received frame depend on the protocol used by the physical network through which the frame has just traveled. The format and size of the sent frame depend on the protocol used by the physical network through which the frame is going to travel. For example, if a router connects a LAN to a WAN, it receives a frame in the LAN format and sends a frame in the WAN format. 20
  • 21. Figure 6 Flags used in fragmentation Fields Related to Fragmentation The fields that are related to fragmentation and reassembly of an IPv4 packet are the identification, flags, and fragmentation offset fields. * Identification. This 16-bit field identifies a packet originating from the source host. The combination of the identification and source IPv4 address must uniquely define a packet as it leaves the source host. To guarantee uniqueness, the IPv4 protocol uses a counter to label the packets. The counter is initialized to a positive number. When the IPv4 protocol sends a packet, it copies the current value of the counter to the identification field and increments the counter by 1. As long as the counter is kept in the main memory, uniqueness is guaranteed. When a packet is fragmented, the value in the identification field is copied to all fragments. In other words, all fragments have the same identification number, the same as the original packet. The identification number helps the destination in reassembling the packet. It knows that all fragments having the same identification value must be assembled into one packet. * Flags. This is a 3-bit field. The first bit is reserved. The second bit is called the do not fragment bit. If its value is 1, the machine must not fragment the packet. If it cannot pass the packet through any available physical network, it discards the packet and sends an ICMP error message to the source host (see Chapter 21). If its value is 0, the packet can be fragmented if necessary. The third bit is called the more fragment bit. If its value is 1, it means the packet is not the last fragment; there are more fragments after this one. If its value is 0, it means this is the last or only fragment (see Figure 20.10). 21
  • 22. Figure 7 Fragmentation example o Fragmentation offset. This 13-bit field shows the relative position of this fragment with respect to the whole packet. It is the offset of the data in the original packet measured in units of 8 bytes. Figure 20.11 shows a packet with a data size of 4000 bytes fragmented into three fragments. The bytes in the original packet are numbered 0 to 3999. The first fragment carries bytes 0 to 1399. The offset for this packet is 0/8 =0. The second fragment carries bytes 1400 to 2799; the offset value for this fragment is 1400/8 = 175. Finally, the third fragment carries bytes 2800 to 3999. The offset value for this fragment is 2800/8 =350. Remember that the value of the offset is measured in units of 8 bytes. 22
  • 23. Figure 8 Detailed fragmentation example 23
  • 24. A packet has arrived with an M bit value of 0. Is this the first fragment, the last fragment, or a middle fragment? Do we know if the packet was fragmented? Solution If the M bit is 0, it means that there are no more fragments; the fragment is the last one. However, we cannot say if the original packet was fragmented or not. A non-fragmented packet is considered the last fragment. Example 2 24
  • 25. A packet has arrived in which the offset value is 100. What is the number of the first byte? Do we know the number of the last byte? Solution To find the number of the first byte, we multiply the offset value by 8. This means that the first byte number is 800. We cannot determine the number of the last byte unless we know the length. Example 3 25
  • 26. Figure 20.13 shows an example of a checksum calculation for an IPv4 header without options. The header is divided into 16-bit sections. All the sections are added and the sum is complemented. The result is inserted in the checksum field. Example 4 26
  • 27. Figure 9 Example of checksum calculation in IPv4 27
  • 28. Figure 20.14 Taxonomy of options in IPv4 End of Option An end-of-option option is a 1-byte option used for padding at the end of the option field. It, however, can only be used as the last option. Record Route A record route option is used to record the Internet routers that handle the datagram. It can list up to nine router addresses. It can be used for debugging and management purposes. Strict Source Route A strict source route option is used by the source to predetermine a route for the datagram as it travels through the Internet. Dictation of a route by the source can be useful for several purposes. The sender can choose a route with a specific type of service, such as minimum delay or maximum throughput. Alternatively, it may choose a route that is safer or more reliable for the sender's purpose. For example, a sender can choose a route so that its datagram does not travel through a competitor's network. If a datagram specifies a strict source route, all the routers defined in the option must be visited by the datagram.
  • 29. 20.29 A router must not be visited if its IPv4 address is not listed in the datagram. If the datagram visits a router that is not on the list, the datagram is discarded and an error message is issued. If the datagram arrives at the destination and some of the entries were not visited, it will also be discarded and an error message issued. Loose Source Route A loose source route option is similar to the strict source route, but it is less rigid. Each router in the list must be visited, but the datagram can visit other routers as well. Timestamp A timestamp option is used to record the time of datagram processing by a router. The time is expressed in milliseconds from midnight, Universal time or Greenwich mean time. Knowing the time a datagram is processed can help users and managers track the behavior of the routers in the Internet. We can estimate the time it takes for a datagram to go from one ~outer to another. We say estimate because, although all routers may use Universal time, their local clocks may not be synchronized. Taxonomy of options in IPv4 (contin.)
  • 31. IPv6 The network layer protocol in the TCP/IP protocol suite is currently IPv4. Although IPv4 is well designed, data communication has evolved since the inception of IPv4 in the 1970s. IPv4 has some deficiencies that make it unsuitable for the fast-growing Internet. IPV4 Problems Although all short-term solutions, such as subnetting, classless addressing, and NAT, address decrease is still a long-term problem in the Internet. Not suitable for real-time audio and video transmission that requires minimum delay strategies and reservation of resources not provided in the IPv4 design. The Internet must accommodate encryption and authentication of data for some applications. No encryption or authentication is provided by IPv4. 31
  • 32. IPv6 Addresses  16 bytes long (128 bits)  Uses hexadecimal colon notation  May reduce addresses by omitting leading zeros  Further abbreviations are possible if there are following sections consisting of zeros further IPv6 address 32
  • 33. Advantages The next-generation IP, or IPv6, has some advantages over IPv4 that can be summarized as follows: * Larger address space. An IPv6 address is 128 bits long, as we discussed in Chapter 19. Compared with the 32-bit address of IPv4, this is a huge (296) increase in the address space. * Better header format. IPv6 uses a new header format in which options are separated from the base header and inserted, when needed, between the base header and the upper-layer data. This simplifies and speeds up the routing process because most of the options do not need to be checked by routers. * New options. IPv6 has new options to allow for additional functionalities. * Allowance for extension. IPv6 is designed to allow the extension of the protocol if required by new technologies or applications. * Support for resource allocation. In IPv6, the type-of-service field has been removed, but a mechanism (called jlow label) has been added to enable the source to request special handling of the packet. This mechanism can be used to support traffic such as real-time audio and video. * Support for more security. The encryption and authentication options in IPv6 provide confidentiality and integrity of the packet. 33
  • 34. The IPv6 packet is shown in Figure below. Each packet is composed of a mandatory base header followed by the payload. The payload consists of two parts: optional extension headers and data from an upper layer. The base header occupies 40 bytes, whereas the extension headers and data from the upper layer contain up to 65,535 bytes of information. IPv6 Packet Format IPv6 packet header and payload
  • 35. Figure 20.16 Format of an IPv6 datagram
  • 36. Format of the base header of IPv6 Version – 4-bit version number of Internet Protocol = 6. Traffic class – 8-bit traffic class field, Indicates the class or priority of the IPv6 packet. The size of this field is 8 bits. The Traffic Class field provides similar functionality to the IPv4 Type of Service field. An IPv6 implementation is required to provide a means for an application layer protocol to specify the value of the Traffic Class field for experimentation. Flow label – 20-bit field, Indicates that this packet belongs to a specific sequence of packets between a source and destination, requiring special handling by intermediate IPv6 routers. The size of this field is 20 bits. The Flow Label is used for non-default quality of service connections, such as those needed by real-time data (voice and video). For default router handling, the Flow Label is set to 0. There can be multiple flows between a source and destination, as distinguished by separate non-zero Flow Labels.
  • 37. Payload Length – Indicates the length of the IPv6 payload. The size of this field is 16 bits. The Payload Length field includes the extension headers and the upper layer PDU. With 16 bits, an IPv6 payload of up to 65,535 bytes can be indicated. Next Header – Indicates either the first extension header (if present) or the protocol in the upper layer PDU (such as TCP, UDP, or ICMPv6). The size of this field is 8 bits. When indicating an upper layer protocol above the Internet layer, the same values used in the IPv4 Protocol field are used here. Hop Limit – Indicates the maximum number of links over which the IPv6 packet can travel before being discarded. The size of this field is 8 bits. The Hop Limit is similar to the IPv4 TTL field except that there is no historical relation to the amount of time (in seconds) that the packet is queued at the router. When the Hop Limit equals 0, an ICMPv6 Time Exceeded message is sent to the source address and the packet is discarded. Source Address –Stores the IPv6 address of the originating host. The size of this field is 128 bits. Destination Address – Stores the IPv6 address of the current destination host. The size of this field is 128 bits. In most cases the Destination Address is set to the final destination address. However, if a Routing extension header is present, the Destination Address might be set to the next router interface in the source route list.
  • 39. 39 Figure 27.3 Extension header format
  • 40. 40 IPv6 Extension Headers IPv6 options are placed in separate extension headers that are located between the IPv6 header and the transport-layer header in a packet. Most IPv6 extension headers are not examined or processed by any router along a packet's delivery path until the packet arrives at its final destination. This feature provides a major improvement in router performance for packets that contain options. In IPv4, the presence of any options requires the router to examine all options. Unlike IPv4 options, IPv6 extension headers can be of arbitrary length. Also, the number of options that a packet carries is not limited to 40 bytes. This feature, in addition to the manner in which IPv6 options are processed, permits IPv6 options to be used for functions that are not practical in IPv4. To improve performance when handling subsequent option headers, and the transport protocol that follows, IPv6 options are always an integer multiple of 8 octets long. The integer multiple of 8 octets retains the alignment of subsequent headers. The following IPv6 extension headers are currently defined: Routing – Extended routing, such as IPv4 loose source route Fragmentation – Fragmentation and reassembly Authentication – Integrity and authentication, and security Encapsulating Security Payload – Confidentiality Hop-by-Hop options – Special options that require hop-by-hop processing Destination options – Optional information to be examined by the destination node
  • 41. 41
  • 42. 20-4 TRANSITION FROM IPv4 TO IPv6 Because of the huge number of systems on the Internet, the transition from IPv4 to IPv6 cannot happen suddenly. It takes a considerable amount of time before every system in the Internet can move from IPv4 to IPv6. The transition must be smooth to prevent any problems between IPv4 and IPv6 systems. Dual Stack Tunneling Header Translation Topics discussed in this section: 42
  • 43. Figure 11 Three transition strategies Dual stack – implement both IPv4 and IPv6 simultaneously on hosts until all use IPv6 Tunneling – encapsulate an IPv6 packet in an IPv4 packet Header translation – convert IPv6 header to IPv4 header 43
  • 44. Figure 12 Dual stack It is recommended that all hosts, before migrating completely to version 6, have a dual stack of protocols. In other words, a station must run IPv4 and IPv6 simultaneously until all the Internet uses IPv6. See Figure 20.19 for the layout of a dual- stack configuration. To determine which version to use when sending a packet to a destination, the source host queries the DNS. If the DNS returns an IPv4 address, the source host sends an IPv4 packet. If the DNS returns an IPv6 address, the source host sends an IPv6 packet. 44
  • 45. Figure 13 Tunneling strategy Tunneling is a strategy used when two computers using IPv6 want to communicate with each other and the packet must pass through a region that uses IPv4. To pass through this region, the packet must have an IPv4 address. So the IPv6 packet is encapsulated in an IPv4 packet when it enters the region, and it leaves its capsule when it exits the region. It seems as if the IPv6 packet goes through a tunnel at one end and appears at the other end. Tunneling is shown in Figure 20.20. 45
  • 46. Figure 14 Header translation strategy Header translation is necessary when the majority of the Internet has moved to IPv6 but some systems still use IPv4. The sender wants to use IPv6, but the receiver does not understand IPv6. Tunneling does not work in this situation because the packet must be in the IPv4 format to be understood by the receiver. In this case, the header format must be totally changed through header translation. The header of the IPv6 packet is converted to an IPv4 header (see Figure 20.21). 46
  • 47. Mapping class D to Ethernet physical address 224 = E 0 =1110 0000 47
  • 48. An Ethernet multicast physical address is in the range 01:00:5E:00:00:00 to 01:00:5E:7F:FF:FF 24 + 1 + 23 = 48 48
  • 49. Change the multicast IP address 230.43.14.7 to an Ethernet multicast physical address. Solution We can do this in two steps: a. We write the rightmost 23 bits of the IP address in hexadecimal. This can be done by changing the rightmost 3 bytes to hexadecimal and then subtracting 8 from the leftmost digit if it is greater than or equal to 8. In our example, the result is 2B:0E:07. Example 5 49
  • 50. b. We add the result of part a to the starting Ethernet multicast address, which is 01:00:5E:00:00:00. The result is Example 5 (continued) 50
  • 51. Change the multicast IP address 238.212.24.9 to an Ethernet multicast address. Solution a. The rightmost 3 bytes in hexadecimal is D4:18:09. We need to subtract 8 from the leftmost digit, resulting in 54:18:09. Example 5 b. We add the result of part a to the Ethernet multicast starting address. The result is 51