Sockets, Computer Networking

Assignment Help:

When programming a server or a client, we have to deal with port numbers and IP addresses, but we usually do this through an abstraction called a socket. Sockets are the standard API for network programming; they are the abstraction which we use to describe a connection, i.e. a duplex communication. The typical way of creating and using sockets, in C, is the following:

// Client side ------------------------------------------------------------

struct addrinfo *addr;

int fd = socket(AF_INET, SOCK_STREAM, 0); // fd is the socket's filehandle
getaddrinfo("www.cnn.com", "http", NULL, &addr); // converts hostname to IP address
connect(fd, addr->ai_addr, addr->ai_addrlen); // connect to remote host
send(fd, send_buf, len, 0); // now send then receive data
...
recv(fd, recv_buf, len, 0);

// Server side ------------------------------------------------------------

struct addrinfo *addr, *remote_addr;
int fd = socket(AF_INET, SOCK_STREAM, 0);

// fd is the socket's filehandle getaddrinfo(NULL, "http", NULL, &addr); // convert service to port number ("ht bind(fd, addr->ai_addr, addr->ai_addrlen); // bind socket to a particular port nu listen(fd, 1); // listen for connections. Second argument is # of allowable waiting

// Now accept connection on socket fd; when a connection comes in, we'll move it to int newfd = accept(fd, remote_addr->ai_addr, &(remote_addr->ai_addrlen));

// we process the accepted connection on newfd, with recv() and send(),

// and at the same time, we'll keep using fd to accept other incoming connections


Related Discussions:- Sockets

Full form of httpd, Full form of HTTPd It stands for HTTP daemon. HT...

Full form of HTTPd It stands for HTTP daemon. HTTPd is the program run on a UNIX platform to establish a Web server. On other platforms, such as Microsoft Windows NT, the We

Modern computer , modern technology in world of 21 century

modern technology in world of 21 century

Torus, Torus The mesh network with enclose around connections is called...

Torus The mesh network with enclose around connections is called Tours Network.

Message passing libraries mpi and pvm, In this part, we shall talk about ab...

In this part, we shall talk about about message passing libraries. In history, various message passing libraries have been available since the 1980s. These executions differed subs

Distribution system from bss, To Distribution System from BSS We requir...

To Distribution System from BSS We require to identify the AP as the first hop to the destination (B) A will receive an ACK from the AP - indicates frame successfully on

Ku-band earth station, Ku-BAND EARTH STATION This is most recent on-goi...

Ku-BAND EARTH STATION This is most recent on-going project under which 40 remote sites will be installed for CDMA back haul and 60 sites will be installed for GSM back haul. 4

Define the microcells- routing and switching, Microcells As cells becom...

Microcells As cells become smaller, antennas move from the tops of tall buildings or hills, to the tops of small buildings or the sides of large buildings, and finally to lamp

what is a typical value when rtp is used, In the VOIP system, let h be the...

In the VOIP system, let h be the total number of header bytes added to each chunk, including UDP and IP header. a)  Assuming an IP datagram is emitted every 20 msec, find the tr

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd