You are on page 1of 15

06CSL77: Networks Laboratory Manual

C/C++ Programs

NETWORKS LABORATORY
Sub Code : 06CSL77 Note : Student is required to solve one problem from PART-A and one problem from PART-B. Both the parts have equal marks.

PART A Simulation Exercises


The following experiments shall be conducted using either NS/OPNET or any other simulators. 1. Simulate a three nodes point-to-point network with duplex links between them. Set the queue size vary the bandwidth and find the number of packets dropped. 2. Simulate a four node point-to-point network, and connect the links as follows: n0-n2, n1-n2 and n2-n3. Apply TCP agent between n0-n3 and UDP n1-n3. Apply relevant applications over TCP and UDP agents changing the parameter and determine the number of packets by TCP/UDP. 3. Simulate the different types of Internet traffic such as FTP a TELNET over a network and analyze the throughput. 4. Simulate the transmission of ping messaged over a network topology consisting of 6 nodes and find the number of packets dropped due to congestion. 5. Simulate an Ethernet LAN using N-nodes(6-10), change error rate and data rate and compare the throughput. 6. Simulate an Ethernet LAN using N nodes and set multiple traffic nodes and determine collision across different nodes. 7. Simulate an Ethernet LAN using N nodes and set multiple traffic nodes and plot congestion window for different source/destination. 8. Simulate simple ESS and with transmitting nodes in wire-less LAN by simulation and determine the performance with respect to transmission of packets.

PART B
Implement the following in C/C++. 1. Write a program for error detecting code using CRC-CCITT (16-bits). 2. Write a program for frame sorting technique used in buffers. 3. Write a program for distance vector algorithm to find suitable path for transmission. 4. Using TCP/IP sockets, write a client-server program to make client sending the file name and the server to send back the contents of the requested file if present. 5. Implement the above program using as message queues or FIFOs as IPC channels. 6. Write a program for simple RSA algorithm to encrypt and decrypt the data. 7. Write a program for Hamming Code generation for error detection and correction. 8. Write a program for congestion control using Leaky bucket algorithm.

KJ
Author: Karthik Jain H J YDIT(CS) Page: 1/15

06CSL77: Networks Laboratory Manual

C/C++ Programs

1) Write a program for error detecting code using CRC-CCITT (16-bits). [The below program is not according to the syllabus] //crc.c #include<stdio.h> #include<string.h> char data[50], crc[50]; char gen[] = "10001000000100001"; //G(x): x^16+x^12+x^5+1 for CRC-CCITT 16bit int len, i, j; void calc_crc() { for (i = 0; i < strlen(gen); i++) crc[i] = data[i]; do { if (crc[0] == '1') { for (j = 1; j < strlen(gen); j++) crc[j] = ((crc[j] == gen[j]) ? '0' : '1'); } for (j = 0; j < strlen(gen) - 1; j++) crc[j] = crc[j + 1]; crc[j] = data[i++]; } while (i <= len + strlen(gen) - 1); } int main() { printf("Enter Bit string\t: "); scanf("%s", data); len = strlen(data); printf("Generating Polynomial\t: %s\n", gen); for (i = len; i < len + strlen(gen) - 1; i++) data[i] = '0'; printf("Modified Data is\t: %s\n", data); calc_crc(); printf("Checksum is\t\t: %s\n", crc); for (i = len; i < len + strlen(gen) - 1; i++) data[i] = crc[i - len]; printf("Final Codeword is\t: %s\n", data); printf("Test Error detection\n1(Yes) / 0(No)? : "); scanf("%d", &i); if (i == 1) { printf("Enter position to insert an error : "); scanf("%d", &i); data[i] = (data[i] == '0') ? '1' : '0'; printf("Errorneous data\t\t: %s\n", data); } calc_crc(); for (i = 0; (i < strlen(gen) - 1) && (crc[i] != '1'); i++); if (i < strlen(gen) - 1) printf("Error detected.\n"); else printf("No Error Detected.\n"); return 0; } Output: $ gcc crc.c $ ./a.out Enter Bit string: 10100010101110101010010010100010110 Generating Polynomial : 10001000000100001 Modified t[u] is: 101000101011101010100100101000101100000000000000000 Checksum is : 1000000100110101 Final Codeword is : 101000101011101010100100101000101101000000100110101 Test Error detection 1(Yes) / 0(No)? : 1 Enter position to insert an error : 24 Errorneous data : 101000101011101010100100001000101101000000100110101 Error detected.
Author: Karthik Jain H J YDIT(CS) Page: 2/15

