This discussion is archived
7 Replies Latest reply: Nov 14, 2012 12:26 AM by PavanKumar RSS

Can I use UDP protocol in tnsnames connectivity?

Panamanian Newbie
Currently Being Moderated
Is it possible? and If so, how stable / secure it is? (knowing already its limitations over TCP/IP).

Gracias in advance.
  • 1. Re: Can I use UDP protocol in tnsnames connectivity?
    Osama_Mustafa Oracle ACE
    Currently Being Moderated
    I believe you can't , since UDP dosen't have hand-shake this mean UDP doesn't contain data integrity.

    Check MOS Notes :
    UDP and TCP Usage for Oracle Net Connections [ID 807153.1]
  • 2. Re: Can I use UDP protocol in tnsnames connectivity?
    rp0428 Guru
    Currently Being Moderated
    >
    Can I use UDP protocol in tnsnames connectivity?
    >
    No - The Oracle Net Listener uses TCP only.
  • 3. Re: Can I use UDP protocol in tnsnames connectivity?
    BillyVerreynne Oracle ACE
    Currently Being Moderated
    Panamanian wrote:
    Is it possible? and If so, how stable / secure it is? (knowing already its limitations over TCP/IP).
    No.

    IP (Internet Protocol) is a suite of wire protocols. The common one is TCP. There are also numerous others like UDP, ICMP and so on.

    Each of these wire protocols is designed with specific characteristics to address specific requirements.

    TCP is a stateful protocol that is very very robust. UDP on the other hand is almost the exact opposite. It is stateless. It is not robust at all - loose an entire UDP stream of packets, and the sender will never know. Heck, the sender does not even know if the receiver actually exist. There are no retransmission. This is peer-based communication and not client-server like TCP. UDP is also called "+send and pray+" - as there are no guarantees that what you send will arrive at the destination.

    However, UDP is a lot faster as a result. And therefore ideal for streaming data like voice. In a VoIP data stream, loosing a couple of data packets may downgrade the quality of the voice you hear - but not make the voice stream so broken that you cannot understand what the other party is saying.

    So UDP is well suited for VoIP. TCP not.

    Client-server is well suited for TCP. UDP not.
  • 4. Re: Can I use UDP protocol in tnsnames connectivity?
    Girish Sharma Guru
    Currently Being Moderated
    Billy  Verreynne  wrote:
    Panamanian wrote:
    Is it possible? and If so, how stable / secure it is? (knowing already its limitations over TCP/IP).
    No.

    IP (Internet Protocol) is a suite of wire protocols. The common one is TCP. There are also numerous others like UDP, ICMP and so on.

    Each of these wire protocols is designed with specific characteristics to address specific requirements.

    TCP is a stateful protocol that is very very robust. UDP on the other hand is almost the exact opposite. It is stateless. It is not robust at all - loose an entire UDP stream of packets, and the sender will never know. Heck, the sender does not even know if the receiver actually exist. There are no retransmission. This is peer-based communication and not client-server like TCP. UDP is also called "+send and pray+" - as there are no guarantees that what you send will arrive at the destination.

    However, UDP is a lot faster as a result. And therefore ideal for streaming data like voice. In a VoIP data stream, loosing a couple of data packets may downgrade the quality of the voice you hear - but not make the voice stream so broken that you cannot understand what the other party is saying.

    So UDP is well suited for VoIP. TCP not.

    Client-server is well suited for TCP. UDP not.
    Thanks Billy for such a nice post. I could not find such explanation in docs; obviously for that I must read some networking books.

    Regards
    Girish Sharma
  • 5. Re: Can I use UDP protocol in tnsnames connectivity?
    BillyVerreynne Oracle ACE
    Currently Being Moderated
    Osama_mustafa wrote:
    I believe you can't , since UDP dosen't have hand-shake this mean UDP doesn't contain data integrity.
    Not entirely correct. Data is in the payload of a packet. That data can be secured, encrypted, checksum and so on - in order to guarantee the integrity of that data. (i.e. data is not tampered with, or corrupted somehow). So whether that payload is packaged in TCP or UDP, does not change the integrity of that data.

    Granted, there is no wire handshake (aka ACK style like TCP). UDP can however also have handshaking between the peers communicating with one another (most UDP clients will do some kind of app handshake).

    It is not that UDP cannot do similar things like TCP. One can do some interesting things with wire protocols - like running a TCP web proxy over ICMP. The issue is whether that is a sane thing to do from a networking perspective.

    The "problem" with UDP is basically one of
    a) packets are not guarantee to arrive in send sequence
    b) packets are not reordered in send sequence when arriving
    c) dropped packets are not requested to be send again
  • 6. Re: Can I use UDP protocol in tnsnames connectivity?
    Osama_Mustafa Oracle ACE
    Currently Being Moderated
    i would add my voice to "Girish Sharma" and thank you for the amazing description :)
  • 7. Re: Can I use UDP protocol in tnsnames connectivity?
    PavanKumar Guru
    Currently Being Moderated
    Hi,

    You can read further to said across from Billy (pretty good explanation).

    http://www.diffen.com/difference/TCP_vs_UDP
    http://tunnel.mrq3.com/explain/node2.html

    - Pavan kumar N

Legend

  • Correct Answers - 10 points
  • Helpful Answers - 5 points