A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 杰哥,我就服你 于 2018-7-19 19:12 编辑

socket简介
ocket(简称 套接字) 是进程间通信的一种方式,它与其他进程间通信的一个主要不同是:

它能实现不同主机间的进程间通信,我们网络上各种各样的服务大多都是基于 Socket 来完成通信的

例如我们每天浏览网页、QQ 聊天、收发 email 等等

udp网络程序-发送、接收数据

1. udp网络程序-发送数据

创建一个基于udp的网络程序流程很简单,具体步骤如下:

创建客户端套接字
发送/接收数据
关闭套接字



代码如下:




2. udp网络程序-发送、接收数据



tcp客户端

tcp的客户端与服务端

大家都使用过 QQ、微信、支付宝、外卖、银行等等各种手机 APP, 这些软件叫做客户端。
这些客户端软件都有一个特点: 如果只有客户端软件是无法享受到软件提供的服务. 客户端软件需要与服务器端软件相互配合才能完成. 简言之, 客户端就是接受服务的一方, 服务器端就是提供服务的一方。

tcp有严格的客户端和服务端之分。基于 TCP 传输方式的通信就必须事先建立连接, 则有一方是主动连接的,而另一方是被连接的; 主动连接的一方一般都是客户端, 被连接的一方一般都是服务端。


tcp客户端构建流程

示例代码:



<1>tcp客户端



tcp服务器

生活中的电话机
如果想让别人能更够打通咱们的电话获取相应服务的话,需要做以下几件事情:

买个手机
插上手机卡
设计手机为正常接听状态(即能够响铃)
静静的等着别人拨打

tcp服务器


如同上面的电话机过程一样,在程序中,如果想要完成一个tcp服务器的功能,需要的流程如下:


socket创建一个套接字
bind绑定ip和port
listen使套接字变为可以被动连接,即开启监听
accept等待客户端的连接
recv/send接收发送数据

一个很简单的tcp服务器如下:

<1>tcp服务器

5.png (41.03 KB, 下载次数: 51)

5.png

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马