| 
 
| #1.网络模型 - OSI参考模型
 - 应用层(http,ftp,....)
 - 表示层
 - 会话层
 - 传输层(TCP,UDP)....Transfrom Control protle,传输控制协议
 - 网络层(IP地址).....Internet protle.
 - 数据链路层
 - 物理层(网线,光纤,无线,蓝牙)
 > 数据封包,数据拆包.
 
 - TCP/IP参考模型
 - 应用层(3)---->web开发
 - 传输层---->
 - 网际层---->
 - 主机至网路层(2)
 
 #2.网络三要素:
 - IP
 - 网络上电脑的唯一标识符
 - 不易记忆,可用主机名
 - 端口(逻辑端口)
 - 电脑上的每个网络应用程序的唯一标识符,0-65535
 - 0-1024,系统保留端口.
 - web 80
 - mysql 3306
 - 协议:UDP ,国际通用协议TCP/IP
 
 
 > 127.0.0.1,本地回环地址,可以测试网卡
 > 保留地址段,作为局域网使用
 
 #3.UDP协议
 >
 -  将数据及源和目的封装成数据包中,不需要建立连接.
 -  每个数据报的大小限制在64k中.
 -  无连接,不可靠协议,容易丢包.
 -  不需要连接,速度快.
 > 聊天数据,网络视频,桌面共享,力求速度就是UDP
 
 #4.TCP协议
 >
 - 面向接连,形成传输数据的通道.三次握手,建立通道
 - 在连接中进行大数据量传输,比如下载.
 - 可靠协议
 - 必须建立连接,效率会稍低.
 
 #5.Socket,套接字通信(Socket:插座)
 >
 - Socket 就是为网络服务提供的一种机制.
 - 通信的两端都有Socket.
 - 网络通信就是Socket之间的通信
 - Socket 相当于码头.
 - 数据在两个Socket间通过IO传输.
 - 网络上具有唯一标示的IP地址和端口号组合在一起构成的唯一能识别的标识符套接字.
 
 - Socket在应用程序中创建,通过一种绑定机制与驱动程序建立关系,告诉自己所对应的IP和port.
 
 
 
 - io流相当于船
 - io里的数据相当于船上的货物.
 
 #6.UDP的Socket
 > UDP   Send
 - 1.建立UDP的Socket服务.通过DatagramSocket创建
 - 2.提供数据,将数据封装到数据报中,通过DatagramPacket(byte[] buf,int len,InetAddress address,int port)
 - 3.通过Socket的Send(),发送出去
 - 4.关闭资源
 
 > Recevie
 - 1.建立UDP的Socket服务,会监听一个端口,给这个应用程序一个数字标识,方便明确应用程序处理由哪个端口收到的数据.
 - 2.定义一个空数据包,存储接受到的数据包,因为数据包中有更多功能提取字节数据报中的不同数据信息.
 - 3.通过Socket的Recevie()收到的数据存到已定义好的数据包中,阻塞式方法,等待
 - 4.通过数据包对象中的特有功能,解析并获取其中的数据.
 - 5.关闭资源.
 
 #7.TCP的Socket.
 - Socket;ServerSocket
 - 客户端
 - 1.创建Socket服务,并指定要连接的主机和端口.创建成功就已经有了通路和Socket流
 - 2.获取输出流,并写出数据.
 
 - 服务端
 - 1.建立服务端的Socket服务.ServerSocket.监听一个端口
 - 2.获取连接过来的客户端对象,通过ServerSocket的accpet方法,没有连接就等,阻塞式的.
 - 3.客户端发过来数据,服务端要获取客户端的发送过来的数据,就要使用客户端的读取流来读取数据.
 - 4.关闭客户端
 - 5.关闭服务端
 
 
 | 
 |