网络编程
IP:定位网络上的节点(电脑,手机,服务器,路由器。。。) InetAddress类
IP分类:
ipv4 32位
ipv6 128位
特殊的IP:
非注册IP:供组织内部使用192.168.0.0~192.168.255.255
本地IP:127.0.0.1
IP->域名:DNS服务器进行转换
端口:区分软件
0~65535之间的整数,2个字节
自定义端口号推荐使用8000以上
统一协议下端口号不能冲突
8000以内的预留端口号
80:http协议的
8080:tomcat的
3306:mysql的
1521:oracle的
url:统一资源定位符
互联网的三大基石:http、html、url
URL类:
协议:
域名:
端口:
资源:
传输层协议:
标准,规范,协议
udp:非面向连接,协议简单,开销小,不安全,大小有限制
****tcp:基于连接 3次握手 协议复杂、开销大、效率低、安全,大小没限制
面向Socket编程
传输层为应用层开辟的口子,用来传输数据
udp对socket实现
DatagramSocket类:定义发送端或者接收端
DatagramPacket类:打包|数据包
upd基本接收流程:
注意:统一协议下端口号不能冲突
发送端:
1、定义发送端DatagramSocket(int port)
2、准备数据
3、打包send()
4、发送
5、关闭
接收端:
1、定义接收端DATa gram Socket(int port)
2、打包用来接收数据
3、接收数据
4、处理数据
5、关闭
tcp基本流程:
客户端:
1、定义客户端 Socket(inetAddress address,int port)
2、IO操作
3、关闭
服务端:
1、定义服务端 ServerSocket(int port)
2、阻塞监听 accept()
3、IO操作
4、数据处理
5、关闭