目录:
1、为什么要用Socket?
2、什么是Socket?
3、Socket通信的基本原理
4、Socket应用示例
正文:
1、为什么要用Socket?
我们深谙信息交流的价值,网络中进程之间是如何通信,我们每天打开浏览器浏览网页时,浏览器的进程怎么与web服务器通信的?当你用QQ聊天时,QQ进程怎么与服务器或你好友所在的QQ进程通信?这些都得靠socket。
就目前而言,几乎所有的应用程序都是采用socket,而现在又是网络时代,网络中进程通信是无处不在,这就是为什么说“一切皆socket”。
•
人和人之间交流可以通过
【
电话
】
•
程序和程序之间是通过
【Socket】
来通信
•Socket又称为套接字,在程序内部提供了与外界通信的端口
•
套接
字就是程序之间的
【
电话机
】
总结:通过建立Socket连接,可为通信双方的数据传输提供通道。
Socket的主要特点有数据丢失率低,使用简单且易于移植。
2、什么是Socket?
•Socket翻译过来就是“套接字”,英文含义“插座”
•
Socket
是一种抽象层,应用程序通过它来发送和接受数据,使用
Socket
可以将应用程序添加到网络中,与处于同一网络中的其他应用程序进行通信。
•
实际上,
Socket
是在应用层和传输层之间的一个抽象层,它把
TCP/IP
层复杂的操作抽象为几个简单的接口,供应用层调用实现进程在网络中的通信。
注:
“插座”:Socket就像一个电话插座,负责连通两端的电话,进行点对点通信,让电话可以进行通信,端口就像插座上的孔,端口不能同时被其他进程占用。而我们建立连接就像把插头插在这个插座上,创建一个Socket