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

Use of coaxial cable, Has a central core conductor covered in an insulating...

Has a central core conductor covered in an insulating sheath encased in an outer conductor of metal foil  RG numbers indicate physical specs such as thickness and type of insula

Explain bus topology, Explain Bus Topology. The physical Bus topology i...

Explain Bus Topology. The physical Bus topology is the easiest and most widely used of the network designs. It having of one continuous length of cable (trunk) and a terminatin

Introduction-pram algorithms, One of the most popular models for designing ...

One of the most popular models for designing parallel algorithms is PRAM (Parallel Random Access Machine). A PRAM consists of unbounded number of processors interrelating with each

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

What is raid in ccna, A method used to standardize and categorize fault-tol...

A method used to standardize and categorize fault-tolerant disk systems. RAID levels give lot of mixes of performance, reliability, and cost. Some servers give three of the RAID le

What are the trends in network security, Q. What are the trends in Network ...

Q. What are the trends in Network Security ? Trends in Network Security Improved vigilance for virus infections Continual maturation of firewall technologies

Advantages of ls over dv algorithm, Advantages of LS over DV algorithm ...

Advantages of LS over DV algorithm There  are a number of advantages to link  state  protocols  especially when  compared to  the distance vector based  routing  protocols. The

Enumerate about the virtual private network, Enumerate about the Virtual Pr...

Enumerate about the Virtual Private Network (VPN) Even though, many firewalls also include the features of the virtual private network, the functionality and capabilities of V

Packet loss and retransmission in tcp, Packet loss and retransmission in TC...

Packet loss and retransmission in TCP TCP gets reliability by retransmission. An acknowledgement is used to check that data has arrived successfully. If acknowledgement does no

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