什么是网络编程?
在网络通信协议下,不同计算机上运行的程序,进行的数据运输
常见的软件架构
C/S(Client/Server):客户端/服务端,在用户本地需要下载并安装客户端程序,在远程有一个服务器端程序
B/S(Browser/Server):浏览器/服务器,只需要一个浏览器,用户通过不同的网址,访问不同的服务器
B/S架构的优缺点:
①不需要开发客户端,只需要页面+服务端
②用户不需要下载,打开浏览器就能使用
③如果应用过大,用户体验不好
C/S架构优缺点:
实现下载好资源(图片、音乐等)
①画面可以做的很精美,用户体验好
②需要开发客户端,也需要开发服务器
③用户需要下载和更新的时候太麻烦
网络编程三要素
IP
- 设备在网络中的地址,是唯一的标识,分类IPv4、IPv6
IPv4
全程:Internet Protocol version 4
采用32位地址长度,分成四组(可以表示2^32)
采用点分十进制
127.0.0.1,也可以是localhost:是回送地址也称本地回环地址,也称本机IP,永远只会找当前所在本机
IPv6
全程:nternet Protocol version 6
由于互联网的蓬勃发展,IP需求量越来越大,IP4不够用
IPv6采用128位地址长度,分成8组(可以表示2^128)
采用冒分十六进制
2001:0001:0002:0080:200C:0002:0002:417A可以省略前边的零2001:1:2:80:200C:2:2:417A
FF01:0:0:0:0:0:0:1101,0位压缩法FF01::1101
端口号
- 应用程序在设备中唯一的表示(比如:QQ、微信)
协议
- 数据在网络中传输的规则,常见的协议有UDP、TCP、http、https、ftp。
InetAddress
UDP通信程序(发送数据)
①创建发送端DatagramSocket对象
②数据打包(DatagramPacket)
③发送数据
④释放资源
UDP通信程序(接收数据)
①创建接收端的DatagramSocket对象
②接受打包好的数据
③解析数据包
④释放资源
运行时,先运行接收数据部分代码,再运行发送数据代码
UDP的三种通信方式
①单播
②组播
- 组播地址:224.0.0.0 ~ 239.255.255.255
- 其中224.0.0.0 ~ 224.0.0.255为预留的组播地址
③广播
- 广播地址:255.255.255.255