KJ

06CSL77: Networks Laboratory Manual

C/C++ Programs

2) Write a program for frame sorting technique used in buffers. [The below program is not according to the syllabus] //Framesort.c #include<stdio.h> struct frame { //structure maintained to hold frames char fdata[20]; int fno; } fr[20]; int n; void sort() { int i, j; struct frame temp; for (i = 0; i < n; i++) for (j = 0; j < n - 1 - i; j++) if (fr[j].fno > fr[j + 1].fno) { temp = fr[j]; fr[j] = fr[j + 1]; fr[j + 1] = temp; } } int main() { int i; printf("Enter number of frames: "); scanf("%d", &n); for (i = 0; i < n; i++) { //Assign Frames with data and sequence number. printf("Enter Frame No and data: "); scanf("%d%s", &fr[i].fno, fr[i].fdata); } printf("Before sorting\n"); for (i = 0; i < n; i++) printf("%2d\t%s\n", fr[i].fno, fr[i].fdata); sort(); //Sorts the frames printf("After sorting\n"); for (i = 0; i < n; i++) printf("%2d\t%s\n", fr[i].fno, fr[i].fdata); return 0; } Output: $ gcc framesort.c $ ./a.out Enter number of frames: 5 Enter Frame No and data: 3 hi Enter Frame No and data: 1 hello Enter Frame No and data: 5 Yahoo Enter Frame No and data: 2 Cool Enter Frame No and data: 4 bye Before sorting 3 hi 1 hello 5 Yahoo 2 Cool 4 bye After sorting 1 hello 2 Cool 3 hi 4 bye 5 Yahoo

KJ
Author: Karthik Jain H J YDIT(CS) Page: 3/15

06CSL77: Networks Laboratory Manual

C/C++ Programs

3) Write a program for distance vector algorithm to find suitable path for transmission. [The below program is not according to the syllabus] //dv.c #include<stdio.h> int n, e, s[20][20], graph[20][20]; void initialize() { int i, j; for (i = 1; i <= 20; i++) for (j = 1; j <= 20 && (s[i][j] = graph[i][j] = 0); j++); } void getgraph() { int i, strt, end; printf("Enter no. of routers & edges in the graph: "); scanf("%d%d", &n, &e); while (e-- > 0) { printf("Enter start router -> end router : "); scanf("%d%d", &strt, &end); graph[strt][end] = graph[end][strt] = 1; } } void gettable(int src) { int i, j; printf("Enter information for Source router %d.\n", src); for (i = 1; i <= n; i++) if (graph[src][i] == 1) { printf("Enter distance from source router %d to %d :", src, i); scanf("%d", &s[src][i]); } printf("Enter the contents of Echo packet of Adacentj routers of %d\n",src); for (i = 1; i <= n; i++) if (graph[src][i] == 1) { printf("Enter the contents of Echo packet of router %d.\n", i); for (j = 1; j <= n; j++) { if (i == j) continue; printf("Enter distance from router %d to %d :", i, j); scanf("%d", &s[i][j]); } } } void process(int src, int dest) { int min = 999, i, delay, via; for (i = 1; i <= n; i++) if (graph[src][i] == 1) { delay = s[src][i] + s[i][dest]; if (delay < min) { min = delay; via = i; } } printf("Suitable path from router %d to %d is through router %d with delay %d units\n", src, dest, via, min); } int main() { int src, dest; initialize(); getgraph();

KJ
Author: Karthik Jain H J YDIT(CS) Page: 4/15

06CSL77: Networks Laboratory Manual

C/C++ Programs

printf("Enter the Source & Destination router\n"); scanf("%d%d", &src, &dest); gettable(src); process(src, dest); return 0; } Output: $ gcc dv.c $ ./a.out Enter no. of routers & edges in the graph: 5 12 Enter start router --> end router : 1 2 Enter start router --> end router : 2 3 Enter start router --> end router : 3 4 Enter start router --> end router : 4 1 Enter start router --> end router : 1 5 Enter start router --> end router : 5 3 Enter start router --> end router : 3 5 Enter start router --> end router : 5 1 Enter start router --> end router : 1 4 Enter start router --> end router : 4 3 Enter start router --> end router : 3 2 Enter start router --> end router : 2 1 Enter the Source & Destination router 1 3 Enter information for Source router 1. Enter distance from source router 1 to 2 :3 Enter distance from source router 1 to 4 :3 Enter distance from source router 1 to 5 :7 Enter the contents of Echo packet of Adjacent routers of 1 Enter the contents of Echo packet of router 2. Enter distance from router 2 to 1 :8 Enter distance from router 2 to 3 :4 Enter distance from router 2 to 4 :999 Enter distance from router 2 to 5 :999 Enter the contents of Echo packet of router 4. Enter distance from router 4 to 1 :5 Enter distance from router 4 to 2 :999 Enter distance from router 4 to 3 :3 Enter distance from router 4 to 5 :999 Enter the contents of Echo packet of router 5. Enter distance from router 5 to 1 :4 Enter distance from router 5 to 2 :999 Enter distance from router 5 to 3 :1 Enter distance from router 5 to 4 :999 Suitable path from router 1 to 3 is through router 4 with delay 6 units

