Solved

Why is TCP socket slower then Rendezvous?

Posted on 1997-06-20
2
266 Views
Last Modified: 2013-12-26
Sending 3MB (2MB send and 1MB reply) of data between two HP-UX workstations using TCP sockets takes about 70 seconds.
While sending the same amount of data between the same workstations using Rendezvous (a software message bus product) takes about 30 seconds.

1) Could anyone explain the performance difference? As far as I know, a Rendezvous client first sends the message through TCP socket to the Rendezvous daemon on the same host, and this daemon broadcasts this message through UDP socket to the daemon on the other host, and that daemon finally sends this message to the server on its same host. The reply message goes through the reverse route.

2) Is UDP socket more than twice faster than TCP socket? otherwise how could it easily offset the extra two hops the
message has to travel?
3) Is there anyway to tune the TCP sockets performance? 4) Could Rendezvous use some special technique to optimize socket performance?

Thanks a lot for your help in answering these questions.

Tom Chi
tchi@slip.net
0
Comment
Question by:chi
2 Comments
 
LVL 2

Accepted Solution

by:
lockhart earned 100 total points
ID: 1293630
UDP is much less secure than TCP since it is connectionless and has no reliability safeguards. TCP provides checksums, ACK/
NACK handshaking, timeout/re-transmit, duplicate detection, sequencing and flow control while UDP only supplies message boundaries and an optional checksum. Therefore, UDP is unreliable unless the application provides some internal checking. There is somce overhead associated with using TCP and its built-in safeguards. It sounds like Rendezvous takes advantage of TCP to start the transfer (probably tells the other side how many packets are coming and how big they are) then switches to the faster (and more dangerous) UDP for the actual transfer. It's not a bad approach since they could build sequencing info into the packet and be assured they got all packets just by counting then use the optional checksum to verify packet integrity.

Mike
0
 
LVL 8

Expert Comment

by:JIEXA
ID: 7509334
1. check kernel network buffer sizes, and possibly increase them (HP-UX Performance & Tuning Guide)

2. is the interface full-duplex, or half-duplex ?
 If it's half-duplex, may it be set to a full-duples mode ?
This may be your question too.
0

Featured Post

Free Tool: IP Lookup

Get more info about an IP address or domain name, such as organization, abuse contacts and geolocation.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
Is it possible to combine several text files into one big one? (redhat v5 enterprise) 4 110
ODBC Connection Logging, ADO.NET 6 71
if loop in java 3 163
twoTwo  challenge 35 113
Introduction: Database storage, where is the exe actually on the disc? Playing a game selected randomly (how to generate random numbers).  Error trapping with try..catch to help the code run even if something goes wrong. Continuing from the seveā€¦
Exception Handling is in the core of any application that is able to dignify its name. In this article, I'll guide you through the process of writing a DRY (Don't Repeat Yourself) Exception Handling mechanism, using Aspect Oriented Programming.
This video will show you how to get GIT to work in Eclipse.   It will walk you through how to install the EGit plugin in eclipse and how to checkout an existing repository.

726 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question