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 access methods used in lan, What are the Access methods used i...

What are the Access methods used in LAN: i. Switched access: It is used in LANs which are assigned around CBXs. Electronic switching is techniques are used to provide access

Difference between authentication and deauthentication, Difference between ...

Difference between Authentication and Deauthentication Authentication: Used to establish the self of stations to each other. Deauthentication: This service is appealed whene

Explain asynchronous FDDI, Explain Asynchronous FDDI Asynchronous bandw...

Explain Asynchronous FDDI Asynchronous bandwidth is allocated utilizing an eight-level priority scheme. Every station is assigned an asynchronous priority level. FDDI as wel

Routing through an internetwork, Which layer is responsible for routing by ...

Which layer is responsible for routing by an internetwork Ans) The Network layer is responsible for routing. This is the primary job of routers, which handle at the Network laye

Performance - application layer, Performance Running on  inexpensive  ...

Performance Running on  inexpensive  hardware oracle web cache  increase the  throughput of  website  by several  orders of magnitude. In  addition  oracle web cache  signific

What is extranet and intranet, Extranet and Intranet An Extranet is a t...

Extranet and Intranet An Extranet is a type of Intranet (Internal TCP/IP Network) that has been selectively opened to a firm's suppliers, customers. Intranet An intrane

Command structure in distributed enrollment protocol , Command Structure: ...

Command Structure: Commands are all-upper-case strings, either 4 or 6 characters in length. Table 1 shows the commands, and (for method commands) the parameters, return values, ex

Network, network diagram which must include at least 2router,2bridge and 4 ...

network diagram which must include at least 2router,2bridge and 4 switches and must have different protocols and different cable...?

Compute the entropy of the source, A statistical encoding algorithm is bein...

A statistical encoding algorithm is being considered for the transmission of a large number of long text files over a public network. Part of the file content is as follows: DOD

Dns id hacking - domain name server, DNS ID hacking The Dns use ID sys...

DNS ID hacking The Dns use ID system in order to keep track of each every request and replies. In order to spoof the DNS’s response, the hacker needs to do ID Hacking. In orde

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