首页 > 其他 > 详细

TCP通信

时间:2014-03-20 20:20:21      阅读:505      评论:0      收藏:0      [点我收藏+]

TCP:全称Transmission Control Protocol ( 传输控制协议):通过三次握手完成连接,建立连接形成数据传输数据的通道,可以进行大量数据的传输,是可以可靠协议,速度相对慢。

与UDP的发送端和接收端类似,TCP通信需要有客户端和服务端


Tcp传输,客户端建立的过程:

1、创建tcp客户端socket服务。使用的是Socket对象。该对象一创建就明确目的地,要连接的主机。

2、如果连接建立成功,说明数据传输通道已建立。

该通道就是socket流 ,是底层建立好的。 既然是流,说明这里既有输入,又有输出。
想要输入或者输出流对象,可以找Socket来获取。 
可以通过getOutputStream(),和getInputStream()来获取两个字节流。
 

3、使用输出流,将数据写出。

4、关闭资源。

		
		//创建客户端socket服务。
		Socket socket = new Socket("10.152.79.174",10000);
		
		//获取socket流中的输出流。 
		OutputStream out = socket.getOutputStream();
		
		
		//使用输出流将指定的数据写出去。
		out.write("tcp通信演示!".getBytes());
		
		//关闭资源。
		socket.close();

TCPch传输,服务端的建立过程:

 1、创建服务端socket服务。通过ServerSocket对象。

2、服务端必须对外提供一个端口,否则客户端无法连接。

3、获取连接过来的客户端对象。

4、通过客户端对象获取socket流读取客户端发来的数据 并打印在控制台上。

5、关闭资源。关客户端,关服务端。

		//1创建服务端对象。
		ServerSocket ss = new ServerSocket(10000);
		
		//2,获取连接过来的客户端对象。
		Socket s = ss.accept();//阻塞式.
		
		String ip = s.getInetAddress().getHostAddress();
		
		//3,通过socket对象获取输入流,要读取客户端发来的数据
		InputStream in = s.getInputStream();
		
		byte[] buf = new byte[1024];
		
		int len = in.read(buf);
		String text = new String(buf,0,len);
		System.out.println(ip+":"+text);
				
		s.close();
		ss.close();
这样就完成了一个简单的TCP通信实例。

TCP通信,布布扣,bubuko.com

TCP通信

原文:http://blog.csdn.net/zhong1113/article/details/21642223

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!