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

Transition phases - point to point , Transition Phases A PPP connectio...

Transition Phases A PPP connection goes through phases  which can be  shown in a transition phase . Dead: In  the dead phase  the link is not  being used. There is  no ac

Explain the terms - lan extension and ad hoc network, Explain the terms - L...

Explain the terms - LAN extension and Ad hoc network LAN extension: a wireless LAN integrated with a wired LAN to extend the coverage area of the LAN complex; Cross-building

Access-list range for an extended ip access-list, Recognize the access-list...

Recognize the access-list range for an extended IP access-list? Ans) IP extended access-lists use the number range of 100-199.

The received message - application layer , The Received Message If  we...

The Received Message If  we didn't mention  another  class of header lines that are  inserted by the SMTP receiving  server. The receiving  server upon receiving a message wit

Clock-driven scheme , Assume that the clock-driven scheme for generating st...

Assume that the clock-driven scheme for generating starting sequence numbers is used with a 16-bit wide clock counter (that is, sequence numbers range from 0 to 2^16).  The clock t

Explain about nonboundary-level masking, Q. Explain about Nonboundary-Level...

Q. Explain about Nonboundary-Level Masking? Nonboundary-Level Masking Bytes in the IP address that correspond to 255 in the mask will be repeated in the subnet addres

Discuss your strategy to test wlpc system, Wireless Phone Company (WLPC) is...

Wireless Phone Company (WLPC) is a provider of wireless phone service in the US with 100,000 customers serving mostly small markets. WLPC has just purchased additional airwaves in

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