Assignment Name Of Assignment Page No. No. 1. Design a HTML page for taking sales order of various 3 items of some company. 2. Develop a simple Web based application. Use client-side 6 and server-side scripting 3 Write a simple shopping cart application in PHP. 4 Write a program for database connectivity using PHP and SQL 5 Write a program in C to implement an ECHO server, 8 using Socket programming with both TCP and ASSIGNMENTUDP protocols. NO.: l 6 Study of LAN and understand the design and 10 various components. 7 TITLE:Study Study any of protocol LAN analyzerand understand tothe learn design and and 13 usevarious its important components. features. 8 To learn and understand Linux Network configurations 16 DATE:and commands.

9. REMARK:Installation and configuration of Apache Server. 27 10. Create a DTD for a catalog of cars. 30 11. To learn and understand Windows 2003 server and its 34 associated domain operations, to configure RAS and DHCP, to add users and computers to a domain 12. Write an "Internet Update" program using Internet 39 Transfer Control 17 Annex B: Revision Record 51

Reviewed By: Approved By:

MR HOD

0 1 AIM: Study of LAN and understand the design and various component

OBJECTIVE: 1)Learn how to setup a LAN 2)Learn how to use LAN cards, UTP cables and connectors. 3)Test network by using PING command

THEORY: A local area network (LAN) is a group of computers and associated devices that share a common communications line or wireless link and typically share the resources of a single processor or server within a small geographic area (for example, within an office building). Usually, the server has applications and data storage that are shared in common by multiple computer users. A local area network may serve as few as two or three users (for example, in a home network) or as many as thousands of users (for example, in an FDDI network).

LAN Topologies: LAN topologies define the manner in which network devices are organized. Four common LAN topologies exist: bus, ring, star, and tree. These topologies are logical architectures, but the actual devices need not be physically organized in these configurations. Logical bus and ring topologies, for example, are commonly organized physically as a star. A bus topology is a linear LAN architecture in which transmissions from network stations propagate the length of the medium and are received by all other stations. Of the three most widely used LAN implementations, Ethernet/IEEE 802.3 networks—including 100BaseT—implement a bus topology, which is illustrated in Figure 1.1. Figure 1.1 Some Networks Implement a Local Bus Topology

A ring topology is a LAN architecture that consists of a series of devices connected to one another by unidirectional transmission links to form a single closed loop. Both Token Ring/IEEE 802.5 and FDDI networks implement a ring topology. Figure 1.2 depicts a logical ring topology. Figure 1.2 Some Networks Implement a Logical Ring Topology

2 A star topology is a LAN architecture in which the endpoints on a network are connected to a common central hub, or switch, by dedicated links. Logical bus and ring topologies are often implemented physically in a star topology, which is illustrated in Figure 1.3. A tree topology is a LAN architecture that is identical to the bus topology, except that branches with multiple nodes are possible in this case. Figure 1.3 illustrates a logical tree topology. Figure 1.3 A Logical Tree Topology Can Contain Multiple Nodes

LAN Devices: Devices commonly used in LANs include repeaters, hubs, LAN extenders, bridges, LAN switches, and routers.

CONCLUSION: Thus we studied LAN and how to set up LAN.

3 ASSIGNMENT NO.: 2

TITLE: Study any protocol analyzer software to learn and use its important features

DATE:

REMARK:

4 AIM: Study any protocol analyzer software to learn and use its important features.

OBJECTIVE: Examine TCP/IP and non-TCP/IP protocols and capture them using protocol analyzer software.

THEORY: Protocol analyzers capture conversations between two or more systems or devices. A protocol analyzer not only captures the traffic, it also decodes (interprets) the traffic. Decoding allows you to view the conversation in English, as opposed to binary language. A sophisticated protocol analyzer will also provide statistics and trend information on the captured traffic. Protocol analyzers provide information about the traffic flow on your LAN, from which you can view device-specific information. Unlike SNMP-based management consoles, protocol analyzers are device independent. A protocol analyzer is the only tool that shows you exactly what is happening, with respect to traffic flow on your LAN. Once a problem is isolated and recorded, there can be no denying which vendor, or which system is the cause.For example, if your TCP/IP sessions are "hanging", a protocol analyzer can show which system sent the last packet, and which system failed to respond. If you are experiencing slow screen updates, a protocol analyzer can display delta time stamps and show which system is waiting for packets, and which system is slow to respond. In an NT environment, a protocol analyzer can show runaway traffic (broadcast or multicast storms) and its origin, system errors and retries, and whether a station is sending, trying to send, or only seeming to communicate. You will get information that is otherwise unavailable, which results in more efficient troubleshooting and better LAN health. As with all other communications protocol, TCP/IP is composed of layers:

 IP - is responsible for moving packet of data from node to node. IP forwards each packet based on a four byte destination address (the IP number). The Internet authorities assign ranges of numbers to different organizations. The organizations assign groups of their numbers to departments. IP operates on gateway machines that move data from department to organization to region and then around the world.

 TCP - is responsible for verifying the correct delivery of data from client to server. Data can be lost in the intermediate network. TCP adds support to detect errors or lost data and to trigger retransmission until the data is correctly and completely received.

 Sockets - is a name given to the package of subroutines that provide access to TCP/IP on most systems.

CONCLUSION: Thus we studied protocol analyzer software and its features.

5 ASSIGNMENT NO.: 3

TITLE: Write a program in C to implement an ECHO server, using Socket programming with both TCP and UDP protocols.

DATE:

REMARK:

6 AIM: Write a program in C to implement an ECHO server, using Socket programming with both TCP and UDP protocols.

