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

Designing a network for a retail customer, You are designing a network for ...

You are designing a network for a retail customer; they plan to have 5 locations initially with the main store acting as the warehousing depot.  Within the next year they are plann

Find out the current flows through the photodiode, Quetion: A photodiod...

Quetion: A photodiode with a dark current of 10 nA has a responsivity of 0.4 A/W at a certain wavelength. What current flows through the photodiode when it is reverse biased an

Task of changing the ip address, 1. Bob has been given the task of changing...

1. Bob has been given the task of changing the IP address and enabling telnet access on a CISCO 2950 enterprise switch. The current IP address is 10.10.10.2/8 the new IP address

How to protect computer hardware by threats, How to protect computer Hardwa...

How to protect computer Hardware by threats The first component in the computer system vulnerable to attacks or threats, and most important to be protected, is the hardware.

Concurrently read concurrently write (crcw), It is one of the models based ...

It is one of the models based on PRAM. In this model, the processors access the memory locations concurrently for reading as well as writing operations. In the algorithm, which use

Explain the uses of firewall in computer, Explain the uses of Firewall in c...

Explain the uses of Firewall in computer For Intranet developers, restricting access of unauthorised users to the Web site has been the greatest challenge. In addition to preve

Show data link and physical vs subnet, Q. Show Data link and Physical vs Su...

Q. Show Data link and Physical vs Subnet? - Data link layer The function of the Data Link Layer is -offers for the control of the physical layer and detects and possib

Shared memory programming, We know that all processors share a common memor...

We know that all processors share a common memory in shared memory model. Every processor, however, can be assigned a different part of the program stored in the memory to implemen

Explain the architecture and usage of isdn, Computer Networks 1. Write ...

Computer Networks 1. Write about different network structures in use. 2. Explain the architecture and usage of ISDN. 3. Describe the concept of framing in Data Link Layer

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