码迷,mamicode.com
首页 > Web开发 > 详细

网络--Internet

时间:2017-08-10 17:05:39      阅读:176      评论:0      收藏:0      [点我收藏+]

标签:输入   封装   客户端   标记   server   建立连接   intern   相同   取数   

网络通信三要素:
IP
协议:
TCP:
建立连接,发送速度慢
三次握手协议
UDP:
不需要建立连接,发送速度快
安全性低
端口 0--65535

Socket:
负责数据的发送和接收

使用UDP实现数据的发送
1 创建Socket端点实现数据的发送
DatagramSocket:
基于UDP,发送数据包
2 明确发送的数据
3 把数据封装成数据报包
DatagramPacket:
UDP数据包,指明了发送的数据,接收方的IP,接收方的端口
4 使用Socket的发送功能发送数据
内部使用输出流将数据写出去,所以有IOException
使用UDP实现数据的接收:
1 创建Socket端点实现数据的接收
需要指定监听的端口
2 创建一个空的数据报包来接收数据
3使用Soclet的接收功能来接收
4 从数据报包获取数据

使用TCP实现数据的发送:
客户端
1 创建Socket端点,负责数据发送,同时需要和服务端连接
2 发送数据,就是输出,使用输出流
Socket:只能作为客户端(发送)

/*
Scoket socket = new Scoket(InetAddress.getByName(""), 55555);

这句话成功执行说明成功创建客户端
同时说明和服务器端连接成功
也就是和服务器端建立了一条通道
这条通道就是这个Socket流(客户端对象),Socket流中既有字节输入流,也有字节输出流

*/

使用TCP实现数据的接收:
服务端
ServerSocket:
1 创建Scoket对象,同时监听端口
2 得到客户端对象,和客户端使用相同的流
3 接收数据,就是读取数据,使用输入流
/*
服务端如何区分客户端?

得到客户端对象,和客户端使用相同的流

ServerSocket server = new ServerSocket(55555);
Socket scoket = server.accpet();

*/

shutDownOutput():添加结束标记

网络--Internet

标签:输入   封装   客户端   标记   server   建立连接   intern   相同   取数   

原文地址:http://www.cnblogs.com/roxy/p/7339830.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!