Java高级_网络编程

来源:互联网 发布:男人月薪4500 知乎 编辑:程序博客网 时间:2024/03/29 22:59

网络编程              

网络模型:

1.OSI参考模型

2.TCP/IP参考模型

网络通信要素

1.IP地址:网络中设备的标识;不易记忆,可用主机名;本地回环地址127.0.0.1,主机名localhost

2.端口号:用于识别进程的逻辑地址,不同进程的标识;有效端口号0~65535,其中0~1024系统使用或保留端口

3.传输协议:通讯的规则;常见协议TCP,UDP


UDP:

1.将数据及源和目的的封装成数据包,不需要建立连接。

2.每个数据的大小限制在64K内

3.因无连接,是不可以靠协议

4.不需要建立连接,速度快

TCP:

1.建立连接,形成传输数据的通信

2.在连接中进行大量数据传输

3.通过三次握手完成连接,是可靠协议

4.必须建立连接,效率会稍低


Socket:

1.Socket就是为网络服务提供的一种机制

2.通信是两端都又Socket

3.网络通信其实就是Socket间的通信

4.数据在两个Socket间通过IO传输


UDP传输:

1.DatagramSocket与DatagramPacket

2.建立发送端和接收端

3.建立数据包

4.调用Socket的发送接收方法

5.关闭Socket

发送端和接收端是两个独立运行的程序。


UDP应用思路:

发送端:

1.建立updsocket服务

2.提供数据,并将数据封装到数据包中

3.通过Socket服务的发送功能,将数据包发送出去

4.关闭资源

接收端:

1.定义udpsocket服务

2.定义一个数据包,因为要储存接收到的字节数据

   (因为数据包对象中有更多功能可以提取字节数据中的不同数据信息)

3.通过socket服务的receive方法将接收到的数据存入已定义好的数据包上

4.通过数据包对象的特有方法,将这些不同的数据提取出来

5.关闭资源


TCP传输:

1.Socket和SeverSocket

2.建立客户端和服务器端

3.建立连接后,通过Socket中的IO流进行数据的传输

4.关闭socket

同样,客户端和服务器端是俩个独立的应用程序。


TCP的应用思路:

服务器端:

1.建立服务端的socket服务,ServerSocket();并监听一个端口。

2.获取连接过来的客户端对象,通过ServerSocket的accept方法,没有连接就会等,所以这个方法是阻塞时方法。

3.客户端如果发过来数据,那么服务端要使用对应的客户端对象,并获取该服务端对象的读取流来读取发过来的数据。

4.关闭服务端。

客户端:

1.建立服务

2.获取数据

3.将数据发给服务端

4.关闭资源





0 0