Process management, Computer Networking

Assignment Help:

Bootstrapping all the processes and establishing correct lines of communication is, by itself, the toughest aspect of this assignment. Before writing any code you should think carefully about how to start all the process and get them connected to each other. You will have accomplished a signi?cant ?rst step once you can reliably start all 20 processes and have them establish connections among themselves properly. Inter-process communication shoulbe via sockets whose type you choose.

I recommend that you make two executables, named host and router. host should accept a command line argument of one letter: either A, B, C, or D. router should accept a command line of R1 or R2. Because there are lots of parameters (e.g., IP addresses, link addresses), have each executable read its parameters from a common ?le once the executable has determined its identity. You may ?nd the combination of socketpair(2) and forking to be useful for starting and organizing the many processes. Here is a working example of the use of the socketpair system call to get three processes (app, IP, and link) connected to each other in a stack con?guration. The code below is available with the assignment in WebCT as ?le example.c. You are welcome to use all, part, or none of this code in your assignment.

#include

#include

#include

#include

#include

#include
int sock_fd[4];

#define APP_SOCK 0

#define IP_APP_SOCK 1

#define IP_LINK_SOCK 2

#define LINK_IP_SOCK 3

#define BUF_SIZE 1024

char buf[BUF_SIZE];

Once all connections are made, I suggest writing code that will format an option less IP datagram and forward from application to application, without ICMP error cases, fragmentation, or any other unusual cases such as TTL expiration, etc. Once you have the basic data ?ow working then you can start to add code one feature at a time for TTL, checksums, fragmentation, and routing errors. You will need to have lots of print statements to trace execution, but with 20 processes, writing to the console may prove problematic. If it does, consider writing debug statements into a log ?le. Be sure to use unbuffered output statements so that there is no possibility of output statements appearing in the log in a different order than they were executed in your programs.


Related Discussions:- Process management

Failure reporting and analysis, 1. A systematic study of failures will help...

1. A systematic study of failures will help in identifying areas that may cause :   i.  Loss of adjacent parts/ equipment/ whole equipment. ii.  Loss of production and rev

Residential access - computer network, Residential Access Residential ...

Residential Access Residential  access is connecting home  end  systems ( typically a PC but increasingly a home network) into the network. One form  of residential  access  i

Compute the entropy of the source, A statistical encoding algorithm is bein...

A statistical encoding algorithm is being considered for the transmission of a large number of long text files over a public network. Part of the file content is as follows: DOD

What are the key functions of data link layer, What are the key functions o...

What are the key functions of data link layer? Data link layer transfers data in a structured and reliable manner so that the service given by the physical layer is utilized by

Connection oriented transport tcp - transport layer, Connection Oriented Tr...

Connection Oriented Transport TCP In addition  to providing  reliable communication transmission control protocols  effects errors  control flow  control  and resequencing of

Explain about nonboundary-level masking, Q. Explain about Nonboundary-Level...

Q. Explain about Nonboundary-Level Masking? Nonboundary-Level Masking Bytes in the IP address that correspond to 255 in the mask will be repeated in the subnet addres

Difference between the communication and transmission, Communication is the...

Communication is the process of sending and receiving data by means of a data cable that is associated externally. Transmission means the transmitting of data from the source to

Write down short note on frame-relay dlci, DLCI- Data Link Connection Iden...

DLCI- Data Link Connection Identifier. A frame-relay service provider usually assigns DLCI values that are used by frame-relay to distinguish among different virtual circuits on th

Routing table - network layer and routing , Routing Table Each  router ...

Routing Table Each  router now  uses the  shortest path tree to construct its routing table . each  router  uses the same algorithm and the same link state  database its own sh

Cnet sliding window protocol, implementing cnet sliding window protocol wit...

implementing cnet sliding window protocol with 6 nodes

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd