Академический Документы
Профессиональный Документы
Культура Документы
the Internet. Internet Standards are created and published by the Internet Engineering Task
Force (IETF).
Three organizations under the Internet Society are responsible for the actual work of standards
development and publication:
1. Internet Architecture Board (IAB): Responsible for defining the overall architecture of the
Internet, providing guidance and broad direction to the IETF.
2. Internet Engineering Task Force (IETF): The protocol engineering and development arm of
the Internet.
3. Internet Engineering Steering Group (IESG): Responsible for technical management of IETF
activities and the Internet standards process.
Internet RFCs
· RFC 1737 "Functional Requirements for Uniform Resource Names
· RFC 1738 "Uniform Resource Locators (URL
· RFC 1867 "Form-based File Upload in HTML
RFC (Request For Comments)
Internet Engineering Task Force (IETF) & Internet Society (ISOC) – the principal technical
development and standards-setting bodies for the Internet.
Internet Standards Categories: All Internet standards fall into one of two categories: Technical
specification (TS): A TS defines a protocol, service, procedure, convention, or format. The bulk of the
Internet standards are TSs. Applicability statement (AS): An AS specifies how, and under what
circumstances, one or more TSs may be applied to support a particular Internet capability.
– IP (Internet Protocol): defines the packets that carry blocks of data from one node to
another
– TCP (Transmission Control Protocol) and UDP (User Datagram Protocol): the protocols
by which one host sends data to another.
– Other application protocols: DNS (Domain Name Service), SMTP (Simple Mail
Transmission Protocol), and FTP (File Transmission Protocol)
• A packet contains information such as the data to be transferred, the source and destination IP
addresses, etc.
• A checksum is created to ensure the correctness of the data; corrupted packets are discarded
• IP-based communication is unreliable
• TCP adds support to detect errors or lost data and to trigger retransmission until the data is
correctly and completely received.
• Connection
• Acknowledgment.
• WWW is a system of interlinked, hypertext documents that runs over the Internet
– Client: a system that wishes to access the information provided by servers must run
client software (e.g., web browser)
• Hypertext: a format of information which allows one to move from one part of a document to
another through hyperlinks
• Uniform Resource Locator (URL): unique identifiers used to locate a particular resource on the
network
------------------------------------
– Send HTTP request over the connection and wait for server’s response
Web Servers
• Main functionalities:
– When a connection request is received, the server creates a new process to handle
this connection
– The new process establishes the TCP connection and waits for HTTP requests
– The new process invokes software that maps the requested URL to a resource on the
server
– If the resource is a file, creates an HTTP response that contains the file in the body of
the response message
– If the resource is a program, runs the program, and returns the output
• React to events
• Create cookies
• Server scripting:
– CGI provides a way by which a web server can obtain data from (or send data to)
database, and other programs, and present that data to viewers via the web.
– A CGI program can be written in any programming language, but Perl is one of the
most popular
Web essentials
Why web standards?
Let’s go briefly through the main reasons why it is such a good idea to adopt web standards in your
web development work (these are expanded on in later articles). Using web standards and
associated best practices confers the following benefits:
1. Efficiency of code: A lot of best practice web standards usage is all about reusing code —
writing code once, and then reusing it wherever it is needed.
2. Ease of maintenance: This follows closely on from the last point — if you can write code
only once, and then apply it wherever needed, then if you need to change something at a
later date you can just make the change in one place and it propagates throughout the entire
web site, rather than having to specify that change everywhere that it is needed!
3. Accessibility: The next two points are closely related — one of the big ideals of the Web
is making web sites accessible to everyone, no matter who they are, regardless of
circumstance. This includes making web sites usable by people with impairments such as
blindness/visual impairment and mobility impairment (ie, people who have restricted
movement). By using web standards and best practices, you’ll be able to make your web
sites more accessible to this significant group of the web audience with little or no extra
effort.
4. Device compatibility: This means ensuring that your web sites will work not only across
different platforms — ie Windows, Mac, Linux — but also alternative browsing devices,
including mobile phones, TVs, tablets and games consoles. Using web standards and best
practices, you significantly increase the likelihood of your web sites working across such
devices. There are more web-capable mobile phones in the world than desktop computers,
so can you or your clients afford to miss out on this market?
5. Web crawlers/search engines: By this, we are talking about what is termed search engine
optimization — the practice of making your web sites as visible as possible to the so–called
web crawlers that crawl the web and index web sites, giving you better search rankings on
sites such as Google. There is a science to this (see SEO articles such as Intelligent site
structure for better SEO! and Semantic HTML and Search Engine Optimization) but yet
again, just by using web standards you will make your site a lot more visible on Google,
Yahoo!, etc., which is good for business.
WWW stands for World Wide Web. A technical definition of the World Wide
Web is : all the resources and users on the Internet that are using the
Hypertext Transfer Protocol (HTTP).
Syntax
XML (Extensible Markup Language) helps to define common syntax in
semantic web.
Data Interchange
Resource Description Framework (RDF) framework helps in defining
core representation of data for web. RDF represents data about resource in
graph form.
Taxonomies
RDF Schema (RDFS) allows more standardized description
of taxonomiesand other ontological constructs.
Ontologies
Web Ontology Language (OWL) offers more constructs over RDFS. It
comes in following three versions:
Rules
RIF and SWRL offers rules beyond the constructs that are available
from RDFs and OWL. Simple Protocol and RDF Query Language
(SPARQL) is SQL like language used for querying RDF data and OWL
Ontologies.
Proof
All semantic and rules that are executed at layers below Proof and their
result will be used to prove deductions.
Cryptography
Cryptography means such as digital signature for verification of the origin
of sources is used.
2. Then browser requests the Domain Name Server for the IP address
corresponding to www.tutorialspoint.com.
3. After receiving IP address, browser sends the request for web page to the web
server using HTTP protocol which specifies the way the browser and web server
communicates.
4. Then web server receives request using HTTP protocol and checks its search for
the requested web page. If found it returns it back to the web browser and
close the HTTP connection.
5. Now the web browser receives the web page, It interprets it and display the
contents of web page in web browser’s window.
Evolution
World Wide Web was created by Timothy Berners Lee in 1989
at CERN in Geneva. World Wide Web came into existence as a proposal by
him, to allow researchers to work together effectively and efficiently
at CERN. Eventually it became World Wide Web.
A web page can cotain huge information including text, graphics, audio,
video and hyper links. These hyper links are the link to other web pages.
Static web pages are created using only HTML. Static web pages are only
used when the information is no more required to be modified.
Dynamic Web page
Dynamic web page shows different information at different point of time.
It is possible to change a portaion of a web page without loading the entire
web page. It has been made possible using Ajax technology.
Scripting Laguages
Scripting languages are like programming languages that allow us to write
programs in form of script. These scripts are interpreted not compiled and
executed line by line.
Scripting language is used to create dynamic web pages.
Client-side Scripting
Client-side scripting refers to the programs that are executed on client-
side. Client-side scripts contains the instruction for the browser to be
executed in response to certain user’s action.
Client-side scripting programs can be embedded into HTML files or also can be kept as
separate files.
1. JavaScript
It is a prototype based scripting language. It inherits its naming
conventions from java. All java script files are stored in file
having .jsextension.
3. Dart
It is an open source web programming language developed by Google. It
relies on source-to-source compiler to JavaScript.
4. VBScript
It is an open source web programming language developed by Microsoft. It
is superset of JavaScript and adds optional static typing class-based object
oriented programming.
Server-side Scripting
Sever-side scripting acts as an interface for the client and also limit the
user access the resources on web server. It can also collects the user’s
characteristics in order to customize response.
Following table describes commonly used Server-Side scripting languages:
1. ASP
Active Server Pages (ASP)is server-side script engine to create dynamic
web pages. It supports Component Object Model (COM) which enables
ASP web sites to access functionality of libraries such as DLL.
2. ActiveVFP
It is similar to PHP and also used for creating dynamic web pages. It uses
native Visual Foxpro language and database.
3. ASP.net
It is used to develop dynamic websites, web applications, and web services.
4. Java
Java Server Pages are used for creating dynamic web applications. The Java
code is compiled into byte code and run by Java Virtual Machine (JVM).
5. Python
It supports multiple programming paradigms such as object-oriented, and
functional programming. It can also be used as non-scripting language
using third party tools such as Py2exe or Pyinstaller.
6. WebDNA
It is also a server-side scripting language with an embedded database
system.
Web Browser
web Browser is an application software that allows us to view and explore
information on the web. User can request for any web page by just entering
a URL into address bar.
Web browser can show text, audio, video, animation and more. It is the
responsibility of a web browser to interpret text and commands contained in
the web page.
Earlier the web browsers were text-based while now a days graphical-based
or voice-based web browsers are also available. Following are the most
common web browser available today:
Browser Vendor
Safari Apple
Architecture
There are a lot of web browser available in the market. All of them interpret
and display information on the screen however their capabilities and
structure varies depending upon implementation. But the most basic
component that all web browser must exhibit are listed below:
Controller/Dispatcher
Interpreter
Client Programs
Controller works as a control unit in CPU. It takes input from the keyboard
or mouse, interpret it and make other services to work on the basis of input
it receives.
Interpreter receives the information from the controller and execute the
instruction line by line. Some interpreter are mandatory while some are
optional For example, HTML interpreter program is mandatory and java
interpreter is optional.
Client Program describes the specific protocol that will be used to access a
particular service. Following are the client programs tat are commonly
used:
HTTP
SMTP
FTP
NNTP
POP
Navigation
A web page may contain hyperlinks. When we click on these links other
web page is opened. These hyperlinks can be in form of text or image.
When we take the mouse over an hyperlink, pointer change its shape to
hand.
Data caching
Proxy servers allow to hide, conceal and make your network id anonymous by hiding
your IP address.
Translation
Security
Content Filtering
Bypass filters
Improving performance
It fasten the service by process of retrieving content from the cache which
was saved when previous request was made by the client.
Translation
It helps to customize the source site for local users by excluding source
content or substituting source content with original local content. In this the
traffic from the global users is routed to the source website through
Translation proxy.
Security
Since the proxy server hides the identity of the user hence it protects from
spam and the hacker attacks.
Type of Proxies
Following table briefly describes the type of proxies:
Forward Proxies
In this the client requests its internal network server to forward to the
internet.
Open Proxies
Open Proxies helps the clients to conceal their IP address while browsing
the web.
Reverse Proxies
In this the requests are forwarded to one or more proxy servers and the
response from the proxy server is retrieved as if it came directly from the
original Server.
Architecture
The proxy server architecture is divided into several modules as shown in
the following diagram:
Proxy user interface
This module controls and manages the user interface and provides an easy
to use graphical interface, window and a menu to the end user. This menu
offers the following functionalities:
Start proxy
Stop proxy
Exit
Blocking URL
Blocking client
Manage log
Manage cache
Modify configuration
Connection Manager
It contains the main functionality of the proxy server. It performs the
following functions:
It contains the main functionality of the proxy server. It performs the following
functions:
Parse the URL and determine whether the URL is blocked or not.
If no copy of page is found in the cache then download the page from web
server else will check its last modified date from the reply header and
accordingly will read from the cache or server from the web.
Then it will also check whether caching is allowed or not and accordingly will
cache the page.
Cache Manager
This module is responsible for storing, deleting, clearing and searching of
web pages in the cache.
Log Manager
This module is responsible for viewing, clearing and updating the logs.
Configuration
This module helps to create configuration settings which in turn let other
modules to perform desired configurations such as caching.
User can search for any information by passing query in form of keywords
or phrase. It then searches for relevant information in its database and
return to the user.
Search Engine Components
Generally there are three basic components of a search engine as listed
below:
1. Web Crawler
2. Database
3. Search Interfaces
Web crawler
It is also known as spider or bots. It is a software component that
traverses the web to gather information.
Database
All the information on the web is stored in database. It consists of huge web
resources.
Search Interfaces
This component is an interface between user and the database. It helps the
user to search through the database.
The search engine looks for the keyword in the index for predefined database
instead of going directly to the web to search for the keyword.
It then uses software to search for the information in the database. This
software component is known as web crawler.
Once web crawler finds the pages, the search engine then shows the relevant
web pages as a result. These retrieved web pages generally include title of
page, size of text portion, first several sentences etc.
Search Description
Engine
SMTP Commands
The SMTP standard defines a set of commands - names of specific types of messages
that mail clients to the mail server when requesting information. The most commonly
used commands are:
HELO and EHLO - commands that initiate a new protocol session between client and
server. The EHLO command requests them to respond with any
optional SMTP extensions it supports
MAIL - command to initiate sending an email message
RCPT - command to provide one email address for a recipient of the current message
being prepared
DATA - command indicating the start of transmission of the email message. This
command initiates a series of one or more follow-on messages each containing a piece
of the message. The last message in the sequence is empty (containing only a period (.)
as a termination character) to signify the end of the email.
RSET - while in the process of sending an email (after issuing the MAIL command),
either end of the SMTP connection can reset the connection if it encounters an error
NOOP - an empty ("no operation") message designed as a kind of ping to check for
responsiveness of the other end of the session
QUIT - terminates the protocol session
POP3
POP3 is designed to delete mail on the server as soon as the user has
downloaded it. However, some implementations allow users or an
administrator to specify that mail be saved for some period of time. POP can
be thought of as a "store-and-forward" service.
POP and IMAP deal with the receiving of e-mail and are not to be confused
with the Simple Mail Transfer Protocol (SMTP), a protocol for transferring e-
mail across the Internet. You send e-mail with SMTP and a mail handler
receives it on your recipient's behalf. Then the mail is read using POP or
IMAP.
FTP
File Transfer Protocol (FTP) is the commonly used protocol for exchanging files over
the Internet. FTP uses the Internet's TCP/IPprotocols to enable data transfer. FTP uses a client-
server architecture, often secured with SSL. FTP promotes sharing of files via remote computers
with reliable and efficient data transfer..
User can also upload a file to the FTP Server, WWW cannot do this.
cd Changes directory.
Accesses the Help screen and displays information about the command if the command is
help
typed after help.
lcd Displays local directory if typed alone or if path typed after lcd will change the local directory
HTTP is TCP/IP based communication protocol, which is used to deliver the data like image
files, query results, HTML files etc on the World Wide Web (WWW) with the default port is
TCP 80. It provides the standardized way for computers to communicate with each other.
o It is the protocol that allows web servers and browsers to exchange data over the
web.
o It is stateless means each request is considered as the new request. In other words,
server doesn't recognize the user by default.
There are three fundamental features that make the HTTP a simple and powerful protocol
used for communication:
o HTTP is media independent: It specifies that any type of media content can be
sent by HTTP as long as both the server and the client can handle the data content.
o HTTP is stateless: The client and server are aware of each other during a current
request only. Afterwards, both of them forget each other. Due to the stateless nature
of protocol, neither the client nor the server can retain the information about
different request across the web pages.
The below diagram represents the basic architecture of web application and depicts where
HTTP stands:
HTTP Requests
The request sent by the computer to a web server, contains all sorts of potentially
interesting information; it is known as HTTP requests.
The HTTP client sends the request to the server in the form of request message which
includes following information:
o The Request-line
The HTTP request method indicates the method to be performed on the resource identified
by the Requested URI (Uniform Resource Identifier). This method is case-sensitive
and should be used in uppercase.
HTTP Description
Request
HEAD Asks for only the header part of whatever a GET would return. Just like GET but with
TRACE Asks for the loopback of the request message, for testing or troubleshooting.
PUT Says to put the enclosed info (the body) at the requested URL.
OPTIONS Asks for a list of the HTTP methods to which the thing at the request URL can respon
GET POST
1) In case of Get request, only limited amount of data can be In case of post request, large amo
sent because data is sent in header. be sent because data is sent in bod
2) Get request is not secured because data is exposed in URL Post request is secured because d
bar. in URL bar.
4) Get request is idempotent . It means second request will be Post request is non-idempotent.
ignored until response of first request is delivered
5) Get request is more efficient and used more than Post. Post request is less efficient and u
1. GET /RegisterDao.jsp?name1=value1&name2=value2
As we know that data is sent in request header in case of get request. It is the default
request type. Let's see what information is sent to the server.
o It can be bookmarked
o It can be cached
One interesting aspect of HTML and its relationship with browsers was that browsers were
designed to be backward compatible and forward compatible.
Creating a browser that is backward compatible is relatively easy because the problem domain is
known, but how is forward compatibility accomplished? Browsers were created to ignore tags
that they didn’t recognize. For example, if a browser came across a <xyz> tag that it didn’t
recognize, it would skip over the tag as though it didn’t exist.
XML looks a lot like HTML because both languages use tags. However, there are several big
differences. First, XML always requires matching end tags for every tag, although you can
Use a shortcut notation to denote a starting tag and ending tag together.
XML doesn’t have a defined set of tag names, so you create your own tag names, and the tags
can represent anything. XML tags are typically metadata tags: tags that describe the data that is
within the tag.
The World Wide Web Consortium, also known as W3C (ht tp: //ww.w3c.org), is responsible for
developing open standards for the web.
The W3C introduced XHTML to solve the problems in HTML, which was up to version 4.
XHTML is an XML-based specification that tightened the HTML specification to make HTML
adhere to the XML rules that describe a well-formed document, such as having a matching end
tag for each starting tag. This meant that XHTML documents could be validated by using XSD
files and could be edited by using XML tools.
Although XHTML solved some problems, other problems still needed a solution. There was
a need for an increasing amount of multimedia on the web.
Cascading Style Sheets (CSS) provided support for adding styles such
as colors and fonts consistently across a website, but companies wanted more. They wanted
their webpages to be highly interactive, with video and animations. Browsers added
programmable support by providing JavaScript.
In this sample, the <div> tag is just the beginning tag on the first line. The <div> element
is the complete sample, which includes content that also contains a <b> element. The <b>
element consists of the beginning <b> tag, the content, which is the word “fox,” and the ending
</b> tag.
W3C recommends lowercase tag names in HTML 4.01 and requires lowercase tag names in
XHTML. Although HTML5 does not mandate lowercase tag names, lowercase tag names are
recommended.
HTML5 has more than 100 defined elements that you can use to create rich webpages and
applications..
Adding attributes to elements
The begin tag can contain additional data in the form of an attribute. An attribute is a
name=”value” pair in which name is unique within the tag and value is always enclosed within
either single quotes or double quotes. You can add many attributes to the begin tag..
Multiple Selectors
‘
CSS rules can be located in one of three places: an external style sheet, embedded in the
<head> of a document, or inline with the affected tag.
Embedded styles
CSS rules can also be included in an HTML page, typically in the <head> section of the document. This
technique is known as embedding. CSS rules are embedded through use of the
<style> tag, like this:
<style type=”text/css”>
body {
margin: 0;
padding: 0;
background-color: white;
}
h1, h2, h3, h4 {
color: red;
margin: 0;
padding: 5px;
}
</style>
Inline styles
The final method for styling HTML tags is called inline styles. An inline style is applied by use of the style attribute
within an HTML tag..
<h1 style=”color:red;”>Important Message Ahead</h1>
Ids
To define an ID selector, use a leading number sign symbol, like this:
#header {
width: 960px;
}
classes
The class selector is similar to the ID, except it may be used multiple times on a single page.
.legalNotice {
font-size: small;
}
<div class=”legalNotice”>
JSON
<html>
<body>
<p id="ShowHere"></p>
<script>
’{"firstName":"Michael","lastName":"Gorby" },’ +
’{"firstName":"Caroline","lastName":"Swan" },’ +
’{"firstName":"David","lastName":"Abbot" },’ +
’{"firstName":"Monalisa","lastName":"Cage" }]}’;
obj = JSON.parse(text);
document.getElementById("ShowHere").innerHTML =
</script>
</body>
</html>
<!DOCTYPE html>
<html>
<head>
</head>
<body>
</html>
<DOCTYPE> - this tag declares the document type and HTML version
<html> and </html> - all HTML document codes are written between this
tag
<head> and </head> - all information about the document are written
between this tag
<title> and </title> - The title of a Document is written between this tag
<body> and </body> - all visible page contents are written between this
tag
<h1> and </h1> - write the heading h1 between this tag
<p> and </p> - always write your paragraph text between between this
tag
HTML Tags
HTML markup tags are usually called HTML tags. HTML tags are keywords
(TagNames) written between angle brackets < TagName >.
HTML Histories
Since 1996, the HTML specifications have been maintained, with input from
commercial software vendors, by the World Wide Web Consortium (W3C).
However, in 2000, HTML also became an international standard (ISO/IEC
15445:2000). HTML 4.01 was published in late 1999, with further errata
published through 2001. In 2004 development began on HTML5 and released on
2012.
HTML5 features
New features in HTML5 are:
In addition, the mobile web browsers that come pre-installed on iPhones, iPads,
and Android phones all have excellent support for HTML5.
IE 9+ (Windows)
Firefox 3.0+ (all operating systems)
Safari 3.0+ (Windows, OS X, and iPhone OS 1.0+ operating systems)
Chrome 3.0.195+ (Windows), 5.0.375+ (all operating systems)
Opera 9.5+ (all operating systems)
HTML Structural
The basic structural elements for HTML include headings, paragraphs, links, etc.
New elements in HTML5 improve upon this structure.
Required Tags
All HTML documents need to have the <html>, <head>, and <body> tags,
along with the <!DOCTYPE>identifier as the first line.
HTML5 added new elements to improve the structure of web pages.
Structural Elements
The following table lists the structural HTML tags:
UTF-8 (U from Universal Character Set + Transformation Format—8-bit) is a character
encoding capable of encoding all possible characters.
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
</head>
<body>
</body>
</html>
HTML Editor
To write a HTML script you can use any of Text Software Editor like Notepad
from Microsoft or notepad++, jEdit, Crimson Editor, Edit Pad Lite and WYSIWYG
Editor like Dreamweaver.