1 5 3 2 4

8 7 5

6 4
KJ
Page: 5/15

3 1 3 3

Author: Karthik Jain H J YDIT(CS)

06CSL77: Networks Laboratory Manual

C/C++ Programs

4) Using TCP/IP sockets, write a client-server program to make client sending the file name and the server to send back the contents of the requested file if present. //4-server.c #include<sys/types.h> #include<sys/socket.h> #include<netinet/in.h> #include<sys/stat.h> #include<unistd.h> #include<stdlib.h> #include<stdio.h> #include<fcntl.h> #define BUFSIZE 1024 #define SERVER_PORT 15000 int main() { int count, create_socket, new_socket, addrlen, fd; char *buffer = malloc(BUFSIZE); char fname[256]; struct sockaddr_in address; if ((create_socket = socket(AF_INET, SOCK_STREAM, 0)) > 0) printf("[SERVER] The socket was created\n"); else perror("[SERVER] Socket creation Failed"), exit(1); address.sin_family = AF_INET; address.sin_addr.s_addr = INADDR_ANY; address.sin_port = htons(SERVER_PORT); if (bind(create_socket, (struct sockaddr *) &address, sizeof (address))==0) printf("[SERVER] Binding Socket\n"); else perror("[SERVER] Socket Binding Failed"), exit(1); listen(create_socket, 5); addrlen = sizeof (struct sockaddr_in); new_socket = accept(create_socket, (struct sockaddr *) &address, &addrlen); if (new_socket > 0) printf("[SERVER] The Client %s is Connected...\n", inet_ntoa(address.sin_addr)); else perror("[SERVER] Client not connected"), exit(1); recv(new_socket, fname, 255, 0); printf("[SERVER] A request for filename %s Received..\n", fname); if ((fd = open(fname, O_RDONLY)) < 0) send(new_socket, "[SERVER] File Open Failed.\n", 27, 0); //27 is the length of string "[SERVER] File Open Failed.\n" while ((count = read(fd, buffer, BUFSIZE)) > 0) send(new_socket, buffer, count, 0); printf("[SERVER] Request Completed\n"); close(fd); close(new_socket); return close(create_socket); } //4-client.c #include<sys/socket.h> #include<sys/types.h> #include<netinet/in.h> #include<unistd.h> #include<stdlib.h> #include<stdio.h>
Author: Karthik Jain H J YDIT(CS) Page: 6/15

KJ

06CSL77: Networks Laboratory Manual

C/C++ Programs

#define BUFSIZE 1024 #define SERV_HOST_ADDR "127.0.0.1" #define SERVER_PORT 15000 int main() { int create_socket, count; char *buffer = malloc(BUFSIZE); char fname[256]; struct sockaddr_in address; if ((create_socket = socket(AF_INET, SOCK_STREAM, 0)) > 0) printf("[CLIENT] The Socket was created\n"); else perror("[CLIENT] Socket creation Failed"), exit(1); address.sin_family = AF_INET; address.sin_port = htons(SERVER_PORT); inet_pton(AF_INET, SERV_HOST_ADDR, &address.sin_addr); if (connect(create_socket,(struct sockaddr *)&address,sizeof (address))==0) printf("[CLIENT] The connection was accepted with the server %s\n", SERV_HOST_ADDR); else perror("[CLIENT] Binding creation Failed"), exit(1); printf("[CLIENT] Enter The Filename to Request : "); scanf("%s", fname); send(create_socket, fname, sizeof (fname), 0); printf("[CLIENT] Request Accepted... Receiving File...\n"); printf("The contents of file are...\n\n"); while ((count = recv(create_socket, buffer, BUFSIZE, 0)) > 0) write(1, buffer, count); return close(create_socket); }

