Assignment 01 Solution Final
Assignment 01 Solution Final
Assignment 01 Solution Final
Assignment # 01
Due Date: January 22, 2021 Max Marks: 10
_________________________________________________________________________
Please carefully read the following instructions before attempting assignment
Rules for Assignment
It should be clear that your assignment will get credit only if:
Only hand written assignment is accepted, take snaps of the complete handwritten
assignment and paste the snaps order wise in a word .doc file and upload the file on LMS.
The assignment is submitted before or on the due date.
The submitted assignment file is not corrupted or damaged.
The assignment is not copied (from another student).
Label figures to support your answer if necessary.
Uploading Instructions
Read the following instructions carefully before uploading assignment:
Q1. Describe the key terminologies that how transport Layer in TCP/IP handles Flow control
and Error Control and why do you need it in Transport layer when it’s already
done in data link layer? Marks 5 [CLO 1/PLO 4]
Solution: Solution:
The data link layer operates between two different machines which means it cannot provide
flow and error control. Whereas Transport Layer communicates between two different
processes on the same network, thus providing flow and error control easily. That's why we
need it in Transport Layer. The error control in the data link layer, works at the packet or
stream level, while the error control in the transport layer, works at the message level. The
data link layer is not concerned with ordering of packets, while the transport layer is. The
motivation for this is that different networks may be designed to work with different packet
lengths. So when a packet goes from one network to the other, it might be fragmented by the
gateway router. These fragmented packets then need to be reassembled at the host machine.
Now it is possible to do this reassembly at the network layer, but this causes a lot of
problems, like buffering for example. Next, this would necessiate that all fragments of a
packet,pass through the same gateway - something which would compromise the packet
switching nature of the network. Lastly, packet fragmentation may happen even at the last
gateway! This again forces the host machine to do the reassembly. Hence in a packet
switching network, the host machine would inevitably face the task of error correction, which
is why the transport layer handles it.
In the data link layer packets have a size limit. The network layer does not know these
parameters. It might send a large packet that is broken up into. And this process takes a long
time. Instead, if individual frames are acknowledged and retransmitted, then errors can be
corrected more directly and more quickly. On reliable channels, the overhead of a
heavyweight data link protocol may be unnecessary, but on wireless channels it is well worth
the cost. The error control in the data link layer, works at the packet or stream level, while the
error control in the transport layer, works at the message level. The data link layer is not
concerned with ordering of packets; the motivation for this is that different networks may be
designed to work with different packet lengths. So when a packet goes from one network to
the other, it might be fragmented by the gateway router. These fragmented packets then need
to be reassembled at the host machine. The Data link layer handles errors between each
individual segment. The transport layer handles errors across the entire link, which isn’t
necessarily just the sum of data link errors — you can have misbehaving or miscongured
networking equipment that routes your data wrong or just drops packets entirely, despite each
link passing perfectly, or so many congested hops that while each individual hop is within the
data link’s timeout parameters, the overall case needs to timeout. It’s always critical to have
error checking between links, since that’s the primary failure case, but error checking at other
levels is a sanity check for much larger WAN. The Data Link Layer checks for errors when a
packet moves from one machine to the next. By machine I mean a router, a packet switch or
an end host (computer, phone, tablet) itself. Whereas, the transport layer only checks for
errors between the end hosts. Error checking is provided in the transport layer mainly because
of the following two reasons: (a) Even if no errors are introduced when a segment is moving
over a link, it's possible for errors to be introduced when a segment is stored in a router's
memory(for queuing). The data link layer's error checking fails in this scenario. (b) There is
no guarantee that all the links between source and destination provide error checking. One of
the links may be using a link layer protocol which doesn't provide error checking.
Q 2: (a) Explain the services and functions provided by each layer and also
assume that a private internet requires that the messages at the application layer
be encrypted and decrypted for security purposes. If we need to add some
information about the encryption/decryption process (such as the algorithms
used in the process), does it mean that we are adding one layer to the TCP/IP
protocol suite? Redraw the TCP/IP layers (Figure 2.4 part b) if you think so?
(2.5)
(b) Explain the protocol layering that can be found in many aspects of our lives
such as air travelling. Imagine you make a round-trip to spend some time on
vacation at a resort. You need to go through some processes at your city airport
before flying. You also need to go through some processes when you arrive at
the resort airport. Show the protocol layering for the round trip using some
layers such as baggage checking/claiming, boarding/ un-boarding, takeoff/
landing? (2.5 5 Marks [CLO 2/ PLO 5, 11]
Solution:
Q 2: (a) Explain the services and functions provided by each layer and also assume that
a private internet requires that the messages at the application layer be encrypted and
decrypted for security purposes. If we need to add some information about the
encryption/decryption process (such as the algorithms used in the process), does it mean
that we are adding one layer to the TCP/IP protocol suite? Redraw the TCP/IP layers
(Figure 2.4 part b) if you think so? (2.5)
Solution:
Unlike the seven layered open system interconnection OSI networking model. If we need to add
some information about encryption decryption it means we are adding a layer to the TCP/IP protocol
suite. This layer is placed under the layer being processed. No, it does not mean that we are adding
another layer to the protocol suite. Encryption and decryption is the part of cryptography.
There are different of encryptions and decryptions in a network.
In OSI model presentation layer has the job of encryption and decryption. As we know that
the application layer of TCP/IP is responsible for the functionalities of the presentation and
session layer. So in TCP/IP this job is for application layer. If we want to add some
information about encryption/decryption then that doesn’t mean we have to add another
layer. We can just add some new functionality in the existing one by upgrading the
algorithms and the problem will be solved No, it does not mean that we are adding another
layer to the protocol suite; it just means that the transport layer has taken another function
and now contains the encryption/decryption process. This process could be contained and
handled within the transport layer to be able to encrypt and decrypt data. Every time any
packet at any layer is encapsulated inside another packet at the same layer, we can think of
this as a new layer being added under that layer. At every time any packet at any layer is
cover inside another packet at the equivalent layer, we can assume that as a new layer actually
added under that layer. But it does not mean that we are adding another layer to the protocol
suite, it just means that the transport layer has taken another function and now contains the
encryption/decryption process. This process could be contained and handled within the
transport layer to be able to encrypt and decrypt data.
(b) Explain the protocol layering that can be found in many aspects of our lives such as
air travelling. Imagine you make a round-trip to spend some time on vacation at a
resort. You need to go through some processes at your city airport before flying. You
also need to go through some processes when you arrive at the resort airport. Show the
protocol layering for the round trip using some layers such as baggage
checking/claiming, boarding/ un-boarding, takeoff/landing? (2.5)
5 Marks [CLO 2/ PLO 5, 11]
Solution:
Protocol layering found in much aspect of our lives such as air travelling. Suppose we make a
Round-trip to spend some time on vacation at resort. We have to go through some process at or
city airport before flying. Print boarding pass, Check luggage, Head to security, Find gate, Hang
out and wait for plane. Wait for announcement; Get your boarding pass checked. Enter the
aircraft, Stow your carry-on items, Get settled in.
Printing of boarding passes and there will be language check.
Then there will be checking process.
Wait for the plane and after announcement get the boarding pass checked on the
entrance.
Get in the plane and place your luggage on its place.
Then take off
Layer 3: The first task of the passenger after reaching the airport is to perform a 'check in', this
task is performed at the source, and similarly the passenger claims the luggage at the
destination.
• Therefore, at the top most layers the passenger either 'check ins' the baggage or 'claims' the
baggage depending upon the airport (whether it is source or destination).
• The identical object is luggage and passenger.
Layer 2: The second task is to board the flight at the source airport and similarly un-boards the
flight at the destination.
• Thus the next layer of the protocol is boarding or un-boarding layer.
• The identical object is passenger.
Layer 1: the third task for the passenger would be takeoff at the source and landing at the
destination.
• The next layer of the protocol is takeoff or landing layer. • The identical object is passenger
Q02: (c) Classify various internetworking devices if the presentation of data is becoming
more and more important in today’s Internet. Some people argue that the TCP/IP
protocol suite needs to add a new layer to take care of the presentation of data. If this
new layer is added in the future, where should its position be in the suite? Redraw
Figure 2.4 to include this layer. (2.5)
Solution:
Data compression is required to reduce the space during the transfer the data, now that the
presentation has been added to the physical layer, data from the physical layer can be
compressed at the presentation layer and sent by improving the throughput. The
presentation of data involves the following as shown below: Presentation of data comprises
of the task like translating between receiver and sender devices so that machines with
different capabilities sets can communicate with one another. It involves encoding and
decoding of data to provide data security that is been transmitted by different machines.
Data sometimes needs to compress for efficiency improvement for transmission. The
physical layer of the TCP/IP protocol suite is responsible or refers to the transmission of
physical data over a physical medium It is good or important to add presentation layer after
the physical layer, so that the data along with its headers can be translated, when the
receiver machine is applying a set of different characters. Data encryption at this stage is
good for security instead of encrypting the data at upper/higher layers. Hence, it is advisable
to add presentation layer after the physical layer in the TCP/IP suite.
(ii) In an internet, we change the LAN technology to a new one. Which layers in the
TCP/IP protocol suite need to be changed? (2.5)
Solution:
The only two layers that need to be changed are the data-link layer and the physical layer.
The new hardware and software need to be installed in all host, routers, and link-layer
switches. As long as the new data-link layer can encapsulate and de capsulate datagrams
from the network layer, there is no need to change any protocol in the upper three layers.
This is one of the characteristics of the protocol layering.Generally, only the physical link
gets replaced, along with the drivers for that physical link. Sometimes the lower addressing
layer has to be replaced as the physical link itself may not have MAC addresses, so the
missing capability has to be augmented externally. I would say this. Replace Ethernet ports in
favor of fiber optic, both on the gateway side and the computer side. This would do away
with a copper wire connection all together. Copper will have a natural resistance to electrical
signals. Secondly, I would change how the firmware processes internet signals, and make
them more fluid. This would do two things, increase the throughput, and increase the frame
rates, which in turn will increase the quantity and quality of data sent and received. After that,
I would run Ipv6 protocols with a backwards compatibility to Ipv4 networks. This would
provide for a more direct connection to the server and computer without the need to provide
so many hops to get to its destination. 5 Marks [CLO 3/ PLO 2, 12]