Java:网络编程基础
网络通信的三个条件
- IP地址
网络中设备的标识,不易记忆,可用主机名 - 端口
用于标识进程的逻辑地址,不同进程的标识 - 协议
通讯的规则,如TCP,UDP
IP地址
IP地址的组成:网络号+主机号共4×8 32位
A类IP地址:第一段号码为网络号码,后三段号码为本地计算机的号码
B类IP地址:前二段号码为网络号码,后二段号码为本地计算机的号码
C类IP地址:前三段号码为网络号码,后一段号码为本地计算机的号码
D类 E类 保留
特殊地址
127.0.0.1 回环地址,代表本机
xxx.xxx.xxx.0 网络地址
xxx.xxx.xxx.255 广播地址
A类 1.0.0.1—127.255.255.254 (1)10.X.X.X是私有地址(私有地址就是在互联网上不使用,而被用在局域网络中的地址) (2)127.X.X.X是保留地址,用做循环测试用的。
B类 128.0.0.1—191.255.255.254 172.16.0.0—172.31.255.255是私有地址。169.254.X.X是保留地址。
C类 192.0.0.1—223.255.255.254 192.168.X.X是私有地址
D类 224.0.0.1—239.255.255.254
E类 240.0.0.1—247.255.255.254
DOS命令
ipconfig:查看本机IP地址
ping IP 测试本机与目的的连通性
端口号
- 物理端口 网卡端口
- 逻辑端口
每个网络程序至少有一个逻辑端口
用于标识进程的逻辑地址,至少有一个逻辑端口
有效端口:065535,其中01024系统使用或保留端口
协议
- UDP
数据打包 大小在限制在64K
不建立连接
不可靠
速度快 - TCP
建立连接,形成传输数据的通道
可进行大数据量传输
可靠
因建立连接,速度稍慢
Java下的网络编程
- InetAddress类
//类方法
getByAddress(byte[] addr)//根据原始IP地址返回地址
getByAddress(String host,byte[] addr)//根据提供的主机名和IP地址返回地址
getByName()//根据主机名获取地址
getLocalHost()//获取本机地址
getLoopbackAddress()//返回回送地址 Windows中127.0.0.1作为本地回送地址
-
URL类
待补充 -
Socket类
Socket:即(套接字),网络上具有唯一标识的IP地址和端口号组合在一起即构成唯一能识别的套接字
Socket通信机制:
a.通信的两端都有Socket
b.网络通信其实就是Socket间的通信
c.数据在两个Socket间通过I/O流传输
Socket类实现了客户端Socket,SeverSocket类实现了服务器端的Socket
通讯机制如下图,其中I/O流类型应相同(相对于字符流,字节流)
2018/8/8