网络通信要素一:IP地址或域名
IP作用:给网络中的一台计算机设备做唯一的编号。
IP分类:
- 方式一:
- IPv4(占用4个字节)
- IPv6(占用16个字节)
- 方式二:
- 公网地址(万维网使用)
- 私有地址(局域网使用,以196.168开头)
特殊的IP地址:
- 127.0.0.1(本地回路地址)
域名:便捷的记录IP地址,当在链接网络是输入一个主机的域名后,域名服务器(DNS)负责将域名转换位IP地址,然后和主机建立连接。
网络通信要素二:端口号
端口号:区分一个设备中的不同进程(应用程序)。如果端口号被另一个服务或应用所占用,会导致当前程序启动失败。
不同的进程,设置不同的端口号。
端口号是由两个字节表示的证书,它的取值范围是0~65535:
- 公认端口:0~1023。被预先定义的服务通信占用,如:HTTP(80), FTP(21), Telnet(23);
- 注册端口:1024~49151。分配给用户进程或应用程序,如:Tomcat(8080), MySQL(2206), Oracle(1521);
- 动态/私有端口:49152~65535。
网络通信要素三:网络通信协议
网络通信协议:在计算机网络中,各个设备的链接和通信的规则称为网络通信协议,它对数据据的传输格式、传输速率、传输步骤、出错控制等做了统一归档,通信双方必须同时遵守才能完成数据交换。
网络通信协议的目的:为了实现可靠而搞笑的数据传输。
实际使用的标准——TCP/IP模型。
InetAddress的使用
作用:InetAddress类的一个实例代表一个具体的IP地址。
实例化方式:
- InetAddress getByName(String host):获取指定ip对应的InetAddress 的实例。
- InetAddress getLocalHost():获取本地ip对应的InetAddress 的实例。
常用方法: - getHostName():获取InetAddress 实例的域名(当没有域名的时候返回IP地址)。
- getHostAddress():获取InetAddress实例的IP地址。
传输层协议:TCP和UDP协议
- TCP生活案例:打电话;
- UDP生活案例:发送短信、发电报。
三次握手
四次挥手
Socket类
Soket = IP地址+端口号;
实例:
TCP实例:
UDP实例:
URL编程
URL:一个具体的url就对应这互联网上某一资源的地址。
URL类常用方法:
一个URL对象生成后,其属性是不能被改变的,但可以通过它给定的方法来获取这些属性:
- public String getProtocol() 获取该URL的协议名;
- public String getHost() 获取该URL的主机名;
- public String getPort() 获取该URL的端口号;
- public String getPath() 获取该URL的文件路径;
- public String getFile() 获取该URL的文件名;
- public String getQuery() 获取该URL的查询名;
实例: