使用socket编程

作者: helinyu | 来源:发表于2016-12-24 15:06 被阅读8次

socket 在计算机中提供了一个通讯端口,可以通过这个端口与任何一个具有socket接口的计算机通讯,应用程序在网络上传输、接收的信息都通过这个socket接口来实现。

Socket通讯原理如下:
服务端实现监听连接,客户端实现发送连接请求,简历连接后,发送和接收数据进行通讯。
具体:
服务端建立一个socket,设置好本机的IP和监听的端口并与socket进行绑定,开始监听连接请求;当接收到请求后,发送确认,同客户端建立连接,开始于客户端进行通讯。
同时客户端建立一个socket,设置好服务器端的IP和提供服务的端口,发出连接请求,接收到服务的确认后,尽力连接,开始与服务器进行通讯。
服务端和客户端的连接以及它们之间的数据传送均采用同步方式(要链接一个ws2_32.lib的库文件,头文件winsock2.h,dll文件Ws2_32.dll).
采用UDP编程则不一样,UDP编程的发送端只管发送就可以了,不用检查网络的链接状态。

socket通讯原理图

在服务器端有一个控制程序(或者windows服务)与多个客户端程序通讯,其中主线程有一个socket绑定在一个固定的端口上,负责监听客户端的sock信息。每当启动一个客户端,客户端发送一个socket连接请求,服务器端就新开启一个线程,并在其中穿件一个socket与该客户端的socket通信,知道客户端程序关闭,结束该线程,主线程中的socket在应用程序退出时关闭。

相关文章

  • 许世伟的Go语言基础 第五章总结

    第5章 网络编程 5.1 socket编程 以往socket编程: 建立socket:使用socket()函数。 ...

  • TCP socket 编程

    TCP socket 编程 讲一下 socket 编程 步骤 使用 socket 模块 建立 TCP socket...

  • Java中Socket连接超时问题

    Java中Socket连接超时问题 在Socket编程中,客户端常使用Socket socket = new So...

  • Python学习23-socket编程

    查看所有Python相关学习笔记 socket编程 应用使用socket编程接口来通过TCP/IP协议进行通信 网...

  • OpenResty搭建高性能服务端

    Socket编程 Linux Socket编程领域为了处理大量连接请求场景,需要使用非阻塞I/O和复用,selec...

  • 使用Socket实现TCP编程及聊天室的编写

    title: 『 Socket 』使用Socket实现TCP编程及聊天室的编写tags: socketcatego...

  • 使用socket编程

    socket 在计算机中提供了一个通讯端口,可以通过这个端口与任何一个具有socket接口的计算机通讯,应用程序在...

  • 网络编程

    python学习笔记-网络编程 socket编程: socket()函数:socket.socket([famil...

  • socket

    iOS 使用 socket 即时通信(非第三方库)简单理解Socket iOS socket网络编程(一) soc...

  • socket创建udp传输

    socket网络编程那篇文章说过,udp是面向无连接的,使用数据报,socket type使用sock_DGRAM...

网友评论

    本文标题:使用socket编程

    本文链接:https://www.haomeiwen.com/subject/hmnlvttx.html