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

Define virtual channel, Virtual channel is normally a link from one source...

Virtual channel is normally a link from one source to one destination, although multicast connections are also allowed. The other name for virtual channel is virtual circuit.

Mention and explain 16 bit, Mention and explain 16 bit, basic programmable ...

Mention and explain 16 bit, basic programmable registers in 8086 operated in real mode?

Determine the 802.11g ofdm, 802.11g OFDM a) Uses OFDM with same 2.4 GH...

802.11g OFDM a) Uses OFDM with same 2.4 GHz band b) Achieves a 54-Mbps data rate c) Works with same 802.11b equipment

Differentiate between fast fading and slow fading, Differentiate between Fa...

Differentiate between Fast fading and Slow fading Fast fading refers to changes in signal strength among a transmitter and receiver as the distance among the two changes by a s

Explain tree interconnection network, Tree interconnection network:   In tr...

Tree interconnection network:   In tree interconnection network, processors are organised in a complete binary tree pattern. Figure: Tree interconnection network

Describe how does arp response the request, ARP sent the request in broadca...

ARP sent the request in broadcast, response is unicast When a source sends ARP request the switch broadcast the ARP req. if it doesn't have the destination mac address in its ma

Network performance & characteristics, There are two kinds of characteristi...

There are two kinds of characteristics in case of network performance. Delay Throughput

Optimizing stp, Optimizing STP  Because there is a separate instance of ...

Optimizing STP  Because there is a separate instance of the spanning tree for every active VLAN, a separate root election is conducted for each instance. If the default switch p

Explain about data link layer sub layers, Data Link Layer Sub layers ·  L...

Data Link Layer Sub layers ·  Logical Link Control (LLC) - upper layer · Handles control information, logical addressing and data · MAC (Medium Access Control) - lower layer ·

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