Day7 Java 网络编程 1

IP地址
- 唯一定位一台网络上的计算机
- 127.0.0.1:本机localhost
- ip地址分为IPv4和IPv6
- IPv4 四个字节组成;
- IPv6:128位,8个无符号整数组成。
- 2001:0bb2:aaaa:bbbb:cccc:dddd:eeee:2222
Java
java.net.InetAddress
这个类用来表示IP地址。
一些方法:
- static InetAddress getAllByName(String name),给出主机的名称,根据系统上配置的名称服务返回其IP地址数组。
使用
1 | import java.net.InetAddress; |
端口
范围:0-65535
端口分类:
- 公有端口 0~1023
- 程序注册端口:1024~49151,分配用户或者程序
- 动态、私有:49152~65535
Windows下查看进程端口
1 | netstat -ano # 查看所有程序端口 |
InetSocketAddress
这个类的对象可以包含有地址+端口
1 | public class Test { |
通信协议
TCP/IP协议簇
重要的协议:
- TCP 用户传输协议
- UDP 用户数据报协议
TCP和UDP对比
TCP:
- 连接稳定
- 三次握手 四次挥手
UDP:
- 不稳定
Java上的TCP
客户端
- 连接服务器Socket;
- 发送消息。
服务端
- 建立服务的端口ServerSocket;
- 等待用户的连接Socket;
- 接收消息。
Client和Server示例
Client
1 | public class Client { |
Server
1 | public class Server { |
评论
评论插件加载失败
正在加载评论插件