https://www.geeksforgeeks.org/socket-in-computer-network/
https://medium.com/swlh/understanding-socket-connections-in-computer-networking-bac304812b5c
https://www.ibm.com/docs/en/i/7.1?topic=communications-socket-programming
- You can view and print a PDF file of this information.
- Prerequisites for socket programming
Before writing socket applications, you must complete these steps to meet the requirements for compiler, AF_INET and AF_INET6 address families, Secure Sockets Layer (SSL) APIs, and Global Secure Toolkit (GSKit) APIs. - How sockets work
Sockets are commonly used for client and server interaction. Typical system configuration places the server on one machine, with the clients on other machines. The clients connect to the server, exchange information, and then disconnect. - Socket characteristics
Sockets share some common characteristics. - Basic socket design
These examples illustrate the most common types of socket programs that use the most basic design, which can be a basis for more complex socket designs. - Advanced socket concepts
Advanced socket concepts go beyond a general discussion of what sockets are and how they work. These concepts provide ways to design socket applications for larger and more complex networks. - Socket scenario: Creating an application to accept IPv4 and IPv6 clients
This example shows a typical situation in which you might want to use the AF_INET6 address family. - Socket application design recommendations
Before working with a socket application, assess the functional requirements, goals, and needs of the socket application. Also, consider the performance requirements and the system resource impacts of the application. - Examples: Socket application designs
These example programs illustrate the more advanced socket concepts. You can use these example programs to create your own applications that complete a similar task.
threads
We didn't have the Web, HTTP, or graphical browsers back in the good old days of the Internet, circa the early 1990s. We used Usenet news, FTP, and command-line interfaces. But, as great as the old days were, there were some issues. For example, when we were using Kermit to download kilobytes of free software from a popular FTP site over our 2400bps modems, we frequently received error messages like this:
% ftp eunl.java.sun.com
Connected to eunl.javasoft.com. 220 softwarenl FTP server (wu-2.4.2-academ[BETA-16]+opie-2.32(1) 981105) ready. Name (eunl.java.sun.com:elharo): anonymous 530- 530- Server is busy. Please try again later or try one of our other 530- ftp servers at ftp.java.sun.com. Thank you. 530- 530 User anonymous access denied. Login failed. ftp>
In fact, we were generally more likely to come across an overloaded and congested site in the days when the Internet had only a few million users instead of a few hundred million now. The issue was that for each connection, both the FTP servers included with most Unixes and third-party FTP servers like wu-ftpd forked a new process. A hundred concurrent users meant 100 more processes to manage. Processes are quite heavyweight items, so having too many of them could bring a server to its knees quickly. The issue wasn't that the computers weren't powerful enough or that the network wasn't fast enough; rather, the FTP servers were (and still are) poorly built.
No comments:
Post a Comment