Information Technology Assignment Essay Example

  • Category:
    Logic & Programming
  • Document type:
    Math Problem
  • Level:
  • Page:
  • Words:


Information Technology Assignment

Question 1

Advantages of TCP for proposed application layer protocol

The TCP model separates the networking functions into different layers and each layer performs a particular function (Preetham p. 54). There are different advantages that are associated with the TCP model for the proposed application layer protocol. These include;

  1. TCP is highly dependable as it manages communication acknowledgment as well as retransmissions in instances of lost parts during transmission. Thus TCP ensures that there is completely no missing information in the course of transmission.

  2. TCP data is transmitted in a sequence and received in a similar sequence. Thus, in the data segments arrive in an incorrect order, TCP will reorder and deliver application.

Disadvantages of TCP for proposed application layer protocol

The disadvantages the TCP model for the proposed application layer protocol includes the following;

  1. TCP cannot be utilized in broadcasting and multicasting transmissions. 

  2. TCP might have several features that one does not require, and this might result in the wastage of bandwidth, effort and time on ensuring elements that are extraneous to the task being performed.

Advantages of UDP for proposed application layer protocol

The UDP protocol is a transport layer model for the use with the IP network later protocol. It is usually defined by the RFC. Advantages of this protocol include;

  1. UDP does not limit one to a connection founded on the communication model, and as a result, start-up latency within distributed applications tend to be quite lower, just as is the operating system overhead.

  2. UDP also allows for both broadcast and multicast transmissions.

Disadvantages of UDP for proposed application layer protocol

Disadvantages of the UDP protocol include the following;

  1. UDP does not make certain that the receiver get the transmitted communication given that the conceptions of recognition, time out along with retransmission are often not present. UDP operates independent of the OS and supports several protocols.

  2. In UDP, maintenance of the sent message sequences might not be attainable upon reaching the receiving application. One cannot predict the sequence in which the communication will be received.

Introduction to basic concepts of go-back-n

The concept mainly introduces a size n window over and above ensuring that the n packets are injected into the net prior to the ACK being heard. Every packet is thereafter labeled win a sequence number by the sliding window. A window refers to a set of adjoining sequence numbers. Additionally, the collection size is normally the window size of the sender. Moreover, the receiver also has a comparable window as well as has a fixed buffer. The initial packet the receiver desires to see is the left window edge while the right window edge is often the final packet that may be held. Additionally, the remaining packets are often queued so as to enable the fixing of packets that may be out of order.

The send buffers all unapproved packets, as they might necessitate retransmission.However, while the receiver might accept the out-of-order packets, this may only be up to the receiver’s buffer limits. In an attempt to determine when to transmit the packet that may have been lost, there is a need for the sender to set timers.

Illustration of receiver discarding out-of-order packets

Information Technology Assignment

With the receiver discarding out-of-order packets, the sender fails to know what happened at the receiver. In addition, the sender does not know whether received package is a retransmit or a new packet.

When handling the duplicates, the sender adds sequence number to every packet. However, the receiver discards (fails to deliver up) the duplicate packet (Preetham p. 84). This means that the sender would send one packet and then wait for the receiver to respond.

Illustration of receiver keeping out-of-order packets

Information Technology Assignment 1

Question 2

Descriptions of socket API calls

The call functions also take in aspects of bind, socket, connect, accept, listen, close, receive and send functions.
The API of the TCP socket refers to the functions sequence that necessitates the server and client participation in TCP connection.

  • The socket Call Function

The initial call is normally directed to the socket function, predominantly, the TCP protocol. Moreover, the function often responds with a non-negative integer that is comparable to the file describer also referred to as a socket descriptor.

  • The Connect Function

A TCP client in establishing a connection with a TCP server uses this function. It returns zero if it successfully establishes a connection, otherwise it returns 1. Moreover, the client is not supposed to call bind function. After connection has been established, the fate is shared between the server as well as the client through the use of the calls send (), recv (), send to (), as well as recv from ().

  • The Bind Function

The use of a generic socket address demands that any of the calls to the socket functions have to cast the pointer into the protocol.
The function works by allocating a local protocol address to a socket. Furthermore, with regards to the internet protocols, the address mainly functions through combination of IPv6 address and a 16-bit TCP port.

