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

What are the possible ways of data exchange in ccna, Normal 0 f...

Normal 0 false false false EN-IN X-NONE X-NONE MicrosoftInternetExplorer4

Explain logical ring physical star topology, Explain Logical Ring Physical ...

Explain Logical Ring Physical Star topology for Token-Passing Standard. It is definite that any break in the ring at any point will interrupt communications for all machines.

Application of satellite communication , Application of Satellite Communica...

Application of Satellite Communication started with the installation and commissioning of STD- “B” Earth Station having 11m diameter antenna in 1982, Initially with to only three

State some security models, State some Security Models The first and f...

State some Security Models The first and foremost thing one needs to do is to chalk out a security plan and policy based on any security model. The term security policy shall

What are the key design issues of a computer network, What are the key desi...

What are the key design issues of a computer Network? a. Connectivity b. Cost-effective Resource Sharing c. Support for common Services d. Performance

Chord, how to implement chord connection as the network management system ?...

how to implement chord connection as the network management system ?

Receive window - transport layer, Receive Window This  field  defin...

Receive Window This  field  defines the size  of the  window in bytes  that the  other party  must  maintain. Note  that the  length  of this  field 16 bits  which  means

What is the mesh network, A network in which there is multiple network link...

A network in which there is multiple network links among computers to provide multiple paths for data to travel.

How to configure vtp pruning on the switches-ccna, Configure VTP Pruning on...

Configure VTP Pruning on the Switches VTP pruning permits a VTP server to suppress IP broadcast traffic for particular VLANs to switches that do not have any ports in that VLAN

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