网络
什么是网络
- 由点和线组成,表示诸多对象间的相互联系
什么是计算机网络
- 为实现资源共享和信息传递,通过通信线路连接起来的若干主机(Host)
- 互联网(Internet):点与点相连
- 万维网(WWW-World wide web)端与端相连
- 物联网(loT-Internet of things)物与物相连
- 网络编程:让计算机与计算机之间建立连接、进行通信
网络模型
网络编程的三要素
1.ip地址
- 192.168.138.1: 使用点分十进制法
- A类IP地址:第一段号码为网络号码,剩下的三段号码为本地计算机的号码 (政府部门)
- B类IP地址:前二段号码为网络号码,剩下的二段号码为本地计算机的号码 (大学校园)
- C类IP地址:前三段号码为网络号码,剩下的一段号码为本地计算机的号码(私人地址)
- 127.0.0.1:回环地址:表示本机 ---- 域名:localhost
2.端口号
- 有效端口号:0-65535
- 0-1024:保留端口号
- 常见端口号
tomcat: 8080
redis:6575… (数据库—非关系型数据库 key-value )
mysql软件:3306
3.协议
- UDP和TCP
TCP/IP模型
TCP/UDP - TCP协议:Transmission Control Protocol 传输控制协议
是一种面向连接的、可靠的、基于字节流的传输层通信协议,数据大小无限制.建立连接的过程需要三次握手,断开连接的过程需要四次挥手 - UDP协议: User Datagram Protocol 用户数据报协议
是一种无连接的传输层协议、提供面向事务的简单不可靠信息传送服务,每个包的大小64KB
IP
IPV4的应用分类
Port
基于TCP的网络编程
-
Socket编程
1.Socket(套接字)是网络中的一个通信节点
2.分为客户端Socket和服务器SeverSocket
3.通信要求:IP地址+端口号 -
开发步骤
InetAddress类 -
概念:表示互联网协议(IP)地址对象,封装了与该IP地址相关的所有信息,并提供获取信息的常用方法
-
互联网ip地址统称
-
方法
没有构造方法,不能直接创建对象!,提供一些成员方法使用:静态的
方法名 | 说明 |
---|---|
public static InetAdress getLocalHost() | 获取本地主机地址对象 |
public static InetAddress getByName(String host) | 根据主机名称获得地址对象 |
public static InetAddress[] getAllByName(String host) | 获取所有相关地址对象 |
public String getHostAddress() | 获取IP地址字符串 |
public String getHostName() | 获取IP地址主机名 |