在开始之前,先给大家普及一下要用到的网络知识:
1.在每台带有网卡的计算机中 , 会有一个系统内嵌的本地网络 即 127.0.0.1 (localhost) 就是我们常说的本地主机 , 我们可以在这台机器上打开 0 - 32767 范围之间的所有端口进行互相通信
2.Socket通信
网络上的两个程序通过一个双向的通信连接实现数据的交换,这个连接的一端称为一个socket。
简单通俗的讲 , Socket 通信就是打开一个端口,利用这个端口为另外 N 个端口发送/接收数据常用的协议是 TCP(在易语言中是 服务器 \ 客户 组件)/UDP (在易语言中是 数据报 和数据报提供者中)
TCP和UDP的较大区别:
TCP包发包到 , 即发送一个数据报后,需要确定对方完整地接收到了之后再开始发送下一个,具有更好的安全性,在程序运行时也不容易出错 , 一般软件之间的通信用的就是这种协议 , 本帖也以 TCP 协议的Socket传输为主
UDP是只管发不管到 , UDP 只管一直发送数据,不检查对方主机接收的完整性 , 所以数据包在中途被拦截 , 或者因为某种原因导致对方主机无法完整接收时 , 可能导致程序出现问题 现对于TCP的优点就是 速度快 适合需要小延迟和对安全性要求不高的程序 例如:游戏
TCP协议向下兼容UDP协议 而 UDP 协议不兼容 TCP 协议