1. 网络编程
网络编程可以让程序与网络上的其他设备中的程序进行数据交互。 网络通信基本模式:Client-Server(CS) 、 Browser/Server(BS)。
1.1 网络编程关键三要素
- IP地址:设备在网络中的地址,是唯一的标识。
- 端口:应用程序在设备中的唯一标识。
- 协议:数据在网络中传输的规则,常见的协议有UDP协议和TCP协议。
1.1.1 IP地址
IP(Internet Protocol):全称“互联网协议地址”,是分配给网上设备的唯一标志。常见的IP分类为:IPv4和IPv6。
IP地址形式:
- IP地址有公网地址和私有地址(局域网使用)。
- 192.168.开头的就是常见的局域网地址,范围即为192.168.0.0–192.168.256.256,专门为组织机构内部使用。
IP常用命令:
- ipconfig:查看本机IP地址。
- ping IP地址:检查网络是否连通。
特殊IP地址:
- 本机IP:127.0.0.1 或 localhost:称为回送地址也可以称为本地回环地址,只会寻找当前所在本机。
1.1.2 端口号
标识正在计算机设备上运行的进程(程序),被规定为一个16位的二进制,范围是0~65535。
端口类型:
- 周知端口:0~1023,被预先定义的知名应用占用(如:HTTP占用80,FTP占用21)
- 注册端口:1024~49151,分配给用户进程或某些应用程序。(如:Tomcat占用8080,MySQL占用3306)
- 动态端口:49152~65535,一般不固定分配给某种进程,而是动态分配。
注意:个人开发程序选择注册端口,且一个设备中不能出现两个程序的端口号一样,否则出错。
1.1.3 通信协议
连接和通信数据的规则被称为网络通信协议。
传输层常见的两个协议:TCP(Transmi Control Protocol):传输控制协议、UDP(User Datagram Protocol):用户数据报协议。
TCP协议特点:
- 使用TCP协议,必须双方先建立连接,它是一种面向连接的可靠通信协议。
- 传输前,采用三次握手方式建立连接,是可靠的。
- 在俩接种可以进行大数据量的传输。
- 连接、发送数据都需要缺人,且传输完毕后,还需释放自己建立的连接,通信效率较低。
UDP协议特点:
- UDP是一种无连接、不可靠传输的协议。
- 将数据源IP、目的地IP和端口封装成数据包,不需要建立连接。
- 每个数据包的大小限制在64KB内
- 发送不管对方是否准备好,接收方收到也不确认,是不可靠的。
- 可以广播发送,发送数据时无需释放资源,开销小,速度快。