You are on page 1of 2

Name : Do Ngoc Lam

Class : IT052
ID : IT050055

ASSIGNMENT 3

1.What is the pull/push protocol?

. "Pull" protocols are those that put some data out there
to be accessible via a URL. The data does not change based on who
requests the information. Yadis is such a protocol, since when an
Relying Party goes to fetch the data, there is no specified way to
change the data based on who is requesting it.

. "Push" protocols are those that allow the user to modify


the data based on who is requesting it. OpenID is such a protocol: the
data is transmitted by redirecting the user between the Relying Party
and the Identity Provider, and the user can choose to have the Identity
Provider send his or her authentication information or to cancel the
transaction.

Example:

Imagine a long, thin room with a person standing at


each small end. The first person is Mr Client and the second person is
Mr Server.
Mr Server has a box containing a piece of paper that
says "Martin's surname is Atkins".

In the "Pull" situation, Mr Client decides that he wants


to know Martin's surname, so he gets out a rope and makes a lasso. He
chucks the lasso around Mr Server's box and then pulls it to him.

In the "Push" situation, Mr Server decides that Mr Client needs to know


Martin's surname, perhaps because Mr Client is friends with Martin and
Martin's surname has changed recently. Mr Server kicks the box briskly
across the room to Mr Client; Mr Client doesn't know what's in the box
until he recieves it and takes a look inside.

Mr Server knows who Mr Client is in both situations.


Responding differently to differently clients is orthogonal to the
notion of "push" and "pull". The difference is that for "pull" the
reciever of the information actively asks for it, while for "push" the
sender just transmits it to the reciever at an appropriate time without
direct provocation.

*What is HTTP?

Hypertext Transfer Protocol (HTTP) is a communications protocol used to


transfer or convey information on the World Wide Web. Its original purpose was to
provide a way to publish and retrieve HTML hypertext pages. Development of
HTTP was coordinated by the W3C (World Wide Web Consortium) and the IETF
(Internet Engineering Task Force ), culminating in the publication of a series of
RFCs, most notably RFC 2616 (June 1999), which defines HTTP/1.1, the version of
HTTP in common use today.

HTTP is a request/response protocol between clients and servers. The client making
an HTTP request - such as a web browser, spider, or other end-user tool - is referred
to as the user agent. The responding server - which stores or creates resources such
as HTML files and images - is called the origin server. In between the user agent and
origin server may be several intermediaries, such as proxies, gateways, and tunnens.
It is useful to remember that HTTP does not need to use TCP/IP or its supporting
layers. Indeed HTTP can be "implemented on top of any other protocol on the
Internet, or on other networks. HTTP only presumes a reliable transport; any
protocol that provides such guarantees can be used."

An HTTP client initiates a request by establishing a Transmission Control Protocol


(TCP) connection to a particular port on a host (port 80 by default; see List of TCP
and UDP port numbers). An HTTP server listening on that port waits for the client
to send a request message.

Upon receiving the request, the server sends back a status line, such as "HTTP/1.1
200 OK", and a message of its own, the body of which is perhaps the requested file,
an error message, or some other information.

You might also like