
C++利用SOCKET进行TCP-IP协议通讯的最佳DEMO源码。
5星
- 浏览量: 0
- 大小:None
- 文件类型:None
简介:
首先需要深入理解基本的原理,2台电脑之间实现TCP通讯,最初的关键在于建立连接。在此过程中,需要明确服务器端与客户端之间的区别,简单来说,它们代表着主动发起者和被动接受者的关系。在人际对话中,通常先有人发起会话,否则谈何进行话题。同样地,TCPIP网络中建立连接的首要步骤是有一个服务器端程序,它处于被动状态,仅仅等待其他设备建立连接,不会主动发起连接请求。而客户端如何才能连接到这个服务器呢?这里涉及了IP地址和端口号的概念。可以把IP地址比作人的姓名或住址——它标识了计算机在网络中的唯一位置;端口号则类似于门牌号,用于区分同一地址下的不同服务或应用程序。例如,当我们访问网页时,实际上也是通过IP地址和端口号来定位目标服务器(比如IE浏览器默认的端口号是80)。值得注意的是,一个服务器可以同时接受来自多个客户端的连接请求;然而,一个客户端只能与一台服务器建立连接。在建立连接之后,服务器会自动分配内存区域来处理来自各个客户端的数据传输。那么如何让服务器区分来自不同客户端的数据呢?单纯依靠IP地址显然不够准确、不够完整。举例来说,一台计算机可能安装了多个QQ账号(分别对应不同的IP地址),服务器如何区分它们呢?因此更准确的区分方式是结合使用IP地址和端口号。尽管如此,客户端的端口号并非由用户自行指定而是由操作系统自动分配的;如果端口号重复使用会导致端口冲突。综上所述,请看下面的图表,它清晰地展示了程序A和程序B作为SOCKET程序,服务器端程序A监听81端口并接收到3个客户端的连接请求;计算机C同时向E和D两个终端建立了连接,分别使用789和790端口。
全部评论 (0)
还没有任何评论哟~