OBJECTIVE: Learn Socket programming. THEORY: Simple TCP/IP echo server Function This program demonstrates a simple TCP/IP server. It will accept a connection from a client application, receive one line of text, echo that line back to the client and close the connection. Programming Issues This program illustrates the classic process for a TCP/IP server program. Summarised, it is as follows:

 Create a socket with a call to socket()

 Create and initialize a socket address strucure with the IP address set to INADDR_ANY (the server will listen on any IP address) and the port to whichever one you wish to use.

 Call bind() to bind the socket address to the socket.

 Call listen() to indicate that this is a passive socket, that we want to accept incoming requests rather than make outgoing ones.

 Enter a loop in which we:

1. Call accept() to wait for an incoming connection 2. Service the request on our new connection

3. close() our connection, and continue the loop to wait for a new one Note that it's present form, the server enters an infinite loop and has no mechanism for closing itself. We have to use a command such as kill to terminate it.

CONCLUSION: Thus we studied socket programming in C.

7 ASSIGNMENT NO.: 1

TITLE: Design a HTML page for taking sales order of various items of some company.

DATE:

REMARK:

8 AIM: Design a HTML page for taking sales order of various items of some company. The page should display company name with its logo. The buyer will provide his/her name, address and desired quantity against each item shown along with unit price in a table and select desired payment mode by selecting appropriate option button, the form will also have two command buttons- OK and CANCEL for the user to select.

OBJECTIVE: 1) Learn basics of HTML 2) Learn basics of ASP.

THEORY: What is an HTML File?

 HTML stands for Hyper Text Markup Language

 An HTML file is a text file containing small markup tags

 The markup tags tell the Web browser how to display the page

 An HTML file must have an htm or file extension

 An HTML file can be created using a simple text editor

Do You Want to Try It? If you are running Windows, start Notepad. If you are on a Mac start SimpleText. In OSX start TextEdit and change the following preferences: Select (in the preferences window) "Plain text" instead of "Rich text" and then select "Ignore rich text commands in HTML files". This is very important because if you don't do this HTML codes probably won't work. Type in the following text: Title of page This is my first homepage. This text is bold Save the file as "mypage.htm". Start your Internet browser. Select "Open" (or "Open Page") in the File menu of your browser. A dialog box will appear. Select "Browse" (or "Choose File") and locate the HTML file you just created - "mypage.htm" - select it and click "Open". Now you should see an address in the dialog box, for example "C:\MyDocuments\mypage.htm". Click OK, and the browser will display the page.

