第一部分:网络编程
1、概述:网络编程的的作用是实现两个设备之间的数据交换。
数据交互,就是把一个设备中的数据发送给另外的设备,然后接受设备反馈的信息。
现在的网络编程基本上都是基于请求/响应方式的,也就是一个设备发送请求数据给另外一个,然后接收另一个设备的反馈。
在网络编程中,发起连接程序,也就是发送第一次请求的程序,被称作客户端(Client),等待其他程序连接的程序被称作服务器(Server)。
客户端程序可以在需要的时候启动,而服务器为了能够时刻响应连接,则需要一直启动。
2、网络通讯要素
1、IP地址:InetAddress
2、端口号IP地址是网络中设备的标识,对应一个主机名,主机名更易记忆
本地回环IP:127.0.0.1 , 可用于测试网卡等设备是否正常工作
地址段最后一段为255的表示是广播地址,可以在该地址段发送广播消息
数据要发送到对方的指定应用程序上,通过虚拟端口数字标识(逻辑端口),范围0~65535,0~1024通常是系统预留
3、传输协议:
定义通讯的规则,这个规则称为协议
国际通用协议:TCP/IP
3、网络模型
OSI参考模型
物理层
数据链路层
网络层
传输层
会话层
表示层
应用层
(数据拆封包)
TCP/IP参考模型
主机至网络层(物理层、数据链路)
网际层(IP)
传输层(UDP、TCP)
应用层(会话、表示、应用)(HTTP)
4、操作类
InetAddress
方法
getLoalHost 获取本地主机地址
toString
getHostAddress 获取IP地址字符串
getHostName 获取主机名
InetAddress.getByName(主机名) 获取主机地址
getAllByName 获取主机地址数组
Socket
为网络服务提供的一种机制
通讯的两端都有Socket
数据在两个端口间进行IO传输
第二部分:UDP
1、DatagramSocket
方法
send(DatagramPacket) 发送数据包
receive(DatagramPacket) 将接收的数据封装在指定数据包中
2、DatagramPacket
构造
DatagramPacket(字节数组,数据长度,地址,端口)
方法
getData 返回数据
建立
(1)建立UDPSocket服务(接收端需要明确监听一个端口)
(2)提供数据,封装成数据包
(3)发送数据包
(4)关闭资源
第三部分:TCP
1、Socket
客户端端口
构造时就可以指定连接的主机和端口
方法
getInputStream 获取与端口关联的输入流
getOutputStream 获取关联的输出流
shutdownOutput 传输数据结束标识
2、ServerSocket
服务端对象
构造时指定监听的端口
构造时可以指定同时访问的客户端数量
获取客户端的流
方法
getInputStream 获取的流的源是网络数据
getOutputSteam
accept 接收一个客户端对象
getInetAddress.getHostAddress
并发传输数据
无限循环开启线程获取客户端传输
本文介绍了网络编程的基本概念,包括网络编程的作用、通讯要素如IP地址、端口号和传输协议,以及网络模型等内容。此外还详细讲解了UDP和TCP两种主要的传输协议的工作原理和使用方法。

1804

被折叠的 条评论
为什么被折叠?



