黑马程序员技术交流社区
标题:
网络编程
[打印本页]
作者:
wb277379322
时间:
2016-9-3 12:13
标题:
网络编程
网络编程:编写Socket程序
ip:互联网中的唯一标识
端口:每个socket(可以理解为程序)占用一个端口
网络参考模型:osi7层标准 tcp/ip4层
网络协议:
UDP:将数据源和目的封装到数据包中,不需要建立连接;每个数据报的大小在限制在64k;因无连接,是不可靠协议;不需要建立连接,速度快。
TCP:TCP协议通过三次握手协议将客户端与服务器端连接,两端使用各自的Socket对象。Socket对象中包含了IO流,供数据传输。
具体类:
UDP:服务器端与客户端使用相同的socket
DatagramSocket
发送端:不需要指定目标IP与端口
send(DatagramPacket dp)
接收端:需要指定自己的端口号
receive(DatagramPacket dp);
DatagramPacket
发送端:需要指定数据包的数据、长度、目标IP、目标端口
接收端:需要指定数据包的数据、长度
数据包解析数据的方法:
public byte[] getData() 获取数据
public InetAddress getAddress() 获取对方IP
public int getPort() 获取端口号
TCP:
服务器端:ServerSocket需要指定自己的端口号
Socket socket = accept(); 接收一个客户端请求,分配一个Socket
客户端:Socket需要指定目标IP与目标端口号
public OutputStream getOutputStream() 获取字节输出流
public InputStream getInputStream() 获取字节输入流
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2