Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

Just out of curiosity, how do programs acess the internet? For example, Icloud is a program by apple that automatically syncs photos, notes, etc. from an apple device to a pc through a wireless connection. Is there a specific function in the C language that allows it to do this? I'm interested in using wireless information like this to control robots, sync computers, etc in the future.

share|improve this question

closed as not constructive by nhinkle Mar 15 '13 at 21:06

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.If this question can be reworded to fit the rules in the help center, please edit the question.

1  
You should look into Socket programming in C/C++. Read more. –  Bibhas Mar 15 '13 at 20:26
    
For the in-depth gory details of how to do it in C, see Beej's Guide to Network Programming at beej.us/guide/bgnet/output/html/singlepage/bgnet.html –  Aaron Jones Mar 15 '13 at 20:27
2  
Wow, where do you want to start, with Ethernet, ARP, TCP/IP, UDP/IP, Standard listening Ports, DHCP, Sockets, DNS, HTTP, routing, firewalls, NAT, session control, SSL, OSI Model, Load balancing, Unix/Linux Servers, Apache, WiFi? This is something for a book, I`m afraid, not a simple answer on Super User. –  Robert Ilbrink Mar 15 '13 at 20:30
    
It's not impossible to draw a simplified diagram of the network stack and explain the most important tasks of each level (physical, data, network, transport, application). Don't see why this is closed. –  Ярослав Рахматуллин Mar 16 '13 at 1:33
    
Thanks for the lead guys. –  Nick Mar 18 '13 at 19:49
add comment

1 Answer

up vote 3 down vote accepted

This is a very big topic that can not be answered in a simple Q and A format on this site.

If you just want to write programs to talk over the internet, I would recommend learning the basics of programming. As you learn programming you will start to understand how things talk to each other and the whole "client server architecture" and programming with sockets.

If you want to learn the nuts and bolts of "How the internet works" and don't really care about the programming side, I recommend listening to the Security Now! episodes on "How the internet works". I will link the episodes directly talking about the topic but I do recommend going and listening to the other episodes in between the ones I listed (especially the Q&A episodes following each linked ep.)

share|improve this answer
add comment

Not the answer you're looking for? Browse other questions tagged or ask your own question.