网络编程

320 阅读3分钟

网络编程

网络概念:

由点和线构成,表示诸多对象间的相互联系。

计算机网络:

为实现资源共享和信息传递,通过通信线路连接起来若干主机(Host)。

互联网:

(Internet)点与点相连。

万维网:

(WWW-World Wide Web)端与端相连。

物联网:

(IoT-Internet of things)物与物相连。

网络编程:

让计算机与计算机之间建立连接、进行通信。

网络模型:

OSI(Oper System Interconnection)开放式系统互连。

在这里插入图片描述
TCP/IP模型:

一组用于实现网络互连得通信协议,将协议分成四个层次。

在这里插入图片描述
TCP/UDP

TCP协议:

Transmission Control Protocol传输控制协议。

I、是一种面向连接的可靠地、基于字节流的传输层通信协议。数据大小无线制。建立连接的过程需要三次握手,断开连接的过程需要四次挥手。

UDP协议:

User Datagram Protocol 用户数据报协议。

I、是一种无连接的传输协议,提供面向事务的简单不可靠信息传送服务,每个包的大小64KB。

IP

IP协议:

Internet Protocol Address 互联网协议地址/网际协议地址。

 I、分配给互联网设备的数字标签(唯一标识)。
 
 **IP地址分为两种:**
 
  I、IPV4: 4字节32位整数,并分成4段8位的二进制数,每8位之间用圆点隔开,每8位整数可以转换为一个0~255的十进制整数。
     	格式:D.D.D.D    例如:255.255.255.255
 II、IPV6:16字节128位整数,并分成8段十六进制数,每16位之间用圆点隔开,每16位整数可以转换为一个0~65535的十进制数。
 格式:X.X.X.X.X.X.X.X 
 例如:FFFF.FFFF.FFFF.FFFF.FFFF.FFFF.FFFF.FFFF
 **IPV4的应用分类:**
 A类:政府机构,1.0.0.1~126.255.255.254
 B类:中型企业,128.0.0.1~191.255.255.254
 C类:个人用户,192.0.0.1~223.255.255.254
 D类:用于组播,224.0.0.1~239.255.255.254
 E类:用于实验:240.0.0.1~255.255.255.254
 回环地址:127.0.0.1,指本机,一般用于测试使用。
 查看IP命令:ipconfig
 测试Ip命令:ping D.D.D.D
 **Port**
 端口号:
 在通信实体上进行网络通讯的程序的唯一标识。
 端口分类:
 公认端口:0~1023
 注册端口:1024~49151
 动态或私有端口:49152~65535
 常用端口:
 MySql:3306
 Oracle:1521
 Tomcat:8080
 SMTP:25
 Web服务器:80
 FTP服务器:21
 **InetAddress类**
 概念:表示互联网协议(IP)地址对象,封装了与该IP地址相关的所有信息,并提供获取信息的常用方法。
 方法:
 public   static  InetAddress  getLocalHost()获得本地主机地址对象
 public   static  InetAddress  getByName(String host)根据主机名称获得地址对象
 public   static   InetAddress[] getAllByName(String host)获得所有相关地址对象
 public   String getHostAddress() 获取IP地址字符串
 public   String  getHostName() 获得IP地址主机名
 **基于TCP的网络编程**

Socket编程

 I、Socket(套接字)是网络中的一个通信节点。
 
 II、分为客户端Socket与服务器ServerSocket。
 
 III、通信要求:IP地址+端口号。
 **开发步骤:**
 
 建立通信连接(会话):
 I、创建ServerSocket,制定端口号。
 II、调用accept等待客户端接入。
 客户端请求服务器:
 I、创建Socket,制定服务器IP+端口号。
 II、使用输出流,发送请求数据给服务器
 III、使用输入流,接收响应数据到客户端(等待)。
 服务器响应客户端:
 I、使用输入流,接收请求数据到服务器(等待)。
 II、使用输出流,发送响应数据给客户端。