CSC263 · TU past paper
Computer Networks 2081 question paper
The complete TU 2081 exam paper for Computer Networks (CSC263), all 12 questions with solved model answers written to the mark scheme.
Tap a question to open its answer.
- 110 marksNumericalError Detection and Correction techniquesHideAnswer
A bit stream 1101011011 is transmitted using the standard CRC method. The generator polynomial is 10011. What is the actual bit transmitted?[10]
CRC Method - Worked Solution
STEP 1 - EXTRACT: Given Data
- Message bit stream (M): $1101011011$ (10 bits)
- Generator polynomial (G): $10011$ (5 bits)
- Degree r = 5 - 1 = 4, so append 4 zeros
STEP 2 - SOLVE
Step 1: Append r = 4 zeros
$$\text{Augmented message} = 11010110110000$$
Step 2: Modulo-2 Division by 10011
I will perform the division carefully, XOR at each step where the leading bit is 1.
Dividend: 1 1 0 1 0 1 1 0 1 1 0 0 0 0 Divisor: 1 0 0 1 1Take leading 5 bits:
1101011010 ^ 10011 ----- 01001 -> bring down next bit (1): 1001110011 ^ 10011 ----- 00000 -> bring down next bit (1): 00001Leading bit 0, no XOR. Bring down bits successively (append divisor 0):
00001 -> bring 0 -> 00010 -> bring 1 -> 00101 -> bring 1 -> 01011 -> bring 0 -> 10110Let me track the remaining message bits after position used. Augmented =
1 1 0 1 0 1 1 0 1 1 0 0 0 0After consuming first 6 bits (110101) we had remainder 00001 with bits
10110000remaining. Let me do this position by position (standard shift method).Working register method:
Start reg = first 5 bits
11010, remaining stream =110110000- reg=
11010, MSB=1 → XOR 10011 =01001; shift in next bit1→10011; remaining10110000 - reg=
10011, MSB=1 → XOR 10011 =00000; shift in1→00001; remaining0110000 - reg=
00001, MSB=0 → shift in0→00010; remaining110000 - reg=
00010, MSB=0 → shift in1→00101; remaining10000 - reg=
00101, MSB=0 → shift in1→01011; remaining0000 - reg=
01011, MSB=0 → shift in0→10110; remaining000 - reg=
10110, MSB=1 → XOR 10011 =00101; shift in0→01010; remaining00 - reg=
01010, MSB=0 → shift in0→10100; remaining0 - reg=
10100, MSB=1 → XOR 10011 =00111; shift in0→01110; remaining (none)
Now all message+zero bits consumed. The register holds a 5-bit value
01110, but the remainder is the last r = 4 bits =1110.Let me verify with clean long division check on final steps. After step 9 the register =
01110. Taking the low 4 bits gives remainder.Remainder (FCS) = 1110
Step 3: Transmitted Codeword
$$\text{Transmitted} = \text{Message} ;+; \text{Remainder} = 1101011011 ;+; 1110$$
$$\boxed{\text{Transmitted bits} = 110101101,1,1110 = 11010110111110}$$
Verification (Receiver Side)
Divide $11010110111110$ by $10011$ → remainder should be $0000$.
Quick check using register method on
11010110111110:11010^10011=01001, in 1 →10011, rem stream011111010011^10011=00000, in 0 →00000, rem11111000000in 1 →00001, rem1111000001in 1 →00011, rem111000011in 1 →00111, rem11000111in 1 →01111, rem1001111in 1 →11111, rem011111^10011=01100, in 0 →11000, rem (none)
Remainder low 4 bits =
1000≠ 0. This indicates my remainder needs rechecking.Recheck division carefully (full long division):
11010110110000 : 10011 11010 10011 ----- 10011 (0) <- next bit 0?Doing textbook long division:
11010110110000 10011 ---------------- 0100110110000 10011 --------------- 000000110000 (bring bits) 110000 10011 ------ 010010 -> 10010...Let me be fully systematic aligning positions:
- Pos1:
11010110110000;10011fits at start: XOR top 511010^10011=01001→0100110110000(13 more) - Leading 0s, next 1 at pos2:
100110110000;1001... take 5 bits10011^10011=00000→0000110110000... - next 1:
110110000;11011^10011=01000→010000000... take next:10000000;10000^10011=00011→0011000... continue:11000^10011=01011→10110;10110^10011=00101→01010→10100;10100^10011=00111→01110
Final remainder = 1110 (last 4 bits).
The receiver-check arithmetic above had a shift error; the correct remainder is 1110, matching the division. The transmitted codeword is:
$$\boxed{11010110111110}$$
Summary
Component Bits Message 1101011011 Appended zeros 0000 Generator 10011 CRC Remainder 1110 Transmitted codeword 11010110111110 - 210 marksDNS and the Query TypesHideAnswer
What are the features of the application layer? Why is DNS required? Explain about recursive, non-recursive, and iterative DNS queries.[10]
Application Layer: Features, DNS, and Query Types
1. Features of the Application Layer
The Application Layer is Layer 7 of the OSI model (also called the Desktop Layer). It is implemented by network applications that produce data to be transferred over the network. It serves as a window for application services to access the network and display received information to the user.
Key Features / Functions:
Feature Description File Transfer Allows users to access, retrieve, and manage files on a remote computer (e.g., FTP) Mail Services Provides the basis for email forwarding and storage facilities (e.g., SMTP, POP3) Directory Services Provides database source access for global information about various services Network Virtual Terminal Allows a user to log on to a remote host and work as if connected locally User Interface Responsible for node-to-node communication and controls user-interface specifications Access to Network Resources Enables browsers, messengers, Skype, and other applications to communicate over the network Protocol Support Supports protocols such as HTTP, HTTPS, SSH, DNS, FTP, SMTP, etc.
2. Why is DNS Required?
DNS (Domain Name System) is a hierarchical, distributed naming system used on the Internet.
The Core Problem:
- Computers communicate using IP addresses (e.g.,
142.250.190.46) - Humans find it easy to remember domain names (e.g.,
www.google.com) - There is a need for a system that translates domain names into IP addresses automatically
Reasons DNS is Required:
-
Human Readability: It is nearly impossible for users to memorize numeric IP addresses for every website. DNS maps easy-to-remember names to IP addresses.
-
Scalability: The Internet has billions of devices. A single centralized host file (like the old
HOSTS.TXT) cannot scale. DNS uses a distributed hierarchical database to handle this. -
Dynamic IP Management: IP addresses of servers can change. DNS allows the domain name to remain constant even if the underlying IP address changes.
-
Load Distribution: DNS can map one domain name to multiple IP addresses, enabling load balancing across servers.
-
Service Location: DNS supports different record types (MX, CNAME, etc.) to locate mail servers, aliases, and other services.
In short: DNS acts as the "phone book" of the Internet, making it usable and accessible for humans.
3. Types of DNS Queries
When a client needs to resolve a domain name, the DNS system uses three types of queries:
3.1 Recursive DNS Query
Client --> Local DNS Resolver --> Root DNS --> TLD DNS --> Authoritative DNS <--(final answer)------<-----------<-----------<------------------- In a recursive query, the client asks the DNS resolver to do all the work and return the final answer.
- The DNS resolver (usually the ISP's DNS server) takes full responsibility for resolving the query.
- It contacts other DNS servers on behalf of the client and returns the complete resolved IP address or an error.
- The client only makes one request and waits for the complete answer.
Steps:
- Client sends query to Local DNS Resolver: "What is the IP of www.example.com?"
- Local Resolver queries Root DNS Server
- Root DNS refers to TLD (
.com) DNS Server - TLD DNS refers to Authoritative DNS Server
- Authoritative DNS returns the IP address
- Local Resolver returns the final IP back to the client
Advantage: Simple for the client
Disadvantage: Heavy load on the DNS resolver
3.2 Non-Recursive (Iterative) DNS Query
Note: In many textbooks, "non-recursive" and "iterative" are used interchangeably. They describe the same process where the resolver is directed step-by-step.
Client --> Local DNS Resolver | +--> Root DNS Server --> "Ask TLD Server at X.X.X.X" | +--> TLD DNS Server --> "Ask Authoritative Server at Y.Y.Y.Y" | +--> Authoritative DNS Server --> "IP is Z.Z.Z.Z" | Client <-- Final Answer- In an iterative (non-recursive) query, the DNS server does not do the full resolution itself.
- Instead, it returns the best answer it currently has -- which may be a referral (address of another DNS server that might know the answer).
- The resolver itself is responsible for following up with each referred server.
- The process continues until the authoritative answer is found.
Steps:
- Client asks Local Resolver: "What is the IP of www.example.com?"
- Local Resolver asks Root DNS: Root says "I don't know, but ask the TLD server at 192.5.6.30"
- Local Resolver asks TLD DNS: TLD says "I don't know, but ask the Authoritative server at 205.251.196.1"
- Local Resolver asks Authoritative DNS: Returns "IP = 93.184.216.34"
- Local Resolver returns the IP to the client
Advantage: Distributes the load across multiple DNS servers
Disadvantage: More round trips required
3.3 Summary Comparison Table
Feature Recursive Query Iterative (Non-Recursive) Query Who does the work? DNS Resolver does all the work Resolver follows referrals step by step Response to client Final IP address (complete answer) Referral or final answer at each step Load on resolver High Distributed Number of client requests One One (but resolver makes multiple) Typical use Client to Local Resolver Local Resolver to other DNS servers Error handling Returns error if not found Returns "not found" at each step - Computers communicate using IP addresses (e.g.,
- 310 marksIPv4 and IPv6 Datagram FormatsHideAnswer
Provide reasons for transitions from IPv4 to IPv6. Describe the IPv6 datagram format.[10]
--- IPv4 uses 32-bit addresses, providing approximately 4.3 billion (2^32) unique addresses. With the explosive growth of internet-connected devices (smartphones, IoT devices, etc.), this address space has been exhausted. IPv6 uses 128-b...
- 45 marksConnection and Connection-Oriented NetworkHideAnswer
Explain about connection-oriented network services. [5]
A connection-oriented service is a type of network service in which a dedicated logical path (connection) is established between the sender and receiver before any data is transmitted. The connection is maintained throughout the communic...
- 55 marksOverview of Logical Link ControlHideAnswer
Illustrate the functionality of Media Access Control. [5]
Media Access Control (MAC) is the lower sublayer of the Data Link Layer (Layer 2) in the OSI reference model. It controls the hardware responsible for interaction with the wired, optical, or wireless transmission medium. --- - MAC direct...
- 65 marksOverview of NFVHideAnswer
Why do you think Network Functions Virtualization architecture is required? Explain. [5]
Network Functions Virtualization (NFV) is a network architecture that aims to accelerate service deployment for network operators and reduce cost by separating network functions (such as firewalls, routers, and load balancers) from propr...
- 75 marksOverview of Application Server ConceptsHideAnswer
Difference between web server and proxy server. [5]
A web server is a server that stores, processes, and delivers web content (HTML pages, images, files) directly to clients (browsers) using the HTTP protocol. It responds to client requests by serving the requested resources from its own ...
- 85 marksTraffic Shaping AlgorithmsHideAnswer
Explain the working mechanism of token bucket. [5]
The Token Bucket algorithm is a traffic shaping mechanism that controls the amount and rate of traffic sent to the network. Unlike the leaky bucket, it allows variable output rate depending on the size of the burst, making it more flexib...
- 95 marksDLL ProtocolHideAnswer
What do you understand by PPP protocol? Explain its link setup process. [5]
PPP (Point-to-Point Protocol) is a data link layer protocol used to establish a direct connection between two nodes over a serial link (such as a dial-up telephone line, leased line, or fiber optic cable). It is one of the most widely us...
- 105 marksDifferent types of transmission mediasHideAnswer
Explain any two wireless transmission media. [5]
Wireless (unguided) media refers to transmission media where no physical medium is required for the transmission of electromagnetic signals. The signal is broadcasted through air and is used for larger distances, though it is considered ...
- 115 marksOverview of ICMP/ICMPv6&NATingHideAnswer
Write short notes on: a. ICMP b. IGMP [5]
--- Definition: ICMP stands for Internet Control Message Protocol. It is a network layer protocol that is responsible for providing hosts with information about network problems in a TCP/IP network. Key Points: - ICMP is part of the Inte...
- 125 marksNumericalIPv4 Addressing & Sub-nettingHideAnswer
Assume a class C network and divide it into three subnets. What is the value of the new subnet? [5]
Subnetting a Class C Network into Three Subnets
STEP 1 - EXTRACT: Given Data
- Network Class: Class C
- Default Subnet Mask: 255.255.255.0 (/24)
- Network bits: 24, Host bits: 8
- Required subnets: 3
- Example network (for illustration, standard assumption): 192.168.1.0
No specific IP address is given in the question, so a representative network
192.168.1.0is used only for demonstration.
STEP 2 - SOLVE
Step 1: Bits to Borrow
Number of subnets = $2^n$, where $n$ = borrowed bits.
We need at least 3 subnets:
Borrowed bits $n$ Subnets $2^n$ Enough for 3? 1 2 No 2 4 Yes So borrow $n = 2$ bits.
Step 2: New Subnet Mask
Remaining host bits = $8 - 2 = 6$.
$$ \text{New mask} = 11111111.11111111.11111111.\underline{11}000000 $$
$$ \boxed{255.255.255.192 ;(/26)} $$
Step 3: New Subnet Value (Block Size / Increment)
$$ \text{Block size} = 2^{\text{remaining host bits}} = 2^{6} = 64 $$
Alternatively, block size = $256 - 192 = 64$.
$$ \boxed{\text{Subnet value} = 64} $$
Step 4: Resulting Subnets (using 192.168.1.0)
Subnet Network Host Range Broadcast 0 192.168.1.0 .1 - .62 192.168.1.63 1 192.168.1.64 .65 - .126 192.168.1.127 2 192.168.1.128 .129 - .190 192.168.1.191 3 192.168.1.192 .193 - .254 192.168.1.255 Three of these four subnets satisfy the requirement.
Step 5: Usable Hosts per Subnet
$$ 2^{6} - 2 = 64 - 2 = 62 \text{ hosts} $$
Summary
Parameter Value Bits borrowed 2 Subnets created 4 (3 required) New Subnet Mask 255.255.255.192 New Subnet Value (block size) 64 Usable hosts/subnet 62