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 is virtual lans, Q. What is Virtual LANs? Virtual LANs - LAN...

Q. What is Virtual LANs? Virtual LANs - LAN (Local area network) configured by software not by physical wiring Virtual LANs - Divides a LAN into logical, in

State the characteristics of thinnet, Thinnet Characteristics Short...

Thinnet Characteristics Shorter range (185 meters) as well as smaller capacity Bus topology LAN Connectors and cables include: thin coaxial cable, NICs and BNC-T

Protocol will send a message to routers, Which protocol will send a message...

Which protocol will send a message to routers if a network outage or congestion happen Ans) Internet Control Message Protocol - ICMP will send a message to routers if a network

Microwave applications, Q. Microwave Applications? - Unicasting - one-t...

Q. Microwave Applications? - Unicasting - one-to-one communication among sender and receiver - Cellular phones - Satellite networks - Wireless LANs

Wideband digital cross connects, Wideband Digital Cross Connects A SONE...

Wideband Digital Cross Connects A SONET  cross  connect  accepts  various  optical  carries  rates accesses the  STS signals  and switches at this level . it  is idally used at

Command to configure a explanation on an interface, Recognize the command t...

Recognize the command to configure a explanation on an interface Ans) Router(config-if)# explanation Finance department

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

Give example of the physical layer, FDDI, Token Ring and Ethernet are all p...

FDDI, Token Ring and Ethernet are all physical layer framing standards.

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