Computer Networks (CS425) Instructor: Dr. Dheeraj Sanghi Prev | Next | Index
Distributed Applications We can use any of the following two approaches in designing a distributed application. Communication-Oriented Design: Begin with the communication protocol. Design a message format and syntax. Design the client and server components by specifying how each reacts to incoming messages and how each generates outgoing meassages. Application-Oriented Design: Begin with the application. Design a conventional application program to solve the problem. Build and test a working version of the conventional program into two or more pieces, and add communication protocols that allow each piece to execute on a separate computer.
Semantics of Applications Normal Application: A main program which may call procedures defined within the program (proc A in this case). On return from this procedure the program continues. This procedure (proc A) may itself call other procedures (proc B in this case). Refer to the figure below:
Distributed Application: A client program executing on a machine 1 may call a procedure (proc A) which is defined and run on another machine ( we say server for machine 1 is machine 2) upon return from the call the program on machine 1 continues. The server program on machine 2 may in turn act as a client and call procedures on another machine3 (now machine 3 is a server for machine 2). Refer to http://www.cse.iitk.ac.in/users/dheeraj/cs425/lec28.html
1/3
21/05/2015
CS425: Computer Networks : Lecture 28
the figure below:
Passing Arguments in Distributed Programs Problem: Incompatibility in argument storage For example, some machines may use 7 bit for storing characters while some others might use 8 bit, some machines may use Big-endian representation while others might use Small-endian representation. Possible Solutions One solution may be to find out the architecture of receiving end, convert the data to be sent to that architectue and then send the data. However, this will lead to following problems: 1. It is not easy to find out the architecture of a machine. 2. If I change the architecture of my machine then this information has to be conveyed to the client. Another solution is to have a standard format for networks. This may lead to inefficiency in the case when the two communicating machines have the same architecture beacuse in this case the conversion is unnecessary.
XDR (External Data Representation) XDR was the solution adopted by SUN RPC. RPC was mainly the outcome of the need for distributed filesystems(NFS). Buffer Paradigm http://www.cse.iitk.ac.in/users/dheeraj/cs425/lec28.html
2/3
21/05/2015
CS425: Computer Networks : Lecture 28
The program allocates a buffer large enough to hold the external representation of a message and adds items one at a time. The library routine invoked to allocate space for the buffer is xdr_mem_create . After allocating space we may append data to this buffer using various conversion library routines like xdr_int (xdr_int coverts an integer to it's external representaion and appends it to the buffer) to convert native objects to external representaion and then append to the buffer. After all the data to be passed has been converted and appended we send the buffer. ASN.1 First add the information related to the the data being sent to the buffer and then append the data to the buffer. For example, to send a character followed by an integer (if the sending machine uses one byte for char and two bytes for integers) we send the information as - one byte char, two byte integer ... The routines for encoding and decoding are the same, depending on the type of the buffer which may be (specified at the time fo allocating space for the buffer) XDR_ENCODE or XDR_DECODE encoding or decoding are performed respectively. For the routine xdr_int(xdrs, &i) If the allocation was done as xdr_mem_create(xdrs, buf, BUFSIZE, XDR_ENCODE) then the value obtained by converting i to its external representation would be appended to the buffer. If the allocation was done as xdr_mem_create(xdrs, buf, BUFSIZE, XDR_DECODE) then an integer will be extracted , decoded , and the value will be stored in the variable i. There are routines (like xdr_stdin_create) to write/read from sockets and file descriptors. back to top Prev| Next | Index ~P Má ÎB
There was a problem previewing this document. Retrying... Download. Connect more apps... Try one of the apps below to open or edit this item. CS425_ ...
... more pages. Retrying... Whoops! There was a problem previewing this document. Retrying... Download. Connect more apps... Try one of the apps below to open or edit this item. CS425_ Computer Networks _ Lecture 24.pdf. CS425_ Computer Networks _ Le
There was a problem previewing this document. Retrying... Download. Connect more apps... Try one of the apps below to open or edit this item. CS425_ ...
There was a problem previewing this document. Retrying... Download. Connect more apps... Try one of the apps below to open or edit this item. CS425_ ...
There was a problem previewing this document. Retrying... Download. Connect more apps... Try one of the apps below to open or edit this item. CS425_ ...
As we increase number of layers and their size the capacity increases: larger networks can represent more complex functions. ⢠We encountered this before: as we increase the dimension of the ... Lesson: use high number of neurons/layers and regular
AbstractâThe purpose of this paper is to show how computer networking is .... a variety of network hardware devices: switches, hubs, and routers; and they all.
Bluetooth) or thousands of kilometers (e.g. via the Internet). Over the past two decades ... Address or a Data-Link Control Address. When someone examines a ...
study aims to examine the effectiveness of alternative indicators based on wavelets, instead of some technical ..... In this paper, the energy, entropy and others of CJ(k), wavelet coefficients at level J, .... Max depth of initial individual program
forecasting by means of Financial Genetic Programming (FGP), a genetic pro- ... Address for correspondence: Jin Li, CERCIA, School of Computer Science, The ...
This is about twice the data generated in 1999, given an increasing ... the very same pre-processing tools and data have been used by all of them. We chose.
Abstract. In this paper, we present an approach for detecting and classifying attacks in computer networks by using neural networks. Specifically, a design of an intruder detection system is presented to protect the hypertext transfer protocol (HTTP)
... S and Geetha T V. Department of Computer Science and Engineering, .... concept than A. If the matching degree is unclassified then either concept A or B is.
tinct systems that are used within an enterprising organization. .... files and their networks of personal friends or associates, Meetup organizes local ..... ployed, and in a busy community any deleted pages will normally reappear if they are.
places the student at the center of the learning experience. Forouzan's Computer ... fun as well. The appealing visual layout combines with numerous figures and examples to provide multiple routes to ... Data Communications and Networking.
Mar 28, 2017 - As we learn more and more about statistical testing in networks and about random networks, we ... making not just two, but infinite ER networks and averaging them, so that when we make ..... Above, Ex. 2 is a good illustration.