网络编程
- 三要素:ip、端口、协议
- OSI网络层次参考模型/TCP&IP参考模型
- TCP和UDP的区别
- 基于连接和无连接
- TCP要求系统资源较多,UPD较少
- UDP程序结构较简单
- 流模式(TCP)和数据包模式(UDP)
- TCP保证数据正确性和数据的顺序,UDP不保证
- 其他请参考
socket—-插座 套接字
socket就是为了网络服务提供的一种机制
通信的两端都是socket
socket位于传输层和会话层之间
网络的通信其实都是socket间的通信
数据在两个socket间进行IO传输
java中对应Socket类java实现TCP和UDP连接的步骤
TCP:
- 创建客户端和服务端
- 服务端:建立服务端的SeverSocket,监听端口;获取连接的客户端对象(使用accept方法,此方法为阻塞式方法,会一直持续监听);定义socket对象的输入输出流;使用输出流发送给客户端信息,使用输入流获取客户端发送的信息。
客户端:建立客户端的Socket,指定连接的服务端地址和端口;定义socket对象的输入输出流;使用输出流(字节流)向服务端发送信息,使用输入流(字节流)获取服务器的回执。
UDP:
- 创建接收端和发送端
- 发送端:建立DatagremScoket对象,指定本方端口及ip;使用转换流获取输入要发送的内容,并且转换为字节;将内容打包,然后发送;
接受端:建立DatagremScoket对象,监听端口,将接受到的数据包拆包(使用receive方法,此方法为阻塞式方法,)为字节数组。