Output:[SERVER] $ gcc -o server 4-server.c $ ./server [SERVER] The socket was created [SERVER] Binding Socket [SERVER] The Client 127.0.0.1 is Connected... [SERVER] A request for filename msg.txt Received.. [SERVER] Request Completed $ Output:[CLIENT] $ gcc -o client 4-client.c $ ./client [CLIENT] The Socket was created [CLIENT] The connection was accepted with the server 127.0.0.1 [CLIENT] Enter The Filename to Request : msg.txt [CLIENT] Request Accepted... Receiving File... [CLIENT] The contents of file are... The contents of file are... Hi this is sample FILE :) $

KJ
Author: Karthik Jain H J YDIT(CS) Page: 7/15

06CSL77: Networks Laboratory Manual

C/C++ Programs

5) Implement the above program using as message queues or FIFOs as IPC channels. //5-server.c #include<stdio.h> #include<unistd.h> #include<sys/stat.h> #include<fcntl.h> //#include<string.h> #define FIFO1 "fifo1" #define FIFO2 "fifo2" #define PERM 0666 int main() { int readfd, writefd, fd; ssize_t n; char buff[512], fname[256]; if (mkfifo(FIFO1, S_IFIFO | PERM) < 0) perror("FIFO1"); if (mkfifo(FIFO2, S_IFIFO | PERM) < 0) perror("FIFO2"); printf("[SERVER] Waiting for connection Request..\n"); readfd = open(FIFO1, O_RDONLY, 0); writefd = open(FIFO2, O_WRONLY, 0); printf("[SERVER] Connection Established..\n"); read(readfd, fname, 255); printf("[SERVER] Client has requested file %s\n", fname); if ((fd = open(fname, O_RDWR)) < 0) write(writefd, "[SERVER] File does not exist.\n", 30); //30 is the length of string "[SERVER] File does not exist.\n" else while ((n = read(fd, buff, 512)) > 0) write(writefd, buff, n);

printf("[SERVER] Requested Complete.\n"); close(fd); close(readfd); close(writefd); unlink(FIFO1); unlink(FIFO2);

KJ
Author: Karthik Jain H J YDIT(CS) Page: 8/15

06CSL77: Networks Laboratory Manual

C/C++ Programs

//5-client.c #include<stdio.h> #include<unistd.h> #include<sys/stat.h> #include<fcntl.h> #include<string.h> #define FIFO1 "fifo1" #define FIFO2 "fifo2" #define PERMS 0666 int main() { ssize_t n; char buff[512], fname[256]; int readfd, writefd; printf("[CLIENT] Trying to Connect to Server..\n"); writefd = open(FIFO1, O_WRONLY, 0); readfd = open(FIFO2, O_RDONLY, 0); printf("[CLIENT] Connected..\n"); printf("[CLIENT] Enter the filename to request from server: "); scanf("%s", fname); write(writefd, fname, strlen(fname)); printf("[CLIENT] Waiting for Server to reply..\n"); while ((n = read(readfd, buff, 512)) > 0) write(1, buff, n); close(readfd); close(writefd); return 0; }

Output: [SERVER] $ gcc -o s 5-server.c $ ./s [SERVER] Waiting for connection Request.. [SERVER] Connection Established.. [SERVER] Client has requested file msg.txt [SERVER] Requested Complete. $ Output: [CLIENT] $ gcc -o c 5-client.c $ ./c [CLIENT] Trying to Connect to Server.. [CLIENT] Connected.. [CLIENT] Enter the filename to request from server: msg.txt [CLIENT] Waiting for Server to reply.. The contents of file are... Hi this is sample FILE :) $

KJ
Author: Karthik Jain H J YDIT(CS) Page: 9/15

06CSL77: Networks Laboratory Manual

C/C++ Programs

6) Write a program for simple RSA algorithm to encrypt and decrypt the data. //rsa.c #include<stdio.h> typedef unsigned int uint; uint gcd(uint x, uint y) { return y == 0 ? x : gcd(y, x % y); } // [or use the following function] /* uint gcd(uint m, uint n) { while (n != 0) { uint r = m % n; m = n; n = r; } return m; } */ uint prime(uint no) { uint i; for (i = 2; i <= no / 2; i++) if (no % i == 0) return 1; return 0; } uint multi(uint txt, uint ed, uint n) { uint i, rem = 1; for (i = 1; i <= ed; i++) rem = (rem * txt) % n; return rem; } int main() { char msg[256]; uint pt[256], ct[256], n, d, e, p, q, z, i, len; do { printf("Enter 2 large prime numbers p & q:"); scanf("%d %d", &p, &q); //Get 2 large Prime numbers } while (prime(p) || prime(q)); //check for prime n = p*q; z = (p - 1)*(q 1); do { printf("Enter prime value of e relative to %d(z):", z); scanf("%d", &e); //Get Encryption (Public) key } while (gcd(e, z) != 1 || e > n); for (d = 2; d < z; d++) //Find Decryption (Private) key if ((e * d) % z == 1) break; printf("Enter the Message.\n"); //get message from keybrd. len = read(1, msg, 100) - 1; for (i = 0; i < len; i++) //store it in plain text array pt[i] = msg[i];
Author: Karthik Jain H J YDIT(CS) Page: 10/15

