Wednesday, August 6, 2008

Web Terminologies

Internet : A Global network connecting milions of computers.

World wide Web:An information sharing model that is built on top of the Internet,utilizes HTTP protocol and browsers (such as Internet Explorer) to access Web pages formatted in HTML that are linked via hyperlinks and the Web is only a subset of the Internet (other uses of the Internet include email (via SMTP), Usenet, instant messaging and file transfer (via FTP)

URL: The address of documents and other content on the Web. It is consisting of protocol, domain and the file. Protocol can be either HTTP, FTP, Telnet,News etc., domain name is the DNS name of the server and file can be Static HTML, DOC, Jpeg, etc., . In other words URLs are strings that uniquely identify resources on internet.

TCP/IP:TCP/IP protocol suite used to send data over the Internet. TCP/IP consists of only 4 layers - Application layer, Transport layer, Network layer & Link layer
Internet Protocols:
Application Layer - DNS, TLS/SSL, TFTP, FTP, HTTP, IMAP, IRC,NNTP, POP3, SIP, SMTP, SNMP, SSH, TELNET, BitTorrent, RTP,rlogin.
Transport Layer- TCP, UDP, DCCP, SCTP, IL, RUDP,
Network Layer - IP (IPv4, IPv6), ICMP, IGMP, ARP, RARP, …
Link Ethernet Layer- Wi-Fi, Token ring, PPP, SLIP, FDDI, ATM,DTM, Frame Relay, SMDS
,

TCP– Enables two devices to establish a connection and exchange data.
IP- Specifies the format of data packets and the addressing protocol.

IP Address– A unique number assigned to each connected device.

Packet– A portion of a message sent over a TCP/IP Network. It contains
content and destination

HTTP(Hyper Text Transfer Protocol):HTTP takes care of the communication between a web server and a web browser.HTTP is used for sending requests from a web client (a browser) to a web server, returning web content (web pages) from the server back to the client.

HTTP Methods:
o HEAD: Asks for the response identical to the one that would correspond to a GET request, but without the response body. This is useful for retrieving metainformation written in response headers, without
having to transport the entire content.
o GET : Requests a representation of the specified resource. By far the most common method used on the Web today.
o POST : Submits user data (e.g. from a HTML form) to the identified resource. The data is included in the body of the request.
o PUT: Uploads a representation of the specified resource.
o DELETE: Deletes the specified resource (rarely implemented).
o TRACE: Echoes back the received request, so that a client can see what intermediate servers are adding or changing in the request.
o OPTIONS:Returns the HTTP methods that the server supports.This can be used to check the functionality of a web server.
o CONNECT: For use with a proxy that can change to being an SSL tunnel.


HTTP Status code:
1 1xx Informational
2 2xx Success
3 3xx Redirection
4 4xx Client Error
5 5xx Server Error

Some common status codes are:
200 - the server successfully returned the page
404 - the requested page doesn't exist
503 - the server is temporarily unavailable

SSL (Secure Sockets Layer):The SSL protocol is used for encryption of data for secure data transmission.

HTTPS(Secure HTTP):HTTPS takes care of secure communication between a web server and a web browser.HTTPS typically handles credit card transactions and other sensitive data.

HTML (Hypertext Markup Language):The authoring language used to create documents on the World Wide Web.Hundreds of tags can be used to format and layout a Web page’s content and to hyperlink to other Web content.

Webserver: Webserver is responsible for accepting HTTP requests from clients,
which are known as Web browsers, and serving them Web pages, which are usually HTML documents and linked objects (images,etc.).
Example: IIS,IPlanet web server,Sun One,Apache

Webserver delegation model is fairly simple,when the request comes into the webserver,it simply passes the request to the program best able to handle it(Server side program). It may not support transactions and database connection pooling.

Application Server: An application server exposes business logic to client applications through various protocols, possibly including HTTP. the server exposes this business logic through a component API, such as the EJB (Enterprise JavaBean) component model found on J2EE (Java 2 Platform, Enterprise Edition) application servers. Moreover, the application server manages its own resources. Such gate-keeping duties include security, transaction processing, resource pooling, and messaging
Ex: JBoss (Red Hat), WebSphere (IBM), Oracle Application Server 10g (Oracle Corporation) and WebLogic (BEA)

Application server is more capable of dynamic behaviour than webserver. We can also configure application server to work as a webserver.Simply application server is a superset of webserver.

It is scalable and high perfoemance then a webserver.

Web client:Most commonly in the form of Web browser software such as Internet Explorer or Netscape

Proxy Server:A server that sits between a client application, such as a Web browser, and a real server. It intercepts all requests to the real server to see if it can fulfill the requests itself. If not, it forwards the request to the real server. Proxy servers have two main purposes: Filter Requests,Improve Performance

Caching:Web browsers and proxy servers save a local copy of thedownloaded content.Pages that display personal informationshould be set to prohibit caching.

Thick Client & Thin Client:
A fat client (also known as a thick client or rich client) is a client that performs the bulk of any data processing operations itself, and does not necessarily rely on the server.
The fat client is most common in the form of a personal computer, as the personal computers or laptops can operate independently. Programming environments for rich clients include Curl, Delphi, Droplets,.Net, Java, win32 and X11.

A thin client is a minimal sort of client. Thin clients use the resources of the host computer. A thin client's job is generally just to graphically display pictures provided by an application server, which performs the bulk of any required data processing. Programming environments for thin clients include JavaScript/AJAX (client side automation), ASP, JSP, Ruby on Rails, Python's Django, PHP and other (depends on server-side backend and uses HTML pages or rich media like Flash, Flex or Silverlight on client).

Client Side Scripting-Server Side Scripting
Client side scripting is a script, usually Javascript, VB Script that is executed by the browser (i.e. Firefox, Internet Explorer, Safari, Opera, etc.). Server side scripting, usually done in ASP, PHP, Ruby, JSP or others, is executed by the server

CGI:
The common gateway interface provides a consistent way for data to be passed from the user's request to the application program and back to the user.

SMTP(Simple Mail Transfer Protocol):Used for transmission of e-mails.

POP(Post Office Protocol):Used for downloading e-mails from an e-mail server to a personal computer.

IMAP(Internet Message Access Protocol):Used for storing and retrieving e-mails.

MIME(Multi-purpose Internet Mail Extensions):The MIME protocol lets SMTP transmit multimedia files including voice, audio, and binary data across TCP/IP networks.

LDAP(Lightweight Directory Access Protocol):Used for collecting information about users and e-mail addresses from the internet.

0 comments: