Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Socket Programming
Post: #1


Sockets are interfaces that can "plug into" each other over a network. Once so "plugged in", the programs so connected communicate. A "server" program is exposed via a socket connected to a certain /etc/services port number. A "client" program can then connect its own socket to the server's socket, at which time the client program's writes to the socket are read as stdin to the server program, and stdout from the server program are read from the client's socket reads.

Before a user process can perform I/O operations, it calls Open to specify and obtain permissions for the file or device to be used. Once an object has been opened, the user process makes one or more calls to Read or Write data. Read reads data from the object and transfers it to the user process, while Write transfers data from the user process to the object. After all transfer operations are complete, the user process calls Close to inform the operating system that it has finished using that object.

When facilities for InterProcess Communication (IPC) and networking were added, the idea was to make the interface to IPC similar to that of file I/O. In Unix, a process has a set of I/O descriptors that one reads from and writes to. These descriptors may refer to files, devices, or communication channels (sockets). The lifetime of a descriptor is made up of three phases: creation (open socket), reading and writing (receive and send to socket), and destruction (close socket).

Sockets are used nearly everywhere, but are one of the most severely misunderstood technologies around. This is a 10,000 foot overview of sockets. It's not really a tutorial - you'll still have work to do in getting things working. It doesn't cover the fine points (and there are a lot of them), but I hope it will give you enough background to begin using them decently.I'm only going to talk about INET sockets, but they account for at least 99% of the sockets in use. And I'll only talk about STREAM sockets - unless you really know what you're doing (in which case this HOWTO isn't for you!), you'll get better behavior and performance from a STREAM socket than anything else. I will try to clear up the mystery of what a socket is, as well as some hints on how to work with blocking and non-blocking sockets. But I'll start by talking about blocking sockets. You'll need to know how they work before dealing with non-blocking sockets.

Part of the trouble with understanding these things is that "socket" can mean a number of subtly different things, depending on context. So first, let's make a distinction between a "client" socket - an endpoint of a conversation, and a "server" socket, which is more like a switchboard operator. The client application (your browser, for example) uses "client" sockets exclusively; the web server it's talking to uses both "server" sockets and "client" sockets.
Of the various forms of IPC (Inter Process Communication), sockets are by far the most popular. On any given platform, there are likely to be other forms of IPC that are faster, but for cross-platform communication, sockets are about the only game in town.

They were invented in Berkeley as part of the BSD flavor of Unix. They spread like wildfire with the Internet. With good reason -- the combination of sockets with INET makes talking to arbitrary machines around the world unbelievably easy (at least compared to other schemes).

Important Note..!

If you are not satisfied with above reply ,..Please


So that we will collect data for you and will made reply to the request....OR try below "QUICK REPLY" box to add a reply to this page
Popular Searches: wildfire, secure socket layer, socket programming best practices, socket interface seminar report, socket programming project ideas, ca secure socket ad, secure socket encryption,

Quick Reply
Type your reply to this message here.

Image Verification
Image Verification
(case insensitive)
Please enter the text within the image on the left in to the text box below. This process is used to prevent automated posts.

Possibly Related Threads...
Thread: Author Replies: Views: Last Post
  Dynamic programming language seminar projects crazy 2 2,245 03-01-2013 12:31 PM
Last Post: seminar details
  SEMINAR ON MICROENGINE PROGRAMMING IN NWP computer girl 0 536 09-06-2012 03:09 PM
Last Post: computer girl
  UAV DevBoard: Getting Started with PIC Programming computer girl 0 479 09-06-2012 11:35 AM
Last Post: computer girl
Music D Programming Language Computer Science Clay 2 1,717 14-03-2012 02:35 PM
Last Post: seminar paper
Thumbs Down Extreme Programming (XP) computer science crazy 2 1,370 14-03-2012 11:57 AM
Last Post: seminar paper
Photo Genetic Programming (Download Full Report And Abstract) computer science crazy 3 3,079 29-02-2012 09:35 AM
Last Post: seminar paper
  GENETIC PROGRAMMING A SEMINAR REPORT Computer Science Clay 3 3,514 29-02-2012 09:35 AM
Last Post: seminar paper
  Introduction to the C Programming Language seminar class 1 5,989 14-02-2012 01:43 PM
Last Post: seminar paper
Brick Categorization of Programming Languages computer science crazy 1 1,337 14-02-2012 01:43 PM
Last Post: seminar paper
  D (programming language) seminar surveyer 2 2,025 14-02-2012 01:43 PM
Last Post: seminar paper