. Ben-Natan p. 76) Furthermore, a process might additionally bind specific IP address into its sockets. This implies that, for a TCP customer, this allocates the IP address source to be utilized for IP datagrams that are transmitted to the sockets. Besides, for the TCP server, it limits the socket into receiving the incoming client connections, which are only destined into that specific IP address. More often, the TCP client is not necessarily required to bind into an IP address to its socket (

  • The Listen Function

This specific function helps in converting sockets that are not connected socket into passive sockets. This, therefore, means that the kernel must acknowledge the incoming requests for connection directed into the sockets.

  • The Accept Function

This function is also used in order to recover a connection request. It can also convert it into a request.

  • The Send Function

The send function is employed in the communication with the socket during its connection. When the send function succeeds, it usually returns the number of bytes (_1).

  • The Receive Function

This function performs almost similar functions as the read function, only that the receive function allows to identify particular options in efforts to control just how data is received. This option is often assumed to equal to zero. Furthermore, the receive function correspondingly returns the information in the form of bytes and 0 when messages are not available.

Question 3

Explanation of likely causes and proposed actions

The cause for the increase in the packets from 0.01 percent 3 percent was due to the Wiki software that was installed on the web server at the same that when router A was connected. In order to offset it, it would be advisable to uninstall the Wiki software then try to connect to router A.

The cause for the higher antivirus detection can be attributed to the increase in the number of the active TCP connections as well as TCP volume segments, which are being send to and from the server. Corrective measures include deactivating the large number of TCP that are active as well as reducing the volume of TCP volumes being sent to the network (Ben-Natan 89).

The cause for the increase of the increase in lengths of packets on the router is due to the VPN installed, because the VPN blocks proper connections to the ISP in addition to blocking sender/receiver communication. To correct this problem, it would be good idea to uninstall the VPN connection.

Question 4

Basic concepts of checksum/CRC integrity checks

Secure-computing needs demands that information is not corrupted in the process of transmission and encryption. There are a number of ensuring data security, including checksum and CRC.

Checksum is perhaps one of the oldest ways of making sure that data has been kept accurate. Similarly, checksums offer a form of authentication, since an invalid checksum would mean that the information has been compromised.

A CRC check refers to the error-detecting code usually employed in digital networking world and storage devices to sense accidental changes made to raw data. Furthermore, data blocks entering the systems normally receive short check values attached to them, based on the content of the remainder of their polynomial division. In the course of retrieval, calculations are reiterated and the checks that fail to match are taken against data corruption.

that are due to noise in the transmission channels. Since these checks have a fixed length, the function generating it usually helps in hash function.
Verification of data in CRC codes is often superfluous given that the algorithms are founded on a number of cyclic codes. Moreover, the CRC codes are common as a result of the observation that they are uncomplicated to execute in relation to binary hardware and are also easy to evaluate scientifically. They are as well outstanding in identifying common mistakes

of every long error bursts.-n. Particularly, n-bit CRCs are normally applied in blocking data of arbitrary length, and this helps in detecting error bursts that are not longer than the n-bits. It may additionally sense fractions 1-2Forouzan and Fegan p. 114) Further, the CRC system is founded on the cyclic error-correcting codes theory. The systematic cyclic codes is, therefore, applied in encoding data through addition of fixed-length check values meant to detect errors in the course of communication between networks. The codes are not just uncomplicated to execute, but are additionally advantageous especially when it comes to burst errors detection. This is very important as burst errors are normally transmission errors in numerous communication channels that take in the various optical storage devices (

The CRC codes specification demands definition of the generator polynomial. The polynomial is known to be the divisor in long polynomial divisions in addition to taking the message as the dividend, in instances where the reminder is regarded as the outcome and the quotient is discarded.

Why checksum/CRC checks are inadequate for security

They are inadequate for security particularly when the undetected error probability are high enough, which can be cannot be sufficient in order to pick an error code. There are a number of other considerations, which make them inadequate for security including the following;

  • The need to scrub errors detection mechanisms as well as data values in order to mitigate the risk of fault accumulation over time can fail to happen

  • Vulnerabilities due to message framing, including corrupted fields may undermine the CRC effectiveness

  • Vulnerabilities resulting from bit encoding such as stuff bits may also undermine the CRC HD

  • Potential bit error corrections because of memory geometry might occur

Basic concepts of digests

Additionally, the cryptography makes use of the hash values that warn copyright owners on modifications applied to their articles/works.
Message digest refers to the cryptographic hash function containing a sequence of digits generated using a one-way hashing procedure. The thought behind message digest is mainly to safeguard the veracity of the data during the detection of the changes to the data/message.

Moreover, the message digest hash numbers normally represent specific files containing safeguarded works. It works through assigning one message to particular data content. It may also reference a modification made deliberately as well as accidentally; however, it also notifies the owner recognize the changes and the persons behind such modifications. This term is also referred to as hash value or checksum.

Why digests are more suitable for security

Precise message digest are prone to change in case the file are changed. In addition, he message digest will not only assist in the establishment of the changes to files, but will additionally enable the location of duplicate files. Such messages may be generated in UNIX systems that make use of MD5 command.

The digests are also encrypted using private keys that generate digital signatures that bring about a kind of verification that ensures that right users are accessing the protected information. This is why they are much more suitable for information/data security.
.Forouzan and Fegan p. 123)Various file sharing programs such as peer-to-peer, utilize message digests in warning users, particularly in the course of downloading indistinguishable files. This also assists in identifying the origin of the replica downloads. Additionally, SHA and CRC32 are amongst the numerous algorithms tasked with message digest (

Basic concepts of how SSL verifies server certificate

Upon connection to a secure website, the browser retrieves the SSL certificate of the site in addition to checking for security. In case it one of the checks fails, the browser will exhibit a warning to the users.
Characteristically, the SSL certificate has an individual’s name, organization name, city, address, and nation. Also, it contains the certificate’s expiry date as well as the details of the person tasked with issuing the certificate.Forouzan and Fegan p. 128). The acronym SSL stands for Secure Sockets Layer, which helps in creating encrypted connections between the web server as well as visitors’ webs browsers. This allows users’ private information to be transmitted without the problems of data tampering or message forging. In enabling the SSL on a website, one needs to get an SSL certificate, which identifies one and installs it on the server (

Explanation of how students could identify insecure connection

The students could identify the insecure connection because the SSL certificate could not successfully validate if the information on the browser were secure. When the students connected to the site, the SSL certificate retrieved the site’s SSL certificate as well as checked for security. When the checks failed on site, the browser displayed a warning to the students.


Preetham, V. V. (2002). Internet security and firewalls. Cincinnati, Ohio: Premier Press.

Ben-Natan, R. (2005). Implementing database security and auditing: A guide for DBAs, information security administrators and auditors. Burlington, MA: Elsevier Digital Press.

Forouzan, B. A., & Fegan, S. C. (2004). Data communications and networking. Dubuque, Iowa: McGraw-Hill Higher Education.

Holt, A., & Huang, C.-Y. (2010). 802.11 wireless networks: Security and analysis. London: Springer.