Win a copy of Think Java: How to Think Like a Computer Scientist this week in the Java in General forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

Basics

 
Mandan Happy
Ranch Hand
Posts: 65
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hello,
Am wondering if *asynchronous* is synonymous with *connectionless* and *synchronous* is synonymous with *connection oriented* protocol.
Those communication protocols that rely on TCP are connection oriented and hence synchronous ( eg RMI,IIOP,SOAP)
And
Those communication protocols that rely on UDP are
connectionless and hence asynchronous.
(eg JMS...any other ? )
Am I right?
Any suggestions, links to some sites, Books will be much appreciated.
Thanx
-Mandan
 
Michael Ernest
High Plains Drifter
Sheriff
Posts: 7292
Netbeans IDE VI Editor
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
These are not synonymous terms.
When communication between two parties is called asynchronous, it generally means the receiver is not waiting on the sender's message. This is sometimes called non-blocking I/O, i.e., the method issuing an I/O call is not held in state, effectively freezing the application, waiting for a return value. Synchronous then simply means the give-and-take of network traffic between two systems is happening in a specific order as each side waits on the other throughout the communication.
When communications are connectionless (i.e., there's no attempt to keep two systems in constatn communication), asynchronous communication is simply the only technique that makes sense. Connection-oriented communcations can be asynchronous, but there don't seem to be any lasting benefit. Connectionless, synchronous communications could arguably be useful in a very narrow set of circumstances, but certainly not worth the trouble.
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic