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

5 igrp supports a feature , 5 IGRP supports a feature that permits traffic ...

5 IGRP supports a feature that permits traffic to be distributed among up to 6 (4 default) paths to give greater allover throughput and reliability. What is this called? Ans) An

What is region, What is region? When hierarchical routing is used, the ...

What is region? When hierarchical routing is used, the routers are separated into what we will call regions, with every router knowing all the details about how to route packet

Icmp process, Some of the ?elds of IP and ICMP datagrams will be ?xed, some...

Some of the ?elds of IP and ICMP datagrams will be ?xed, some will be settable by the application, and others will computed according to the situation. You must set all ?elds of th

Explain priority and reservation of token passing, Priority and Reservation...

Priority and Reservation Higher priority stations may possibly access the token sooner Each station has a priority code Since token passes by station waiting to t

What is a file server, What is a File server? File servers are helpful ...

What is a File server? File servers are helpful for sharing files across a network. With a file server, the client passes requests for file records over system to file server.

Show the model for network access security, Q. Show the Model for Network A...

Q. Show the Model for Network Access Security? Model for Network Access Security (1) Gatekeeper functions comprise Password-based login authentications. (2)

Distinguish among client process and server process, QUESTION (a) Expla...

QUESTION (a) Explain briefly what is meant Client-server Computing? (b) Distinguish among client process and server process (c) What are the four basic characteristics of

Virtual private network, Virtual Private Network (VPN) adds the features of...

Virtual Private Network (VPN) adds the features of both public and private  networks. It is fixed to single organization and needs public network for connectivity. These connect

How can you identify the ip class of a given ip address, How can you identi...

How can you identify the IP class of a given IP address? By looking at the first octet of any given IP address, you can recognize whether it's Class A, B or C. If the first oct

Nfs best performance, what parameters should i have for the best nfs v4 per...

what parameters should i have for the best nfs v4 performance?

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