KJ

06CSL77: Networks Laboratory Manual

C/C++ Programs

printf("Cipher Text="); for (i = 0; i < len; i++) { ct[i] = multi(pt[i], e, printf("%d ", ct[i]); } printf("\nPlain Text="); for (i = 0; i < len; i++) { pt[i] = multi(ct[i], d, printf("%c", pt[i]); } printf("\n"); }

//convert plain to cipher text n);

//convert cipher to plain text n);

Output: $ gcc rsa.c $ ./a.out Enter 2 large prime numbers p & q:23 11 Enter prime value of e relative to 220(z):113 Enter the Message computer networks Cipher Text=44 166 175 19 123 139 85 229 131 220 85 139 179 166 229 17 92 Plain Text=computer networks

KJ
Author: Karthik Jain H J YDIT(CS) Page: 11/15

06CSL77: Networks Laboratory Manual

C/C++ Programs

7) Write a correction.

program

for

Hamming

Code

generation

for

error

detection

and

//hamming.c #include<stdio.h> char data[4]; int encoded[7], edata[7], syn[3], i = 0; int hmatrix[3][7] = {1, 0, 0, 0, 1, 1, 1, 0, 1, 0, 1, 0, 1, 1, 0, 0, 1, 1, 1, 0, 1}; int gmatrix[4][7] = {0, 1, 1, 1, 0, 0, 0, 1, 0, 1, 0, 1, 0, 0, 1, 1, 0, 0, 0, 1, 0, 1, 1, 1, 0, 0, 0, 1}; int main() { int i, j; printf("Enter 4 bit data: "); scanf("%s", data); printf("Encoded Data: "); for (i = 0; i < 7; i++) { for (j = 0; j < 4; j++) encoded[i] += ((data[j])*(gmatrix[j][i])); encoded[i] = encoded[i] % 2; printf("%d ", encoded[i]); } printf("\nEnter Encoded bits as received : "); for (i = 0; i < 7; i++) scanf("%d", &edata[i]); for (i = 0; i < 3; i++) { //Generating Syndrome matrix for (j = 0; j < 7; j++) syn[i] += (hmatrix[i][j] * edata[j]); syn[i] = syn[i] % 2; } for (i = 0; i < 7; i++) //finding Error Bit if (syn[0] == hmatrix[0][i] && syn[1] == hmatrix[1][i] && syn[2] == hmatrix[2][i]) break; if (i == 7) printf("Data is error free!!\n"); else { printf("Error in data at bit position: %d\n", i + 1); edata[i] = !edata[i]; //Complementing the bit value printf("The Correct data Should be : "); for (i = 0; i < 7; i++) printf("%d ", edata[i]); printf("\n"); } return 0; } Output: $ gcc hamming.c $ ./a.out [ENCODING] Enter 4 bit data: Encoded Data: 0 1 0 1 0 1 1 [DECODING]Enter Encoded bits Error received at bit number The Correct data Should be :
Author: Karthik Jain H J YDIT(CS)

1011 as received : 0 1 0 1 0 1 0 7 of the data 0 1 0 1 0 1 1

KJ
Page: 12/15

06CSL77: Networks Laboratory Manual

C/C++ Programs

