Re: Is HTTP an Async Protocol

Tech-Archive recommends: Repair Windows Errors & Optimize Windows Performance



> Simple question (although I guess with a complicated answer). Is HTTP
> an async protocol?

Short answer, no.

Long answer: HTTP is a protocol. "asynch" is not relevant to protocols.
"asynch" (ansynchronous) is a term related to programming. It is a reference
to how a program performs certain types of operations. In a single-threaded
program, the program cannot execute more than one instruction at a time, as
a single thread cannot execute more than one instruction at a time.
Therefore, any instruction which takes a certain amount of time to execute
will "block" the execution of the thread until it is completed. In a
multio-threaded program, you have the option of performing operations
"asynchronously" (that is, independently of each other, wthout having to
wait).

A protocol is a standard for communication. Network protocols almost
entirely work in the same way that humans communicate. That is, a computer
sends a message to another computer, and the other computer responds to that
message. Since there are any number of reasons why a response might be
delayed, or even not occur, network applications generally use asynchronous
threads to communicate with other network resources. This way, the program
can create a thread to do the communication, and continue with other work.
When the communication thread receives a response, or times out waiting for
one, it can notify the application, via an event or callback, which can then
react to the response.

The HTTP protocol is a networking protocol. It defines a set of standards
for applications to communicate on a TCP network. This set of standards is
based upon a client-server Request/Response exchange. The client makes an
HTTP request of the HTTP server, which then responds with an HTTP response.
These requests and responses are at least partially in the form of text,
although binary data can accompany the message. The protocol itself,
however, is pure text.

For a quick and easy "crash course" on HTTP, see:

http://www.jmarshall.com/easy/http/

--
HTH,

Kevin Spencer
Microsoft MVP
..Net Developer
Who is Mighty Abbott?
A twin turret scalawag.

"Bob Badger" <sjdavies47@xxxxxxxxxxx> wrote in message
news:1138706228.376283.240430@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
> Hi,
>
> Simple question (although I guess with a complicated answer). Is HTTP
> an async protocol? For instance, if I send a message to a c#
> webservice via http what is the protocol actually doing?
>
> Thanks in advance
> Steffan
>


.



Relevant Pages

  • Re: Is HTTP an Async Protocol
    ... TCP/IP is an asynchronous protocol (like most ... network protocols). ... HTTP is actually 3 layers ... > "asynch" is a term related to programming. ...
    (microsoft.public.dotnet.framework.aspnet)
  • Re: Is HTTP an Async Protocol
    ... > "asynch" is a term related to programming. ... > A protocol is a standard for communication. ... Since there are any number of reasons why a response might be ... > The HTTP protocol is a networking protocol. ...
    (microsoft.public.dotnet.framework.aspnet)
  • Re: Web Proxy Filter exception not working
    ... Allow all traffic but HTTP between all protected networks and the ... Unrestricted internet access between all protected networks and the ... The unfiltered protocol is denied so all other HTTP traffic still uses ... The intial connection to the MetroList site uses my unfiltered protocol. ...
    (microsoft.public.isa.configuration)
  • Re: Is HTTP an Async Protocol
    ... If you say that HTTP is 3 layers, which is true in one sense, ... TCP/IP is an asynchronous protocol (like most ... > network protocols). ... >> "asynch" is a term related to programming. ...
    (microsoft.public.dotnet.framework.aspnet)
  • gravagno considers himself an expert like some kind of a tech lawyer an expert on all this
    ... part of Hypertext Transfer Protocol -- HTTP/1.1 ... HTTP Version ... The number is incremented when the format of a message within the ... Transfer-coding values are used to indicate an encoding transformation ...
    (comp.databases.pick)