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 unbound transmission media, Unbound Transmission Media Unbound ...

Unbound Transmission Media Unbound transmission media extend beyond the limiting confines of cabling. They give a good communication alternative for WANS. The lack of physical

Presentation layer of osi reference model, Q. Presentation layer of osi ref...

Q. Presentation layer of osi reference model? - The presentation layer makes sure that the information that the application layer of one system sends out is readable by the app

Effectiveness of data communications, Efficiency of a data communications s...

Efficiency of a data communications system depends on three fundamental characteristics - Delivery: The system should deliver data to the correct destination. Data should be r

Work-sharing constructs in openmp, Work-Sharing Constructs A work-shari...

Work-Sharing Constructs A work-sharing construct distributes the implementation of the associated region between the members of the team that encounters it. A work-sharing cons

Explain the term hardware cost, Hardware Cost It indicates to the cost ...

Hardware Cost It indicates to the cost concerned in the functioning of an interconnection network. It comprises the cost of arbiter unit, connectors, switches, interface logic

Thin ethernet wiring, THIN ETHERNET WIRING: Thin Ethernet needs thin c...

THIN ETHERNET WIRING: Thin Ethernet needs thin coax cable that is cost effective and easier to install than thick Ethernet coax. In this case transceiver electronics are creat

Describe the rpc and client server architecture, Can you describe the RPC a...

Can you describe the RPC and Client server Architecture?

Running netware 4.11 and you cant commune with your router, You are a syst...

You are a system administrator on a NetWare network, you are running  NetWare 4.11 and you cannot commune with your router. What do think what problem is? Ans)NetWare 4.11 defau

Disadvantages of fiber optics, Disadvantages of Fiber Optics - Install...

Disadvantages of Fiber Optics - Installation/maintenance - Unidirectional - Cost

Improvements for the wireline lan infrastructure, 5. CSMA/CD based Ethernet...

5. CSMA/CD based Ethernet LANs in various sites and Frame Relay (FR) service to connect them together. You want to make a difference in the organization by upgrading the LANs to be

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