8) Write a program for congestion control using Leaky bucket algorithm. //LeakyBucket.c #include <stdio.h> //IF U want the count of time elapsed remove the comments :) //int time=0; void bktInput(int a, int b, int size) { if (a > size) printf("\tBucket overflow.\n"); else { sleep(1); //Generate equal time delay // time++; while (a > b) { // printf("Time: %dseconds\n",time); printf("\t%d bytes outputted\n", b); a -= b; sleep(1); //Generate equal time delay // time++; } // printf("Time: %dseconds\n",time); if (a > 0) printf("\tLast %d bytes sent\n", a); printf("\tBucket output successful.\n"); } } int main() { int op, pktSize, i, bktsize, n, delay; printf("bucket Size : "); scanf("%d", &bktsize); printf("Output Rate : "); scanf("%d", &op); printf("No of packets : "); scanf("%d", &n); for (i = 0; i < n; i++) { delay = (rand() % 10); //Generate random rate of packet sleep(delay); //sleep(No_Of_Seconds); // time+=dealy; pktSize = rand() % 1000; // printf("Time: %dseconds\n",time); printf("Packet no %d\tPacket size = %d\n", i, pktSize); bktInput(pktSize, op, bktsize); } return 0; } Output: $ gcc LeakyBucket.c $ ./a.out bucket Size : 512 Output Rate : 128 No of packets : 3 Packet no 0 Packet size = 886 Bucket overflow . Packet no 1 Packet size = 103 Last 103 bytes sent Bucket output successful. Packet no 2 Packet size = 207 128 bytes outputted Last 79 bytes sent Bucket output successful.
Author: Karthik Jain H J YDIT(CS) Page: 13/15

KJ

06CSL77: Networks Laboratory Manual

C/C++ Programs

Viva Questions.
1. Describe bind(), listen(), accept(),connect(), send() and recv(). 2. Differentiate between Connectionless & connection oriented connection. 3. Differentiate between flow control and congestion control. 4. Differentiate between Leaky bucket and Token bucket. 5. Differentiate between logical and physical address. 6. Differentiate between Point-to-Point Connection and End-to-End connections. 7. Differentiate between Prims and Kruskals algorithm. 8. Differentiate between route, bridge, switch and hub. 9. Differentiate between Simulation and Emulation. 10. Differentiate between TCP and UDP. 11. Differentiate between TCP/IP Layers and OSI Layers 12. Explain mkfifo(), open(), close() with parameters. 13. How do you classify congestion control algorithms? 14. How do you classify cryptographic algorithms? 15. How do you classify routing algorithms? Give examples for each. 16. How do you generate busty traffic? 17. How do you generate multiple traffics across different sender receiver pairs? 18. How do you implement Leaky bucket? 19. How do you overcome count to infinity problem? 20. How do you setup Ethernet LAN? 21. How routers update distances to each of its neighbor? 22. Name few other Network simulators 23. What are advantages of simulation? 24. What are dispatcher, coordinator and nctunsclient? 25. What are drawbacks in distance vector algorithm? 26. What are ephemerical port number and well known port numbers? 27. What are functions of different layers? 28. What are key, ciphertext and plaintext? 29. What are protocols running in different layers? 30. What are Routing algorithms? 31. What are system calls? Mention few of them. 32. What are the other error detection algorithms? 33. What are the parameters of socket()? 34. What is a socket? 35. What is an IP address? 36. What is BER? 37. What is BSS? 38. What is collision? 39. What is cryptography? 40. What is difference between CRC and Hamming code? 41. What is encapsulation? 42. What is FTP? 43. What is generator matrix? 44. What is ICMP? What are uses of ICMP? Name few. 45. What is incoming throughput and outgoing throughput? 46. What is IPC? Name three techniques.
Author: Karthik Jain H J YDIT(CS) Page: 14/15

KJ

06CSL77: Networks Laboratory Manual

C/C++ Programs

47. What is MAC address? 48. What is meant by bridge? 49. What is meant by congestion window? 50. What is meant by file descriptor? 51. What is meant by Gateway? 52. What is meant by hub? 53. What is meant by mobile host? 54. What is meant by NCTUns? 55. What is meant by port? 56. What is meant by router? 57. What is meant by subnet? 58. What is meant by switch? 59. What is meant by syndrome? 60. What is meant by traffic shaping? 61. What is MTU? 62. What is odd parity and even parity? 63. What is ping and telnet? 64. What is private key? 65. What is Protocol Stack? 66. What is public key? 67. What is simulation? 68. What is spanning tree? 69. What is the polynomial used in CRC-CCITT? 70. What is the use of adding header and trailer to frames? 71. Where Pirms algorithm does finds its use in Networks? 72. Which address gets affected if a system moves from one place to another place? 73. Which layer implements security for data? 74. Which layer imposes MTU? 75. Why fragmentation requires? 76. Why frame sorting is required? 77. Why Hamming code is called 7,4 code? 78. Why header is required? 79. Why IP address is required when we have MAC address?

KJ
Author: Karthik Jain H J YDIT(CS) Page: 15/15

You might also like