Visit Our UNIX and Linux User Community

Top Forums UNIX for Dummies Questions & Answers what is the advantage of unix sockets? Post 302525367 by DGPickett on Thursday 26th of May 2011 12:55:41 PM
Old 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.
Test Your Knowledge in Computers #58
Difficulty: Medium
Douglas Engelbart invented the computer mouse.
True or False?

7 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Does automount have an advantage over hard mount?

? (1 Reply)
Discussion started by: 98_1LE
1 Replies

2. HP-UX

fd passing between Independent processes using unix domain sockets

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

UNIX Message Queues vs. Sockets

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

UNIX domain sockets vs FIFOs

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

bash: one advantage of the ability to look for either synonym?

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

advantage of v490 over 480R

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

Cobbler - what is the advantage?

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
NONAMED(8)						      System Manager's Manual							NONAMED(8)

nonamed - not a name daemon, but acts like one SYNOPSIS
nonamed [-d[level]] [-p port] [-n address[/port]] DESCRIPTION
Nonamed is not an Internet name daemon. When started it immediately tries to find a real name daemon on the local network. If it finds one then it will relay any DNS queries to that name daemon. If it can't find one then it will do its best to answer simple queries using the /etc/hosts table for name to address translation. On startup nonamed broadcasts up to five" simple UDP queries on the local network. This is a somewhat nasty thing to do, because it makes all name servers on the net spring into action to answer the request. The first name server to answer is used by nonamed to answer the queries of its clients. The broadcast search is repeated after an hour to give another name server a chance to be abused. (It is quite normal for a host to use a remote name server. The broadcasts are a bit unfriendly, but they only happen once an hour.) If a real name server is found then nonamed enters "relay mode", passing all queries on. In relay mode the daemon cannot be distinguished from a real DNS name daemon. Nonamed accepts both UDP and TCP queries under Minix-vmd. Under standard Minix only UDP queries are accepted. 256" relayed UDP queries can be outstanding before it forgets where the first one came from. In answer mode nonamed can answer simple DNS queries to translate a host name to an IP address, or an IP address to a host name. Suppose /etc/hosts looks like this: localhost Then queries for the host names listed can be answered with the IP addresses to the left of them. If the name can't be found then it is retried with the domain name stripped of, this is because "localhost" is looked up as "" in the above example. Reverse lookups are answered with the first hostname on the line with the IP address. UDP queries are immediately answered on startup if the answer can be found in the hosts file. Failure answers, and answers to TCP queries are delayed until it decides that there are no real name servers out there. Nonamed employs several timeouts for efficient operation: If five" broadcasts, two seconds" apart fail to produce a name server on startup then it decides that there are no real name servers around. After 1 hour" it will again look for a name server. (We don't want to hog the same one indefinitely.) If no UDP reply is seen in .ds m1 than a simple probe is sent the name server. If that doesn't provoke an answer in two seconds" then it will look for a new name server. A failing TCP connection will also invoke a search, the TCP connection is then made to the new name server. A client using UDP will retry eventually, a client using TCP will notice nothing but a short delay. The daemon drops back into answer mode if the search fails and it has a hosts file with a "localhost" entry. It waits five minutes" for any action on a TCP stream before the connection is aborted. In answer mode it will generate data with a TTL (time to live) of 1 hour". OPTIONS
The options are only useful when debugging nonamed, although it can be very instructive to watch DNS queries being done. -d[level] Set debugging level to level (a single digit, by default 1.) Debug mode 1 makes nonamed decode and display the DNS queries and replies that it receives, sends and relays. The decoding only handles the common cases. In debug mode 2 it prints tracing information about the internal jobs it executes. In debug mode 3 it core dumps when an error causes it to exit. The debugging level may also be increased by 1 at runtime by sending signal SIGUSR1 or turned off (set to 0) with SIGUSR2. [-p port] Port to use instead of the normal domain port. [-n address[/port]] Use this IP address and port to find a real name server. It can be used to make nonamed relay to another nonamed. (They do not listen to broadcasts, of course.) You can run two daemons on one machine if you choose a new port number for one of them. You can force nonamed out of relay mode by sending it a hangup signal. FILES
/etc/hosts Hosts to address translation table when in answer mode. SEE ALSO
gethostbyname(3), resolver(3), hosts(5), set_net_default(8), boot(8), inetd(8), irdpd(8), rarpd(8). NOTES
You can specify a remote name server in /etc/resolv.conf to circumvent nonamed. But then you lose its talent for automatically finding new name servers when the remote name server becomes unreachable. Don't add a "localhost" entry to the hosts file if there are remote name servers. It makes nonamed drop back in answer mode on a flaky network. BUGS
If you can get a remote nonamed to listen to your name server then you can make it believe anything you want to. You need access to a machine on the same subnet of course. AUTHOR
Kees J. Bot ( NONAMED(8)

Featured Tech Videos

All times are GMT -4. The time now is 03:32 PM.
Unix & Linux Forums Content Copyright 1993-2020. All Rights Reserved.
Privacy Policy