9 Example Explained The first tag in your HTML document is . This tag tells your browser that this is the start of an HTML document. The last tag in your document is . This tag tells your browser that this is the end of the HTML document. The text between the tag and the tag is header information. Header information is not displayed in the browser window. The text between the tags is the title of your document. The title is displayed in your browser's caption. The text between the <body> tags is the text that will be displayed in your browser. The text between the <b> and </b> tags will be displayed in a bold font.</p><p>HTM or HTML Extension? When you save an HTML file, you can use either the .htm or the .html extension. We have used .htm in our examples. It might be a bad habit inherited from the past when some of the commonly used software only allowed three letter extensions. With newer software we think it will be perfectly safe to use .html.</p><p>Note on HTML Editors: You can easily edit HTML files using a WYSIWYG (what you see is what you get) editor like FrontPage, <a href="/tags/Claris/" rel="tag">Claris</a> Home Page, or Adobe PageMill instead of writing your markup tags in a plain text file. But if you want to be a skillful Web developer, we strongly recommend that you use a plain text editor to learn your primer HTML.</p><p>CONCLUSION: Thus we studied HTML tags and how to generate static web pages by using HTML.</p><p>10 ASSIGNMENT NO.: 6</p><p>TITLE: To learn and understand Linux Network configurations and commands.</p><p>DATE:</p><p>REMARK:</p><p>11 AIM: To learn and understand Linux Network configurations and commands.</p><p>OBJECTIVE: 1) How to configure Linux network. 2) Commands for configuring Linux network.</p><p>THEORY:</p><p>Introduction to Linux Networking One of the common questions I hear is "How do I network Linux to my Windows computer?". After counting slowly to ten and taking some deep breaths, I then proceed to ask my interlocuter just what they want to do, since the verb "to network" really doesn't mean much to me other than sales-people exchanging business cards at breakfast meetings. You see, "networking" covers a multitude of sins. The <a href="/tags/Microsoft_Windows/" rel="tag">Microsoft Windows</a> networking documentation tends to lump everything together and confuse the traditional TCP/IP 'socket' applications with the Microsoft Windows Networking applications, which use a NetBIOS interface. Consequently, people tend to speak of "networking" machines without being specific about whether they are referring to file-sharing, email, web services or other protocols. This is rather like dialling a phone number and expecting to have a meaningful conversation with the fax machine at the other end. In the Linux world, we prefer to be quite specific about the protocols and applications we use. Let's start by describing the different layers of the network protocol stack: </p><p>TCP/IP is a four-layer stack, unlike the ISO/OSI seven layer stack. The bottom layer - the physical layer - consists of the network card and associated device driver, most often Ethernet but also Token Ring, PPP (for dial-up connections) and many others. The next layer - the network layer - implements the Internet Protocol, which is the basis of all Internet communications, along with some related protocols such as ICMP. Layer three - the transport layer - consists of the TCP, UDP and similar protocols. No configuration is normally required here. Layer four - the application layer - consists of all the various application clients and servers, such as Samba (file & print server), Apache (web server) and many others, several of which 12 can easily justify an entire book on their basic configuration. The most important of these applications is the Domain Name Service, which many other applications depend upon. </p><p>CONCLUSION: Thus we studied how to configure Linux Network and the corresponding commands of Linux. </p><p>13 ASSIGNMENT NO.: 7</p><p>TITLE: Write a program for database connectivity using PHP and SQL.</p><p>DATE:</p><p>REMARK:</p><p>14 AIM: Write a program for database connectivity using PHP and SQL.</p><p>OBJECTIVE: 1) Learn advanced features PHP 2) How to connect database using PHP</p><p>THEORY: PHP is a scripting language that is embedded in HTML and interpreted by the server. It can be used to manage dynamic content, work with databases, handle session tracking, and even build entire e-commerce sites. It works well with a number of popular databases, including MySQL, PostgreSQL, Oracle, Sybase, Informix, and Microsoft SQL Server. Using PHP Okay, so now you're convinced that you want to actually try PHP out. We'll walk through a few simple examples so you can get your feet wet. Keep in mind that this is by no means an exhaustive look at PHP, just a quick starter. "Hello, World!" To get a feel for PHP, let's look at some very simple PHP scripts. Since "Hello, World!" is an obligatory example, we'll produce a friendly little "Hello, World!" script. As mentioned earlier, PHP is embedded in HTML. (You could have a file that contains almost no HTML, but usually it's a mixture.) That means that in amongst your normal HTML (or XHTML if you're cutting-edge) you'll have PHP statements like this: </p><p><body bgcolor="white"> <strong>How to say "Hello, World!"</strong> <?php echo "Hello, World!";?> <br> Simple, huh? </body></p><p>Simple, right? Just an "echo" statement, and that's it. Of course, that on its own isn't terribly useful. But it does teach us something about the language. (By the way, if you examine the HTML output, you'll notice that the PHP code is not present in the file sent from the server to your Web browser. All of the PHP present in the Web page is processed and stripped from the page; the only thing returned to the client from the Web server is pure HTML output.) Printing date and time in a Web page Now we'll do something a little more useful. This example will print out the date and time in a Web page. </p><p><body bgcolor="white"> <strong>An Example of PHP in Action</strong></p><p><?php echo "The Current Date and Time is:<br>"; echo date("g:i A l, F j Y.");?></p><p>// g = the hour, in 12-hour format // i = minutes // A = print AM or PM, depending... // l = print the day of the week // F = print the month // j = print the day of the month</p><p>15 // Y = print the year - all four digits </p><p>This code produces the output: The Current Date and Time is: 11:00 AM Friday, October 20 2000. Notice the blend of PHP and HTML here. I'll assume that you can already read HTML, so I'll only explain the PHP code. The PHP code begins with the tag <?php and ends with ?>. This tells the server that everything between <?php and ?> needs to be parsed for PHP instructions, and that if they're found, they need to be executed. Note that when your document is processed and served, it will be received by the client as plain HTML. Someone browsing your site will not see any of your PHP instructions, unless you've made an error and the server spits them out as-is instead of processing them first. </p><p>Regular HTML tags within the <?php and ?> will be processed normally. Note that the simple script above contains a <br> line-break tag. PHP wouldn't be very useful if you couldn't include HTML formatting as well. If you're going to be working with others, or if you're just plain forgetful like me, you'll want to comment your code as well. The // characters indicate a comment, which the server will not process or pass on to the client, unlike comments in HTML. If you include a standard <!-- comment --> within the <?php and ?> tags, it is likely to cause an error when parsed by the server. Obviously, you probably wouldn't comment your code quite so much as I have above for such a basic function, but it makes a good example. Finally, note that each PHP function is enclosed in parentheses and ends with a semicolon, which will seem familiar to fans of C or Perl. It's not uncommon to forget a closing parenthesis or semicolon and have a number of parse errors just because of a simple typo, so be sure to check them. It's helpful to edit PHP in an editor like <a href="/tags/Vim_(text_editor)/" rel="tag">Vim</a> or <a href="/tags/Emacs/" rel="tag">Emacs</a> that is capable of syntax highlighting. This allows you to catch your errors right away. The date function is just one of the built-in PHP functions. PHP also comes with functions for database connectivity, creating PDF, Shockwave, JPG, GIF, PNG, and other graphics files, sending e-mail, reading and writing files, parsing XML, session handling, talking directly to the browser via HTTP, and many other functions. </p><p>16 SQL :</p><p>SQL is a standard computer language for accessing and manipulating databases.</p><p>What is SQL?</p><p> SQL stands for Structured Query Language </p><p> SQL allows you to access a database </p><p> SQL is an ANSI standard computer language </p><p> SQL can execute queries against a database </p><p> SQL can retrieve data from a database </p><p> SQL can insert new records in a database </p><p> SQL can delete records from a database </p><p> SQL can update records in a database </p><p> SQL is easy to learn </p><p>SQL is a Standard - BUT.... SQL is an ANSI (American National Standards Institute) standard computer language for accessing and manipulating database systems. SQL statements are used to retrieve and update data in a database. SQL works with database programs like MS Access, DB2, Informix, MS SQL Server, Oracle, Sybase, etc. Unfortunately, there are many different versions of the SQL language, but to be in compliance with the ANSI standard, they must support the same major keywords in a similar manner (such as SELECT, UPDATE, DELETE, INSERT, WHERE, and others). Note: Most of the SQL database programs also have their own proprietary extensions in addition to the SQL standard!</p><p>SQL Queries With SQL, we can query a database and have a result set returned. A query like this: </p><p>SELECT LastName FROM Persons Gives a result set like this: LastName Hansen Svendson</p><p>17 Pettersen Note: Some database systems require a semicolon at the end of the SQL statement. We don't use the semicolon in our tutorials.</p><p>SQL Data Manipulation Language (DML) SQL (Structured Query Language) is a syntax for executing queries. But the SQL language also includes a syntax to update, insert, and delete records. These query and update commands together form the Data Manipulation Language (DML) part of SQL:</p><p>. SELECT - extracts data from a database table </p><p>. UPDATE - updates data in a database table </p><p>. DELETE - deletes data from a database table </p><p>. INSERT INTO - inserts new data into a database table </p><p>SQL Data Definition Language (DDL) The Data Definition Language (DDL) part of SQL permits database tables to be created or deleted. We can also define indexes (keys), specify links between tables, and impose constraints between database tables. The most important DDL statements in SQL are: </p><p>. CREATE TABLE - creates a new database table </p><p>. ALTER TABLE - alters (changes) a database table </p><p>. DROP TABLE - deletes a database table </p><p>. CREATE INDEX - creates an index (search key) </p><p>. DROP INDEX - deletes an index </p><p>CONCLUSION: Thus we studied database connectivity using PHP and SQL.</p><p>18 ASSIGNMENT NO.: 8</p><p>TITLE: Write a simple shopping cart application in PHP.</p><p>DATE:</p><p>REMARK:</p><p>19 AIM: Write a simple shopping cart application in PHP.</p><p>OBJECTIVE: 1) Learn how to use PHP 2) How to write web applications in PHP</p><p>THEORY: PHP is a scripting language that is embedded in HTML and interpreted by the server. It can be used to manage dynamic content, work with databases, handle session tracking, and even build entire e-commerce sites. It works well with a number of popular databases, including MySQL, PostgreSQL, Oracle, Sybase, Informix, and Microsoft SQL Server. Using PHP Okay, so now you're convinced that you want to actually try PHP out. We'll walk through a few simple examples so you can get your feet wet. Keep in mind that this is by no means an exhaustive look at PHP, just a quick starter. "Hello, World!" To get a feel for PHP, let's look at some very simple PHP scripts. Since "Hello, World!" is an obligatory example, we'll produce a friendly little "Hello, World!" script. As mentioned earlier, PHP is embedded in HTML. (You could have a file that contains almost no HTML, but usually it's a mixture.) That means that in amongst your normal HTML (or XHTML if you're cutting-edge) you'll have PHP statements like this: </p><p><body bgcolor="white"> <strong>How to say "Hello, World!"</strong> <?php echo "Hello, World!";?> <br> Simple, huh? </body></p><p>Simple, right? Just an "echo" statement, and that's it. Of course, that on its own isn't terribly useful. But it does teach us something about the language. (By the way, if you examine the HTML output, you'll notice that the PHP code is not present in the file sent from the server to your Web browser. All of the PHP present in the Web page is processed and stripped from the page; the only thing returned to the client from the Web server is pure HTML output.) Printing date and time in a Web page Now we'll do something a little more useful. This example will print out the date and time in a Web page. </p><p><body bgcolor="white"> <strong>An Example of PHP in Action</strong></p><p><?php echo "The Current Date and Time is:<br>"; echo date("g:i A l, F j Y.");?></p><p>// g = the hour, in 12-hour format // i = minutes // A = print AM or PM, depending... // l = print the day of the week // F = print the month</p><p>20 // j = print the day of the month // Y = print the year - all four digits </p><p>This code produces the output: The Current Date and Time is: 11:00 AM Friday, October 20 2000. Notice the blend of PHP and HTML here. I'll assume that you can already read HTML, so I'll only explain the PHP code. The PHP code begins with the tag <?php and ends with ?>. This tells the server that everything between <?php and ?> needs to be parsed for PHP instructions, and that if they're found, they need to be executed. Note that when your document is processed and served, it will be received by the client as plain HTML. Someone browsing your site will not see any of your PHP instructions, unless you've made an error and the server spits them out as-is instead of processing them first. </p><p>Regular HTML tags within the <?php and ?> will be processed normally. Note that the simple script above contains a <br> line-break tag. PHP wouldn't be very useful if you couldn't include HTML formatting as well. If you're going to be working with others, or if you're just plain forgetful like me, you'll want to comment your code as well. The // characters indicate a comment, which the server will not process or pass on to the client, unlike comments in HTML. If you include a standard <!-- comment --> within the <?php and ?> tags, it is likely to cause an error when parsed by the server. Obviously, you probably wouldn't comment your code quite so much as I have above for such a basic function, but it makes a good example. Finally, note that each PHP function is enclosed in parentheses and ends with a semicolon, which will seem familiar to fans of C or Perl. It's not uncommon to forget a closing parenthesis or semicolon and have a number of parse errors just because of a simple typo, so be sure to check them. It's helpful to edit PHP in an editor like Vim or Emacs that is capable of syntax highlighting. This allows you to catch your errors right away. The date function is just one of the built-in PHP functions. PHP also comes with functions for database connectivity, creating PDF, Shockwave, JPG, GIF, PNG, and other graphics files, sending e-mail, reading and writing files, parsing XML, session handling, talking directly to the browser via HTTP, and many other functions. </p><p>CONCLUSION: Thus we studied the basics of PHP.</p><p>21 ASSIGNMENT NO.: 9</p><p>TITLE: Installation and configuration of Apache Server.</p><p>DATE:</p><p>REMARK:</p><p>22 AIM: Installation and configuration of Apache Server.</p><p>OBJECTIVE: 1) Role of web server in web programming 2) How to configure and install Apache server</p><p>THEORY: What is Apache? Apache is a web server. In fact Apache is the worlds most popular and dominating web server with over 61% of all Internet web servers running Apache. A far second is Microsoft IIS, with a measly 19% of market share. This is a true testament to Apache's popularity. (Statistics courtesy of http://www.netcraft.com) Apache actually stands for "A patchy server". Since the original Apache was built from "patching" the original NCSA HTTP daemon in early 1995. Apache is not owned by a single commercial entity (like IIS is owned by Microsoft, iPlanet is owned by Sun/Netscape Alliance) but rather, is developed by a loose knit team of voluntary programmers scattered across the globe, collaborating through the Internet. Today, development of Apache is coordinated by a non-profit organization called the Apache Foundation. Apache has been written in C, using a dynamic, modular architecture (much like the kernel module architecture) in which pieces of functionality can be inserted into the web server by loading pieces of code known as modules. The pieces of code are built as shared libraries/objects on Unix systems. These pieces of code can also be statically compiled into Apache. This makes Apache highly extensible and configurable. But where can I get Apache if I don't have it? Apache is available for download on the Internet, free of charge and is bundled with all (??) Linux distributions. In fact, most (or maybe all) Linux distributions install and configure Apache for you by default. In other words when you install Linux, you are also installing Apache. So to obtain Apache you have two choices, either just get it off the Linux distribution or download the latest and greatest from www.apache.org Now that I have it, how do I install it? Apache distributions come in various forms. Each of these are described below: 1. Source distribution: This consists of the source code and no pre-built binaries. Once you download a source distribution, you must compile it and run the scripts bundled with the distribution to install it. This gives the user maximum flexibility to custom configure and install Apache. The user even has the liberty of extending or modifying the source code and installing other functional modules as well. The install procedure is built directly into the Makefile to build the source and simply issuing the command 'make install' will install Apache with it's defaults on your system. </p><p>23 2. Binary distribution: This consists of pre-built binaries for the various supported operating environments and platforms. These distributions come with installation scripts that allow you to install Apache on your system. 3. Packaged distributions: These distributions come in packaged formats like RPM (for RedHat and derivative systems). These distributions are installed via the standard installation management program called rpm. This allows the software installation of Apache to be tracked by the <a href="/tags/Operating_system/" rel="tag">Operating System</a>. At the end of this article there is a more detailed explanation of how to actually compile and install an Apache source distribution. Ok, now it's all installed, but how do I configure it? An Apache use a single configuration file called httpd.conf to manage its operating characteristics. In this file, you can configure Apache server characteristics like Server name, port on which to run the server, the threading and process spawn limits, the modules that it loads, the handlers for various types of files, virtual directories and hosts, mime-types, access control etc. etc. phew! For default installations you need not touch this file. Only when you need non-standard options for configuring Apache you will have to open this file. This file is well commented and pretty much self-explanatory, so editing it is a breeze. </p><p>CONCLUSION: Thus we studied how to install and configure Apache server.</p><p>24 ASSIGNMENT NO.: 10</p><p>TITLE: Develope a simple application using MAPI and TAPI.</p><p>DATE:</p><p>REMARK:</p><p>25 AIM: Develope a simple application using MAPI and TAPI.</p><p>OBJECTIVE: 1) Learn what is MAPI 2) Learn what is TAPI</p><p>THEORY: Introduction to MAPI MAPI defines a complete architecture for messaging applications. The architecture specifies several well-defined components. This allows system administrators to mix and match components to support a broad range of vendors, computing devices, and communication protocols. The MAPI architecture can be used for e-mail, scheduling, personal information managers, bulletin boards, and online services that run on mainframes, personal computers, and hand- held computing devices. The comprehensive architectural design allows MAPI to serve as the basis for a common information exchange. The MAPI architecture defines messaging applications, or clients, that interact with various message services through the MAPI programming interfaces, as shown in the following diagram. </p><p>To use the messaging services, a client must first establish a session. A session is a specific connection between the client and the MAPI interface based on information provided in a profile. The profile contains configuration and user preference information. For example, the profile contains the names of various supporting files, the time interval to check for new messages, and other settings, such as whether to remember the user's password or to prompt the user for the password during each logon. A successful logon is required to enable the client's use of the MAPI system. After establishing a MAPI session, the client can use the MAPI services. MAPI defines three primary services: address books, transports, and message stores. An address book service is similar to a telephone directory. The address book can be thought of as a persistent database that contains valid addressing information. An entry in the address </p><p>26 book is called an address entry and consists of a display name, an e-mail type, and an e-mail address. The display name refers to the name, such as a person's full name, that an application displays to its users. You can provide a display name, and the address book service looks up the display name and provides the corresponding messaging system address. A transport supports communication between different devices and different underlying messaging systems. A message store stores messages in a hierarchical structure that consists of one or more folders. A folder can be a personal folder that contains an individual's messages, or a public folder, similar to a bulletin board or online forum, that is accessible to many users. Each folder can contain messages or other folders. A message represents a communication that is sent from the sender to one or more recipients or that gets posted in a public folder. A message can include one or more attachments, which are attached to and sent with the message. An attachment can be the contents of a file, a link to a file, an OLE object, or another message. Several properties can be associated with a message: its subject, its importance, its delivery properties (such as the time it is sent and received), and whether to notify the sender when the message is delivered and read. Some message properties identify the message as part of a conversation. The conversation properties allow you to group related messages and identify the sequence of comments and replies in the thread of the conversation. The message can have one or more recipients. A recipient can be an individual or a distribution list. A distribution list can contain individuals and other distribution lists. For messages that are posted to public folders, the recipient can also be the public folder itself. Before sending a message, you should resolve each recipient; this means you should check each recipient against the address book to make sure its e-mail address is valid. </p><p>Introduction to TAPI The Telephony Application Programming Interface (TAPI) is one of the most significant API sets to be released by Microsoft. The telephony API is a single set of function calls that allows programmers to manage and manipulate any type of communications link between the PC and the telephone line(s). While telephony models for the PC have been around for several years, the telephony API establishes a uniform set of calls that can be applied to any type of hardware that supplies a TAPI-compliant service provider interface (SPI).</p><p>This Section provides a general overview of the Telephony API and how it fits into the WOSA (Windows Open Services Architecture) model. The two main devices defined within the TAPI model will be described:  Line devices; </p><p> Phone devices. You'll also learn about the typical physical configurations used in a TAPI model, which can be:  Phone-based; </p><p> PC-based; </p><p> Shared or unified line; </p><p>27  Multiline. You'll also learn about the different types of telephone service lines used to provide media transport services for TAPI applications, including:  POTS; </p><p> Digital T1; </p><p> ISDN service; </p><p> PBX service. </p><p>CONCLUSION: Thus we studied MAPI and TAPI.</p><p>ASSIGNMENT NO.: 11</p><p>TITLE: Create a DTD for a catalog of cars. </p><p>DATE:</p><p>REMARK:</p><p>28 29 AIM: Create a DTD for a catalog of cars, where each car has child elements and two or three child. elements have their own child elements. Each of these elements are required and has possible values Yes or No. Create an XML document with instances of the car element defined in the DTD.</p><p>OBJECTIVE: 1) Learn what is DTD 2) Learn basics of XML 3) Learn basics of XSLT</p><p>THEORY: Introduction to DTD A Document Type Definition defines the legal building blocks of an XML document. It defines the document structure with a list of legal elements. A DTD can be declared inline in your XML document, or as an external reference.</p><p>Internal DOCTYPE declaration If the DTD is included in your XML source file, it should be wrapped in a DOCTYPE definition with the following syntax:</p><p><!DOCTYPE root-element [element-declarations]></p><p><?xml version="1.0"?> <!DOCTYPE note [ <!ELEMENT note (to,from,heading,body)> <!ELEMENT to (#PCDATA)> <!ELEMENT from (#PCDATA)> <!ELEMENT heading (#PCDATA)> <!ELEMENT body (#PCDATA)> ]> <note> <to>Tove</to> <from>Jani</from> <heading>Reminder</heading> <body>Don't forget me this weekend</body> </note></p><p>The DTD above is interpreted like this:</p><p>!DOCTYPE note (in line 2) defines that this is a document of the type note. !ELEMENT note (in line 3) defines the note element as having four elements: "to,from,heading,body". !ELEMENT to (in line 4) defines the to element to be of the type "#PCDATA". !ELEMENT from (in line 5) defines the from element to be of the type "#PCDATA" and so on..... </p><p>External DOCTYPE declaration 30 If the DTD is external to your XML source file, it should be wrapped in a DOCTYPE definition with the following syntax:</p><p><!DOCTYPE root-element SYSTEM "filename"></p><p><?xml version="1.0"?> <!DOCTYPE note SYSTEM "note.dtd"> <note> <to>Tove</to> <from>Jani</from> <heading>Reminder</heading> <body>Don't forget me this weekend!</body> </note> And this is a copy of the file "note.dtd" containing the DTD:</p><p><!ELEMENT note (to,from,heading,body)> <!ELEMENT to (#PCDATA)> <!ELEMENT from (#PCDATA)> <!ELEMENT heading (#PCDATA)> <!ELEMENT body (#PCDATA)></p><p>Why use a DTD? With DTD, each of your XML files can carry a description of its own format with it. With a DTD, independent groups of people can agree to use a common DTD for interchanging data. Your application can use a standard DTD to verify that the data you receive from the outside world is valid. You can also use a DTD to verify your own data. </p><p>What is XML?</p><p> XML stands for EXtensible Markup Language </p><p> XML is a markup language much like HTML </p><p> XML was designed to describe data </p><p> XML tags are not predefined. You must define your own tags </p><p> XML uses a Document Type Definition (DTD) or an XML Schema to describe the data </p><p> XML with a DTD or XML Schema is designed to be self-descriptive </p><p> XML is a W3C Recommendation </p><p>31 XML is a W3C Recommendation The Extensible Markup Language (XML) became a W3C Recommendation 10. February 1998.</p><p>The main difference between XML and HTML XML was designed to carry data. XML is not a replacement for HTML. XML and HTML were designed with different goals: XML was designed to describe data and to focus on what data is. HTML was designed to display data and to focus on how data looks. HTML is about displaying information, while XML is about describing information.</p><p>XML does not DO anything XML was not designed to DO anything. Maybe it is a little hard to understand, but XML does not DO anything. XML was created to structure, store and to send information. The following example is a note to Tove from Jani, stored as XML:</p><p><note> <to>Tove</to> <from>Jani</from> <heading>Reminder</heading> <body>Don't forget me this weekend!</body> </note> The note has a header and a message body. It also has sender and receiver information. But still, this XML document does not DO anything. It is just pure information wrapped in XML tags. Someone must write a piece of software to send, receive or display it.</p><p>XML is free and extensible XML tags are not predefined. You must "invent" your own tags. The tags used to mark up HTML documents and the structure of HTML documents are predefined. The author of HTML documents can only use tags that are defined in the HTML standard (like <p>, <h1>, etc.). XML allows the author to define his own tags and his own document structure. The tags in the example above (like <to> and <from>) are not defined in any XML standard. These tags are "invented" by the author of the XML document.</p><p>32 What is XSLT?</p><p> XSLT stands for XSL Transformations </p><p> XSLT is the most important part of XSL </p><p> XSLT transforms an XML document into another XML document </p><p> XSLT uses XPath to navigate in XML documents </p><p> XSLT is a W3C Recommendation XSLT Uses XPath XSLT uses XPath to find information in an XML document. XPath is used to navigate through elements and attributes in XML documents.</p><p>How Does it Work? In the transformation process, XSLT uses XPath to define parts of the source document that should match one or more predefined templates. When a match is found, XSLT will transform the matching part of the source document into the result document.</p><p>CONCLUSION: Thus we studied XML,XSTML and DTD.</p><p>33 ASSIGNMENT NO.: 12</p><p>TITLE: To learn and understand Windows 2003 server and its associated domain operations, to configure RAS and DHCP, to add users and computers to a domain</p><p>DATE:</p><p>REMARK:</p><p>34 AIM: To learn and understand Windows 2003 server and its associated domain operations, to configure RAS and DHCP, to add users and computers to a domain</p><p>OBJECTIVE: To learn 1) Windows 2003 server and its domain operations 2) configure RAS and DHCP</p><p>THEORY: Windows Server 2003 Family Version Overview  Windows Server 2003 Web Server Edition is designed specifically for low-end and entry-level Web hosting environments, providing a specific platform for deploying Web services and applications. </p><p> Windows Server 2003 Standard Edition is designed with the day-to-day needs of the average enterprise in mind and is the progressive replacement for the Windows NT4 Server/Windows 2000 Server line of server operating systems. </p><p> Windows Server 2003 Enterprise Edition is designed specifically for the needs of larger customers, as their needs surpass the functional levels of Windows Server 2003 Standard Edition. Windows Server 2003 Enterprise Edition is the progressive replacement for the Windows NT4 Server Enterprise Edition/Windows 2000 Advanced Server line of server operating systems. </p><p> Windows Server 2003 Datacenter Edition is designed specifically for high-end hardware deployments for use on business-critical and mission-critical applications where the highest levels of scalability and availability are required. Windows Server 2003 Datacenter Edition is the progressive replacement for the Windows 2000 Datacenter Server line of operating systems. </p><p>The Rule/RSFA Authoring System (RAS) software is an application available to state agencies for the purpose of drafting administrative rules. This "Rules Processor" (instead of a word processor), allows users to create and save documents in the XML file format for their transmission and viewing over the Internet.</p><p>DHCP stands for Dynamic Host Configuration Protocol. What it does is dynamically assign network settings from a server. In other words, instead of having to configure the parameters related to how your computer communicates with a network, it happens automatically.</p><p>CONCLUSION: Thus we studied Windows 2003 server and its associated domain operations</p><p>35 ASSIGNMENT NO.: 13</p><p>TITLE: Implement a "Quote of the Day" Server using VB and WinSock Control. </p><p>DATE:</p><p>REMARK:</p><p>36 AIM: Implement a "Quote of the Day" Server using VB and WinSock Control. Also develop a client application where the user will select TCP or UDP Option, Provide the name of the Server and the Port Number. When the user clicks a button "Get the Quote", the client will receive the quote from the server.</p><p>OBJECTIVE: To learn Implementation of "Quote of the Day" Server.</p><p>THEORY:</p><p>Using the Winsock Control Winsock is above the TCP/IP protocol stack in the ISO/OSI model. TCP/IP is an industry standard communication protocol that defines methods for packaging data into packets for transmission between computing devices on a heterogeneous network. TCP/IP is the standard for data transmission over networks, including the Internet. TCP establishes a connection for data transmission and IP defines the method for sending data packets. The Microsoft Winsock control makes using the TCP/IP a breeze. Microsoft has wrapped up the Winsock and NETAPI API calls into a neat package that you can easily incorporate into your Visual Basic applications. Winsock Operating Modes The Transport layer (also known as the Host-to-Host Transport layer) is responsible for providing the Application layer with session and datagram communication services. The core protocols of the Transport layer are TCP and User Datagram Protocol (UDP). The Winsock control supports the following two operating modes: </p><p> sckTCPProtocol </p><p> sckUDPProtocol Winsock Properties Winsock enables you to create clients and servers using the same control. This dual functionality enables you to specify through property setting the type of application you will be building. The Winsock control uses a number of the same properties, whether you are creating a client or a server, thereby all but eliminating the learning curve needed to create applications. Some of the important properties of the control are as follows: BytesReceived Property This property returns the number of bytes currently in the receive buffer. This is a read-only property and is unavailable at design time. The value returned is a long integer. LocalHostName Property The LocalHostName property returns the name of the local host system. This is a read-only property and is unavailable at design time. The value returned is a string. LocalIP Property The LocalIP property returns the local host system IP address in the form of a string, such as 11.0.0.127. This property is read-only and is unavailable at design time. </p><p>37 LocalPort Property This property returns or sets the local port number. This can be both "read from" and "written to" and is available at both design time and runtime. The value returned is a long integer. Protocol Property Returns or sets the protocol, either TCP or UDP, used by the Winsock control. RemoteHost Property The RemoteHost property returns or sets the remote host. This can be both "read from" and "written to" and is available both in design time and runtime. The value returned is a string and can be specified either as an IP address or as a DNS name. RemotePort Property This property returns or sets the remote port number. State Property This returns the state of the control as expressed by an enumerated list. This is a read-only property and is unavailable at design time. Winsock Methods Some of the important methods of Winsock control are as follows: Accept Method It accepts the request for connection from the client system. For this method to be used, the control must be in the listening state. Close Method The Close method terminates a TCP connection from either the client or server applications. GetData Method GetData is the method that retrieves the current block of data from the buffer and then stores it in a variable of the variant type. PeekData Method The PeekData method operates in a fashion similar to the GetData method. However, it does not remove data from the input queue. Listen Method This is invoked on the server application to have the server application wait for a TCP request for connection from a client system. SendData Method This method dispatches data to the remote computer. It is used for both the client and server systems. Connect Method </p><p>38 The Connect method requests a connection to a remote computer. </p><p>CONCLUSION: Thus we studied how to use winsock control in VB.</p><p>39 ASSIGNMENT NO.: 14</p><p>TITLE: Write an "Internet Update" program using Internet Transfer Control. </p><p>DATE:</p><p>REMARK:</p><p>40 AIM: Write an "Internet Update" program using Internet Transfer Control provided in Visual Basic that will update the files on a local machine for which newer versions of these files are available on the server. Provide facility for the user to determine which files to be updated and which are not.</p><p>OBJECTIVE: To learn Internet transfer control.</p><p>THEORY: What is the Internet transfer control? When Microsoft released Visual Basic 5 they included an ActiveX control that made communication with Internet servers in applications a fairly easy task. The Internet transfer control. It is actually an OLE interface to an underlying dynamic link library (dll) named wininet.dll. This dll is a part of the Win32 Application Programming Interface (API). This makes the Internet transfer control an interface to a core part of Windows. Before the release of Visual Basic 5 and the introduction of this ActiveX control, Microsoft platform developers had to dig in deep in the complex world of TCP/IP, Windows sockets and C source code. Fortunately Microsoft gave us the Internet transfer control which made communication with Internet in our applications really easy. It supports both the http and the ftp protocol, but in this article we will only talk about http communication. Why Internet transfer control? Why did I choose the Internet Transfer Control to do this? First of all, it is really easy to use. In the most simple example there are only two lines of code which actually let you download the source code of almost any web page. You can also, with the use of some nice compiled Visual Basic code, retrieve binary data such as images or other documents that you might find in a web page. There are some commercial components that do this as well, but as you know, they are not free and sometimes there is not even any possibility to register any third part components on the server, then in that case, this is the solution. Possible uses : This sounds excellent, but what can I use this for? As mentioned, you can retrieve the source code of almost any web page. This gives you many possibilities right there. Download the code and then do some string handling and you have whatever you want. Another really interesting thing with the Internet Transfer Control is that you can retrieve binary data, if you use it in a Visual Basic component. Imagine that you search your downloaded source code for image tags and store those image links in an array. Then run a function that downloads all images as well. You have built an application that is capable of downloading an entire page with images and other documents with it. The ultimate application using this technology would be one that automatically contacts a remote system to check for updates and then downloads all the new content or what ever updates there might be. In such a solution it would be excellent to use the FTP capabilities of the Internet transfer control. Follow the reference links for more information on programming with the FTP protocol. 41 CONCLUSION: Thus we studied Internet transfer control.</p><p>42 ASSIGNMENT NO.: 15</p><p>TITLE: Develop a simple Web based application. Use client-side and server-side scripting</p><p>DATE:</p><p>REMARK:</p><p>43 AIM: Develop a simple Web based application. Use client-side and server-side scripting</p><p>OBJECTIVE: To learn 1) Client side scripting 2) Server side scripting</p><p>THEORY: Server-side scripts are best suited for delivering custom or dynamic content. But what if you want a Windows-like menu bar on your Web site, or an expandable tree? You could implement these interface elements in a server-side script, but there are serious disadvantages to doing it this way: Your interface will be sluggish and you will greatly increase the bandwidth used. A better solution is client-side scripting, which is designed to manipulate and display the content returned from the server. This method enables you to respond to user events by hiding or showing elements on the page, moving elements, or changing colors and fonts. Showing and hiding tables is the essence of how you create a pull-down menu on a Web page. Displaying a window in response to the mouse position allows a Web page to support ToolTips. The most widely used client-side scripting language is JavaScript, which was invented by Netscape Communications and introduced with Netscape Navigator 2.0. Microsoft's JScript was released in response to JavaScript's success, and is essentially a clone. However, the two are not completely compatible.</p><p>CONCLUSION: Thus we studied server side scripting and client side scripting.</p><p>44 VIIT, Pune Lab Manual</p><p>Title: Distribution List Section: Annex-A / ISO Clause: 4</p><p>Copy Copy Holder No. 01 M.R. 02 H.O.D. (Computer) 03 Practical Incharge 04 05 06 07</p><p>VIIT, Pune Lab Manual Rev No:0, Dt-2.1-.2006 Title: Revision Record Section: Annex-B / ISO Clause: 8.2.3</p><p>45 Sr. Section Old revision/ New Reason for Date revisi Revision on/ Date (1) All NA NA Original issue</p><p>Rev No:0, Dt-2.1-.2006 </p><p>46</p> </div> </article> </div> </div> </div> <script type="text/javascript" async crossorigin="anonymous" src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-8519364510543070"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.1/jquery.min.js" crossorigin="anonymous" referrerpolicy="no-referrer"></script> <script> var docId = '95cde6e8ab99240374563bc3f48ffadf'; var endPage = 1; var totalPage = 47; var pfLoading = false; window.addEventListener('scroll', function () { if (pfLoading) return; var $now = $('.article-imgview .pf').eq(endPage - 1); if (document.documentElement.scrollTop + $(window).height() > $now.offset().top) { pfLoading = true; endPage++; if (endPage > totalPage) return; var imgEle = new Image(); var imgsrc = "//data.docslib.org/img/95cde6e8ab99240374563bc3f48ffadf-" + endPage + (endPage > 3 ? ".jpg" : ".webp"); imgEle.src = imgsrc; var $imgLoad = $('<div class="pf" id="pf' + endPage + '"><img src="/loading.gif"></div>'); $('.article-imgview').append($imgLoad); imgEle.addEventListener('load', function () { $imgLoad.find('img').attr('src', imgsrc); pfLoading = false }); if (endPage < 7) { adcall('pf' + endPage); } } }, { passive: true }); </script> <script> var sc_project = 11552861; var sc_invisible = 1; var sc_security = "b956b151"; </script> <script src="https://www.statcounter.com/counter/counter.js" async></script> </html>