网络编程
网络模型:
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.关闭资源