05-26-2011
TCP and UDP are different facilities under IP, but UNIX sockets are local to the host and simpler, like pipes.
TCP creates a reliable one on one session between a client and server, with full duplex streams of data.
UDP is a user-level packet facility, without 'reliability' but with broadcast and mixed correspondent capability as well as a 'connection' facility, just a fd with a filter and default correspondent. For instance, DNS uses UDP, and a DNS server sits there receiving packets, and for every packet in, makes a packet out. The packet in may be a request for local data, a request for remote data or a response to a past inquiry sent by this server to other DNS servers. The server sends a response to the inquiry, or if tasked with recursion, an inquiry for the inquiry. For responses, the server sends them on to the requestor and caches them locally. The server does all this with one not-connected UDP socket.
7 More Discussions You Might Find Interesting
1. UNIX for Dummies Questions & Answers
? (1 Reply)
Discussion started by: 98_1LE
1 Replies
2. HP-UX
Hi,
I am having some error handling issues with and fd passed between Independent processes using unix domain sockets (On HPUX).
Here is the scnerio
=================
Step 1: TPC/Client (connect()) ---Connects to ------TCP/Server(Gateway) (server gets fd)
Step 2: ... (2 Replies)
Discussion started by: Debasisb2002
2 Replies
3. UNIX for Advanced & Expert Users
If I use sockets for IPC, and can easily distribute my applications.
UNIX Message Queues are local to the processor.
As I understand it, Message Queues still incur system call overhead, just like socket calls.
What advantage does a UNIX Message Queue provide versus a TCP or UDP Socket,... (2 Replies)
Discussion started by: zen29sky
2 Replies
4. UNIX for Advanced & Expert Users
Is there a performance advantage of one of these over the other? Obviously, it makes no sense to use normal TCP sockets or UDP sockets w/ the overhead they carry. But what about UNIX domain sockets vs FIFOs? I'd think they'd be very similar, in terms of performance and in terms of how they're... (2 Replies)
Discussion started by: mgessner
2 Replies
5. Shell Programming and Scripting
Hi
I'm reading <learning the bash shell>. And in the section - 3.1. The .bash_profile, .bash_logout, and .bashrc Files
bash allows two synonyms for .bash_profile: .bash_login, derived from the C
shell's file named .login, and .profile, derived from the Bourne shell and Korn
shell files... (1 Reply)
Discussion started by: password636
1 Replies
6. Solaris
What are the advantages for Sun Fire 490 over Sun Fire 480 R just from a server performance perspective? Or, are they both just about the same? (1 Reply)
Discussion started by: jtamminen
1 Replies
7. Red Hat
Hi guys, new user here, so please be gentle.
I need to build a lot of servers at work on a weekly basis with various versions of RH and additional applications.
We use PXE/Kickstart to do this with selections made from a simple menu structure.
However, I keep hearing about Cobbler and... (0 Replies)
Discussion started by: hankpym
0 Replies
LEARN ABOUT CENTOS
socket.h
socket.h(3) Library Functions Manual socket.h(3)
NAME
socket.h -
Network addresses and sockets related classes.
SYNOPSIS
#include <cc++/address.h>
Classes
class ost::Socket
The Socket is used as the base for all Internet protocol services under Common C++.
class ost::DCCPSocket
DCCP sockets are used for stream based connected sessions between two sockets.
class ost::UDPSocket
UDP sockets implement the TCP SOCK_DGRAM UDP protocol.
class ost::UDPBroadcast
Representing a UDP socket used for subnet broadcasts, this class provides an alternate binding and setPeer() capability for UDP
sockets.
class ost::UDPTransmit
Representing half of a two-way UDP connection, the UDP transmitter can broadcast data to another selected peer host or to an entire
subnet.
class ost::UDPReceive
Representing half of a two-way UDP connection, the UDP receiver can receive data from another peer host or subnet.
class ost::UDPDuplex
UDP duplex connections impliment a bi-directional point-to-point UDP session between two peer hosts.
class ost::TCPSocket
TCP sockets are used for stream based connected sessions between two sockets.
class ost::TCPV6Socket
TCPV6 sockets are used for stream based connected sessions between two ipv6 sockets.
class ost::TCPStream
TCP streams are used to represent TCP client connections to a server by TCP protocol servers for accepting client connections.
class ost::TCPSession
The TCP session is used to primarily to represent a client connection that can be managed on a separate thread.
class ost::SimpleTCPStream
Simple TCP Stream, to be used with Common C++ Library.
Namespaces
namespace ost
Macros
#define INVALID_SOCKET -1
#define _IOLEN64
#define _IORET64
#define MSG_DONTWAIT 0
#define MSG_NOSIGNAL 0
#define SOCK_DCCP 6
#define IPPROTO_DCCP 33
#define SOL_DCCP 269
#define DCCP_SOCKOPT_AVAILABLE_CCIDS 12
#define DCCP_SOCKOPT_CCID 13
#define DCCP_SOCKOPT_TX_CCID 14
#define DCCP_SOCKOPT_RX_CCID 15
Typedefs
typedef int SOCKET
Variables
class __EXPORT ost::SimpleTCPStream
Detailed Description
Network addresses and sockets related classes.
Macro Definition Documentation
#define _IOLEN64
Referenced by ost::SocketPort::peek(), ost::UDPSocket::peek(), ost::TCPStream::peek(), ost::SocketPort::receive(),
ost::UDPReceive::receive(), ost::SocketPort::send(), ost::UDPTransmit::send(), and ost::UDPTransmit::transmit().
#define _IORET64
#define DCCP_SOCKOPT_AVAILABLE_CCIDS 12
#define DCCP_SOCKOPT_CCID 13
#define DCCP_SOCKOPT_RX_CCID 15
#define DCCP_SOCKOPT_TX_CCID 14
#define INVALID_SOCKET -1
#define IPPROTO_DCCP 33
#define MSG_DONTWAIT 0
Referenced by ost::UDPTransmit::transmit().
#define MSG_NOSIGNAL 0
Referenced by ost::UDPTransmit::send(), and ost::UDPTransmit::transmit().
#define SOCK_DCCP 6
#define SOL_DCCP 269
Typedef Documentation
typedef int SOCKET
Author
Generated automatically by Doxygen for GNU CommonC++ from the source code.
GNU CommonC++ Sat Jun 23 2012 socket.h(3)